diff --git a/versions/latest/engines/query-sparql-file/comunica-browser.js b/versions/latest/engines/query-sparql-file/comunica-browser.js index 9180b0a..19ea00d 100644 --- a/versions/latest/engines/query-sparql-file/comunica-browser.js +++ b/versions/latest/engines/query-sparql-file/comunica-browser.js @@ -1,3 +1,3 @@ /*! For license information please see comunica-browser.js.LICENSE.txt */ -var Comunica;(()=>{var e={27609:(e,t,r)=>{var{Buffer:n}=r(48834),a={},o=a.LEFT_BRACE=1,s=a.RIGHT_BRACE=2,c=a.LEFT_BRACKET=3,u=a.RIGHT_BRACKET=4,l=a.COLON=5,d=a.COMMA=6,h=a.TRUE=7,p=a.FALSE=8,f=a.NULL=9,y=a.STRING=10,g=a.NUMBER=11,m=a.START=17,b=a.STOP=18,v=a.TRUE1=33,_=a.TRUE2=34,w=a.TRUE3=35,T=a.FALSE1=49,S=a.FALSE2=50,O=a.FALSE3=51,E=a.FALSE4=52,x=a.NULL1=65,A=a.NULL2=66,R=a.NULL3=67,I=a.NUMBER1=81,P=a.NUMBER3=83,D=a.STRING1=97,N=a.STRING2=98,j=a.STRING3=99,C=a.STRING4=100,M=a.STRING5=101,L=a.STRING6=102,k=a.VALUE=113,F=a.KEY=114,B=a.OBJECT=129,U=a.ARRAY=130,q="\\".charCodeAt(0),V="/".charCodeAt(0),Q="\b".charCodeAt(0),$="\f".charCodeAt(0),H="\n".charCodeAt(0),G="\r".charCodeAt(0),z="\t".charCodeAt(0),K=65536;function X(e){return n.alloc?n.alloc(e):new n(e)}function W(){this.tState=m,this.value=void 0,this.string=void 0,this.stringBuffer=X(K),this.stringBufferOffset=0,this.unicode=void 0,this.highSurrogate=void 0,this.key=void 0,this.mode=void 0,this.stack=[],this.state=k,this.bytes_remaining=0,this.bytes_in_sequence=0,this.temp_buffs={2:X(2),3:X(3),4:X(4)},this.offset=-1}W.toknam=function(e){for(var t=Object.keys(a),r=0,n=t.length;r=K&&(this.string+=this.stringBuffer.toString("utf8"),this.stringBufferOffset=0),this.stringBuffer[this.stringBufferOffset++]=e},J.appendStringBuf=function(e,t,r){var n=e.length;"number"==typeof t&&(n="number"==typeof r?r<0?e.length-t+r:r-t:e.length-t),n<0&&(n=0),this.stringBufferOffset+n>K&&(this.string+=this.stringBuffer.toString("utf8",0,this.stringBufferOffset),this.stringBufferOffset=0),e.copy(this.stringBuffer,this.stringBufferOffset,t,r),this.stringBufferOffset+=n},J.write=function(e){var t;"string"==typeof e&&(e=new n(e));for(var r=0,i=e.length;r=48&&t<64)this.string=String.fromCharCode(t),this.tState=P;else if(32!==t&&9!==t&&10!==t&&13!==t)return this.charError(e,r)}else if(this.tState===D)if(t=e[r],this.bytes_remaining>0){for(var a=0;a=128){if(t<=193||t>244)return this.onError(new Error("Invalid UTF-8 character at position "+r+" in state "+W.toknam(this.tState)));if(t>=194&&t<=223&&(this.bytes_in_sequence=2),t>=224&&t<=239&&(this.bytes_in_sequence=3),t>=240&&t<=244&&(this.bytes_in_sequence=4),this.bytes_in_sequence+r>e.length){for(var g=0;g<=e.length-1-r;g++)this.temp_buffs[this.bytes_in_sequence][g]=e[r+g];this.bytes_remaining=r+this.bytes_in_sequence-e.length,r=e.length-1}else this.appendStringBuf(e,r,r+this.bytes_in_sequence),r=r+this.bytes_in_sequence-1}else if(34===t)this.tState=m,this.string+=this.stringBuffer.toString("utf8",0,this.stringBufferOffset),this.stringBufferOffset=0,this.onToken(y,this.string),this.offset+=n.byteLength(this.string,"utf8")+1,this.string=void 0;else if(92===t)this.tState=N;else{if(!(t>=32))return this.charError(e,r);this.appendStringChar(t)}else if(this.tState===N)if(34===(t=e[r]))this.appendStringChar(t),this.tState=D;else if(92===t)this.appendStringChar(q),this.tState=D;else if(47===t)this.appendStringChar(V),this.tState=D;else if(98===t)this.appendStringChar(Q),this.tState=D;else if(102===t)this.appendStringChar($),this.tState=D;else if(110===t)this.appendStringChar(H),this.tState=D;else if(114===t)this.appendStringChar(G),this.tState=D;else if(116===t)this.appendStringChar(z),this.tState=D;else{if(117!==t)return this.charError(e,r);this.unicode="",this.tState=j}else if(this.tState===j||this.tState===C||this.tState===M||this.tState===L){if(!((t=e[r])>=48&&t<64||t>64&&t<=70||t>96&&t<=102))return this.charError(e,r);if(this.unicode+=String.fromCharCode(t),this.tState++===L){var b=parseInt(this.unicode,16);this.unicode=void 0,void 0!==this.highSurrogate&&b>=56320&&b<57344?(this.appendStringBuf(new n(String.fromCharCode(this.highSurrogate,b))),this.highSurrogate=void 0):void 0===this.highSurrogate&&b>=55296&&b<56320?this.highSurrogate=b:(void 0!==this.highSurrogate&&(this.appendStringBuf(new n(String.fromCharCode(this.highSurrogate))),this.highSurrogate=void 0),this.appendStringBuf(new n(String.fromCharCode(b)))),this.tState=D}}else if(this.tState===I||this.tState===P)switch(t=e[r]){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 46:case 101:case 69:case 43:case 45:this.string+=String.fromCharCode(t),this.tState=P;break;default:this.tState=m;var k=this.numberReviver(this.string);if(k)return k;this.offset+=this.string.length-1,this.string=void 0,r--}else if(this.tState===v){if(114!==e[r])return this.charError(e,r);this.tState=_}else if(this.tState===_){if(117!==e[r])return this.charError(e,r);this.tState=w}else if(this.tState===w){if(101!==e[r])return this.charError(e,r);this.tState=m,this.onToken(h,!0),this.offset+=3}else if(this.tState===T){if(97!==e[r])return this.charError(e,r);this.tState=S}else if(this.tState===S){if(108!==e[r])return this.charError(e,r);this.tState=O}else if(this.tState===O){if(115!==e[r])return this.charError(e,r);this.tState=E}else if(this.tState===E){if(101!==e[r])return this.charError(e,r);this.tState=m,this.onToken(p,!1),this.offset+=4}else if(this.tState===x){if(117!==e[r])return this.charError(e,r);this.tState=A}else if(this.tState===A){if(108!==e[r])return this.charError(e,r);this.tState=R}else if(this.tState===R){if(108!==e[r])return this.charError(e,r);this.tState=m,this.onToken(f,null),this.offset+=3}},J.onToken=function(e,t){},J.parseError=function(e,t){this.tState=b,this.onError(new Error("Unexpected "+W.toknam(e)+(t?"("+JSON.stringify(t)+")":"")+" in state "+W.toknam(this.state)))},J.push=function(){this.stack.push({value:this.value,key:this.key,mode:this.mode})},J.pop=function(){var e=this.value,t=this.stack.pop();this.value=t.value,this.key=t.key,this.mode=t.mode,this.emit(e),this.mode||(this.state=k)},J.emit=function(e){this.mode&&(this.state=d),this.onValue(e)},J.onValue=function(e){},J.onToken=function(e,t){if(this.state===k)if(e===y||e===g||e===h||e===p||e===f)this.value&&(this.value[this.key]=t),this.emit(t);else if(e===o)this.push(),this.value?this.value=this.value[this.key]={}:this.value={},this.key=void 0,this.state=F,this.mode=B;else if(e===c)this.push(),this.value?this.value=this.value[this.key]=[]:this.value=[],this.key=0,this.mode=U,this.state=k;else if(e===s){if(this.mode!==B)return this.parseError(e,t);this.pop()}else{if(e!==u)return this.parseError(e,t);if(this.mode!==U)return this.parseError(e,t);this.pop()}else if(this.state===F)if(e===y)this.key=t,this.state=l;else{if(e!==s)return this.parseError(e,t);this.pop()}else if(this.state===l){if(e!==l)return this.parseError(e,t);this.state=k}else{if(this.state!==d)return this.parseError(e,t);if(e===d)this.mode===U?(this.key++,this.state=k):this.mode===B&&(this.state=F);else{if(!(e===u&&this.mode===U||e===s&&this.mode===B))return this.parseError(e,t);this.pop()}}},J.numberReviver=function(e){var t=Number(e);if(isNaN(t))return this.charError(buffer,i);e.match(/[0-9]+/)==e&&t.toString()!=e?this.onToken(y,e):this.onToken(g,t)},W.C=a,e.exports=W},54439:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fragment=void 0,t.fragment=function(e){let t=function(e){let t=e;(t.endsWith("/")||t.endsWith("#"))&&(t=t.slice(0,t.length-1));const r=[];t.lastIndexOf("/")>0&&r.push(t.lastIndexOf("/")),t.lastIndexOf("#")>0&&r.push(t.lastIndexOf("#"));const n=Math.max(...r);return t.slice(n+1)}(e);return t=t?function(e){var t;const r=null===(t=e.split(/[^a-z0-9]+/gi).filter((e=>""!==e)).map((e=>e[0].toUpperCase()+e.slice(1))).join("").match(/[a-z][a-z0-9]+/gi))||void 0===t?void 0:t[0];return void 0===r?void 0:r[0].toLowerCase()+r.slice(1)}(t):void 0,t||"v"}},20098:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupAllPrefixes=t.prefixToUri=t.uriToPrefix=void 0;const i=r(54439),a=r(51807);t.uriToPrefix=function(e,t){return n(this,void 0,void 0,(function*(){let r;try{r=yield(0,a.lookupPrefix)(e,t)}catch(n){(null==t?void 0:t.mintOnUnknown)&&(r=(0,i.fragment)(e).slice(0,4))}if(void 0!==r&&"object"==typeof(null==t?void 0:t.existingPrefixes)&&r in t.existingPrefixes){let e=0;for(;`${r}${e}`in t.existingPrefixes;)e+=1;r=`${r}${e}`}return r}))},t.prefixToUri=function(e,t){return n(this,void 0,void 0,(function*(){try{return yield(0,a.lookupUri)(e,t)}catch(e){return}}))};var o=r(51807);Object.defineProperty(t,"lookupAllPrefixes",{enumerable:!0,get:function(){return o.lookupAllPrefixes}})},55889:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.fetchContext=t.fetchJson=void 0;const i=r(80182);function a(e,t){var r;return n(this,void 0,void 0,(function*(){const n=null!==(r=null==t?void 0:t.fetch)&&void 0!==r?r:i.fetch;return(yield n(e)).json()}))}t.fetchJson=a,t.fetchContext=function(e,t){return n(this,void 0,void 0,(function*(){return(yield a(e,t))["@context"]}))}},51807:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(14779),t),i(r(1843),t),i(r(2034),t)},2034:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupAllPrefixes=void 0;const i=r(55889);t.lookupAllPrefixes=function(e){return n(this,void 0,void 0,(function*(){return(0,i.fetchContext)("https://prefix.cc/context",e)}))}},14779:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupUri=void 0;const i=r(55889);t.lookupUri=function(e,t){return n(this,void 0,void 0,(function*(){const r=(yield(0,i.fetchContext)(`https://prefix.cc/${e}.file.jsonld`,t))[e];if("string"!=typeof r)throw new Error(`Expected uri to be a string, received: ${r} of type ${typeof r}`);return r}))}},1843:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupPrefix=void 0;const i=r(55889);t.lookupPrefix=function(e,t){return n(this,void 0,void 0,(function*(){const r=new URL("https://prefix.cc/reverse");r.searchParams.append("uri",e),r.searchParams.append("format","jsonld");const n=Object.keys(yield(0,i.fetchContext)(r,t));if(0===n.length)throw new Error("No prefixes returned");return n[0]}))}},80182:function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(t=i.fetch).default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t},6928:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SaxesParser=t.EVENTS=void 0;const n=r(53291),i=r(90183),a=r(99977);var o=n.isS,s=n.isChar,c=n.isNameStartChar,u=n.isNameChar,l=n.S_LIST,d=n.NAME_RE,h=i.isChar,p=a.isNCNameStartChar,f=a.isNCNameChar,y=a.NC_NAME_RE;const g="http://www.w3.org/XML/1998/namespace",m="http://www.w3.org/2000/xmlns/",b={__proto__:null,xml:g,xmlns:m},v={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},_=-1,w=-2,T=13,S=33,O=10,E=60,x=61,A=62,R=63,I=93,P=e=>34===e||39===e,D=[34,39],N=[...D,91,A],j=[...D,E,I],C=[x,R,...l],M=[...l,A,38,E];function L(e,t,r){switch(t){case"xml":r!==g&&e.fail(`xml prefix must be bound to ${g}.`);break;case"xmlns":r!==m&&e.fail(`xmlns prefix must be bound to ${m}.`)}switch(r){case m:e.fail(""===t?`the default namespace may not be set to ${r}.`:`may not assign a prefix (even "xmlns") to the URI ${m}.`);break;case g:switch(t){case"xml":break;case"":e.fail(`the default namespace may not be set to ${r}.`);break;default:e.fail("may not assign the xml namespace to another prefix.")}}}const k=e=>y.test(e),F=e=>d.test(e);t.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const B={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};t.SaxesParser=class{get closed(){return this._closed}constructor(e){this.opt=null!=e?e:{},this.fragmentOpt=!!this.opt.fragment;const t=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,t){this.nameStartCheck=p,this.nameCheck=f,this.isName=k,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns=Object.assign({__proto__:null},b);const e=this.opt.additionalNamespaces;null!=e&&(function(e,t){for(const r of Object.keys(t))L(e,r,t[r])}(this,e),Object.assign(this.ns,e))}else this.nameStartCheck=c,this.nameCheck=u,this.isName=F,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}_init(){var e;this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?T:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:r}=this.opt;if(void 0===r){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");r="1.0"}this.setXMLVersion(r),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(v),null===(e=this.readyHandler)||void 0===e||e.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(e,t){this[B[e]]=t}off(e){this[B[e]]=void 0}makeError(e){var t;let r=null!==(t=this.fileName)&&void 0!==t?t:"";return this.trackPosition&&(r.length>0&&(r+=":"),r+=`${this.line}:${this.column}`),r.length>0&&(r+=": "),new Error(r+e)}fail(e){const t=this.makeError(e),r=this.errorHandler;if(void 0===r)throw t;return r(t),this}write(e){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let t=!1;null===e?(t=!0,e=""):"object"==typeof e&&(e=e.toString()),void 0!==this.carriedFromPrevious&&(e=`${this.carriedFromPrevious}${e}`,this.carriedFromPrevious=void 0);let r=e.length;const n=e.charCodeAt(r-1);!t&&(13===n||n>=55296&&n<=56319)&&(this.carriedFromPrevious=e[r-1],r--,e=e.slice(0,r));const{stateTable:i}=this;for(this.chunk=e,this.i=0;this.i=e.length)return _;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>=32||9===r)return r;switch(r){case O:return this.line++,this.column=0,this.positionAtNewLine=this.position,O;case 13:return e.charCodeAt(t+1)===O&&(this.i=t+2),this.line++,this.column=0,this.positionAtNewLine=this.position,w;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCode11(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return _;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>31&&r<127||r>159&&8232!==r||9===r)return r;switch(r){case O:return this.line++,this.column=0,this.positionAtNewLine=this.position,O;case 13:{const r=e.charCodeAt(t+1);r!==O&&133!==r||(this.i=t+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,w;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCodeNorm(){const e=this.getCode();return e===w?O:e}unget(){this.i=this.prevI,this.column--}captureTo(e){let{i:t}=this;const{chunk:r}=this;for(;;){const n=this.getCode(),i=n===w,a=i?O:n;if(a===_||e.includes(a))return this.text+=r.slice(t,this.prevI),a;i&&(this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i)}}captureToChar(e){let{i:t}=this;const{chunk:r}=this;for(;;){let n=this.getCode();switch(n){case w:this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i,n=O;break;case _:return this.text+=r.slice(t),!1}if(n===e)return this.text+=r.slice(t,this.prevI),!0}}captureNameChars(){const{chunk:e,i:t}=this;for(;;){const r=this.getCode();if(r===_)return this.name+=e.slice(t),_;if(!u(r))return this.name+=e.slice(t,this.prevI),r===w?O:r}}skipSpaces(){for(;;){const e=this.getCodeNorm();if(e===_||!o(e))return e}}setXMLVersion(e){this.currentXMLVersion=e,"1.0"===e?(this.isChar=s,this.getCode=this.getCode10):(this.isChar=h,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const e=this.i,t=this.skipSpaces();switch(this.prevI!==e&&(this.xmlDeclPossible=!1),t){case E:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case _:break;default:this.unget(),this.state=T,this.xmlDeclPossible=!1}}sDoctype(){var e;const t=this.captureTo(N);switch(t){case A:null===(e=this.doctypeHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=T,this.doctype=!0;break;case _:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:P(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.q=null,this.state=2)}sDTD(){const e=this.captureTo(j);e!==_&&(this.text+=String.fromCodePoint(e),e===I?this.state=2:e===E?this.state=6:P(e)&&(this.state=5,this.q=e))}sDTDQuoted(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.state=4,this.q=null)}sDTDOpenWaka(){const e=this.getCodeNorm();switch(this.text+=String.fromCodePoint(e),e){case 33:this.state=7,this.openWakaBang="";break;case R:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const e=String.fromCodePoint(this.getCodeNorm()),t=this.openWakaBang+=e;this.text+=e,"-"!==t&&(this.state="--"===t?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),this.state=45===e?10:8}sDTDCommentEnded(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===A?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(R)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===A&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:e}=this;const{chunk:t}=this;e:for(;;)switch(this.getCode()){case w:this.entity+=`${t.slice(e,this.prevI)}\n`,e=this.i;break;case 59:{const{entityReturnState:r}=this,n=this.entity+t.slice(e,this.prevI);let i;this.state=r,""===n?(this.fail("empty entity name."),i="&;"):(i=this.parseEntity(n),this.entity=""),r===T&&void 0===this.textHandler||(this.text+=i);break e}case _:this.entity+=t.slice(e);break e}}sOpenWaka(){const e=this.getCode();if(c(e))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(e){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case R:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=T,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){var e;const t=this.getCodeNorm();45===t?(this.state=19,null===(e=this.commentHandler)||void 0===e||e.call(this,this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const e=this.getCodeNorm();e!==A?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(e)}`,this.state=17):this.state=T}sCData(){this.captureToChar(I)&&(this.state=21)}sCDataEnding(){const e=this.getCodeNorm();e===I?this.state=22:(this.text+=`]${String.fromCodePoint(e)}`,this.state=20)}sCDataEnding2(){var e;const t=this.getCodeNorm();switch(t){case A:null===(e=this.cdataHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=T;break;case I:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const e=this.getCodeNorm();this.nameStartCheck(e)?(this.piTarget+=String.fromCodePoint(e),this.state=24):e===R||o(e)?(this.fail("processing instruction without a target."),this.state=e===R?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(e),this.state=24)}sPIRest(){const{chunk:e,i:t}=this;for(;;){const r=this.getCodeNorm();if(r===_)return void(this.piTarget+=e.slice(t));if(!this.nameCheck(r)){this.piTarget+=e.slice(t,this.prevI);const n=r===R;n||o(r)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=n?S:27):this.state=n?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(r));break}}}sPIBody(){if(0===this.text.length){const e=this.getCodeNorm();e===R?this.state=26:o(e)||(this.text=String.fromCodePoint(e))}else this.captureToChar(R)&&(this.state=26)}sPIEnding(){var e;const t=this.getCodeNorm();if(t===A){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),null===(e=this.piHandler)||void 0===e||e.call(this,{target:t,body:this.text}),this.piTarget=this.text="",this.state=T}else t===R?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const e=this.skipSpaces();e!==R?e!==_&&(this.state=28,this.name=String.fromCodePoint(e)):this.state=S}sXMLDeclName(){const e=this.captureTo(C);if(e===R)return this.state=S,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(o(e)||e===x){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=e===x?30:29}}sXMLDeclEq(){const e=this.getCodeNorm();if(e===R)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(e!==x&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const e=this.getCodeNorm();if(e===R)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(P(e)?this.q=e:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const e=this.captureTo([this.q,R]);if(e===R)return this.state=S,this.text="",void this.fail("XML declaration is incomplete.");if(e===_)return;const t=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const e=t;this.xmlDecl.version=e,/^1\.[0-9]+$/.test(e)?this.opt.forceXMLVersion||this.setXMLVersion(e):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(t)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=t;break;case"standalone":"yes"!==t&&"no"!==t&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=t}this.name="",this.state=32}sXMLDeclSeparator(){const e=this.getCodeNorm();e!==R?(o(e)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=S}sXMLDeclEnding(){var e;this.getCodeNorm()===A?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),null===(e=this.xmldeclHandler)||void 0===e||e.call(this,this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=T):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){var e;const t=this.captureNameChars();if(t===_)return;const r=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=r.ns=Object.create(null)),null===(e=this.openTagStartHandler)||void 0===e||e.call(this,r),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case A:this.openTag();break;case 47:this.state=35;break;default:o(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===A?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const e=this.skipSpaces();e!==_&&(c(e)?(this.unget(),this.state=37):e===A?this.openTag():47===e?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const e=this.captureNameChars();e===x?this.state=39:o(e)?this.state=38:e===A?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):e!==_&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const e=this.skipSpaces();switch(e){case _:return;case x:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",e===A?this.openTag():c(e)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const e=this.getCodeNorm();P(e)?(this.q=e,this.state=40):o(e)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:e,chunk:t}=this;let{i:r}=this;for(;;)switch(this.getCode()){case e:return this.pushAttrib(this.name,this.text+t.slice(r,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=t.slice(r,this.prevI),this.state=14,void(this.entityReturnState=40);case O:case w:case 9:this.text+=`${t.slice(r,this.prevI)} `,r=this.i;break;case E:return this.text+=t.slice(r,this.prevI),void this.fail("disallowed character.");case _:return void(this.text+=t.slice(r))}}sAttribValueClosed(){const e=this.getCodeNorm();o(e)?this.state=36:e===A?this.openTag():47===e?this.state=35:c(e)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const e=this.captureTo(M);switch(e){case 38:this.state=14,this.entityReturnState=42;break;case E:this.fail("disallowed character.");break;case _:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",e===A?this.openTag():this.state=36}}sCloseTag(){const e=this.captureNameChars();e===A?this.closeTag():o(e)?this.state=44:e!==_&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case A:this.closeTag();break;case _:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:e,forbiddenState:t}=this;const{chunk:r,textHandler:n}=this;e:for(;;)switch(this.getCode()){case E:if(this.state=15,void 0!==n){const{text:t}=this,i=r.slice(e,this.prevI);0!==t.length?(n(t+i),this.text=""):0!==i.length&&n(i)}t=0;break e;case 38:this.state=14,this.entityReturnState=T,void 0!==n&&(this.text+=r.slice(e,this.prevI)),t=0;break e;case I:switch(t){case 0:t=1;break;case 1:t=2;break;case 2:break;default:throw new Error("impossible state")}break;case A:2===t&&this.fail('the string "]]>" is disallowed in char data.'),t=0;break;case w:void 0!==n&&(this.text+=`${r.slice(e,this.prevI)}\n`),e=this.i,t=0;break;case _:void 0!==n&&(this.text+=r.slice(e));break e;default:t=0}this.forbiddenState=t}handleTextOutsideRoot(){let{i:e}=this;const{chunk:t,textHandler:r}=this;let n=!1;e:for(;;){const i=this.getCode();switch(i){case E:if(this.state=15,void 0!==r){const{text:n}=this,i=t.slice(e,this.prevI);0!==n.length?(r(n+i),this.text=""):0!==i.length&&r(i)}break e;case 38:this.state=14,this.entityReturnState=T,void 0!==r&&(this.text+=t.slice(e,this.prevI)),n=!0;break e;case w:void 0!==r&&(this.text+=`${t.slice(e,this.prevI)}\n`),e=this.i;break;case _:void 0!==r&&(this.text+=t.slice(e));break e;default:o(i)||(n=!0)}}n&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(e,t){var r;const{prefix:n,local:i}=this.qname(e),a={name:e,prefix:n,local:i,value:t};if(this.attribList.push(a),null===(r=this.attributeHandler)||void 0===r||r.call(this,a),"xmlns"===n){const e=t.trim();"1.0"===this.currentXMLVersion&&""===e&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=e,L(this,i,e)}else if("xmlns"===e){const e=t.trim();this.topNS[""]=e,L(this,"",e)}}pushAttribPlain(e,t){var r;const n={name:e,value:t};this.attribList.push(n),null===(r=this.attributeHandler)||void 0===r||r.call(this,n)}end(){var e,t;this.sawRoot||this.fail("document must contain a root element.");const{tags:r}=this;for(;r.length>0;){const e=r.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==T&&this.fail("unexpected end.");const{text:n}=this;return 0!==n.length&&(null===(e=this.textHandler)||void 0===e||e.call(this,n),this.text=""),this._closed=!0,null===(t=this.endHandler)||void 0===t||t.call(this),this._init(),this}resolve(e){var t,r;let n=this.topNS[e];if(void 0!==n)return n;const{tags:i}=this;for(let t=i.length-1;t>=0;t--)if(n=i[t].ns[e],void 0!==n)return n;return n=this.ns[e],void 0!==n?n:null===(r=(t=this.opt).resolvePrefix)||void 0===r?void 0:r.call(t,e)}qname(e){const t=e.indexOf(":");if(-1===t)return{prefix:"",local:e};const r=e.slice(t+1),n=e.slice(0,t);return(""===n||""===r||r.includes(":"))&&this.fail(`malformed name: ${e}.`),{prefix:n,local:r}}processAttribsNS(){var e;const{attribList:t}=this,r=this.tag;{const{prefix:t,local:n}=this.qname(r.name);r.prefix=t,r.local=n;const i=r.uri=null!==(e=this.resolve(t))&&void 0!==e?e:"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),r.uri=t))}if(0===t.length)return;const{attributes:n}=r,i=new Set;for(const e of t){const{name:t,prefix:r,local:a}=e;let o,s;""===r?(o="xmlns"===t?m:"",s=t):(o=this.resolve(r),void 0===o&&(this.fail(`unbound namespace prefix: ${JSON.stringify(r)}.`),o=r),s=`{${o}}${a}`),i.has(s)&&this.fail(`duplicate attribute: ${s}.`),i.add(s),e.uri=o,n[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:e}=this,t=this.tag.attributes;for(const{name:r,value:n}of e)void 0!==t[r]&&this.fail(`duplicate attribute: ${r}.`),t[r]=n;this.attribList=[]}openTag(){var e;this.processAttribs();const{tags:t}=this,r=this.tag;r.isSelfClosing=!1,null===(e=this.openTagHandler)||void 0===e||e.call(this,r),t.push(r),this.state=T,this.name=""}openSelfClosingTag(){var e,t,r;this.processAttribs();const{tags:n}=this,i=this.tag;i.isSelfClosing=!0,null===(e=this.openTagHandler)||void 0===e||e.call(this,i),null===(t=this.closeTagHandler)||void 0===t||t.call(this,i),null===(this.tag=null!==(r=n[n.length-1])&&void 0!==r?r:null)&&(this.closedRoot=!0),this.state=T,this.name=""}closeTag(){const{tags:e,name:t}=this;if(this.state=T,this.name="",""===t)return this.fail("weird empty close tag."),void(this.text+="");const r=this.closeTagHandler;let n=e.length;for(;n-- >0;){const n=this.tag=e.pop();if(this.topNS=n.ns,null==r||r(n),n.name===t)break;this.fail("unexpected close tag.")}0===n?this.closedRoot=!0:n<0&&(this.fail(`unmatched closing tag: ${t}.`),this.text+=``)}parseEntity(e){if("#"!==e[0]){const t=this.ENTITIES[e];return void 0!==t?t:(this.fail(this.isName(e)?"undefined entity.":"disallowed character in entity name."),`&${e};`)}let t=NaN;return"x"===e[1]&&/^#x[0-9a-f]+$/i.test(e)?t=parseInt(e.slice(2),16):/^#[0-9]+$/.test(e)&&(t=parseInt(e.slice(1),10)),this.isChar(t)?String.fromCodePoint(t):(this.fail("malformed character entity."),`&${e};`)}}},47948:e=>{"use strict";const{AbortController:t,AbortSignal:r}="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0;e.exports=t,e.exports.AbortSignal=r,e.exports.default=t},92248:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];return r=e.on("data",(e=>t.push(e))),n=t,new Promise(((e,t)=>{r.on("end",(()=>e(n))),r.on("error",t)}));var r,n}},89727:(e,t,r)=>{const n=r(75192),i=r(18015),a=r(2283),o=r(78917),s=r(21527);e.exports={DynamicNestedLoopJoin:n,HashJoin:i,NestedLoopJoin:a,SymmetricHashJoin:o,MergeStream:s}},75192:(e,t,r)=>{let n=r(89227),i=n.MultiTransformIterator,a=n.SimpleTransformIterator;e.exports=class extends i{constructor(e,t,r,n){super(e,n),this.funRight=t,this.funJoin=r}_createTransformer(e){return new a(this.funRight(e),{transform:(t,r,n)=>{let i=this.funJoin(e,t);null!==i&&n(i),r()}})}}},18015:(e,t,r)=>{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e,t,r,n){super(),this.addedDataListener=!1,this.left=e,this.right=t,this.funHash=r,this.funJoin=n,this.leftMap=new Map,this.match=null,this.matches=[],this.matchIdx=0,this.left.on("error",(e=>this.destroy(e))),this.right.on("error",(e=>this.destroy(e))),this.readable=!1,this.left.on("end",function(){if(this.leftMap.size<=0)return this.close();this.readable=!0,this.right.on("readable",(()=>this.readable=!0)),this.right.on("end",(()=>{this.hasResults()||this._end()}))}.bind(this)),this.on("newListener",(e=>{"data"!==e||this.addedDataListener||(this.addedDataListener=!0,this._addDataListener())}))}hasResults(){return!this.right.ended||this.matchIdx{const{MultiTransformIterator:n,SimpleTransformIterator:i,scheduleTask:a}=r(89227);e.exports=class extends n{constructor(e,t,r,n){super(e,n),this.right=t,this.funJoin=r,this.on("end",(()=>this.right.close()))}_end(){super._end(),a((()=>this.right.destroy()))}_createTransformer(e){return new i(this.right.clone(),{transform:(t,r,n)=>{let i=this.funJoin(e,t);null!==i&&n(i),r()}})}}},78917:(e,t,r)=>{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e,t,r,n){super(),this.left=e,this.right=t,this.funHash=r,this.funJoin=n,this.usedLeft=!1,this.leftMap=new Map,this.rightMap=new Map,this.on("end",(()=>this._cleanup())),this.match=null,this.matches=[],this.matchIdx=0,(this.left.readable||this.right.readable)&&(this.readable=!0),this.left.on("error",(e=>this.destroy(e))),this.right.on("error",(e=>this.destroy(e))),this.left.on("readable",(()=>this.readable=!0)),this.right.on("readable",(()=>this.readable=!0)),this.left.on("end",(()=>{this.hasResults()||this._end()})),this.right.on("end",(()=>{this.hasResults()||this._end()}))}hasResults(){return!this.left.ended||!this.right.ended||!!this.matches&&this.matchIdx{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e){super(),Array.isArray(e)||(e=Array.prototype.slice.call(arguments)),this.streams=e;for(let t of e)t.on("readable",(()=>this.emit("readable"))),t.on("end",(()=>this._removeStream(t)));0===this.streams.length&&this.close(),this.idx=this.streams.length-1}_removeStream(e){let t=this.streams.indexOf(e);t<0||(this.streams.splice(t,1),this.idx>=this.streams.length&&--this.idx,0===this.streams.length&&this._end())}close(){super.close();for(let e of this.streams)e.close()}read(){for(let e=0;e{const n=new(r(60738).LoggerVoid),i=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-init/^2.0.0/components/ActorInit.jsonld#ActorInit_default_bus"}),a=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-context-preprocess/^2.0.0/components/ActorContextPreprocess.jsonld#ActorContextPreprocess_default_bus"}),o=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-hash-bindings/^2.0.0/components/ActorHashBindings.jsonld#ActorHashBindings_default_bus"}),s=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-optimize-query-operation/^2.0.0/components/ActorOptimizeQueryOperation.jsonld#ActorOptimizeQueryOperation_default_bus"}),c=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-parse/^2.0.0/components/ActorQueryParse.jsonld#ActorQueryParse_default_bus"}),u=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-result-serialize/^2.0.0/components/ActorQueryResultSerialize.jsonld#ActorQueryResultSerialize_default_bus"}),l=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference/^2.0.0/components/ActorDereference.jsonld#ActorDereference_default_bus"}),d=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference-rdf/^2.0.0/components/ActorDereferenceRdf.jsonld#ActorDereferenceRdf_default_bus"}),h=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-entries-sort/^2.0.0/components/ActorRdfJoinEntriesSort.jsonld#ActorRdfJoinEntriesSort_default_bus"}),p=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-selectivity/^2.0.0/components/ActorRdfJoinSelectivity.jsonld#ActorRdfJoinSelectivity_default_bus"}),f=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata/^2.0.0/components/ActorRdfMetadata.jsonld#ActorRdfMetadata_default_bus"}),y=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-accumulate/^2.0.0/components/ActorRdfMetadataAccumulate.jsonld#ActorRdfMetadataAccumulate_default_bus"}),g=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-extract/^2.0.0/components/ActorRdfMetadataExtract.jsonld#ActorRdfMetadataExtract_default_bus"}),m=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse/^2.0.0/components/ActorRdfParse.jsonld#ActorRdfParse_default_bus"}),b=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse-html/^2.0.0/components/ActorRdfParseHtml.jsonld#ActorRdfParseHtml_default_bus"}),v=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia/^2.0.0/components/ActorRdfResolveHypermedia.jsonld#ActorRdfResolveHypermedia_default_bus"}),_=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links/^2.0.0/components/ActorRdfResolveHypermediaLinks.jsonld#ActorRdfResolveHypermediaLinks_default_bus"}),w=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links-queue/^2.0.0/components/ActorRdfResolveHypermediaLinksQueue.jsonld#ActorRdfResolveHypermediaLinksQueue_default_bus"}),T=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-serialize/^2.0.0/components/ActorRdfSerialize.jsonld#ActorRdfSerialize_default_bus"}),S=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-hypermedia/^2.0.0/components/ActorRdfUpdateHypermedia.jsonld#ActorRdfUpdateHypermedia_default_bus"}),O=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-quads/^2.0.0/components/ActorRdfUpdateQuads.jsonld#ActorRdfUpdateQuads_default_bus"}),E=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_default_bus"}),x=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_fallback_bus"}),A=new(r(83814).BusQueryOperation)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-operation/^2.0.0/components/ActorQueryOperation.jsonld#ActorQueryOperation_default_bus"}),R=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join/^2.0.0/components/ActorRdfJoin.jsonld#ActorRdfJoin_default_bus"}),I=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-quad-pattern/^2.0.0/components/ActorRdfResolveQuadPattern.jsonld#ActorRdfResolveQuadPattern_default_bus"}),P=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http-invalidate/^2.0.0/components/ActorHttpInvalidate.jsonld#ActorHttpInvalidate_default_bus"}),D=(new(r(76400).ActorContextPreprocessSourceToDestination)({name:"urn:comunica:default:context-preprocess/actors#source-to-destination",bus:a}),new(r(84190).MediatorCombinePipeline)({name:"urn:comunica:default:context-preprocess/mediators#main",bus:a})),N=(new(r(82738).ActorHashBindingsSha1)({name:"urn:comunica:default:hash-bindings/actors#sha1",bus:o}),new(r(7204).MediatorRace)({name:"urn:comunica:default:hash-bindings/mediators#main",bus:o})),j=(new(r(68723).ActorOptimizeQueryOperationJoinBgp)({name:"urn:comunica:default:optimize-query-operation/actors#join-bgp",bus:s}),new(r(1525).ActorOptimizeQueryOperationBgpToJoin)({name:"urn:comunica:default:optimize-query-operation/actors#bgp-to-join",bus:s}),new(r(67768).ActorOptimizeQueryOperationJoinConnected)({name:"urn:comunica:default:optimize-query-operation/actors#join-connected",bus:s}),new(r(84190).MediatorCombinePipeline)({name:"urn:comunica:default:optimize-query-operation/mediators#main",bus:s})),C=(new(r(93700).ActorQueryParseSparql)({prefixes:{dbpedia:"http://dbpedia.org/resource/","dbpedia-owl":"http://dbpedia.org/ontology/",dbpprop:"http://dbpedia.org/property/",dc:"http://purl.org/dc/terms/",dc11:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",foaf:"http://xmlns.com/foaf/0.1/",geo:"http://www.w3.org/2003/01/geo/wgs84_pos#",owl:"http://www.w3.org/2002/07/owl#",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",schema:"http://schema.org/",skos:"http://www.w3.org/2008/05/skos#",xsd:"http://www.w3.org/2001/XMLSchema#"},name:"urn:comunica:default:query-parse/actors#sparql",bus:c}),new(r(37873).ActorQueryParseGraphql)({name:"urn:comunica:default:query-parse/actors#graphql",bus:c}),new(r(7204).MediatorRace)({name:"urn:comunica:default:query-parse/mediators#main",bus:c})),M=(new(r(6234).ActorQueryResultSerializeJson)({mediaTypePriorities:{"application/json":1},mediaTypeFormats:{"application/json":"https://comunica.linkeddatafragments.org/#results_JSON"},name:"urn:comunica:default:query-result-serialize/actors#json",bus:u}),new(r(54399).ActorQueryResultSerializeSimple)({mediaTypePriorities:{simple:.9},mediaTypeFormats:{simple:"https://comunica.linkeddatafragments.org/#results_simple"},name:"urn:comunica:default:query-result-serialize/actors#simple",bus:u}),new(r(74295).ActorQueryResultSerializeSparqlCsv)({mediaTypePriorities:{"text/csv":.75},mediaTypeFormats:{"text/csv":"http://www.w3.org/ns/formats/SPARQL_Results_CSV"},name:"urn:comunica:default:query-result-serialize/actors#csv",bus:u}),new(r(30865).ActorQueryResultSerializeSparqlTsv)({mediaTypePriorities:{"text/tab-separated-values":.75},mediaTypeFormats:{"text/tab-separated-values":"http://www.w3.org/ns/formats/SPARQL_Results_TSV"},name:"urn:comunica:default:query-result-serialize/actors#sparql-tsv",bus:u}),new(r(33499).ActorQueryResultSerializeSparqlXml)({mediaTypePriorities:{"application/sparql-results+xml":.8},mediaTypeFormats:{"application/sparql-results+xml":"http://www.w3.org/ns/formats/SPARQL_Results_XML"},name:"urn:comunica:default:query-result-serialize/actors#sparql-xml",bus:u}),new(r(68266).ActorQueryResultSerializeTable)({columnWidth:50,mediaTypePriorities:{table:.6},mediaTypeFormats:{table:"https://comunica.linkeddatafragments.org/#results_table"},name:"urn:comunica:default:query-result-serialize/actors#table",bus:u}),new(r(93148).ActorQueryResultSerializeTree)({mediaTypePriorities:{tree:.5},mediaTypeFormats:{tree:"https://comunica.linkeddatafragments.org/#results_tree"},name:"urn:comunica:default:query-result-serialize/actors#tree",bus:u}),new(r(7204).MediatorRace)({name:"urn:comunica:default:query-result-serialize/mediators#serialize",bus:u})),L=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:query-result-serialize/mediators#mediaType",bus:u}),k=new(r(21413).MediatorCombineUnion)({field:"mediaTypeFormats",name:"urn:comunica:default:query-result-serialize/mediators#mediaTypeFormat",bus:u}),F=new(r(24154).ActorDereferenceFallback)({name:"urn:comunica:default:dereference/actors#fallback",bus:l}),B=new(r(7204).MediatorRace)({name:"urn:comunica:default:dereference/mediators#main",bus:l}),U=new(r(7204).MediatorRace)({name:"urn:comunica:default:dereference-rdf/mediators#main",bus:d}),q=(new(r(12321).ActorRdfJoinEntriesSortCardinality)({name:"urn:comunica:default:rdf-join-entries-sort/actors#cardinality",bus:h}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-join-entries-sort/mediators#main",bus:h})),V=(new(r(41998).ActorRdfJoinSelectivityVariableCounting)({name:"urn:comunica:default:rdf-join-selectivity/actors#variable-counting",bus:p}),new(r(92201).MediatorNumber)({field:"accuracy",type:"max",ignoreErrors:!0,name:"urn:comunica:default:rdf-join-selectivity/mediators#main",bus:p})),Q=(new(r(8962).ActorRdfMetadataPrimaryTopic)({metadataToData:!1,dataToMetadataOnInvalidMetadataGraph:!0,name:"urn:comunica:default:rdf-metadata/actors#primary-topic",bus:f}),new(r(59095).ActorRdfMetadataAll)({name:"urn:comunica:default:rdf-metadata/actors#all",bus:f}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-metadata/mediators#main",bus:f})),$=(new(r(69791).ActorRdfMetadataAccumulateCanContainUndefs)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#cancontainundefs",bus:y}),new(r(22074).ActorRdfMetadataAccumulateCardinality)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#cardinality",bus:y}),new(r(78345).ActorRdfMetadataAccumulatePageSize)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#pagesize",bus:y}),new(r(13905).ActorRdfMetadataAccumulateRequestTime)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#requesttime",bus:y}),new(r(21413).MediatorCombineUnion)({field:"metadata",name:"urn:comunica:default:rdf-metadata-accumulate/mediators#main",bus:y})),H=(new(r(88791).ActorRdfMetadataExtractHydraControls)({name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-controls",bus:g}),new(r(62270).ActorRdfMetadataExtractHydraCount)({predicates:["http://www.w3.org/ns/hydra/core#totalItems","http://rdfs.org/ns/void#triples"],name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-count",bus:g}),new(r(95831).ActorRdfMetadataExtractHydraPagesize)({predicates:["http://www.w3.org/ns/hydra/core#itemsPerPage"],name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-pagesize",bus:g}),new(r(25344).ActorRdfMetadataExtractRequestTime)({name:"urn:comunica:default:rdf-metadata-extract/actors#request-time",bus:g}),new(r(33394).ActorRdfMetadataExtractAllowHttpMethods)({name:"urn:comunica:default:rdf-metadata-extract/actors#allow-http-methods",bus:g}),new(r(13409).ActorRdfMetadataExtractPutAccepted)({name:"urn:comunica:default:rdf-metadata-extract/actors#put-accepted",bus:g}),new(r(31684).ActorRdfMetadataExtractPatchSparqlUpdate)({name:"urn:comunica:default:rdf-metadata-extract/actors#patch-sparql-update",bus:g}),new(r(17609).ActorRdfMetadataExtractSparqlService)({inferHttpsEndpoint:!0,name:"urn:comunica:default:rdf-metadata-extract/actors#sparql-service",bus:g}),new(r(21413).MediatorCombineUnion)({field:"metadata",name:"urn:comunica:default:rdf-metadata-extract/mediators#main",bus:g})),G=(new(r(44500).ActorRdfParseN3)({mediaTypePriorities:{"application/n-quads":1,"application/n-triples":.8,"application/trig":.95,"text/n3":.35,"text/turtle":.6},mediaTypeFormats:{"application/n-quads":"http://www.w3.org/ns/formats/N-Quads","application/n-triples":"http://www.w3.org/ns/formats/N-Triples","application/trig":"http://www.w3.org/ns/formats/TriG","text/n3":"http://www.w3.org/ns/formats/N3","text/turtle":"http://www.w3.org/ns/formats/Turtle"},priorityScale:1,name:"urn:comunica:default:rdf-parse/actors#n3",bus:m}),new(r(71422).ActorRdfParseRdfXml)({mediaTypePriorities:{"application/rdf+xml":1},mediaTypeFormats:{"application/rdf+xml":"http://www.w3.org/ns/formats/RDF_XML"},priorityScale:.5,name:"urn:comunica:default:rdf-parse/actors#rdfxml",bus:m}),new(r(47385).ActorRdfParseXmlRdfa)({mediaTypePriorities:{"application/xml":1,"image/svg+xml":1,"text/xml":1},mediaTypeFormats:{"application/xml":"http://www.w3.org/ns/formats/RDFa","image/svg+xml":"http://www.w3.org/ns/formats/RDFa","text/xml":"http://www.w3.org/ns/formats/RDFa"},priorityScale:.3,name:"urn:comunica:default:rdf-parse/actors#xmlrdfa",bus:m}),new(r(38688).ActorRdfParseShaclc)({mediaTypePriorities:{"text/shaclc":1,"text/shaclc-ext":.5},mediaTypeFormats:{"text/shaclc":"http://www.w3.org/ns/formats/Shaclc","text/shaclc-ext":"http://www.w3.org/ns/formats/ShaclcExtended"},priorityScale:.1,name:"urn:comunica:default:rdf-parse/actors#shaclc",bus:m}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-parse/mediators#parse",bus:m})),z=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:rdf-parse/mediators#mediaType",bus:m}),K=(new(r(9381).ActorRdfParseHtml)({busRdfParseHtml:b,mediaTypePriorities:{"application/xhtml+xml":.9,"text/html":1},mediaTypeFormats:{"application/xhtml+xml":"http://www.w3.org/ns/formats/HTML","text/html":"http://www.w3.org/ns/formats/HTML"},priorityScale:.2,name:"urn:comunica:default:rdf-parse/actors#html",bus:m}),new(r(29438).ActorRdfParseHtmlMicrodata)({name:"urn:comunica:default:rdf-parse-html/actors#microdata",bus:b}),new(r(75022).ActorRdfParseHtmlRdfa)({name:"urn:comunica:default:rdf-parse-html/actors#rdfa",bus:b}),new(r(2458).ActorRdfResolveHypermediaNone)({name:"urn:comunica:default:rdf-resolve-hypermedia/actors#none",bus:v}),new(r(92201).MediatorNumber)({field:"filterFactor",type:"max",ignoreErrors:!0,name:"urn:comunica:default:rdf-resolve-hypermedia/mediators#main",bus:v})),X=(new(r(62120).ActorRdfResolveHypermediaLinksNext)({name:"urn:comunica:default:rdf-resolve-hypermedia-links/actors#next",bus:_}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-hypermedia-links/mediators#main",bus:_})),W=(new(r(67506).ActorRdfResolveHypermediaLinksQueueFifo)({name:"urn:comunica:default:rdf-resolve-hypermedia-links-queue/actors#fifo",bus:w}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-hypermedia-links-queue/mediators#main",bus:w})),J=(new(r(97021).ActorRdfSerializeN3)({mediaTypePriorities:{"application/n-quads":1,"application/n-triples":.8,"application/trig":.95,"text/n3":.35,"text/turtle":.6},mediaTypeFormats:{"application/n-quads":"http://www.w3.org/ns/formats/N-Quads","application/n-triples":"http://www.w3.org/ns/formats/N-Triples","application/trig":"http://www.w3.org/ns/formats/TriG","text/n3":"http://www.w3.org/ns/formats/N3","text/turtle":"http://www.w3.org/ns/formats/Turtle"},name:"urn:comunica:default:rdf-serialize/actors#n3",bus:T}),new(r(21336).ActorRdfSerializeJsonLd)({jsonStringifyIndentSpaces:2,mediaTypePriorities:{"application/ld+json":1},mediaTypeFormats:{"application/ld+json":"http://www.w3.org/ns/formats/JSON-LD"},priorityScale:.9,name:"urn:comunica:default:rdf-serialize/actors#jsonld",bus:T}),new(r(76752).ActorRdfSerializeShaclc)({mediaTypePriorities:{"text/shaclc":1,"text/shaclc-ext":.5},mediaTypeFormats:{"text/shaclc":"http://www.w3.org/ns/formats/Shaclc","text/shaclc-ext":"http://www.w3.org/ns/formats/ShaclcExtended"},priorityScale:.1,name:"urn:comunica:default:rdf-serialize/actors#shaclc",bus:T}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-serialize/mediators#serialize",bus:T})),Y=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:rdf-serialize/mediators#mediaType",bus:T}),Z=new(r(21413).MediatorCombineUnion)({field:"mediaTypeFormats",name:"urn:comunica:default:rdf-serialize/mediators#mediaTypeFormat",bus:T}),ee=new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-update-hypermedia/mediators#main",bus:S}),te=(new(r(2340).ActorRdfUpdateQuadsRdfJsStore)({name:"urn:comunica:default:rdf-update-quads/actors#rdfjs-store",bus:O}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-update-quads/mediators#main",bus:O})),re=new(r(67951).ActorHttpFetch)({agentOptions:{keepAlive:!0,maxSockets:5},name:"urn:comunica:default:http/actors#fetch",bus:E}),ne=new(r(92201).MediatorNumber)({field:"time",type:"min",ignoreErrors:!0,name:"urn:comunica:default:http/mediators#no-fallback",bus:E}),ie=new(r(92201).MediatorNumber)({field:"time",type:"min",ignoreErrors:!0,name:"urn:comunica:default:http/mediators#main",bus:x}),ae=(new(r(78251).ActorQueryOperationValues)({name:"urn:comunica:default:query-operation/actors#values",bus:A}),new(r(92201).MediatorNumber)({field:"httpRequests",type:"min",ignoreErrors:!0,name:"urn:comunica:default:query-operation/mediators#main",bus:A})),oe=new(r(78557).MediatorJoinCoefficientsFixed)({cpuWeight:1,memoryWeight:1,timeWeight:10,ioWeight:100,name:"urn:comunica:default:rdf-join/mediators#main",bus:R}),se=new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-quad-pattern/mediators#main",bus:I}),ce=new(r(95069).MediatorAll)({name:"urn:comunica:default:http-invalidate/mediators#main",bus:P}),ue=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-update-quads-hypermedia/^2.0.0/components/ActorRdfUpdateQuadsHypermedia.jsonld#IActorRdfUpdateQuadsHypermediaArgs_default_invalidator",bus:P}),le=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/^2.0.0/components/ActorRdfResolveQuadPatternHypermedia.jsonld#IActorRdfResolveQuadPatternHypermediaArgs_default_invalidator",bus:P}),de=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator",bus:P}),he=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator",bus:P}),pe=(new(r(64849).ActorRdfJoinNone)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-none",bus:R}),new(r(85427).ActorRdfJoinSingle)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-single",bus:R}),new(r(3771).ActorRdfJoinMultiEmpty)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-empty",bus:R}),new(r(55393).ActorRdfJoinHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-hash",bus:R}),new(r(33023).ActorRdfJoinSymmetricHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-symmetric-hash",bus:R}),new(r(87622).ActorRdfJoinNestedLoop)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-nested-loop",bus:R}),new(r(66927).ActorRdfJoinMinusHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#minus-hash",bus:R}),new(r(56419).ActorRdfJoinMinusHashUndef)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#minus-hash-undef",bus:R}),new(r(36920).ActorRdfJoinOptionalNestedLoop)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#optional-nested-loop",bus:R}),new(r(14952).ActorRdfResolveHypermediaQpf)({mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorDereferenceRdf:U,subjectUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#subject",predicateUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate",objectUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#object",graphUri:"http://www.w3.org/ns/sparql-service-description#graph",name:"urn:comunica:default:rdf-resolve-hypermedia/actors#qpf",bus:v}),new(r(82950).ActorDereferenceRdfParse)({mediatorDereference:B,mediatorParse:G,mediatorParseMediatypes:z,mediaMappings:{htm:"text/html",html:"text/html",json:"application/json",jsonld:"application/ld+json",n3:"text/n3",nq:"application/n-quads",nquads:"application/n-quads",nt:"application/n-triples",ntriples:"application/n-triples",owl:"application/rdf+xml",rdf:"application/rdf+xml",rdfxml:"application/rdf+xml",shaclc:"text/shaclc",shaclce:"text/shaclc-ext",shc:"text/shaclc",shce:"text/shaclc-ext",svg:"image/svg+xml",svgz:"image/svg+xml",trig:"application/trig",ttl:"text/turtle",turtle:"text/turtle",xht:"application/xhtml+xml",xhtml:"application/xhtml+xml",xml:"application/xml"},name:"urn:comunica:default:dereference-rdf/actors#parse",bus:d}),new(r(89518).ActorRdfParseHtmlScript)({mediatorRdfParseMediatypes:z,mediatorRdfParseHandle:G,name:"urn:comunica:default:rdf-parse-html/actors#script",bus:b}),new(r(45322).ActorQueryResultSerializeRdf)({mediatorRdfSerialize:J,mediatorMediaTypeCombiner:Y,mediatorMediaTypeFormatCombiner:Z,name:"urn:comunica:default:query-result-serialize/actors#rdf",bus:u}),new(r(16949).ActorHttpWayback)({mediatorHttp:ne,name:"urn:comunica:default:http/actors#wayback",bus:x}),new(r(79852).ActorRdfParseJsonLd)({mediatorHttp:ie,mediaTypePriorities:{"application/json":.5,"application/ld+json":1},mediaTypeFormats:{"application/json":"http://www.w3.org/ns/formats/JSON-LD","application/ld+json":"http://www.w3.org/ns/formats/JSON-LD"},priorityScale:.9,name:"urn:comunica:default:rdf-parse/actors#jsonld",bus:m}),new(r(14579).ActorRdfResolveHypermediaSparql)({mediatorHttp:ie,checkUrlSuffix:!0,forceHttpGet:!1,cacheSize:1024,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#sparql",bus:v}),new(r(54612).ActorRdfUpdateHypermediaPatchSparqlUpdate)({mediatorHttp:ie,name:"urn:comunica:default:rdf-update-hypermedia/actors#patch-sparql-update",bus:S}),new(r(17344).ActorRdfUpdateHypermediaPutLdp)({mediatorHttp:ie,mediatorRdfSerializeMediatypes:Y,mediatorRdfSerialize:J,name:"urn:comunica:default:rdf-update-hypermedia/actors#put-ldp",bus:S}),new(r(61908).ActorRdfUpdateHypermediaSparql)({mediatorHttp:ie,checkUrlSuffixSparql:!0,checkUrlSuffixUpdate:!0,name:"urn:comunica:default:rdf-update-hypermedia/actors#sparql",bus:S}),new(r(71111).ActorQueryOperationSparqlEndpoint)({mediatorHttp:ie,checkUrlSuffixSparql:!0,checkUrlSuffixUpdate:!0,forceHttpGet:!1,name:"urn:comunica:default:query-operation/actors#sparql-endpoint",bus:A}),new(r(8589).ActorQueryOperationAsk)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#ask",bus:A}),new(r(44185).ActorQueryOperationBgpJoin)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#bgp",bus:A}),new(r(32023).ActorQueryOperationConstruct)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#construct",bus:A}),new(r(26245).ActorQueryOperationDescribeSubject)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#describe",bus:A}),new(r(51245).ActorQueryOperationDistinctHash)({mediatorHashBindings:N,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#distinct",bus:A}),new(r(97320).ActorQueryOperationExtend)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#extend",bus:A}),new(r(29403).ActorQueryOperationFilterSparqlee)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#filter",bus:A}),new(r(17877).ActorQueryOperationFromQuad)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#from",bus:A}),new(r(7375).ActorQueryOperationGroup)({mediatorHashBindings:N,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#group",bus:A}),new(r(24675).ActorQueryOperationNop)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#nop",bus:A}),new(r(3438).ActorQueryOperationOrderBySparqlee)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#orderby",bus:A}),new(r(82491).ActorQueryOperationProject)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#project",bus:A}),new(r(86019).ActorQueryOperationReducedHash)({mediatorHashBindings:N,cacheSize:100,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#reduced",bus:A}),new(r(85900).ActorQueryOperationService)({forceSparqlEndpoint:!1,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#service",bus:A}),new(r(86069).ActorQueryOperationSlice)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#slice",bus:A}),new(r(54036).ActorQueryOperationUnion)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#union",bus:A}),new(r(956).ActorQueryOperationPathAlt)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-alt",bus:A}),new(r(60283).ActorQueryOperationPathInv)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-inv",bus:A}),new(r(2450).ActorQueryOperationPathLink)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-link",bus:A}),new(r(14985).ActorQueryOperationPathNps)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-nps",bus:A}),new(r(53346).ActorQueryOperationPathOneOrMore)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-one-or-more",bus:A}),new(r(54945).ActorQueryOperationPathZeroOrMore)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-zero-or-more",bus:A}),new(r(39079).ActorQueryOperationPathZeroOrOne)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-zero-or-one",bus:A}),new(r(46270).ActorQueryOperationAddRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-add",bus:A}),new(r(71103).ActorQueryOperationClear)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-clear",bus:A}),new(r(56690).ActorQueryOperationUpdateCompositeUpdate)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-composite",bus:A}),new(r(71852).ActorQueryOperationCopyRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-copy",bus:A}),new(r(17166).ActorQueryOperationCreate)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-create",bus:A}),new(r(6215).ActorQueryOperationUpdateDeleteInsert)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-delete-insert",bus:A}),new(r(54322).ActorQueryOperationDrop)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-drop",bus:A}),new(r(82965).ActorQueryOperationLoad)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-load",bus:A}),new(r(69259).ActorQueryOperationMoveRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-move",bus:A}),new(r(39474).ActorRdfJoinMultiBind)({bindOrder:"depth-first",selectivityModifier:1e-4,mediatorJoinEntriesSort:q,mediatorQueryOperation:ae,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-bind",bus:R}),new(r(95117).ActorRdfJoinOptionalBind)({bindOrder:"depth-first",selectivityModifier:1e-4,mediatorQueryOperation:ae,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#optional-bind",bus:R}),new(r(1513).ActorQueryOperationJoin)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#join",bus:A}),new(r(42678).ActorQueryOperationLeftJoin)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#leftjoin",bus:A}),new(r(21530).ActorQueryOperationMinus)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#minus",bus:A}),new(r(14059).ActorQueryOperationPathSeq)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-seq",bus:A}),new(r(34442).ActorRdfJoinMultiSmallest)({mediatorJoinEntriesSort:q,mediatorJoin:oe,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-smallest",bus:R}),new(r(63632).ActorQueryOperationQuadpattern)({mediatorResolveQuadPattern:se,unionDefaultGraph:!1,name:"urn:comunica:default:query-operation/actors#quadpattern",bus:A}),new(r(87779).ActorRdfResolveQuadPatternFederated)({mediatorResolveQuadPattern:se,mediatorRdfMetadataAccumulate:$,skipEmptyPatterns:!1,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#federated",bus:I}),new(r(90106).ActorDereferenceHttp)({mediatorHttp:ie,maxAcceptHeaderLength:1024,maxAcceptHeaderLengthBrowser:128,name:"urn:comunica:default:dereference/actors#http",bus:l,beforeActors:[F]}),new(r(61357).ActorHttpProxy)({mediatorHttp:ie,name:"urn:comunica:default:http/actors#proxy",bus:E,beforeActors:[re]}),new(r(96226).ActorInitQuery)({mediatorOptimizeQueryOperation:j,mediatorQueryOperation:ae,mediatorQueryParse:C,mediatorQueryResultSerialize:M,mediatorQueryResultSerializeMediaTypeCombiner:L,mediatorQueryResultSerializeMediaTypeFormatCombiner:k,mediatorContextPreprocess:D,mediatorHttpInvalidate:ce,logger:n,defaultQueryInputFormat:"sparql",allowNoSources:!1,contextKeyShortcuts:{baseIRI:"@comunica/actor-init-query:baseIRI",datetime:"@comunica/actor-http-memento:datetime",destination:"@comunica/bus-rdf-update-quads:destination",explain:"@comunica/actor-init-query:explain",extensionFunctionCreator:"@comunica/actor-init-query:extensionFunctionCreator",extensionFunctions:"@comunica/actor-init-query:extensionFunctions",fetch:"@comunica/bus-http:fetch",functionArgumentsCache:"@comunica/actor-init-query:functionArgumentsCache",httpAuth:"@comunica/bus-http:auth",httpBodyTimeout:"@comunica/bus-http:http-body-timeout",httpIncludeCredentials:"@comunica/bus-http:include-credentials",httpProxyHandler:"@comunica/actor-http-proxy:httpProxyHandler",httpRetryCount:"@comunica/bus-http:http-retry-count",httpRetryDelay:"@comunica/bus-http:http-retry-delay",httpRetryOnServerError:"@comunica/bus-http:http-retry-on-server-error",httpTimeout:"@comunica/bus-http:http-timeout",initialBindings:"@comunica/actor-init-query:initialBindings",lenient:"@comunica/actor-init-query:lenient",log:"@comunica/core:log",queryFormat:"@comunica/actor-init-query:queryFormat",queryTimestamp:"@comunica/actor-init-query:queryTimestamp",readOnly:"@comunica/bus-query-operation:readOnly",recoverBrokenLinks:"@comunica/bus-http-wayback:recover-broken-links",source:"@comunica/bus-rdf-resolve-quad-pattern:source",sources:"@comunica/bus-rdf-resolve-quad-pattern:sources",unionDefaultGraph:"@comunica/bus-query-operation:unionDefaultGraph"},name:"urn:comunica:default:init/actors#query",bus:i})),fe=(new(r(14054).ActorRdfUpdateQuadsHypermedia)({cacheSize:100,httpInvalidator:ue,mediatorDereferenceRdf:U,mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorRdfUpdateHypermedia:ee,name:"urn:comunica:default:rdf-update-quads/actors#hypermedia",bus:O}),new(r(32008).ActorRdfResolveQuadPatternHypermedia)({cacheSize:100,httpInvalidator:le,maxIterators:64,aggregateStore:!1,mediatorDereferenceRdf:U,mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorMetadataAccumulate:$,mediatorRdfResolveHypermedia:K,mediatorRdfResolveHypermediaLinks:X,mediatorRdfResolveHypermediaLinksQueue:W,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#hypermedia",bus:I})),ye=new(r(68058).ActionObserverHttp)({httpInvalidator:de,name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActorQueryResultSerializeSparqlJson.jsonld#ActorQueryResultSerializeSparqlJson_default_observer",bus:E}),ge=new(r(81801).ActionObserverHttp)({httpInvalidator:he,name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActorQueryResultSerializeStats.jsonld#ActorQueryResultSerializeStats_default_observer",bus:E});new(r(68058).ActorQueryResultSerializeSparqlJson)({emitMetadata:!0,httpObserver:ye,mediaTypePriorities:{"application/sparql-results+json":.8},mediaTypeFormats:{"application/sparql-results+json":"http://www.w3.org/ns/formats/SPARQL_Results_JSON"},name:"urn:comunica:default:query-result-serialize/actors#sparql-json",bus:u}),new(r(81801).ActorQueryResultSerializeStats)({httpObserver:ge,mediaTypePriorities:{stats:.5},mediaTypeFormats:{stats:"https://comunica.linkeddatafragments.org/#results_stats"},name:"urn:comunica:default:query-result-serialize/actors#stats",bus:u}),new(r(62515).ActorRdfResolveQuadPatternRdfJsSource)({name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#rdfjs-source",bus:I,beforeActors:[fe]}),new(r(87798).ActorRdfResolveQuadPatternStringSource)({cacheSize:100,mediatorRdfParse:G,mediatorRdfResolveQuadPattern:se,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#string-source",bus:I,beforeActors:[fe]}),e.exports=pe},39901:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngine=void 0;const n=r(96226),i=r(73336);class a extends n.QueryEngineBase{constructor(e=i){super(e)}}t.QueryEngine=a},2159:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(39901),t)},33790:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractMediaTyped=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}async run(e){if("handle"in e){const t=e;return{handle:await this.runHandle(t.handle,t.handleMediaType,e.context)}}if("mediaTypes"in e)return{mediaTypes:await this.getMediaTypes(e.context)};if("mediaTypeFormats"in e)return{mediaTypeFormats:await this.getMediaTypeFormats(e.context)};throw new Error("Either a handle, mediaTypes or mediaTypeFormats action needs to be provided")}async test(e){if("handle"in e){const t=e;return{handle:await this.testHandle(t.handle,t.handleMediaType,e.context)}}if("mediaTypes"in e)return{mediaTypes:await this.testMediaType(e.context)};if("mediaTypeFormats"in e)return{mediaTypeFormats:await this.testMediaTypeFormats(e.context)};throw new Error("Either a handle, mediaTypes or mediaTypeFormats action needs to be provided")}}t.ActorAbstractMediaTyped=i},86171:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractMediaTypedFixed=void 0;const n=r(33790);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e);const t=this.priorityScale||0===this.priorityScale?this.priorityScale:1;this.mediaTypePriorities&&Object.entries(this.mediaTypePriorities).forEach((([e,r],n)=>{this.mediaTypePriorities[e]=t*r})),this.mediaTypePriorities=Object.freeze(this.mediaTypePriorities),this.mediaTypeFormats=Object.freeze(this.mediaTypeFormats)}async testHandle(e,t,r){if(!t||!(t in this.mediaTypePriorities))throw new Error(`Unrecognized media type: ${t}`);return await this.testHandleChecked(e,r)}async testMediaType(e){return!0}async getMediaTypes(e){return this.mediaTypePriorities}async testMediaTypeFormats(e){return!0}async getMediaTypeFormats(e){return this.mediaTypeFormats}}t.ActorAbstractMediaTypedFixed=i},89208:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33790),t),i(r(86171),t)},51573:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractPath=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(89227),s=r(91194),c=r(6053),u=r(6789),l=r(55846),d=new s.DataFactory,h=new n.BindingsFactory;class p extends i.ActorQueryOperationTypedMediated{constructor(e,t){super(e,"path"),this.predicateType=t}async testOperation(e,t){if(e.predicate.type!==this.predicateType)throw new Error(`This Actor only supports ${this.predicateType} Path operations.`);return!0}generateVariable(e,t){return t?!e||e.subject.value!==t&&e.object.value!==t?d.variable(t):this.generateVariable(e,`${t}b`):this.generateVariable(e,"b")}async isPathArbitraryLengthDistinct(e,t){return e.get(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey)?{context:e=e.set(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey,!1),operation:void 0}:{context:e=e.set(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey,!0),operation:i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:p.FACTORY.createDistinct(t),context:e}))}}async predicateStarGraphVariable(e,t,r,n,a){const s=this.generateVariable(p.FACTORY.createPath(e,r,t,n)),c=p.FACTORY.createUnion([p.FACTORY.createPattern(e,s,t,n),p.FACTORY.createPattern(t,s,e,n)]),u=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:a,operation:c})),l=new Set;return{bindingsStream:new o.MultiTransformIterator(u.bindingsStream,{multiTransform:i=>{const s=i.get(n);return l.has(s.value)?new o.EmptyIterator:(l.add(s.value),new o.TransformIterator((async()=>{const i=new o.BufferedIterator;return await this.getObjectsPredicateStar(e,r,s,a,{},i,{count:0}),i.transform({transform(e,r,i){i(h.bindings([[t,e],[n,s]])),r()}})}),{maxBufferSize:128}))},autoStart:!1}),metadata:u.metadata}}async getObjectsPredicateStarEval(e,t,r,n,i,a){if("Variable"===n.termType)return this.predicateStarGraphVariable(e,r,t,n,i);const o=new l.PathVariableObjectIterator(e,t,n,i,this.mediatorQueryOperation,a);return{bindingsStream:o.transform({autoStart:!1,transform(e,t,n){n(h.bindings([[r,e]])),t()}}),async metadata(){const e=await new Promise((e=>{o.getProperty("metadata",(t=>e(t())))}));return e.cardinality.value++,e}}}async getObjectsPredicateStar(e,t,r,n,a,o,s){const u=(0,c.termToString)(e);if(a[u])return;o._push(e),a[u]=e,s.count++;const l=this.generateVariable(),d=p.FACTORY.createPath(e,t,l,r),h=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:d,context:n}));return h.bindingsStream.on("data",(async e=>{const i=e.get(l);await this.getObjectsPredicateStar(i,t,r,n,a,o,s)})),h.bindingsStream.on("end",(()=>{0==--s.count&&o.close()})),h.metadata}async getSubjectAndObjectBindingsPredicateStar(e,t,r,n,a,o,s,u,l,d,f){const y=(0,c.termToString)(n)+(0,c.termToString)(o);if(l[y])return;if(f.count++,l[y]=!0,d._push(h.bindings([[e,r],[t,n]])),y in u){const n=await u[y];for(const i of n)await this.getSubjectAndObjectBindingsPredicateStar(e,t,r,i,a,o,s,u,l,d,f);return void(0==--f.count&&d.close())}const g=new Promise((async(c,h)=>{const y=[],g=this.generateVariable(),m=p.FACTORY.createPath(n,a,g,o),b=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:m,context:s}));b.bindingsStream.on("data",(async n=>{const i=n.get(g);y.push(i),await this.getSubjectAndObjectBindingsPredicateStar(e,t,r,i,a,o,s,u,l,d,f)})),b.bindingsStream.on("error",h),b.bindingsStream.on("end",(()=>{0==--f.count&&d.close(),c(y)}))}));u[y]=g}}t.ActorAbstractPath=p,p.FACTORY=new u.Factory},55846:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PathVariableObjectIterator=void 0;const n=r(83814),i=r(89227),a=r(91194),o=r(6053),s=r(6789),c=new a.DataFactory,u=new s.Factory;class l extends i.BufferedIterator{constructor(e,t,r,n,i,a,o=16){super({autoStart:!0}),this.subject=e,this.predicate=t,this.graph=r,this.context=n,this.mediatorQueryOperation=i,this.maxRunningOperations=o,this.termHashes=new Map,this.runningOperations=[],this.pendingOperations=[],this._push(this.subject,a)}_end(e){for(const e of this.runningOperations)e.destroy();super._end(e)}_push(e,t=!0){let r;if(t&&(r=(0,o.termToString)(e),this.termHashes.has(r)))return;const n=c.variable("b");this.pendingOperations.push({variable:n,operation:u.createPath(e,this.predicate,n,this.graph)}),r&&(this.termHashes.set(r,e),super._push(e))}_read(e,t){const r=this;(async function(){for(;r.runningOperations.lengthr.destroy(e))),i.on("readable",(()=>{r.readable=!0,r._fillBufferAsync()})),i.on("end",(()=>{r.runningOperations.splice(r.runningOperations.indexOf(i),1),r.readable=!0,r._fillBufferAsync()}))),r.setProperty("metadata",t.metadata)}let t,i=0;for(;i!==(i=e);)for(let n=0;n0;n++)null!==(t=r.runningOperations[n].read())&&(e--,r._push(t));0===r.runningOperations.length&&0===r.pendingOperations.length&&r.close()})().then((()=>{t()}),(e=>this.destroy(e)))}}t.PathVariableObjectIterator=l},26622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(51573),t),i(r(55846),t)},35320:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorContextPreprocessSourceToDestination=void 0;const n=r(20846),i=r(78470);class a extends n.ActorContextPreprocess{constructor(e){super(e)}async test(e){return!0}async run(e){if(e.context.get(i.KeysRdfResolveQuadPattern.sources)&&!e.context.get(i.KeysRdfUpdateQuads.destination)){const t=e.context.get(i.KeysRdfResolveQuadPattern.sources);if(1===t.length)return{context:e.context.set(i.KeysRdfUpdateQuads.destination,t[0])}}return e}}t.ActorContextPreprocessSourceToDestination=a},76400:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35320),t)},68327:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceFallback=void 0;const n=r(14402);class i extends n.ActorDereference{constructor(e){super(e)}async test(e){return!0}async run(e){return this.handleDereferenceErrors(e,new Error(`Could not dereference '${e.url}'`))}}t.ActorDereferenceFallback=i},24154:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(68327),t)},43800:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceHttp=void 0;const n=r(27734);class i extends n.ActorDereferenceHttpBase{getMaxAcceptHeaderLength(){return this.maxAcceptHeaderLengthBrowser}}t.ActorDereferenceHttp=i},27734:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceHttpBase=t.mediaTypesToAcceptString=void 0;const n=r(14402),i=r(80389),a=r(96279),o=r(84690),s=r(29038),c=/^[^ ;]*/u;function u(e,t){const r=[],n=Object.entries(e).map((([e,t])=>({mediaType:e,priority:t}))).sort(((e,t)=>t.priority===e.priority?e.mediaType.localeCompare(t.mediaType):t.priority-e.priority));let i=n.length-1;for(const{mediaType:e,priority:a}of n){const n=e+(1!==a?`;q=${a.toFixed(3).replace(/0*$/u,"")}`:"");if(i+n.length>t){for(;i+9>t;)i-=(r.pop()||"").length+1;r.push("*/*;q=0.1");break}r.push(n),i+=n.length}return 0===r.length?"*/*":r.join(",")}t.mediaTypesToAcceptString=u;class l extends n.ActorDereference{constructor(e){super(e)}async test({url:e}){if(!/^https?:/u.test(e))throw new Error(`Cannot retrieve ${e} because it is not an HTTP(S) URL.`);return!0}async run(e){let t=!0;const r=new a.Headers(e.headers);let l;r.append("Accept",u(await(e.mediaTypes?.())??{},this.getMaxAcceptHeaderLength()));const d=Date.now();try{l=await this.mediatorHttp.mediate({context:e.context,init:{headers:r,method:e.method},input:e.url})}catch(t){return this.handleDereferenceErrors(e,t)}const h=(0,o.resolve)(l.url,e.url),p=Date.now()-d;if(200!==l.status){t=!1;const r=l.body?await s(i.ActorHttp.toNodeReadable(l.body)):"empty response";if(!e.acceptErrors){const t=new Error(`Could not retrieve ${e.url} (HTTP status ${l.status}):\n${r}`);return this.handleDereferenceErrors(e,t,l.headers,p)}}const f=c.exec(l.headers.get("content-type")??"")?.[0];return{url:h,data:t?i.ActorHttp.toNodeReadable(l.body):(0,n.emptyReadable)(),exists:t,requestTime:p,headers:l.headers,mediaType:"text/plain"!==f?f:void 0}}}t.ActorDereferenceHttpBase=l},90106:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(43800),t),i(r(27734),t)},84295:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceRdfParse=void 0;const n=r(20961);class i extends n.ActorDereferenceRdf{constructor(e){super(e)}async getMetadata(e){return{baseIRI:e.url}}}t.ActorDereferenceRdfParse=i},82950:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84295),t)},84699:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHashBindingsSha1=void 0;const n=r(47582),i=r(34485),a=r(6053),o=r(93344);class s extends n.ActorHashBindings{async test(e){if(!e.allowHashCollisions)throw new Error(`Actor ${this.name} can not provide hash functions without hash collisions`);return!0}async run(e){return{hashFunction:e=>(0,i.sha1)().update(o(Object.fromEntries([...e].map((([e,t])=>[(0,a.termToString)(e),(0,a.termToString)(t)]))))).digest("hex"),hashCollisions:!0}}}t.ActorHashBindingsSha1=s},82738:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84699),t)},65793:(e,t,r)=>{"use strict";var n=r(48834).Buffer;Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpFetch=void 0;const i=r(80389),a=r(78470);r(43616);const o=r(73343);class s extends i.ActorHttp{constructor(e){super(e),this.userAgent=s.createUserAgent(),this.fetchInitPreprocessor=new o.FetchInitPreprocessor(e.agentOptions)}static createUserAgent(){return`Comunica/actor-http-fetch (${void 0===globalThis.navigator?`Node.js ${process.version}; ${process.platform}`:`Browser-${globalThis.navigator.userAgent}`})`}async test(e){return{time:Number.POSITIVE_INFINITY}}static async getResponse(e,t,r,n,i,a){let o,s=n+1;for(;s-- >0;)try{const n=await e(t,r);if(a&&n.status>=500&&n.status<600)throw new Error(`Server replied with response code ${n.status}: ${n.statusText}`);return n}catch(e){if(o=e,r.signal?.aborted)throw e;s>0&&await new Promise(((e,t)=>{setTimeout(e,i),r.signal?.addEventListener("abort",(()=>{t(new Error("Fetch aborted by timeout."))}))}))}throw n>0?new Error(`Number of fetch retries (${n}) exceeded. Last error: ${String(o)}`):o}async run(e){const t=e.init?.headers??{};e.init=e.init??{},e.init.headers=new Headers(t),e.init.headers.has("user-agent")||e.init.headers.append("user-agent",this.userAgent);const r=e.context.get(a.KeysHttp.auth);r&&e.init.headers.append("Authorization",`Basic ${n.from(r).toString("base64")}`),this.logInfo(e.context,`Requesting ${"string"==typeof e.input?e.input:e.input.url}`,(()=>({headers:i.ActorHttp.headersToHash(new Headers(e.init.headers)),method:e.init.method||"GET"}))),e.init?.headers&&"append"in e.init.headers&&e.context.has(a.KeysHttp.fetch)&&(e.init.headers=i.ActorHttp.headersToHash(e.init.headers));let o={...e.init};e.context.get(a.KeysHttp.includeCredentials)&&(o.credentials="include");const c=e.context?.get(a.KeysHttp.httpTimeout);let u,l;if(void 0!==c){const e=await this.fetchInitPreprocessor.createAbortController();o.signal=e.signal,l=()=>e.abort(),u=setTimeout((()=>l()),c)}try{o=await this.fetchInitPreprocessor.handle(o);const t=e.context?.get(a.KeysHttp.httpRetryCount)??0,r=e.context?.get(a.KeysHttp.httpRetryDelay)??0,n=e.context?.get(a.KeysHttp.httpRetryOnServerError)??!1,i=e.context?.get(a.KeysHttp.fetch),c=await s.getResponse(i||fetch,e.input,o,t,r,n);return void 0!==u&&(e.context?.get(a.KeysHttp.httpBodyTimeout)&&c.body?(l=()=>c.body?.cancel(new Error(`HTTP timeout when reading the body of ${c.url}.\nThis error can be disabled by modifying the 'httpBodyTimeout' and/or 'httpTimeout' options.`)),c.body.on("close",(()=>{clearTimeout(u)}))):clearTimeout(u)),c.body&&!c.body.cancel&&(c.body.cancel=async e=>{c.body.destroy(e),void 0!==u&&clearTimeout(u)}),c}catch(e){throw void 0!==u&&clearTimeout(u),e}}}t.ActorHttpFetch=s},73343:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchInitPreprocessor=void 0;const n=r(80389);t.FetchInitPreprocessor=class{async handle(e){if(e.headers){const t=new Headers(e.headers);t.has("user-agent")&&t.delete("user-agent"),e.headers=t}if(e?.headers&&"append"in e.headers&&(e.headers=n.ActorHttp.headersToHash(e.headers)),e.body&&"string"!=typeof e.body&&"getReader"in e.body){const t=e.body.getReader(),r=[];for(;;){const{done:e,value:n}=await t.read();if(e)break;r.push(n)}e.body=r.join("")}return{keepalive:!e.body,...e}}async createAbortController(){return new AbortController}}},67951:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(65793),t)},22360:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpProxy=void 0;const n=r(80389),i=r(78470);class a extends n.ActorHttp{constructor(e){super(e)}async test(e){const t=e.context.get(i.KeysHttpProxy.httpProxyHandler);if(!t)throw new Error(`Actor ${this.name} could not find a proxy handler in the context.`);if(!await t.getProxy(e))throw new Error(`Actor ${this.name} could not determine a proxy for the given request.`);return{time:Number.POSITIVE_INFINITY}}async run(e){const t="string"==typeof e.input?e.input:e.input.url,r=e.context.get(i.KeysHttpProxy.httpProxyHandler),n=await this.mediatorHttp.mediate({...await r.getProxy(e),context:e.context.delete(i.KeysHttpProxy.httpProxyHandler)});return Object.defineProperty(n,"url",{configurable:!0,enumerable:!0,get:()=>n.headers.get("x-final-url")??t}),n}}t.ActorHttpProxy=a},61852:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ProxyHandlerStatic=void 0,t.ProxyHandlerStatic=class{constructor(e){this.prefixUrl=e}async getProxy(e){return{init:e.init,input:this.modifyInput(e.input)}}modifyInput(e){return"string"==typeof e?this.prefixUrl+e:new Request(this.prefixUrl+e.url,e)}}},61357:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22360),t),i(r(61852),t)},77224:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpWayback=void 0;const n=r(80389),i=r(78470),a=r(29038);r(43616);const o="http://wayback.archive-it.org/";function s(e){const t=new Request(e.input,e.init);return{input:new Request(new URL(`/${t.url}`,o),t)}}function c(e){const t=e.get(i.KeysHttpProxy.httpProxyHandler);return t?e=>t.getProxy(s(e)):e=>Promise.resolve(s(e))}class u extends n.ActorHttp{constructor(e){super(e)}async test(e){return!0}async run(e){let t=await this.mediatorHttp.mediate(e);if(404===t.status&&e.context.get(i.KeysHttpWayback.recoverBrokenLinks)){let r=await this.mediatorHttp.mediate({...e,context:e.context.set(i.KeysHttpWayback.recoverBrokenLinks,!1).set(i.KeysHttpProxy.httpProxyHandler,{getProxy:c(e.context)})});200===r.status&&([t,r]=[r,t]);const{body:o}=r;o&&("destroy"in o&&"function"==typeof o.destroy?o.destroy():await a(n.ActorHttp.toNodeReadable(r.body)))}return t}}t.ActorHttpWayback=u},16949:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77224),t)},13757:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInitQuery=void 0;const n=r(4739);"undefined"==typeof process&&(globalThis.process=r(34406));class i extends n.ActorInitQueryBase{}t.ActorInitQuery=i},4739:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInitQueryBase=void 0;const n=r(40104);class i extends n.ActorInit{constructor(e){e.contextKeyShortcutsExtensions?.forEach((t=>{if(Object.keys(e.contextKeyShortcuts).some((e=>Object.keys(t).includes(e))))throw new Error("Duplicate keys found while adding `contextKeyShortcutsExtensions`.");e.contextKeyShortcuts={...e.contextKeyShortcuts,...t}})),super(e)}async test(e){return!0}async run(e){throw new Error("ActorInitSparql#run is not supported in the browser.")}}t.ActorInitQueryBase=i},78332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryPhysicalQueryPlanLogger=void 0;const n=r(6053);t.MemoryPhysicalQueryPlanLogger=class{constructor(){this.children=new Map}logOperation(e,t,r,n,i,a){const o={actor:i,logicalOperator:e,physicalOperator:t,rawNode:r,children:[],metadata:a};if(this.children.set(r,o.children),this.rootNode){if(!n)throw new Error("Detected more than one parent-less node");const e=this.children.get(n);if(!e)throw new Error("Could not find parent node");e.push(o)}else{if(n)throw new Error("No root node has been set yet, while a parent is being referenced");this.rootNode=o}}toJson(){return this.rootNode?this.planNodeToJson(this.rootNode):{}}planNodeToJson(e){return{logical:e.logicalOperator,physical:e.physicalOperator,...this.getLogicalMetadata(e.rawNode),...e.metadata,...e.children.length>0?{children:e.children.map((e=>this.planNodeToJson(e)))}:{}}}getLogicalMetadata(e){if("type"in e){const t=e;switch(t.type){case"pattern":return{pattern:this.quadToString(t)};case"project":return{variables:t.variables.map((e=>e.value))}}}return{}}quadToString(e){return`${(0,n.termToString)(e.subject)} ${(0,n.termToString)(e.predicate)} ${(0,n.termToString)(e.object)}${"DefaultGraph"===e.graph.termType?"":` ${(0,n.termToString)(e.graph)}`}`}}},53451:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngineBase=void 0;const n=r(83814),i=r(78470),a=r(21049),o=r(78332);class s{constructor(e){this.actorInitQuery=e,this.defaultFunctionArgumentsCache={}}async queryBindings(e,t){return this.queryOfType(e,t,"bindings")}async queryQuads(e,t){return this.queryOfType(e,t,"quads")}async queryBoolean(e,t){return this.queryOfType(e,t,"boolean")}async queryVoid(e,t){return this.queryOfType(e,t,"void")}async queryOfType(e,t,r){const n=await this.query(e,t);if(n.resultType===r)return await n.execute();throw new Error(`Query result type '${r}' was expected, while '${n.resultType}' was found.`)}async query(e,t){const r=await this.queryOrExplain(e,t);if("explain"in r)throw new Error("Tried to explain a query when in query-only mode");return r}async explain(e,t,r){return t.explain=r,await this.queryOrExplain(e,t)}async queryOrExplain(e,t){t=t||{};for(const e in t)this.actorInitQuery.contextKeyShortcuts[e]&&(t[this.actorInitQuery.contextKeyShortcuts[e]]=t[e],delete t[e]);let r=new a.ActionContext(t),c={language:"sparql",version:"1.1"};r.has(i.KeysInitQuery.queryFormat)&&(c=r.get(i.KeysInitQuery.queryFormat),r=r.delete(i.KeysInitQuery.queryFormat),"graphql"===c.language&&(r=r.setDefault(i.KeysInitQuery.graphqlSingularizeVariables,{})));const u=r.get(i.KeysInitQuery.baseIRI);r=r.setDefault(i.KeysInitQuery.queryTimestamp,new Date).setDefault(i.KeysRdfResolveQuadPattern.sourceIds,new Map).setDefault(i.KeysCore.log,this.actorInitQuery.logger).setDefault(i.KeysInitQuery.functionArgumentsCache,this.defaultFunctionArgumentsCache).setDefault(i.KeysRdfResolveQuadPattern.hypermediaSourcesAggregatedStores,new Map),r=(await this.actorInitQuery.mediatorContextPreprocess.mediate({context:r})).context;const l=r.get(i.KeysInitQuery.explain);let d;if("string"==typeof e){r=r.set(i.KeysInitQuery.queryString,e);const t=await this.actorInitQuery.mediatorQueryParse.mediate({context:r,query:e,queryFormat:c,baseIRI:u});d=t.operation,t.baseIRI&&(r=r.set(i.KeysInitQuery.baseIRI,t.baseIRI))}else d=e;if("parsed"===l)return{explain:!0,type:l,data:d};r.has(i.KeysInitQuery.initialBindings)&&(d=(0,n.materializeOperation)(d,r.get(i.KeysInitQuery.initialBindings)),r=r.delete(i.KeysInitQuery.queryString));const h=await this.actorInitQuery.mediatorOptimizeQueryOperation.mediate({context:r,operation:d});if(d=h.operation,r=h.context||r,"logical"===l)return{explain:!0,type:l,data:d};let p;r=r.set(i.KeysInitQuery.query,d),"physical"===l&&(p=new o.MemoryPhysicalQueryPlanLogger,r=r.set(i.KeysInitQuery.physicalQueryPlanLogger,p));const f=await this.actorInitQuery.mediatorQueryOperation.mediate({context:r,operation:d});f.context=r;const y=s.internalToFinalResult(f);if(p){switch(y.resultType){case"bindings":case"quads":await(await y.execute()).toArray();break;case"boolean":case"void":await y.execute()}return{explain:!0,type:l,data:p.toJson()}}return y}async getResultMediaTypes(e){return e=a.ActionContext.ensureActionContext(e),(await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeCombiner.mediate({context:e,mediaTypes:!0})).mediaTypes}async getResultMediaTypeFormats(e){return e=a.ActionContext.ensureActionContext(e),(await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeFormatCombiner.mediate({context:e,mediaTypeFormats:!0})).mediaTypeFormats}async resultToString(e,t,r){if(r=a.ActionContext.ensureActionContext(r),!t)switch(e.resultType){case"bindings":t="application/json";break;case"quads":t="application/trig";break;default:t="simple"}const n={...await s.finalToInternalResult(e),context:r};return(await this.actorInitQuery.mediatorQueryResultSerialize.mediate({context:r,handle:n,handleMediaType:t})).handle}invalidateHttpCache(e,t){return t=a.ActionContext.ensureActionContext(t),this.actorInitQuery.mediatorHttpInvalidate.mediate({url:e,context:t})}static internalToFinalResult(e){switch(e.type){case"bindings":return{resultType:"bindings",execute:async()=>e.bindingsStream,metadata:async()=>await e.metadata(),context:e.context};case"quads":return{resultType:"quads",execute:async()=>e.quadStream,metadata:async()=>await e.metadata(),context:e.context};case"boolean":return{resultType:"boolean",execute:async()=>e.execute(),context:e.context};case"void":return{resultType:"void",execute:async()=>e.execute(),context:e.context}}}static async finalToInternalResult(e){switch(e.resultType){case"bindings":return{type:"bindings",bindingsStream:await e.execute(),metadata:async()=>await e.metadata()};case"quads":return{type:"quads",quadStream:await e.execute(),metadata:async()=>await e.metadata()};case"boolean":return{type:"boolean",execute:()=>e.execute()};case"void":return{type:"void",execute:()=>e.execute()}}}}t.QueryEngineBase=s},96226:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngineBase=void 0,i(r(4739),t),i(r(13757),t);var a=r(53451);Object.defineProperty(t,"QueryEngineBase",{enumerable:!0,get:function(){return a.QueryEngineBase}})},5309:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationBgpToJoin=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{bgp:(e,t)=>({recurse:!1,result:t.createJoin(e.patterns)})}),context:e.context}}}t.ActorOptimizeQueryOperationBgpToJoin=a},1525:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5309),t)},84778:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationJoinBgp=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{join:(e,t)=>e.input.every((e=>"bgp"===e.type))?{recurse:!1,result:t.createBgp(e.input.flatMap((e=>e.patterns)))}:{recurse:!1,result:e}}),context:e.context}}}t.ActorOptimizeQueryOperationJoinBgp=a},68723:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84778),t)},30230:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationJoinConnected=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{join:(e,t)=>({recurse:!1,result:a.cluster(e,t)})}),context:e.context}}static cluster(e,t){let r,n=e.input.map((e=>({inScopeVariables:Object.fromEntries(i.Util.inScopeVariables(e).map((e=>[e.value,!0]))),entries:[e]})));do{r=n,n=a.clusterIteration(r)}while(r.length!==n.length);const o=n.map((e=>t.createJoin(e.entries)));return 1===o.length?o[0]:t.createJoin(o,!1)}static clusterIteration(e){const t=[];for(const r of e){let e=!1;for(const n of t)if(a.haveOverlappingVariables(r.inScopeVariables,n.inScopeVariables)){n.entries=[...n.entries,...r.entries],n.inScopeVariables={...n.inScopeVariables,...r.inScopeVariables},e=!0;break}e||t.push({inScopeVariables:r.inScopeVariables,entries:r.entries})}return t}static haveOverlappingVariables(e,t){for(const r of Object.keys(e))if(t[r])return!0;return!1}}t.ActorOptimizeQueryOperationJoinConnected=a},67768:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(30230),t)},83094:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationAsk=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"ask")}async testOperation(e,t){return!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),{bindingsStream:i}=n.ActorQueryOperation.getSafeBindings(r);return{type:"boolean",execute:async()=>1===(await i.take(1).toArray()).length}}}t.ActorQueryOperationAsk=i},8589:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(83094),t)},51238:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationBgpJoin=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"bgp")}async testOperation(e,t){return!0}async runOperation(e,t){return this.mediatorQueryOperation.mediate({operation:a.FACTORY.createJoin(e.patterns),context:t})}}t.ActorQueryOperationBgpJoin=a,a.FACTORY=new i.Factory},44185:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(51238),t)},13804:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationConstruct=void 0;const n=r(83814),i=r(98086),a=r(6789),o=r(86031);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"construct")}static getVariables(e){return(0,i.uniqTerms)([].concat.apply([],e.map((e=>(0,i.getVariables)((0,i.getTermsNested)(e))))))}async testOperation(e,t){return!0}async runOperation(e,t){const r=s.getVariables(e.template),i={type:a.Algebra.types.PROJECT,input:e.input,variables:r},c=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:i,context:t}));return{metadata:()=>c.metadata().then((t=>({...t,order:void 0,cardinality:{type:t.cardinality.type,value:t.cardinality.value*e.template.length},canContainUndefs:!1,availableOrders:void 0}))),quadStream:new o.BindingsToQuadsIterator(e.template,c.bindingsStream),type:"quads"}}}t.ActorQueryOperationConstruct=s},86031:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsToQuadsIterator=void 0;const n=r(89227),i=r(91194),a=r(98086),o=new i.DataFactory;class s extends n.MultiTransformIterator{constructor(e,t){super(t,{autoStart:!1}),this.template=e,this.blankNodeCounter=0}static bindTerm(e,t){return"Variable"===t.termType?e.get(t):t}static bindQuad(e,t){try{return(0,a.mapTermsNested)(t,(t=>{const r=s.bindTerm(e,t);if(!r)throw new Error("Unbound term");return r}))}catch{}}static localizeBlankNode(e,t){return"BlankNode"===t.termType?o.blankNode(`${t.value}${e}`):t}static localizeQuad(e,t){return(0,a.mapTermsNested)(t,(t=>s.localizeBlankNode(e,t)))}bindTemplate(e,t,r){return t.map(s.localizeQuad.bind(null,r)).map((t=>s.bindQuad.bind(null,e)(t))).filter(Boolean)}_createTransformer(e){return new n.ArrayIterator(this.bindTemplate(e,this.template,this.blankNodeCounter++),{autoStart:!1})}}t.BindingsToQuadsIterator=s},32023:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(13804),t),i(r(86031),t)},6159:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDescribeSubject=void 0;const n=r(54036),i=r(83814),a=r(89227),o=r(91194),s=r(6789),c=new o.DataFactory;class u extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"describe")}async testOperation(e,t){return!0}async runOperation(e,t){const r=e.terms.filter((e=>"Variable"!==e.termType)).map((e=>{const t=[c.quad(e,c.variable("__predicate"),c.variable("__object"))];return t.forEach((e=>e.type="pattern")),{input:{type:s.Algebra.types.BGP,patterns:t},template:t,type:"construct"}}));if(r.length!==e.terms.length){let t=[];e.terms.filter((e=>"Variable"===e.termType)).forEach(((e,r)=>{const n=[c.quad(e,c.variable(`__predicate${r}`),c.variable(`__object${r}`))];n.forEach((e=>e.type="pattern")),t=[...t,...n]})),r.push({input:{type:s.Algebra.types.JOIN,input:[e.input,{type:s.Algebra.types.BGP,patterns:t}]},template:t,type:s.Algebra.types.CONSTRUCT})}const o=(await Promise.all(r.map((e=>this.mediatorQueryOperation.mediate({operation:e,context:t}))))).map(i.ActorQueryOperation.getSafeQuads);return{type:"quads",quadStream:new a.UnionIterator(o.map((e=>e.quadStream)),{autoStart:!1}),metadata:()=>Promise.all(o.map((e=>e.metadata()))).then((e=>n.ActorQueryOperationUnion.unionMetadata(e,!1)))}}}t.ActorQueryOperationDescribeSubject=u},26245:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(6159),t)},39794:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDistinctHash=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"distinct")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t}));return{type:"bindings",bindingsStream:r.bindingsStream.filter(await this.newHashFilter(t)),metadata:r.metadata}}async newHashFilter(e){const{hashFunction:t}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:e}),r={};return e=>{const n=t(e);return!(n in r)&&(r[n]=!0)}}}t.ActorQueryOperationDistinctHash=i},51245:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(39794),t)},50487:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationExtend=void 0;const n=r(79550),i=r(83814),a=r(89206);class o extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"extend")}async testOperation(e,t){return Boolean(new a.AsyncEvaluator(e.expression,i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation))),!0}async runOperation(e,t){const{expression:r,input:o,variable:s}=e,c=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:o,context:t}));if((await c.metadata()).variables.some((e=>e.equals(s))))throw new Error(`Illegal binding to variable '${s.value}' that has already been bound`);const u={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},l=new a.AsyncEvaluator(r,u),d=c.bindingsStream.transform({autoStart:!1,transform:async(e,r,i)=>{try{const t=await l.evaluate(e);i(e.set(s,t))}catch(r){(0,a.isExpressionError)(r)?(i(e),this.logWarn(t,`Expression error for extend operation (${r.message})with bindings '${(0,n.bindingsToString)(e)}'`)):d.emit("error",r)}r()}});return{type:"bindings",bindingsStream:d,async metadata(){const e=await c.metadata();return{...e,variables:[...e.variables,s]}}}}}t.ActorQueryOperationExtend=o},97320:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50487),t)},25534:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationFilterSparqlee=void 0;const n=r(79550),i=r(83814),a=r(89206);class o extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"filter")}async testOperation(e,t){const r={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)};return new a.AsyncEvaluator(e.expression,r),!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),o=i.ActorQueryOperation.getSafeBindings(r);i.ActorQueryOperation.validateQueryOutput(o,"bindings");const s={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},c=new a.AsyncEvaluator(e.expression,s),u=o.bindingsStream.transform({transform:async(e,r,i)=>{try{await c.evaluateAsEBV(e)&&i(e)}catch(r){(0,a.isExpressionError)(r)?this.logWarn(t,"Error occurred while filtering.",(()=>({error:r,bindings:(0,n.bindingsToString)(e)}))):u.emit("error",r)}r()},autoStart:!1});return{type:"bindings",bindingsStream:u,metadata:o.metadata}}}t.ActorQueryOperationFilterSparqlee=o},29403:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25534),t)},85005:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationFromQuad=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"from")}static copyOperation(e,t){const r={};for(const n of Object.keys(e))Array.isArray(e[n])&&"template"!==n?r[n]="variables"===n?e[n]:e[n].map(t):a.ALGEBRA_TYPES.includes(e[n].type)?r[n]=t(e[n]):r[n]=e[n];return r}static applyOperationDefaultGraph(e,t){if("bgp"===e.type&&e.patterns.length>0||"path"===e.type||"pattern"===e.type){if("bgp"===e.type)return a.joinOperations(e.patterns.map((e=>{if("DefaultGraph"!==e.graph.termType)return a.FACTORY.createBgp([e]);const r=t.map((t=>a.FACTORY.createBgp([a.FACTORY.createPattern(e.subject,e.predicate,e.object,t)])));return a.unionOperations(r)})));if("DefaultGraph"!==e.graph.termType)return e;const r=t.map((t=>"path"===e.type?a.FACTORY.createPath(e.subject,e.predicate,e.object,t):a.FACTORY.createPattern(e.subject,e.predicate,e.object,t)));return a.unionOperations(r)}return a.copyOperation(e,(e=>this.applyOperationDefaultGraph(e,t)))}static applyOperationNamedGraph(e,t,r){if("bgp"===e.type&&e.patterns.length>0||"path"===e.type||"pattern"===e.type){const n="bgp"===e.type?e.patterns[0].graph:e.graph;if("DefaultGraph"===n.termType)return{type:i.Algebra.types.BGP,patterns:[]};if("Variable"===n.termType){if(1===t.length){const r=t[0],i={};i[`?${n.value}`]=r;const o=a.FACTORY.createValues([n],[i]);let s;return s="bgp"===e.type?a.FACTORY.createBgp(e.patterns.map((e=>a.FACTORY.createPattern(e.subject,e.predicate,e.object,r)))):"path"===e.type?a.FACTORY.createPath(e.subject,e.predicate,e.object,r):a.FACTORY.createPattern(e.subject,e.predicate,e.object,r),a.FACTORY.createJoin([o,s])}return a.unionOperations(t.map((t=>a.applyOperationNamedGraph(e,[t],r))))}return[...t,...r].some((e=>e.equals(n)))?e:{type:i.Algebra.types.BGP,patterns:[]}}return a.copyOperation(e,(e=>this.applyOperationNamedGraph(e,t,r)))}static joinOperations(e){if(1===e.length)return e[0];if(e.length>1)return a.FACTORY.createJoin(e);throw new Error("A join can only be applied on at least one operation")}static unionOperations(e){if(1===e.length)return e[0];if(e.length>1)return a.FACTORY.createUnion(e);throw new Error("A union can only be applied on at least one operation")}static createOperation(e){let t=e.input;return e.default.length>0&&(t=a.applyOperationDefaultGraph(t,e.default)),(e.named.length>0||e.default.length>0)&&(t=a.applyOperationNamedGraph(t,e.named,e.default)),t}async testOperation(e,t){return!0}async runOperation(e,t){const r=a.createOperation(e);return this.mediatorQueryOperation.mediate({operation:r,context:t})}}t.ActorQueryOperationFromQuad=a,a.FACTORY=new i.Factory,a.ALGEBRA_TYPES=Object.keys(i.Algebra.types).map((e=>i.Algebra.types[e]))},17877:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85005),t)},90323:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationGroup=void 0;const n=r(83814),i=r(89206),a=r(89227),o=r(29749);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"group")}async testOperation(e,t){for(const r of e.aggregates)new i.AsyncEvaluator(r.expression,n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation));return!0}async runOperation(e,t){const{hashFunction:r}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:t}),{input:i,aggregates:s}=e,c=await this.mediatorQueryOperation.mediate({operation:i,context:t}),u=n.ActorQueryOperation.getSafeBindings(c),l=[...e.variables,...s.map((e=>e.variable))],d=n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation);return{type:"bindings",bindingsStream:new a.TransformIterator((()=>new Promise(((t,n)=>{const i=new o.GroupsState(r,e,d);u.bindingsStream.on("end",(async()=>{try{const e=new a.ArrayIterator(await i.collectResults(),{autoStart:!1});t(e)}catch(e){n(e)}})),u.bindingsStream.on("error",n),u.bindingsStream.on("data",(e=>{i.consumeBindings(e).catch(n)}))}))),{autoStart:!1}),metadata:async()=>({...await u.metadata(),variables:l})}}}t.ActorQueryOperationGroup=s},29749:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupsState=void 0;const n=r(79550),i=r(89206),a=new(r(91194).DataFactory),o=new n.BindingsFactory;t.GroupsState=class{constructor(e,t,r){this.hashFunction=e,this.pattern=t,this.sparqleeConfig=r,this.groups=new Map,this.groupsInitializer=new Map,this.groupVariables=new Set(this.pattern.variables.map((e=>e.value))),this.distinctHashes=t.aggregates.some((({distinct:e})=>e))?new Map:null,this.waitCounter=1,this.resultHasBeenCalled=!1}consumeBindings(e){const t=this.resultCheck();if(t)return t;this.waitCounter++;const r=e.filter(((e,t)=>this.groupVariables.has(t.value))),n=this.hashBindings(r);let a,o=this.groupsInitializer.get(n);if(o){const t=o;a=(async()=>{const r=await t;await Promise.all(this.pattern.aggregates.map((async t=>{if(t.distinct){const t=this.hashBindings(e);if(this.distinctHashes.get(n).has(t))return;this.distinctHashes.get(n).add(t)}const i=t.variable.value;await r.aggregators[i].put(e)})))})().then((()=>{this.subtractWaitCounterAndCollect()}))}else o=(async()=>{const t={};if(await Promise.all(this.pattern.aggregates.map((async r=>{const n=r.variable.value;t[n]=new i.AsyncAggregateEvaluator(r,this.sparqleeConfig),await t[n].put(e)}))),this.distinctHashes){const t=this.hashBindings(e);this.distinctHashes.set(n,new Set([t]))}const a={aggregators:t,bindings:r};return this.groups.set(n,a),this.subtractWaitCounterAndCollect(),a})(),this.groupsInitializer.set(n,o),a=o;return a}subtractWaitCounterAndCollect(){0==--this.waitCounter&&this.handleResultCollection()}handleResultCollection(){let e=[...this.groups].map((([e,t])=>{const{bindings:r,aggregators:n}=t;let i=r;for(const e in n){const t=n[e].result();t&&(i=i.set(a.variable(e),t))}return i}));if(0===e.length&&0===this.groupVariables.size){const t=[];for(const e of this.pattern.aggregates){const r=e.variable,n=i.AsyncAggregateEvaluator.emptyValue(e);void 0!==n&&t.push([r,n])}e=[o.bindings(t)]}this.waitResolver(e)}resultCheck(){if(this.resultHasBeenCalled)return Promise.reject(new Error("Calling any function after calling collectResult is invalid."))}collectResults(){const e=this.resultCheck();if(e)return e;this.resultHasBeenCalled=!0;const t=new Promise((e=>{this.waitResolver=e}));return this.subtractWaitCounterAndCollect(),t}hashBindings(e){return this.hashFunction(e)}}},7375:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90323),t)},54017:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationJoin=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"join")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t})));return this.mediatorJoin.mediate({type:"inner",entries:r,context:t})}}t.ActorQueryOperationJoin=i},1513:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(54017),t)},9507:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationLeftJoin=void 0;const n=r(83814),i=r(89206);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"leftjoin")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t}))),a=await this.mediatorJoin.mediate({type:"optional",entries:r,context:t});if(e.expression){const o=(await r[1].output.metadata()).variables,s={...n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},c=new i.AsyncEvaluator(e.expression,s),u=a.bindingsStream.transform({autoStart:!1,transform:async(e,r,n)=>{if(!o.every((t=>e.has(t.value))))return n(e),r();try{await c.evaluateAsEBV(e)&&n(e)}catch(r){(0,i.isExpressionError)(r)?this.logWarn(t,"Error occurred while filtering.",(()=>({error:r,bindings:e}))):u.emit("error",r)}r()}});a.bindingsStream=u}return a}}t.ActorQueryOperationLeftJoin=a},42678:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(9507),t)},41085:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationMinus=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"minus")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t})));return this.mediatorJoin.mediate({type:"minus",entries:r,context:t})}}t.ActorQueryOperationMinus=i},21530:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41085),t)},2217:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationNop=void 0;const n=r(79550),i=r(83814),a=r(33588),o=r(89227),s=new n.BindingsFactory;class c extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"nop")}async testOperation(e,t){return!0}async runOperation(e,t){return{bindingsStream:new o.SingletonIterator(s.bindings()),metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]}),type:"bindings"}}}t.ActorQueryOperationNop=c},24675:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(2217),t)},46091:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationOrderBySparqlee=void 0;const n=r(83814),i=r(89206),a=r(6789),o=r(81328);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"orderby"),this.window=e.window??Number.POSITIVE_INFINITY}async testOperation(e,t){for(let r of e.expressions)r=this.extractSortExpression(r),new i.AsyncEvaluator(r,n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation));return!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),a=n.ActorQueryOperation.getSafeBindings(r),s={window:this.window},c={...n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)};let{bindingsStream:u}=a;for(let t=e.expressions.length-1;t>=0;t--){let r=e.expressions[t];const n=this.isAscending(r);r=this.extractSortExpression(r);const a=new i.AsyncEvaluator(r,c),l=async(e,t,r)=>{try{r({bindings:e,result:await a.evaluate(e)})}catch(t){(0,i.isExpressionError)(t)||u.emit("error",t),r({bindings:e,result:void 0})}t()},d=u.transform({transform:l}),h=new o.SortIterator(d,((e,t)=>{let r=(0,i.orderTypes)(e.result,t.result);return n||(r*=-1),r}),s);u=h.map((({bindings:e,result:t})=>e))}return{type:"bindings",bindingsStream:u,metadata:a.metadata}}extractSortExpression(e){const{expressionType:t,operator:r}=e;return t!==a.Algebra.expressionTypes.OPERATOR?e:"desc"===r?e.args[0]:e}isAscending(e){const{expressionType:t,operator:r}=e;return t!==a.Algebra.expressionTypes.OPERATOR||"desc"!==r}}t.ActorQueryOperationOrderBySparqlee=s},81328:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SortIterator=void 0;const n=r(89227);class i extends n.TransformIterator{constructor(e,t,r){super(e,r);const n=r&&r.window;this.windowLength=Number.isFinite(n)&&n>0?n:Number.POSITIVE_INFINITY,this.sort=t,this.sorted=[]}_read(e,t){let r,{length:n}=this.sorted;for(;n!==this.windowLength&&(r=this.source.read(),null!==r);){let e,t,i=0,a=n-1;for(;i<=a;)e=Math.trunc((i+a)/2),t=this.sort(r,this.sorted[e]),t<0?i=e+1:t>0?a=e-1:(i=e,a=-1);this.sorted.splice(i,0,r),n++}n===this.windowLength&&this._push(this.sorted.pop()),t()}_flush(e){let{length:t}=this.sorted;for(;t--;)this._push(this.sorted.pop());e()}}t.SortIterator=i},3438:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(46091),t)},18484:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathAlt=void 0;const n=r(26622),i=r(54036),a=r(83814),o=r(89227),s=r(6789);class c extends n.ActorAbstractPath{constructor(e){super(e,s.Algebra.types.ALT)}async runOperation(e,t){const r=e.predicate,s=(await Promise.all(r.input.map((r=>this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,r,e.object,e.graph)}))))).map(a.ActorQueryOperation.getSafeBindings);return{type:"bindings",bindingsStream:new o.UnionIterator(s.map((e=>e.bindingsStream)),{autoStart:!1}),metadata:()=>Promise.all(s.map((e=>e.metadata()))).then((e=>i.ActorQueryOperationUnion.unionMetadata(e,!0)))}}}t.ActorQueryOperationPathAlt=c},956:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(18484),t)},10906:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathInv=void 0;const n=r(26622),i=r(6789);class a extends n.ActorAbstractPath{constructor(e){super(e,i.Algebra.types.INV)}async runOperation(e,t){const r=e.predicate,i=n.ActorAbstractPath.FACTORY.createPath(e.object,r.path,e.subject,e.graph);return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationPathInv=a},60283:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(10906),t)},76814:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathLink=void 0;const n=r(26622),i=r(6789);class a extends n.ActorAbstractPath{constructor(e){super(e,i.Algebra.types.LINK)}async runOperation(e,t){const r=e.predicate,i=n.ActorAbstractPath.FACTORY.createPattern(e.subject,r.iri,e.object,e.graph);return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationPathLink=a},2450:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76814),t)},87665:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathNps=void 0;const n=r(26622),i=r(83814),a=r(6789);class o extends n.ActorAbstractPath{constructor(e){super(e,a.Algebra.types.NPS)}async runOperation(e,t){const r=e.predicate,a=this.generateVariable(e),o=n.ActorAbstractPath.FACTORY.createPattern(e.subject,a,e.object,e.graph),s=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:o,context:t}));return{type:"bindings",bindingsStream:s.bindingsStream.transform({filter:e=>!r.iris.some((t=>t.equals(e.get(a)))),transform(e,t,r){r(e.delete(a)),t()}}),metadata:s.metadata}}}t.ActorQueryOperationPathNps=o},14985:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87665),t)},25455:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathOneOrMore=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(89227),s=r(6789),c=new i.BindingsFactory;class u extends n.ActorAbstractPath{constructor(e){super(e,s.Algebra.types.ONE_OR_MORE_PATH)}async runOperation(e,t){const r=await this.isPathArbitraryLengthDistinct(t,e);if(r.operation)return r.operation;t=r.context;const i=e.predicate;if("Variable"!==e.subject.termType&&"Variable"===e.object.termType){const r=e.object,n=await this.getObjectsPredicateStarEval(e.subject,i.path,r,e.graph,t,!1),a="Variable"===e.graph.termType?[r,e.graph]:[r];return{type:"bindings",bindingsStream:n.bindingsStream,metadata:async()=>({...await n.metadata(),variables:a})}}if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=n.ActorAbstractPath.FACTORY.createDistinct(n.ActorAbstractPath.FACTORY.createPath(e.subject,e.predicate.path,e.object,e.graph)),s=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:r})),c=e.subject,u=e.object,l={},d=new o.MultiTransformIterator(s.bindingsStream,{multiTransform:r=>{const n=r.get(c),a=r.get(u),s="Variable"===e.graph.termType?r.get(e.graph):e.graph;return new o.TransformIterator((async()=>{const r=new o.BufferedIterator;return await this.getSubjectAndObjectBindingsPredicateStar(c,u,n,a,i.path,s,t,l,{},r,{count:0}),r.transform({transform(t,r,n){"Variable"===e.graph.termType&&(t=t.set(e.graph,s)),n(t),r()}})}),{maxBufferSize:128})},autoStart:!1}),h="Variable"===e.graph.termType?[c,u,e.graph]:[c,u];return{type:"bindings",bindingsStream:d,metadata:async()=>({...await s.metadata(),variables:h})}}if("Variable"===e.subject.termType&&"Variable"!==e.object.termType)return this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.object,n.ActorAbstractPath.FACTORY.createOneOrMorePath(n.ActorAbstractPath.FACTORY.createInv(i.path)),e.subject,e.graph)});const s=this.generateVariable(),u=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,i,s,e.graph)}));return{type:"bindings",bindingsStream:u.bindingsStream.transform({filter:t=>e.object.equals(t.get(s)),transform(t,r,n){n("Variable"===e.graph.termType?c.bindings([[e.graph,t.get(e.graph)]]):c.bindings()),r()}}),metadata:async()=>({...await u.metadata(),variables:"Variable"===e.graph.termType?[e.graph]:[]})}}}t.ActorQueryOperationPathOneOrMore=u},53346:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25455),t)},41551:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathSeq=void 0;const n=r(26622),i=r(83814),a=r(6789);class o extends n.ActorAbstractPath{constructor(e){super(e,a.Algebra.types.SEQ)}async runOperation(e,t){const r=e.predicate;let a=e.subject;const o=[],s=await Promise.all(r.input.map(((i,s)=>{const c=s===r.input.length-1?e.object:this.generateVariable(e,`b${s}`),u=n.ActorAbstractPath.FACTORY.createPath(a,i,c,e.graph),l=this.mediatorQueryOperation.mediate({context:t,operation:u});return a=c,s({output:i.ActorQueryOperation.getSafeBindings(await e),operation:t})))),c=i.ActorQueryOperation.getSafeBindings(await this.mediatorJoin.mediate({type:"inner",entries:s,context:t}));return{type:"bindings",bindingsStream:c.bindingsStream.transform({transform(e,t,r){for(const t of o)e=e.delete(t);r(e),t()}}),async metadata(){const e=await c.metadata(),t=e.variables.filter((e=>!o.some((t=>t.value===e.value))));return{...e,variables:t}}}}}t.ActorQueryOperationPathSeq=o},14059:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41551),t)},17520:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathZeroOrMore=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(89227),s=r(6053),c=r(6789),u=new i.BindingsFactory;class l extends n.ActorAbstractPath{constructor(e){super(e,c.Algebra.types.ZERO_OR_MORE_PATH)}async runOperation(e,t){const r=await this.isPathArbitraryLengthDistinct(t,e);if(r.operation)return r.operation;t=r.context;const i=e.predicate,c="Variable"===e.subject.termType,l="Variable"===e.object.termType;if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=this.generateVariable(e),c=n.ActorAbstractPath.FACTORY.createPattern(e.subject,r,e.object,e.graph),u=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:c})),l=e.subject,d=e.object,h=new Set,p={},f=new o.MultiTransformIterator(u.bindingsStream,{multiTransform:r=>{const n=r.get(l),a=r.get(d),c="Variable"===e.graph.termType?r.get(e.graph):e.graph,u=(0,s.termToString)(n)+(0,s.termToString)(c),f=(0,s.termToString)(a)+(0,s.termToString)(c);return new o.TransformIterator((async()=>{if(h.has(u)&&h.has(f))return new o.EmptyIterator;const r=new o.BufferedIterator,s={count:0};return h.has(u)||(h.add(u),await this.getSubjectAndObjectBindingsPredicateStar(l,d,n,n,i.path,c,t,p,{},r,s)),h.has(f)||(h.add(f),await this.getSubjectAndObjectBindingsPredicateStar(l,d,a,a,i.path,c,t,p,{},r,s)),r.transform({transform(t,r,n){"Variable"===e.graph.termType&&(t=t.set(e.graph,c)),n(t),r()}})}))}}),y="Variable"===e.graph.termType?[l,e.object,e.graph]:[l,e.object];return{type:"bindings",bindingsStream:f,metadata:async()=>({...await u.metadata(),variables:y})}}if(!c&&!l){const r=this.generateVariable(),n=await this.getObjectsPredicateStarEval(e.subject,i.path,r,e.graph,t,!0);return{type:"bindings",bindingsStream:n.bindingsStream.transform({filter:t=>e.object.equals(t.get(r)),transform(t,r,n){n("Variable"===e.graph.termType?u.bindings([[e.graph,t.get(e.graph)]]):u.bindings()),r()}}),metadata:async()=>({...await n.metadata(),variables:"Variable"===e.graph.termType?[e.graph]:[]})}}const d=c?e.object:e.subject,h=c?e.subject:e.object,p=c?n.ActorAbstractPath.FACTORY.createInv(i.path):i.path,f=await this.getObjectsPredicateStarEval(d,p,h,e.graph,t,!0),y="Variable"===e.graph.termType?[h,e.graph]:[h];return{type:"bindings",bindingsStream:f.bindingsStream,metadata:async()=>({...await f.metadata(),variables:y})}}}t.ActorQueryOperationPathZeroOrMore=l},54945:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17520),t)},80754:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathZeroOrOne=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(33588),s=r(89227),c=r(6789),u=new i.BindingsFactory;class l extends n.ActorAbstractPath{constructor(e){super(e,c.Algebra.types.ZERO_OR_ONE_PATH)}async runOperation(e,t){const r=e.predicate,i=[];if("Variable"!==e.subject.termType&&"Variable"!==e.object.termType&&e.subject.equals(e.object))return{type:"bindings",bindingsStream:new s.SingletonIterator(u.bindings()),metadata:()=>Promise.resolve({state:new o.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]})};const c=await this.isPathArbitraryLengthDistinct(t,e);if(c.operation)return c.operation;t=c.context;const l=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,r.path,e.object,e.graph)}));let d;if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=this.generateVariable(e),i=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createFilter(n.ActorAbstractPath.FACTORY.createPattern(e.subject,r,e.object,e.graph),n.ActorAbstractPath.FACTORY.createOperatorExpression("=",[n.ActorAbstractPath.FACTORY.createTermExpression(e.subject),n.ActorAbstractPath.FACTORY.createTermExpression(e.object)]))})).bindingsStream.transform({map:e=>e.delete(r),autoStart:!1});d=new s.UnionIterator([i,l.bindingsStream],{autoStart:!1})}else"Variable"===e.subject.termType&&i.push(u.bindings([[e.subject,e.object]])),"Variable"===e.object.termType&&i.push(u.bindings([[e.object,e.subject]])),d=l.bindingsStream.prepend(i);return{type:"bindings",bindingsStream:d,metadata:l.metadata}}}t.ActorQueryOperationPathZeroOrOne=l},39079:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(80754),t)},22354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationProject=void 0;const n=r(83814),i=r(27057),a=new(r(91194).DataFactory);class o extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"project")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t})),o=await r.metadata(),s=e.variables,c=o.variables.filter((e=>!s.some((t=>e.value===t.value)))),u=s.filter((e=>!o.variables.some((t=>e.value===t.value))));if(u.length>0)throw new Error(`Variables '${u.map((e=>`?${e.value}`))}' are used in the projection result, but are not assigned.`);let l=0===c.length?r.bindingsStream:r.bindingsStream.transform({map(e){for(const t of c)e=e.delete(t);return e},autoStart:!1}),d=0;return l=l.transform({map(e){d++;const t=new Map;return e.map((e=>{if(e instanceof i.BlankNodeBindingsScoped){let r=t.get(e.value);return r||(r=a.blankNode(`${e.value}${d}`),t.set(e.value,r)),r}return e}))},autoStart:!1}),{type:"bindings",bindingsStream:l,metadata:async()=>({...o,variables:s})}}}t.ActorQueryOperationProject=o},82491:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22354),t)},17536:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationQuadpattern=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(91194),s=r(6053),c=r(98086),u=r(6789),l=new n.BindingsFactory,d=new o.DataFactory,h=new u.Factory;class p extends i.ActorQueryOperationTyped{constructor(e){super(e,"pattern")}static isTermVariable(e){return"Variable"===e.termType}static getVariables(e){return(0,c.uniqTerms)((0,c.getTermsNested)(e).filter(p.isTermVariable))}static getDuplicateElementLinks(e){const t={};let r=!1;if((0,c.forEachTermsNested)(e,((e,n)=>{if("Variable"===e.termType){const i=(0,s.termToString)(e),a=(t[i]||(t[i]=[])).push(n);r=r||a>1}})),!r)return;const n={};for(const e in t){const r=t[e],i=r.slice(1);i.length>0&&(n[r[0].join("_")]=i)}return n}static validateMetadata(e){for(const t of["cardinality","canContainUndefs"])if(!(t in e))throw new Error(`Invalid metadata: missing ${t} in ${JSON.stringify(e)}`);return e}static getMetadata(e,t,r){return()=>new Promise(((t,r)=>{e.getProperty("metadata",(e=>t(e))),e.on("error",r)})).then((e=>("canContainUndefs"in e||(e.canContainUndefs=!1),p.quadsMetadataToBindingsMetadata(p.validateMetadata(e),t,r))))}static quadsMetadataToBindingsMetadata(e,t,r){return{...e,order:e.order?p.quadsOrderToBindingsOrder(e.order,t):void 0,availableOrders:e.availableOrders?e.availableOrders.map((e=>({cost:e.cost,terms:p.quadsOrderToBindingsOrder(e.terms,t)}))):void 0,variables:r}}static quadsOrderToBindingsOrder(e,t){const r={};return e.map((e=>{const n=t[e.term];if(n&&!r[n])return r[n]=!0,{term:d.variable(n),direction:e.direction}})).filter((e=>Boolean(e)))}async testOperation(e,t){return!0}async runOperation(e,t){e.context&&(t=t.merge(e.context));let r=e;const n=this.unionDefaultGraph||t.get(a.KeysQueryOperation.unionDefaultGraph);"DefaultGraph"===e.graph.termType&&n&&(r=h.createPattern(e.subject,e.predicate,e.object,d.variable("__comunica:defaultGraph")));const o=await this.mediatorResolveQuadPattern.mediate({pattern:r,context:t}),s=p.getVariables(e),u=(0,c.reduceTermsNested)(e,((e,t,r)=>("Variable"===t.termType&&(e[r.join("_")]=t.value),e)),{}),f=p.getMetadata(o.data,u,s);return{type:"bindings",bindingsStream:new i.ClosableTransformIterator((async()=>{let t=o.data;const r=p.getDuplicateElementLinks(e);return"Variable"!==e.graph.termType||n||(t=t.filter((e=>"DefaultGraph"!==e.graph.termType))),r&&(t=t.filter((e=>{for(const t in r){const n=t.split("_"),i=(0,c.getValueNestedPath)(e,n);for(const n of r[t])if(!i.equals((0,c.getValueNestedPath)(e,n)))return!1}return!0}))),t.map((e=>l.bindings(Object.keys(u).map((t=>{const r=t.split("_"),n=u[t],i=(0,c.getValueNestedPath)(e,r);return[d.variable(n),i]})))))}),{autoStart:!1,onClose:()=>o.data.destroy()}),metadata:f}}}t.ActorQueryOperationQuadpattern=p},63632:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17536),t)},53128:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationReducedHash=void 0;const n=r(83814),i=r(70463);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"reduced")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t}));return{type:"bindings",bindingsStream:r.bindingsStream.filter(await this.newHashFilter(t)),metadata:r.metadata}}async newHashFilter(e){const{hashFunction:t}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:e}),r=new i.LRUCache({max:this.cacheSize});return e=>{const n=t(e);return!r.has(n)&&(r.set(n,!0),!0)}}}t.ActorQueryOperationReducedHash=a},86019:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53128),t)},86013:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationService=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(33588),s=r(89227),c=new n.BindingsFactory;class u extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"service")}async testOperation(e,t){if("NamedNode"!==e.name.termType)throw new Error(`${this.name} can only query services by IRI, while a ${e.name.termType} was given.`);return!0}async runOperation(e,t){const r=e.name.value;let n=t.delete(a.KeysRdfResolveQuadPattern.source).delete(a.KeysRdfResolveQuadPattern.sources).delete(a.KeysInitQuery.queryString);const u=this.forceSparqlEndpoint?"sparql":void 0;let l;n=n.set(a.KeysRdfResolveQuadPattern.sources,[{type:u,value:r}]);try{l=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:n}))}catch(t){if(!e.silent)throw t;l={bindingsStream:new s.SingletonIterator(c.bindings()),type:"bindings",metadata:async()=>({state:new o.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]})}}return l}}t.ActorQueryOperationService=u},85900:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(86013),t)},60720:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationSlice=void 0;const n=r(83814),i=r(78470);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"slice")}async testOperation(e,t){return!0}async runOperation(e,t){e.length&&(t=t.set(i.KeysQueryOperation.limitIndicator,e.length));const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t});if("bindings"===r.type)return{type:"bindings",bindingsStream:this.sliceStream(r.bindingsStream,e),metadata:this.sliceMetadata(r,e)};if("quads"===r.type)return{type:"quads",quadStream:this.sliceStream(r.quadStream,e),metadata:this.sliceMetadata(r,e)};throw new Error(`Invalid query output type: Expected 'bindings' or 'quads' but got '${r.type}'`)}sliceStream(e,t){const r=Boolean(t.length)||0===t.length,{start:n}=t,i=r?t.start+t.length-1:Number.POSITIVE_INFINITY;return e.transform({offset:n,limit:Math.max(i-n+1,0),autoStart:!1})}sliceMetadata(e,t){const r=Boolean(t.length)||0===t.length;return()=>e.metadata().then((e=>{const n={...e.cardinality};return Number.isFinite(n.value)&&(n.value=Math.max(0,n.value-t.start),r&&(n.value=Math.min(n.value,t.length))),{...e,cardinality:n}}))}}t.ActorQueryOperationSlice=a},86069:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(60720),t)},36170:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationSparqlEndpoint=void 0;const n=r(79550),i=r(83814),a=r(58392),o=r(58595),s=r(78470),c=r(33588),u=r(89227),l=r(88436),d=r(91194),h=r(6789),p=r(66399),f=new n.BindingsFactory,y=new d.DataFactory;class g extends i.ActorQueryOperation{constructor(e){super(e),this.endpointFetcher=new l.SparqlEndpointFetcher({method:e.forceHttpGet?"GET":"POST",fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.lastContext}),prefixVariableQuestionMark:!0})}async test(e){if(!e.operation)throw new Error("Missing field 'operation' in a query operation action.");const t=(0,a.getContextSourceFirst)(e.context),r=(0,o.getContextDestinationFirst)(e.context),n=t?(0,a.getDataSourceType)(t):void 0,i=r?(0,o.getDataDestinationType)(r):void 0,s=t?(0,a.getDataSourceValue)(t):void 0,c=r?(0,o.getDataDestinationValue)(r):void 0;if(t&&"sparql"===n&&(!r||"sparql"===i&&c===s)||t&&!n&&(!r||!i&&c===s)&&"string"==typeof s&&(this.checkUrlSuffixSparql&&s.endsWith("/sparql")||this.checkUrlSuffixUpdate&&s.endsWith("/update")))return{httpRequests:1};throw new Error(`${this.name} requires a single source with a 'sparql' endpoint to be present in the context or URL ending on /sparql or /update.`)}async run(e){const t=(0,a.getContextSourceFirst)(e.context);if(!t)throw new Error("Illegal state: undefined sparql endpoint source.");const r=(0,a.getDataSourceValue)(t);let n,i,o;this.lastContext=e.context;try{n=e.context.get(s.KeysInitQuery.queryString)??(0,h.toSparql)(e.operation,{sparqlStar:!0}),i=this.endpointFetcher.getQueryType(n),"UNKNOWN"===i&&(i=this.endpointFetcher.getUpdateTypes(n))}catch{}i&&"UNKNOWN"!==i||(o=h.Util.inScopeVariables(e.operation),n=(0,h.toSparql)(g.FACTORY.createProject(e.operation,o)),i="SELECT");const c=this.canOperationContainUndefs(e.operation);switch(i){case"SELECT":return o||(o=h.Util.inScopeVariables(e.operation)),this.executeQuery(r,n,!1,o,c);case"CONSTRUCT":return this.executeQuery(r,n,!0,void 0,!1);case"ASK":return{type:"boolean",execute:()=>this.endpointFetcher.fetchAsk(r,n)};default:return{type:"void",execute:()=>this.endpointFetcher.fetchUpdate(r,n)}}}executeQuery(e,t,r,n,i){const a=r?this.endpointFetcher.fetchTriples(e,t):this.endpointFetcher.fetchBindings(e,t),o=(0,u.wrap)(a,{autoStart:!1}).map((e=>r?e:f.bindings(Object.entries(e).map((([e,t])=>[y.variable(e.slice(1)),t]))))),s=new p.LazyCardinalityIterator(o),l=g.cachifyMetadata((async()=>({state:new c.MetadataValidationState,cardinality:{type:"exact",value:await s.getCardinality()},canContainUndefs:i,variables:n})));return r?{type:"quads",quadStream:s,metadata:l}:{type:"bindings",bindingsStream:s,metadata:l}}canOperationContainUndefs(e){let t=!1;return h.Util.recurseOperation(e,{[h.Algebra.types.LEFT_JOIN]:()=>(t=!0,!1),[h.Algebra.types.VALUES](e){for(const r of e.bindings){const n=Object.keys(r);e.variables.every((e=>n.includes(`?${e.value}`)))||(t=!0)}return!1}}),t}}t.ActorQueryOperationSparqlEndpoint=g,g.FACTORY=new h.Factory},66399:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LazyCardinalityIterator=void 0;const n=r(89227);class i extends n.AsyncIterator{constructor(e){super(),this._source=e,this._count=0,this._buffering=!0,e[n.DESTINATION]=this,e.on("readable",a),e.on("end",a),e.on("error",o),this.readable=e.readable}read(){if(this._buffer)return this._buffer.empty?(this._buffering||this.close(),this.readable=!1,null):this._buffer.shift();let e=null;return this._source.readable&&null!==(e=this._source.read())?this._count+=1:(this.readable=!1,this._source.done&&this.close()),e}getCardinality(){return this._cardinality?this._cardinality:this._error?Promise.reject(this._error):(this._source.done&&this.close(),this.done?this._cardinality=Promise.resolve(this._count):(this._buffer=new n.LinkedList,this._cardinality=new Promise(((e,t)=>{this._source.removeListener("readable",a),this._source.removeListener("end",a);const r=()=>{this._source.removeListener("data",n),this._source.removeListener("end",i),this._source.removeListener("error",o)},n=e=>{this._buffer.push(e),this._count+=1,this.readable=!0},i=()=>{this._buffering=!1,r(),e(this._count)},o=e=>{this._buffering=!1,r(),t(e)};this._source.on("data",n),this._source.on("end",i),this._source.on("error",o)}))),this._cardinality)}close(){this._source.removeListener("readable",a),this._source.removeListener("end",a),this._source.removeListener("error",o),delete this._source[n.DESTINATION],this._source.destroy(),super.close()}}function a(){this[n.DESTINATION].readable=!0}function o(e){this[n.DESTINATION]._error=e,this[n.DESTINATION].emit("error",e)}t.LazyCardinalityIterator=i},71111:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36170),t)},52700:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUnion=void 0;const n=r(83814),i=r(33588),a=r(89227),o=r(98086);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"union")}static unionVariables(e){return(0,o.uniqTerms)(e.flat())}static unionMetadata(e,t){const r={type:"exact",value:0};for(const t of e){if(!(t.cardinality.value&&Number.isFinite(t.cardinality.value)||0===t.cardinality.value)){r.type="estimate",r.value=Number.POSITIVE_INFINITY;break}"estimate"===t.cardinality.type&&(r.type="estimate"),r.value+=t.cardinality.value}const n={state:new i.MetadataValidationState,cardinality:r,canContainUndefs:e.some((e=>e.canContainUndefs))},a=()=>n.state.invalidate();for(const t of e)t.state.addInvalidateListener(a);return t?(n.variables=s.unionVariables(e.map((e=>e.variables))),n):n}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((e=>this.mediatorQueryOperation.mediate({operation:e,context:t}))))).map(n.ActorQueryOperation.getSafeBindings);return{type:"bindings",bindingsStream:new a.UnionIterator(r.map((e=>e.bindingsStream)),{autoStart:!1}),metadata:()=>Promise.all(r.map((e=>e.metadata()))).then((e=>s.unionMetadata(e,!0)))}}}t.ActorQueryOperationUnion=s},54036:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52700),t)},40433:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationAddRewrite=void 0;const n=r(83814),i=r(91194),a=r(6789),o=new i.DataFactory;class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"add"),this.factory=new a.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){const r="DEFAULT"===e.destination?o.defaultGraph():e.destination,n="DEFAULT"===e.source?o.defaultGraph():e.source,i=this.factory.createDeleteInsert(void 0,[this.factory.createPattern(o.variable("s"),o.variable("p"),o.variable("o"),r)],this.factory.createPattern(o.variable("s"),o.variable("p"),o.variable("o"),n));return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationAddRewrite=s},46270:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(40433),t)},56477:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationClear=void 0;const n=r(83814),i=new(r(91194).DataFactory);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"clear")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r;r="DEFAULT"===e.source?i.defaultGraph():"string"==typeof e.source?e.source:[e.source];const{execute:n}=await this.mediatorUpdateQuads.mediate({deleteGraphs:{graphs:r,requireExistence:!e.silent,dropGraphs:!1},context:t});return{type:"void",execute:n}}}t.ActorQueryOperationClear=a},71103:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(56477),t)},36360:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUpdateCompositeUpdate=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"compositeupdate")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){return{type:"void",execute:()=>(async()=>{for(const r of e.updates){const e=n.ActorQueryOperation.getSafeVoid(await this.mediatorQueryOperation.mediate({operation:r,context:t}));await e.execute()}})()}}}t.ActorQueryOperationUpdateCompositeUpdate=i},56690:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36360),t)},96445:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationCopyRewrite=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"copy"),this.factory=new i.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){if("string"==typeof e.destination&&"string"==typeof e.source&&e.destination===e.source||"string"!=typeof e.destination&&"string"!=typeof e.source&&e.destination.equals(e.source))return Promise.resolve({type:"void",execute:()=>Promise.resolve()});const r=this.factory.createCompositeUpdate([this.factory.createDrop(e.destination,!0),this.factory.createAdd(e.source,e.destination,e.silent)]);return this.mediatorQueryOperation.mediate({operation:r,context:t})}}t.ActorQueryOperationCopyRewrite=a},71852:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96445),t)},78537:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationCreate=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"create")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){const{execute:r}=await this.mediatorUpdateQuads.mediate({createGraphs:{graphs:[e.source],requireNonExistence:!e.silent},context:t});return{type:"void",execute:r}}}t.ActorQueryOperationCreate=i},17166:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(78537),t)},82682:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUpdateDeleteInsert=void 0;const n=r(32023),i=r(79550),a=r(83814),o=r(89227),s=new i.BindingsFactory;class c extends a.ActorQueryOperationTypedMediated{constructor(e){super(e,"deleteinsert"),this.blankNodeCounter=0}async testOperation(e,t){return a.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){const r=e.where?a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.where,context:t})).bindingsStream:new o.ArrayIterator([s.bindings()],{autoStart:!1});let i,c;e.insert&&(i=new n.BindingsToQuadsIterator(e.insert.map(n.BindingsToQuadsIterator.localizeQuad.bind(null,this.blankNodeCounter)),r.clone()),this.blankNodeCounter++),e.delete&&(c=new n.BindingsToQuadsIterator(e.delete.map(n.BindingsToQuadsIterator.localizeQuad.bind(null,this.blankNodeCounter)),r.clone()),this.blankNodeCounter++);const{execute:u}=await this.mediatorUpdateQuads.mediate({quadStreamInsert:i,quadStreamDelete:c,context:t});return{type:"void",execute:u}}}t.ActorQueryOperationUpdateDeleteInsert=c},6215:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82682),t)},96129:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDrop=void 0;const n=r(83814),i=new(r(91194).DataFactory);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"drop")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r;r="DEFAULT"===e.source?i.defaultGraph():"string"==typeof e.source?e.source:[e.source];const{execute:n}=await this.mediatorUpdateQuads.mediate({deleteGraphs:{graphs:r,requireExistence:!e.silent,dropGraphs:!0},context:t});return{type:"void",execute:n}}}t.ActorQueryOperationDrop=a},54322:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96129),t)},46108:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationLoad=void 0;const n=r(83814),i=r(78470),a=r(91194),o=r(6789),s=new a.DataFactory;class c extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"load"),this.factory=new o.Factory,this.constructOperation=this.factory.createConstruct(this.factory.createPattern(s.variable("s"),s.variable("p"),s.variable("o")),[this.factory.createPattern(s.variable("s"),s.variable("p"),s.variable("o"))])}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r=t.set(i.KeysRdfResolveQuadPattern.sources,[e.source.value]);e.silent&&(r=r.set(i.KeysInitQuery.lenient,!0));let n=c.getSafeQuads(await this.mediatorQueryOperation.mediate({operation:this.constructOperation,context:r})).quadStream;e.destination&&(n=n.map((t=>s.quad(t.subject,t.predicate,t.object,e.destination))));const{execute:a}=await this.mediatorUpdateQuads.mediate({quadStreamInsert:n,context:t});return{type:"void",execute:a}}}t.ActorQueryOperationLoad=c},82965:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(46108),t)},68871:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationMoveRewrite=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"move"),this.factory=new i.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){if("string"==typeof e.destination&&"string"==typeof e.source&&e.destination===e.source||"string"!=typeof e.destination&&"string"!=typeof e.source&&e.destination.equals(e.source))return Promise.resolve({type:"void",execute:()=>Promise.resolve()});const r=[this.factory.createDrop(e.destination,!0),this.factory.createAdd(e.source,e.destination,e.silent),this.factory.createDrop(e.source)],n=this.factory.createCompositeUpdate(r);return this.mediatorQueryOperation.mediate({operation:n,context:t})}}t.ActorQueryOperationMoveRewrite=a},69259:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(68871),t)},52132:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationValues=void 0;const n=r(79550),i=r(83814),a=r(33588),o=r(89227),s=r(91194),c=new n.BindingsFactory,u=new s.DataFactory;class l extends i.ActorQueryOperationTyped{constructor(e){super(e,"values")}async testOperation(e,t){return!0}async runOperation(e,t){const r=new o.ArrayIterator(e.bindings.map((e=>c.bindings(Object.entries(e).map((([e,t])=>[u.variable(e.slice(1)),t])))))),n=e.variables;return{type:"bindings",bindingsStream:r,metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:e.bindings.length},canContainUndefs:e.bindings.some((e=>n.some((t=>!(`?${t.value}`in e))))),variables:n})}}}t.ActorQueryOperationValues=l},78251:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52132),t)},70332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParseGraphql=void 0;const n=r(21744),i=r(78470),a=r(67020);class o extends n.ActorQueryParse{constructor(e){super(e),this.graphqlToSparql=new a.Converter({requireContext:!0})}async test(e){if("graphql"!==e.queryFormat?.language)throw new Error("This actor can only parse GraphQL queries");return!0}async run(e){const t=e.context.get(i.KeysInitQuery.jsonLdContext)||{},r={singularizeVariables:e.context.get(i.KeysInitQuery.graphqlSingularizeVariables)};return{operation:await this.graphqlToSparql.graphqlToSparqlAlgebra(e.query,t,r)}}}t.ActorQueryParseGraphql=o},37873:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(70332),t)},44188:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParseSparql=void 0;const n=r(21744),i=r(6789),a=r(2085);class o extends n.ActorQueryParse{constructor(e){super(e),this.prefixes=Object.freeze(this.prefixes)}async test(e){if(e.queryFormat&&"sparql"!==e.queryFormat.language)throw new Error("This actor can only parse SPARQL queries");return!0}async run(e){const t=new a.Parser({prefixes:this.prefixes,baseIRI:e.baseIRI,sparqlStar:!0}).parse(e.query);return{baseIRI:"query"===t.type?t.base:void 0,operation:(0,i.translate)(t,{quads:!0,prefixes:this.prefixes,blankToVariable:!0,baseIRI:e.baseIRI})}}}t.ActorQueryParseSparql=o},93700:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44188),t)},96137:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeJson=void 0;const n=r(42351),i=r(6053),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads","boolean"].includes(e.type))throw new Error("This actor can only handle bindings or quad streams.");return!0}async runHandle(e,t,r){const n=new a.Readable;n._read=()=>{};let o=!0;if("bindings"===e.type){const t=e.bindingsStream;n.push("["),t.on("error",(e=>n.emit("error",e))),t.on("data",(e=>{n.push(o?"\n":",\n"),n.push(JSON.stringify(Object.fromEntries([...e].map((([e,t])=>[e.value,i.termToString(t)]))))),o=!1})),t.on("end",(()=>{n.push(o?"]\n":"\n]\n"),n.push(null)}))}else if("quads"===e.type){const t=e.quadStream;n.push("["),t.on("error",(e=>n.emit("error",e))),t.on("data",(e=>{n.push(o?"\n":",\n"),n.push(JSON.stringify(i.quadToStringQuad(e))),o=!1})),t.on("end",(()=>{n.push(o?"]\n":"\n]\n"),n.push(null)}))}else try{n.push(`${JSON.stringify(await e.execute())}\n`),n.push(null)}catch(e){setTimeout((()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeJson=o},6234:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96137),t)},42455:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeRdf=void 0;const n=r(42351);class i extends n.ActorQueryResultSerialize{constructor(e){super(e)}async testHandle(e,t,r){if("quads"!==e.type)throw new Error(`Actor ${this.name} can only handle quad streams`);const{mediaTypes:n}=await this.mediatorMediaTypeCombiner.mediate({context:r,mediaTypes:!0});if(!(t in n))throw new Error(`Actor ${this.name} can not handle media type ${t}. All available types: ${Object.keys(n)}`);return!0}async runHandle(e,t,r){return(await this.mediatorRdfSerialize.mediate({context:r,handle:{context:r,quadStream:e.quadStream},handleMediaType:t})).handle}async testMediaType(e){return!0}async getMediaTypes(e){return(await this.mediatorMediaTypeCombiner.mediate({context:e,mediaTypes:!0})).mediaTypes}async testMediaTypeFormats(e){return!0}async getMediaTypeFormats(e){return(await this.mediatorMediaTypeFormatCombiner.mediate({context:e,mediaTypeFormats:!0})).mediaTypeFormats}}t.ActorQueryResultSerializeRdf=i},45322:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(42455),t)},52789:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSimple=void 0;const n=r(42351),i=r(6053),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads","boolean","void"].includes(e.type))throw new Error("This actor can only handle bindings streams, quad streams, booleans, or updates.");return!0}static termToString(e){return"Quad"===e.termType?(0,i.termToString)(e):e.value}async runHandle(e,t,r){const n=new a.Readable;let i;if(n._read=()=>{},"bindings"===e.type)i=e.bindingsStream,i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`${[...e].map((([e,t])=>`?${e.value}: ${o.termToString(t)}`)).join("\n")}\n\n`))),i.on("end",(()=>n.push(null)));else if("quads"===e.type)i=e.quadStream,i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`subject: ${o.termToString(e.subject)}\npredicate: ${o.termToString(e.predicate)}\nobject: ${o.termToString(e.object)}\ngraph: ${o.termToString(e.graph)}\n\n`))),i.on("end",(()=>n.push(null)));else if("boolean"===e.type)try{n.push(`${JSON.stringify(await e.execute())}\n`),n.push(null)}catch(e){setTimeout((()=>n.emit("error",e)))}else e.execute().then((()=>{n.push("ok\n"),n.push(null)})).catch((e=>setTimeout((()=>n.emit("error",e)))));return{data:n}}}t.ActorQueryResultSerializeSimple=o},54399:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52789),t)},82703:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlCsv=void 0;const n=r(42351),i=r(51887);class a extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToCsvBindings(e){if(!e)return"";let t=e.value;if("Literal"===e.termType)t=`${t}`;else if("BlankNode"===e.termType)t=`_:${t}`;else if("Quad"===e.termType){let r=a.bindingToCsvBindings(e.object);"Literal"===e.object.termType&&(r=`"${r.replace(/"/gu,'""')}"`),t=`<< ${a.bindingToCsvBindings(e.subject)} ${a.bindingToCsvBindings(e.predicate)} ${r} >>`}else t=`<${t}>`;return/[",\n\r]/u.test(t)&&(t=`"${t.replace(/"/gu,'""')}"`),t}async testHandleChecked(e,t){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t,r){const n=e,o=new i.Readable;o._read=()=>{};const s=await n.metadata();return o.push(`${s.variables.map((e=>e.value)).join(",")}\r\n`),n.bindingsStream.on("error",(e=>{o.emit("error",e)})),n.bindingsStream.on("data",(e=>{o.push(`${s.variables.map((t=>a.bindingToCsvBindings(e.get(t)))).join(",")}\r\n`)})),n.bindingsStream.on("end",(()=>{o.push(null)})),{data:o}}}t.ActorQueryResultSerializeSparqlCsv=a},74295:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82703),t)},87671:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserverHttp=void 0;const n=r(21049);class i extends n.ActionObserver{constructor(e){super(e),this.requests=0,this.bus.subscribeObserver(this),this.httpInvalidator.addInvalidateListener((()=>{this.requests=0}))}onRun(e,t,r){this.requests++}}t.ActionObserverHttp=i},1539:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlJson=void 0;const n=r(42351),i=r(51887);class a extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToJsonBindings(e){if("Literal"===e.termType){const t=e,r={value:t.value,type:"literal"},{language:n}=t,{datatype:i}=t;return n?r["xml:lang"]=n:i&&"http://www.w3.org/2001/XMLSchema#string"!==i.value&&(r.datatype=i.value),r}return"BlankNode"===e.termType?{value:e.value,type:"bnode"}:"Quad"===e.termType?{value:{subject:a.bindingToJsonBindings(e.subject),predicate:a.bindingToJsonBindings(e.predicate),object:a.bindingToJsonBindings(e.object)},type:"triple"}:{value:e.value,type:"uri"}}async testHandleChecked(e,t){if(!["bindings","boolean"].includes(e.type))throw new Error("This actor can only handle bindings streams or booleans.");return!0}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const o={};if("bindings"===e.type){const t=await e.metadata();t.variables.length>0&&(o.vars=t.variables.map((e=>e.value)))}n.push(`{"head": ${JSON.stringify(o)},\n`);let s=!0;if("bindings"===e.type){const t=e.bindingsStream;t.on("error",(e=>{n.emit("error",e)})),t.on("data",(e=>{s?n.push('"results": { "bindings": [\n'):n.push(",\n");const t=Object.fromEntries([...e].map((([e,t])=>[e.value,a.bindingToJsonBindings(t)])));n.push(JSON.stringify(t)),s=!1})),t.on("end",(()=>{s&&n.push('"results": { "bindings": [\n'),n.push("\n]}"),this.emitMetadata&&n.push(`,\n"metadata": { "httpRequests": ${this.httpObserver.requests} }`),n.push("}\n"),n.push(null)}))}else try{n.push(`"boolean":${await e.execute()}\n}\n`),n.push(null)}catch(e){n.once("newListener",(()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeSparqlJson=a},68058:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87671),t),i(r(1539),t)},1816:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlTsv=void 0;const n=r(42351),i=r(2122),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToTsvBindings(e){return e?(0,i.termToString)(e).replace(/\t/gu,"\\t").replace(/\n/gu,"\\n").replace(/\r/gu,"\\r"):""}async testHandleChecked(e,t){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t,r){const n=e,i=new a.Readable;i._read=()=>{};const s=await n.metadata();return i.push(`${s.variables.map((e=>e.value)).join("\t")}\n`),n.bindingsStream.on("error",(e=>{i.emit("error",e)})),n.bindingsStream.on("data",(e=>{i.push(`${s.variables.map((t=>o.bindingToTsvBindings(e.get(t)))).join("\t")}\n`)})),n.bindingsStream.on("end",(()=>{i.push(null)})),{data:i}}}t.ActorQueryResultSerializeSparqlTsv=o},30865:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1816),t)},87869:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlXml=void 0;const n=r(42351),i=r(51887),a=r(79530);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToXmlBindings(e,t){return{name:"binding",attributes:{name:t.value},children:[this.valueToXmlValue(e)]}}static valueToXmlValue(e){let t;switch(e.termType){case"Literal":return t=e.language?{"xml:lang":e.language}:e.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==e.datatype.value?{datatype:e.datatype.value}:{},{name:"literal",attributes:t,children:e.value};case"BlankNode":return{name:"bnode",children:e.value};case"Quad":return{name:"triple",children:[{name:"subject",children:[this.valueToXmlValue(e.subject)]},{name:"predicate",children:[this.valueToXmlValue(e.predicate)]},{name:"object",children:[this.valueToXmlValue(e.object)]}]};default:return{name:"uri",children:e.value}}}async testHandleChecked(e,t){if(!["bindings","boolean"].includes(e.type))throw new Error("This actor can only handle bindings streams or booleans.");return!0}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const s=new a.XmlSerializer((e=>n.push(e)));s.open("sparql",{xmlns:"http://www.w3.org/2005/sparql-results#"});const c=await e.metadata();if(s.add({name:"head",children:c.variables.map((e=>({name:"variable",attributes:{name:e.value}})))}),"bindings"===e.type){s.open("results");const t=e.bindingsStream;t.on("error",(e=>{n.emit("error",e)})),t.on("data",(e=>{s.add({name:"result",children:[...e].map((([e,t])=>o.bindingToXmlBindings(t,e)))})})),t.on("end",(()=>{s.close(),s.close(),setTimeout((()=>n.push(null)))}))}else try{const t=await e.execute();s.add({name:"boolean",children:t.toString()}),s.close(),setTimeout((()=>n.push(null)))}catch(e){setTimeout((()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeSparqlXml=o},79530:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XmlSerializer=void 0,t.XmlSerializer=class{constructor(e){this.stack=[],this.push=e,this.push('\n')}open(e,t){this.push(`${this.identation()+this.formatTag(e,t,"open")}\n`),this.stack.push(e)}close(){const e=this.stack.pop();if(void 0===e)throw new Error("There is no tag left to close");this.push(`${this.identation()+this.formatTag(e,{},"close")}\n`)}add(e){this.push(this.serializeNode(e))}serializeNode(e){if(void 0===e.children)return`${this.identation()+this.formatTag(e.name,e.attributes,"self-closing")}\n`;if("string"==typeof e.children)return`${this.identation()+this.formatTag(e.name,e.attributes,"open")+this.escape(e.children)+this.formatTag(e.name,{},"close")}\n`;const t=[];t.push(`${this.identation()+this.formatTag(e.name,e.attributes,"open")}\n`),this.stack.push(e.name);for(const r of e.children)t.push(this.serializeNode(r));return this.stack.pop(),t.push(`${this.identation()+this.formatTag(e.name,{},"close")}\n`),t.join("")}identation(){return this.stack.map((e=>" ")).join("")}formatTag(e,t,r){return`<${"close"===r?"/":""}${e}${Object.entries(t||{}).map((e=>` ${e[0]}="${this.escape(e[1])}"`))}${"self-closing"===r?"/":""}>`}escape(e){return e.replace(/["&'<>]/gu,(e=>{switch(e){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case'"':return"""}}))}}},33499:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87869),t)},60179:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserverHttp=void 0;const n=r(21049);class i extends n.ActionObserver{constructor(e){super(e),this.requests=0,this.bus.subscribeObserver(this),this.httpInvalidator.addInvalidateListener((()=>{this.requests=0}))}onRun(e,t,r){this.requests++}}t.ActionObserverHttp=i},41880:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeStats=void 0;const n=r(42351),i=r(51887),a=r(34406);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads"].includes(e.type))throw new Error("This actor can only handle bindings streams or quad streams.");return!0}pushHeader(e){const t=["Result","Delay (ms)","HTTP requests"].join(",");e.push(`${t}\n`)}pushStat(e,t,r){const n=[r,this.delay(t),this.httpObserver.requests].join(",");e.push(`${n}\n`)}pushFooter(e,t){const r=["TOTAL",this.delay(t),this.httpObserver.requests].join(",");e.push(`${r}\n`),e.push(null)}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const a="bindings"===e.type?e.bindingsStream:e.quadStream,o=this.now();let s=1;return this.pushHeader(n),a.on("error",(e=>n.emit("error",e))),a.on("data",(()=>this.pushStat(n,o,s++))),a.on("end",(()=>this.pushFooter(n,o))),{data:n}}now(){if("undefined"==typeof performance){const e=a.hrtime();return 1e3*e[0]+e[1]/1e6}return performance.now()}delay(e){return this.now()-e}}t.ActorQueryResultSerializeStats=o},81801:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(60179),t),i(r(41880),t)},25593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeTable=void 0;const n=r(42351),i=r(91194),a=r(6053),o=r(98086),s=r(51887),c=new i.DataFactory,u=o.QUAD_TERM_NAMES.map((e=>c.variable(e)));class l extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e),this.padding=l.repeat(" ",this.columnWidth)}static repeat(e,t){return e.repeat(t)}async testHandleChecked(e,t){if(!["bindings","quads"].includes(e.type))throw new Error("This actor can only handle bindings or quad streams.");return!0}termToString(e){return"Quad"===e.termType?(0,a.termToString)(e):e.value}pad(e){return e.length<=this.columnWidth?e+this.padding.slice(e.length):`${e.slice(0,this.columnWidth-1)}…`}pushHeader(e,t){const r=t.map((e=>this.pad(e.value))).join(" ");e.push(`${r}\n${l.repeat("-",r.length)}\n`)}pushRow(e,t,r){e.push(`${t.map((e=>r.has(e)?this.termToString(r.get(e)):"")).map((e=>this.pad(e))).join(" ")}\n`)}async runHandle(e,t,r){const n=new s.Readable;let i;if(n._read=()=>{},"bindings"===e.type){i=e.bindingsStream;const t=(await e.metadata()).variables;this.pushHeader(n,t),i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>this.pushRow(n,t,e)))}else i=e.quadStream,this.pushHeader(n,u),i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`${(0,o.getTerms)(e).map((e=>this.pad(this.termToString(e)))).join(" ")}\n`)));return i.on("end",(()=>n.push(null))),{data:n}}}t.ActorQueryResultSerializeTable=l},68266:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25593),t)},73102:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeTree=void 0;const n=r(42351),i=r(78470),a=r(21049),o=r(51887),s=r(97977);class c extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingsStreamToGraphQl(e,t,r){const n=a.ActionContext.ensureActionContext(t);return new Promise(((t,a)=>{const o=[],c=new s.Converter(r),u={singularizeVariables:n.get(i.KeysInitQuery.graphqlSingularizeVariables)||{}};e.on("error",a),e.on("data",(e=>{o.push(Object.fromEntries([...e].map((([e,t])=>[e.value,t]))))})),e.on("end",(()=>{t(c.bindingsToTree(o,u))}))}))}async testHandleChecked(e){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t){const r=new o.Readable;r._read=()=>{};const n=e.bindingsStream;return n.on("error",(e=>r.emit("error",e))),c.bindingsStreamToGraphQl(n,e.context,{materializeRdfJsTerms:!0}).then((e=>{r.push(JSON.stringify(e,null," ")),r.push(null)})).catch((e=>r.emit("error",e))),{data:r}}}t.ActorQueryResultSerializeTree=c},93148:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.bindingsStreamToGraphQl=void 0;const a=r(73102),{bindingsStreamToGraphQl:o}=a.ActorQueryResultSerializeTree;t.bindingsStreamToGraphQl=o,i(r(73102),t)},78710:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinEntriesSortCardinality=void 0;const n=r(48955);class i extends n.ActorRdfJoinEntriesSort{constructor(e){super(e)}async test(e){return!0}async run(e){return{entries:[...e.entries].sort(((e,t)=>e.metadata.cardinality.value-t.metadata.cardinality.value))}}}t.ActorRdfJoinEntriesSortCardinality=i},12321:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(78710),t)},1547:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinHash=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"hash",limitEntries:2})}async getOutput(e){const t=await n.ActorRdfJoin.getMetadatas(e.entries),r=n.ActorRdfJoin.overlappingVariables(t);return{result:{type:"bindings",bindingsStream:new i.HashJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,(e=>n.ActorRdfJoin.hash(e,r)),n.ActorRdfJoin.joinBindings),metadata:async()=>await this.constructResultMetadata(e.entries,t,e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinHash=a},55393:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1547),t)},3173:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiBind=void 0;const n=r(83814),i=r(97045),a=r(78470),o=r(89227),s=r(6789);class c extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"bind",canHandleUndefs:!0})}static createBindStream(e,t,r,i,a){const s=e=>{const t=r.map((t=>(0,n.materializeOperation)(t,e,{bindFilter:!1}))),a=t=>t.merge(e);return new o.TransformIterator((async()=>(await i(t,e)).transform({map:a})),{maxBufferSize:128,autoStart:!1})};switch(e){case"depth-first":return new o.MultiTransformIterator(t,{autoStart:!1,multiTransform:s,optional:a});case"breadth-first":return new o.UnionIterator(t.transform({map:s,optional:a}),{autoStart:!1});default:throw new Error(`Received request for unknown bind order: ${e}`)}}async sortJoinEntries(e,t){if(e.some((e=>e.metadata.canContainUndefs)))return e;const r={};for(const t of e)for(const e of t.metadata.variables){let t=r[e.value];t||(t=0),r[e.value]=++t}const n=[];for(const[e,t]of Object.entries(r))t>=2&&n.push(e);if(0===n.length)throw new Error("Bind join can only join entries with at least one common variable");const i=[];for(const t of e){let e=!1;for(const r of t.metadata.variables)if(n.includes(r.value)){e=!0;break}e||i.push(t)}return(await this.mediatorJoinEntriesSort.mediate({entries:e,context:t})).entries.sort(((e,t)=>{const r=i.includes(e);return r===i.includes(t)?0:r?1:-1}))}async getOutput(e){const t=await i.ActorRdfJoin.getEntriesWithMetadatas(e.entries),r=await this.sortJoinEntries(t,e.context);this.logDebug(e.context,"First entry for Bind Join: ",(()=>({entry:r[0].operation,metadata:r[0].metadata})));for(const[e,t]of r.entries())0!==e&&t.output.bindingsStream.close();const o=r[0].output,s=[...r];s.splice(0,1);const u=e.context.set(a.KeysQueryOperation.joinLeftMetadata,r[0].metadata).set(a.KeysQueryOperation.joinRightMetadatas,s.map((e=>e.metadata)));return{result:{type:"bindings",bindingsStream:c.createBindStream(this.bindOrder,o.bindingsStream,s.map((e=>e.operation)),(async(e,t)=>{const r=1===e.length?e[0]:c.FACTORY.createJoin(e);return n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:r,context:u?.set(a.KeysQueryOperation.joinBindings,t)})).bindingsStream}),!1),metadata:()=>this.constructResultMetadata(r,r.map((e=>e.metadata)),e.context)},physicalPlanMetadata:{bindIndex:t.indexOf(r[0]),bindOrder:this.bindOrder}}}canBindWithOperation(e){let t=!0;return s.Util.recurseOperation(e,{[s.Algebra.types.EXTEND]:()=>(t=!1,!1),[s.Algebra.types.GROUP]:()=>(t=!1,!1),[s.Algebra.types.FILTER]:()=>(t=!1,!1)}),t}async getJoinCoefficients(e,t){const r=await this.sortJoinEntries(e.entries.map(((e,r)=>({...e,metadata:t[r]}))),e.context);t=r.map((e=>e.metadata));const n=i.ActorRdfJoin.getRequestInitialTimes(t),a=i.ActorRdfJoin.getRequestItemTimes(t),o=[...r],s=[...n],c=[...a];if(o.splice(0,1),s.splice(0,1),c.splice(0,1),o.some((e=>!this.canBindWithOperation(e.operation))))throw new Error(`Actor ${this.name} can not bind on Extend, Group, and Filter operations`);const u=await Promise.all(o.map((async t=>(await this.mediatorJoinSelectivity.mediate({entries:[r[0],t],context:e.context})).selectivity*this.selectivityModifier))),l=o.map(((e,t)=>e.metadata.cardinality.value*u[t])).reduce(((e,t)=>e+t),0),d=s.reduce(((e,t,r)=>e+t*u[r]),0),h=c.reduce(((e,t,r)=>e+t*u[r]),0);return{iterations:t[0].cardinality.value*l,persistedItems:0,blockingItems:0,requestTime:n[0]+t[0].cardinality.value*(a[0]+d+l*h)}}}t.ActorRdfJoinMultiBind=c,c.FACTORY=new s.Factory},39474:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(3173),t)},21182:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiEmpty=void 0;const n=r(97045),i=r(33588),a=r(89227);class o extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"multi-empty",canHandleUndefs:!0})}async test(e){if((await n.ActorRdfJoin.getMetadatas(e.entries)).every((e=>n.ActorRdfJoin.getCardinality(e).value>0)))throw new Error(`Actor ${this.name} can only join entries where at least one is empty`);return super.test(e)}async getOutput(e){for(const t of e.entries)t.output.bindingsStream.close();return{result:{bindingsStream:new a.ArrayIterator([],{autoStart:!1}),metadata:async()=>({state:new i.MetadataValidationState,cardinality:{type:"exact",value:0},canContainUndefs:!1,variables:n.ActorRdfJoin.joinVariables(await n.ActorRdfJoin.getMetadatas(e.entries))}),type:"bindings"}}}async getJoinCoefficients(e,t){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinMultiEmpty=o},3771:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(21182),t)},1394:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiSmallest=void 0;const n=r(83814),i=r(97045),a=r(6789);class o extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"multi-smallest",limitEntries:3,limitEntriesMin:!0,canHandleUndefs:!0})}async sortJoinEntries(e,t){return(await this.mediatorJoinEntriesSort.mediate({entries:e,context:t})).entries}async getOutput(e){const t=await this.sortJoinEntries(await i.ActorRdfJoin.getEntriesWithMetadatas([...e.entries]),e.context),r=t[0],a=t[1];t.splice(0,2);const s={output:n.ActorQueryOperation.getSafeBindings(await this.mediatorJoin.mediate({type:e.type,entries:[r,a],context:e.context})),operation:o.FACTORY.createJoin([r.operation,a.operation],!1)};return t.push(s),{result:await this.mediatorJoin.mediate({type:e.type,entries:t,context:e.context})}}async getJoinCoefficients(e,t){t=[...t];const r=await this.sortJoinEntries(e.entries.map(((e,r)=>({...e,metadata:t[r]}))),e.context);t=r.map((e=>e.metadata));const n=i.ActorRdfJoin.getRequestInitialTimes(t),a=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value*t.slice(2).reduce(((e,t)=>e*t.cardinality.value),1),persistedItems:0,blockingItems:0,requestTime:n[0]+t[0].cardinality.value*a[0]+n[1]+t[1].cardinality.value*a[1]+t.slice(2).reduce(((e,t,r)=>e+n.slice(2)[r]+t.cardinality.value*a.slice(2)[r]),0)}}}t.ActorRdfJoinMultiSmallest=o,o.FACTORY=new a.Factory},34442:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1394),t)},69046:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinNestedLoop=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"nested-loop",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){return{result:{type:"bindings",bindingsStream:new i.NestedLoopJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,n.ActorRdfJoin.joinBindings,{autoStart:!1}),metadata:async()=>await this.constructResultMetadata(e.entries,await n.ActorRdfJoin.getMetadatas(e.entries),e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinNestedLoop=a},87622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69046),t)},44716:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinNone=void 0;const n=r(79550),i=r(97045),a=r(33588),o=r(89227),s=new n.BindingsFactory;class c extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"none",limitEntries:0})}async test(e){if(e.entries.length>0)throw new Error(`Actor ${this.name} can only join zero entries`);return await this.getJoinCoefficients()}async getOutput(e){return{result:{bindingsStream:new o.ArrayIterator([s.bindings()],{autoStart:!1}),metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]}),type:"bindings"}}}async getJoinCoefficients(){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinNone=c},64849:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44716),t)},81712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSingle=void 0;const n=r(97045);class i extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"single",limitEntries:1}),this.includeInLogs=!1}async test(e){if(1!==e.entries.length)throw new Error(`Actor ${this.name} can only join a single entry`);return await this.getJoinCoefficients()}async getOutput(e){return{result:e.entries[0].output}}async getJoinCoefficients(){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinSingle=i},85427:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(81712),t)},34849:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSymmetricHash=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"symmetric-hash",limitEntries:2})}async getOutput(e){const t=await n.ActorRdfJoin.getMetadatas(e.entries),r=n.ActorRdfJoin.overlappingVariables(t);return{result:{type:"bindings",bindingsStream:new i.SymmetricHashJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,(e=>a.hash(e,r)),n.ActorRdfJoin.joinBindings),metadata:async()=>await this.constructResultMetadata(e.entries,t,e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value+t[1].cardinality.value,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinSymmetricHash=a},33023:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34849),t)},92443:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMinusHashUndef=void 0;const n=r(83814),i=r(97045),a=r(30773);class o extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"minus",physicalName:"hash-undef",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){const t=e.entries[1].output,r=e.entries[0].output,o=await i.ActorRdfJoin.getMetadatas(e.entries),s=i.ActorRdfJoin.overlappingVariables(o);if(s.length>0){const e=new a.BindingsIndex(s);return{result:{type:"bindings",bindingsStream:new n.ClosableTransformIterator((async()=>(await new Promise((r=>{t.bindingsStream.on("data",(t=>e.add(t))),t.bindingsStream.on("end",r)})),r.bindingsStream.filter((t=>!e.contains(t))))),{autoStart:!1,onClose(){t.bindingsStream.destroy(),r.bindingsStream.destroy()}}),async metadata(){const e=await r.metadata(),t=await r.metadata();return{...t,canContainUndefs:e.canContainUndefs||t.canContainUndefs}}}}}return t.bindingsStream.destroy(),{result:r}}async getJoinCoefficients(e,t){const r=i.ActorRdfJoin.getRequestInitialTimes(t),n=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:1.01*(t[0].cardinality.value+t[1].cardinality.value),persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*n[0]+r[1]+t[1].cardinality.value*n[1]}}}t.ActorRdfJoinMinusHashUndef=o},30773:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsIndex=void 0;const n=r(6053);class i{constructor(e){this.data={},this.keys=e}static hashTerm(e){return e&&"Variable"!==e.termType?(0,n.termToString)(e):""}add(e){if(this.isBindingsValid(e)){let t=this.data;for(const r of this.keys){const n=i.hashTerm(e.get(r));let a=t[n];a||(a=t[n]={}),t=a}}}contains(e){return!!this.isBindingsValid(e)&&this.containsRecursive(e,this.keys,[this.data])}isBindingsValid(e){let t=!1;for(const r of this.keys)if(e.get(r)){t=!0;break}return t}containsRecursive(e,t,r){if(0===t.length)return!0;let n;[n,...t]=t;for(const a of r){const r=i.hashTerm(e.get(n));if(r){const n=[a[r],a[""]].filter(Boolean);if(0===n.length)continue;if(this.containsRecursive(e,t,n))return!0}else{let r=Object.keys(a).map((e=>a[e]));if(0===r.length&&(r=[{}]),this.containsRecursive(e,t,r))return!0}}return!1}}t.BindingsIndex=i},56419:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(92443),t)},34086:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMinusHash=void 0;const n=r(83814),i=r(97045);class a extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"minus",physicalName:"hash",limitEntries:2})}async getOutput(e){const t=e.entries[1].output,r=e.entries[0].output,a=await i.ActorRdfJoin.getMetadatas(e.entries),o=i.ActorRdfJoin.overlappingVariables(a);if(o.length>0){const e={};return{result:{type:"bindings",bindingsStream:new n.ClosableTransformIterator((async()=>(await new Promise((r=>{t.bindingsStream.on("data",(t=>{e[i.ActorRdfJoin.hash(t,o)]=!0})),t.bindingsStream.on("end",r)})),r.bindingsStream.filter((t=>!e[i.ActorRdfJoin.hash(t,o)])))),{autoStart:!1,onClose(){t.bindingsStream.destroy(),r.bindingsStream.destroy()}}),metadata:r.metadata}}}return t.bindingsStream.destroy(),{result:r}}async getJoinCoefficients(e,t){const r=i.ActorRdfJoin.getRequestInitialTimes(t),n=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*n[0]+r[1]+t[1].cardinality.value*n[1]}}}t.ActorRdfJoinMinusHash=a},66927:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34086),t)},89225:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinOptionalBind=void 0;const n=r(39474),i=r(83814),a=r(97045),o=r(78470),s=r(6789);class c extends a.ActorRdfJoin{constructor(e){super(e,{logicalType:"optional",physicalName:"bind",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){e.entries[1].output.bindingsStream.close();const t=e.context.set(o.KeysQueryOperation.joinLeftMetadata,await e.entries[0].output.metadata()).set(o.KeysQueryOperation.joinRightMetadatas,[await e.entries[1].output.metadata()]);return{result:{type:"bindings",bindingsStream:n.ActorRdfJoinMultiBind.createBindStream(this.bindOrder,e.entries[0].output.bindingsStream,[e.entries[1].operation],(async(e,r)=>{const n=e[0];return i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:n,context:t?.set(o.KeysQueryOperation.joinBindings,r)})).bindingsStream}),!0),metadata:async()=>await this.constructResultMetadata(e.entries,await a.ActorRdfJoin.getMetadatas(e.entries),e.context,{canContainUndefs:!0})}}}async getJoinCoefficients(e,t){const r=a.ActorRdfJoin.getRequestInitialTimes(t),n=a.ActorRdfJoin.getRequestItemTimes(t);if(e.entries[1].operation.type===s.Algebra.types.EXTEND||e.entries[1].operation.type===s.Algebra.types.GROUP)throw new Error(`Actor ${this.name} can not bind on Extend and Group operations`);const i=(await this.mediatorJoinSelectivity.mediate({entries:e.entries,context:e.context})).selectivity*this.selectivityModifier;return{iterations:t[0].cardinality.value*t[1].cardinality.value*i,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i*(n[0]+r[1]+t[1].cardinality.value*n[1])}}}t.ActorRdfJoinOptionalBind=c},95117:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(89225),t)},90145:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinOptionalNestedLoop=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"optional",physicalName:"nested-loop",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){return{result:{type:"bindings",bindingsStream:new i.NestedLoopJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,n.ActorRdfJoin.joinBindings,{optional:!0,autoStart:!1}),metadata:async()=>await this.constructResultMetadata(e.entries,await n.ActorRdfJoin.getMetadatas(e.entries),e.context,{canContainUndefs:!0})}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinOptionalNestedLoop=a},36920:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90145),t)},88429:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JoinTypes=t.ActorRdfJoinSelectivityVariableCounting=void 0;const n=r(52185),i=r(6789);class a extends n.ActorRdfJoinSelectivity{constructor(e){super(e)}async test(e){return{accuracy:.5}}static getPatternCost(e){let t=1;return"Variable"===e.subject.termType&&(t+=4),"Variable"!==e.predicate.termType&&e.type!==i.Algebra.types.PATH||(t+=1),"Variable"===e.object.termType&&(t+=2),"Variable"===e.graph.termType&&(t+=1),t/9}static getJoinTypes(e,t){const r=[];return"Variable"===e.subject.termType?(e.subject.equals(t.subject)&&r.push(o.unboundSS),"pattern"===t.type&&e.subject.equals(t.predicate)&&r.push(o.unboundSP),e.subject.equals(t.object)&&r.push(o.unboundSO),e.subject.equals(t.graph)&&r.push(o.unboundSG)):(e.subject.equals(t.subject)&&r.push(o.boundSS),"pattern"===t.type&&e.subject.equals(t.predicate)&&r.push(o.boundSP),e.subject.equals(t.object)&&r.push(o.boundSO),e.subject.equals(t.graph)&&r.push(o.boundSG)),"pattern"===e.type&&("Variable"===e.predicate.termType?(e.predicate.equals(t.subject)&&r.push(o.unboundPS),"pattern"===t.type&&e.predicate.equals(t.predicate)&&r.push(o.unboundPP),e.predicate.equals(t.object)&&r.push(o.unboundPO),e.predicate.equals(t.graph)&&r.push(o.unboundPG)):(e.predicate.equals(t.subject)&&r.push(o.boundPS),"pattern"===t.type&&e.predicate.equals(t.predicate)&&r.push(o.boundPP),e.predicate.equals(t.object)&&r.push(o.boundPO),e.predicate.equals(t.graph)&&r.push(o.boundPG))),"Variable"===e.object.termType?(e.object.equals(t.subject)&&r.push(o.unboundOS),"pattern"===t.type&&e.object.equals(t.predicate)&&r.push(o.unboundOP),e.object.equals(t.object)&&r.push(o.unboundOO),e.object.equals(t.graph)&&r.push(o.unboundOG)):(e.object.equals(t.subject)&&r.push(o.boundOS),"pattern"===t.type&&e.object.equals(t.predicate)&&r.push(o.boundOP),e.object.equals(t.object)&&r.push(o.boundOO),e.object.equals(t.graph)&&r.push(o.boundOG)),"Variable"===e.graph.termType?(e.graph.equals(t.subject)&&r.push(o.unboundGS),"pattern"===t.type&&e.graph.equals(t.predicate)&&r.push(o.unboundGP),e.graph.equals(t.object)&&r.push(o.unboundGO),e.graph.equals(t.graph)&&r.push(o.unboundGG)):(e.graph.equals(t.subject)&&r.push(o.boundGS),"pattern"===t.type&&e.graph.equals(t.predicate)&&r.push(o.boundGP),e.graph.equals(t.object)&&r.push(o.boundGO),e.graph.equals(t.graph)&&r.push(o.boundGG)),r}static getOperationsPairwiseJoinCost(e,t){let r=a.MAX_PAIRWISE_COST;for(const n of a.getJoinTypes(e,t))switch(n){case o.boundSS:r-=4;break;case o.boundSP:r-=6;break;case o.boundSO:r-=2;break;case o.boundSG:case o.boundPS:r-=6;break;case o.boundPP:return 1;case o.boundPO:case o.boundPG:r-=6;break;case o.boundOS:r-=2;break;case o.boundOP:r-=6;break;case o.boundOO:r-=2;break;case o.boundOG:case o.boundGS:case o.boundGP:case o.boundGO:case o.boundGG:r-=6;break;case o.unboundSS:r-=2;break;case o.unboundSP:r-=3;break;case o.unboundSO:r-=1;break;case o.unboundSG:case o.unboundPS:case o.unboundPP:case o.unboundPO:case o.unboundPG:r-=3;break;case o.unboundOS:r-=1;break;case o.unboundOP:r-=3;break;case o.unboundOO:r-=1;break;case o.unboundOG:case o.unboundGS:case o.unboundGP:case o.unboundGO:case o.unboundGG:r-=3}return r/a.MAX_PAIRWISE_COST}static getOperationsJoinCost(e){const t=[];for(const r of e)i.Util.recurseOperation(r,{[i.Algebra.types.PATTERN]:e=>(t.push(e),!1),[i.Algebra.types.PATH]:e=>(t.push(e),!1)});let r=0,n=0;for(const e of t)for(const i of t)e!==i&&(r+=a.getOperationsPairwiseJoinCost(e,i),n++);return 0===n?1:r/n*t.reduce(((e,t)=>e*a.getPatternCost(t)),1)}async run(e){return e.entries.length<=1?{selectivity:1}:{selectivity:a.getOperationsJoinCost(e.entries.map((e=>e.operation)))}}}var o;t.ActorRdfJoinSelectivityVariableCounting=a,a.MAX_PAIRWISE_COST=82,function(e){e[e.boundSS=0]="boundSS",e[e.boundSP=1]="boundSP",e[e.boundSO=2]="boundSO",e[e.boundSG=3]="boundSG",e[e.boundPS=4]="boundPS",e[e.boundPP=5]="boundPP",e[e.boundPO=6]="boundPO",e[e.boundPG=7]="boundPG",e[e.boundOS=8]="boundOS",e[e.boundOP=9]="boundOP",e[e.boundOO=10]="boundOO",e[e.boundOG=11]="boundOG",e[e.boundGS=12]="boundGS",e[e.boundGP=13]="boundGP",e[e.boundGO=14]="boundGO",e[e.boundGG=15]="boundGG",e[e.unboundSS=16]="unboundSS",e[e.unboundSP=17]="unboundSP",e[e.unboundSO=18]="unboundSO",e[e.unboundSG=19]="unboundSG",e[e.unboundPS=20]="unboundPS",e[e.unboundPP=21]="unboundPP",e[e.unboundPO=22]="unboundPO",e[e.unboundPG=23]="unboundPG",e[e.unboundOS=24]="unboundOS",e[e.unboundOP=25]="unboundOP",e[e.unboundOO=26]="unboundOO",e[e.unboundOG=27]="unboundOG",e[e.unboundGS=28]="unboundGS",e[e.unboundGP=29]="unboundGP",e[e.unboundGO=30]="unboundGO",e[e.unboundGG=31]="unboundGG"}(o||(t.JoinTypes=o={}))},41998:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(88429),t)},41865:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateCanContainUndefs=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){if("initialize"===e.mode)return{metadata:{canContainUndefs:!1}};let t=e.accumulatedMetadata.canContainUndefs;return e.appendingMetadata.canContainUndefs&&(t=!0),{metadata:{canContainUndefs:t}}}}t.ActorRdfMetadataAccumulateCanContainUndefs=i},69791:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41865),t)},63349:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateCardinality=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){if("initialize"===e.mode)return{metadata:{cardinality:{type:"exact",value:0}}};const t={...e.accumulatedMetadata.cardinality};if(t.dataset){if(!e.appendingMetadata.cardinality.dataset)return{metadata:{cardinality:t}};if(t.dataset!==e.appendingMetadata.cardinality.dataset&&e.appendingMetadata.subsetOf===t.dataset)return{metadata:{cardinality:e.appendingMetadata.cardinality}};if(t.dataset===e.appendingMetadata.cardinality.dataset)return{metadata:{cardinality:t}};delete t.dataset}return e.appendingMetadata.cardinality&&Number.isFinite(e.appendingMetadata.cardinality.value)?("estimate"===e.appendingMetadata.cardinality.type&&(t.type="estimate"),t.value+=e.appendingMetadata.cardinality.value):(t.type="estimate",t.value=Number.POSITIVE_INFINITY),{metadata:{cardinality:t}}}}t.ActorRdfMetadataAccumulateCardinality=i},22074:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(63349),t)},4823:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulatePageSize=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){return"initialize"===e.mode?{metadata:{}}:{metadata:{..."pageSize"in e.accumulatedMetadata||"pageSize"in e.appendingMetadata?{pageSize:(e.accumulatedMetadata.pageSize||0)+(e.appendingMetadata.pageSize||0)}:{}}}}}t.ActorRdfMetadataAccumulatePageSize=i},78345:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4823),t)},4352:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateRequestTime=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){return"initialize"===e.mode?{metadata:{}}:{metadata:{..."requestTime"in e.accumulatedMetadata||"requestTime"in e.appendingMetadata?{requestTime:(e.accumulatedMetadata.requestTime||0)+(e.appendingMetadata.requestTime||0)}:{}}}}}t.ActorRdfMetadataAccumulateRequestTime=i},13905:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4352),t)},1133:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAll=void 0;const n=r(63460),i=r(51887);class a extends n.ActorRdfMetadata{constructor(e){super(e)}async test(e){return!0}async run(e){const t=new i.Readable({objectMode:!0}),r=new i.Readable({objectMode:!0});return e.quads.on("error",(e=>{t.emit("error",e),r.emit("error",e)})),t._read=r._read=()=>{t._read=r._read=()=>{},e.quads.on("data",(e=>{t.push(e),r.push(e)})),e.quads.on("end",(()=>{t.push(null),r.push(null)}))},{data:t,metadata:r}}}t.ActorRdfMetadataAll=a},59095:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1133),t)},27932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractAllowHttpMethods=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return e.headers?.get("allow")&&(t.allowHttpMethods=e.headers.get("allow")?.split(/, */u)),{metadata:t}}}t.ActorRdfMetadataExtractAllowHttpMethods=i},33394:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(27932),t)},65354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraControls=void 0;const n=r(23058),i=r(19415);class a extends n.ActorRdfMetadataExtract{constructor(e){super(e),this.parsedUriTemplateCache={}}async test(e){return!0}getLinks(e,t){return Object.fromEntries(a.LINK_TYPES.map((r=>{const n=t[r]||t[`${r}Page`],i=n&&n[e];return[r,i&&i.length>0?i[0]:null]})))}parseUriTemplateCached(e){return this.parsedUriTemplateCache[e]||(this.parsedUriTemplateCache[e]=(0,i.parse)(e))}getSearchForms(e){const t=e.search,r=[];if(t)for(const n in t)for(const i of t[n]){const t=(e.template||{})[i]||[];if(1!==t.length)throw new Error(`Expected 1 hydra:template for ${i}`);const a=t[0],o=this.parseUriTemplateCached(a),s=Object.fromEntries(((e.mapping||{})[i]||[]).map((t=>{const r=((e.variable||{})[t]||[])[0],n=((e.property||{})[t]||[])[0];if(!r)throw new Error(`Expected a hydra:variable for ${t}`);if(!n)throw new Error(`Expected a hydra:property for ${t}`);return[n,r]}))),c=e=>o.expand(Object.fromEntries(Object.keys(e).map((t=>[s[t],e[t]]))));r.push({dataset:n,template:a,mappings:s,getUri:c})}return{values:r}}getHydraProperties(e){return new Promise(((t,r)=>{e.on("error",r);const n={};e.on("data",(e=>{if(e.predicate.value.startsWith(a.HYDRA)){const t=e.predicate.value.slice(a.HYDRA.length),r=n[t]||(n[t]={});(r[e.subject.value]||(r[e.subject.value]=[])).push(e.object.value)}})),e.on("end",(()=>t(n)))}))}async run(e){const t={},r=await this.getHydraProperties(e.metadata);return Object.assign(t,this.getLinks(e.url,r)),t.searchForms=this.getSearchForms(r),{metadata:t}}}t.ActorRdfMetadataExtractHydraControls=a,a.HYDRA="http://www.w3.org/ns/hydra/core#",a.LINK_TYPES=["first","next","previous","last"]},88791:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(65354),t)},74276:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraCount=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}run(e){return new Promise(((t,r)=>{e.metadata.on("error",r),e.metadata.on("data",(e=>{this.predicates.includes(e.predicate.value)&&t({metadata:{cardinality:{type:"estimate",value:Number.parseInt(e.object.value,10),dataset:e.subject.value}}})})),e.metadata.on("end",(()=>{t({metadata:{cardinality:{type:"estimate",value:0}}})}))}))}}t.ActorRdfMetadataExtractHydraCount=i},62270:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74276),t)},63255:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraPagesize=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return new Promise(((t,r)=>{e.metadata.on("error",r),e.metadata.on("data",(e=>{this.predicates.includes(e.predicate.value)&&t({metadata:{pageSize:Number.parseInt(e.object.value,10)}})})),e.metadata.on("end",(()=>{t({metadata:{}})}))}))}}t.ActorRdfMetadataExtractHydraPagesize=i},95831:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(63255),t)},70930:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractPatchSparqlUpdate=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return(e.headers?.get("accept-patch")?.includes("application/sparql-update")||e.headers?.get("ms-author-via")?.includes("SPARQL"))&&(t.patchSparqlUpdate=!0),{metadata:t}}}t.ActorRdfMetadataExtractPatchSparqlUpdate=i},31684:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(70930),t)},1519:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractPutAccepted=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return e.headers?.get("accept-put")&&(t.putAccepted=e.headers.get("accept-put")?.split(/, */u)),{metadata:t}}}t.ActorRdfMetadataExtractPutAccepted=i},13409:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1519),t)},33699:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractRequestTime=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return{metadata:{requestTime:e.requestTime}}}}t.ActorRdfMetadataExtractRequestTime=i},25344:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33699),t)},74342:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractSparqlService=void 0;const n=r(23058),i=r(84690);class a extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return new Promise(((t,r)=>{e.metadata.on("error",r);const n={};e.metadata.on("data",(t=>{"http://www.w3.org/ns/sparql-service-description#endpoint"!==t.predicate.value||"BlankNode"!==t.subject.termType&&t.subject.value!==e.url?"http://www.w3.org/ns/sparql-service-description#defaultGraph"===t.predicate.value&&(n.defaultGraph=t.object.value):(n.sparqlService="Literal"===t.object.termType?(0,i.resolve)(t.object.value,e.url):t.object.value,this.inferHttpsEndpoint&&e.url.startsWith("https")&&!n.sparqlService.startsWith("https")&&(n.sparqlService=n.sparqlService.replace("http:","https:")))})),e.metadata.on("end",(()=>{t({metadata:n})}))}))}}t.ActorRdfMetadataExtractSparqlService=a},17609:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74342),t)},76150:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataPrimaryTopic=void 0;const n=r(63460),i=r(51887);class a extends n.ActorRdfMetadata{constructor(e){super(e)}async test(e){if(e.triples)throw new Error("This actor only supports non-triple quad streams.");return!0}async run(e){const t=new i.Readable({objectMode:!0}),r=new i.Readable({objectMode:!0}),n=()=>{t._read=r._read=()=>{},e.quads.on("error",(e=>{t.emit("error",e),r.emit("error",e)}));const n={};let i;const a={};e.quads.on("data",(t=>{"http://rdfs.org/ns/void#subset"===t.predicate.value&&t.object.value===e.url?i=t.subject.value:"http://xmlns.com/foaf/0.1/primaryTopic"===t.predicate.value&&(a[t.object.value]=t.subject.value);let r=n[t.graph.value];r||(r=n[t.graph.value]=[]),r.push(t)})),e.quads.on("end",(()=>{const e=i?a[i]:void 0;for(const i in n)if(i===e){for(const e of n[i])r.push(e);if(this.metadataToData)for(const e of n[i])t.push(e)}else{for(const e of n[i])t.push(e);if(!e&&this.dataToMetadataOnInvalidMetadataGraph)for(const e of n[i])r.push(e)}t.push(null),r.push(null)}))};return t._read=r._read=()=>{n()},{data:t,metadata:r}}}t.ActorRdfMetadataPrimaryTopic=a},8962:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76150),t)},77761:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlMicrodata=void 0;const n=r(44706),i=r(47755);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=e.headers?e.headers.get("content-type"):null,r=t?.includes("xml"),n=new i.MicrodataRdfParser({baseIRI:e.baseIRI,xmlMode:r});n.on("error",e.error),n.on("data",e.emit);const a=n.onEnd;return n.onEnd=()=>{a.call(n),e.end()},{htmlParseListener:n}}}t.ActorRdfParseHtmlMicrodata=a},29438:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77761),t)},96889:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlRdfa=void 0;const n=r(44706),i=r(1481);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=e.headers?e.headers.get("content-type"):null,r=(e.headers&&e.headers.get("content-language"))??void 0,n=t&&t.includes("xml")?"xhtml":"html",a=new i.RdfaParser({baseIRI:e.baseIRI,profile:n,language:r});a.on("error",e.error),a.on("data",e.emit);const o=a.onEnd;return a.onEnd=()=>{o.call(a),e.end()},{htmlParseListener:a}}}t.ActorRdfParseHtmlRdfa=a},75022:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96889),t)},17191:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlScript=void 0;const n=r(44706),i=r(13197);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=(await this.mediatorRdfParseMediatypes.mediate({context:e.context,mediaTypes:!0})).mediaTypes;return{htmlParseListener:new i.HtmlScriptListener(this.mediatorRdfParseHandle,e.emit,e.error,e.end,t,e.context,e.baseIRI,e.headers)}}}t.ActorRdfParseHtmlScript=a},13197:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HtmlScriptListener=void 0;const n=r(78470),i=r(51887),a=r(84690);class o{constructor(e,t,r,i,a,o,s,c){this.textChunksJsonLd=[],this.endBarrier=1,this.passedScripts=0,this.isFinalJsonLdProcessing=!1,this.mediatorRdfParseHandle=e,this.cbQuad=t,this.cbError=r,this.cbEnd=i,this.supportedTypes=a,this.context=o.set(n.KeysRdfParseHtmlScript.processingHtmlScript,!0),this.baseIRI=s,this.headers=c,this.onlyFirstScript=!1===o.get(n.KeysRdfParseHtmlScript.extractAllScripts);const u=this.baseIRI.indexOf("#");this.targetScriptId=u>0?this.baseIRI.slice(u+1,this.baseIRI.length):null}static newErrorCoded(e,t){const r=new Error(e);return r.code=t,r}onEnd(){0==--this.endBarrier&&(this.textChunksJsonLd.length>0?(this.handleMediaType="application/ld+json",this.textChunks=this.textChunksJsonLd,this.textChunks.push("]"),this.textChunksJsonLd=[],this.isFinalJsonLdProcessing=!0,this.endBarrier++,this.onTagClose()):(0===this.passedScripts&&this.targetScriptId&&this.cbError(o.newErrorCoded(`Failed to find targeted script id "${this.targetScriptId}"`,"loading document failed")),this.cbEnd()),this.isFinalJsonLdProcessing=!1)}onTagClose(){if(this.handleMediaType)if(this.requiresCustomJsonLdHandling(this.handleMediaType)&&!this.isFinalJsonLdProcessing)this.handleMediaType=void 0,this.textChunks=void 0,this.onEnd();else{const e=new i.Readable({objectMode:!0});e._read=()=>{};const t=this.textChunks,r={context:this.context,handle:{metadata:{baseIRI:this.baseIRI},data:e,headers:this.headers,context:this.context},handleMediaType:this.handleMediaType};this.mediatorRdfParseHandle.mediate(r).then((({handle:r})=>{r.data.on("error",(e=>this.cbError(o.newErrorCoded(e.message,"invalid script element")))).on("data",this.cbQuad).on("end",(()=>this.onEnd()));for(const r of t)e.push(r);e.push(null)})).catch((e=>{this.targetScriptId?this.cbError(o.newErrorCoded(e.message,"loading document failed")):this.onEnd()})),this.handleMediaType=void 0,this.textChunks=void 0}}onTagOpen(e,t){"base"===e&&t.href&&(this.baseIRI=(0,a.resolve)(t.href,this.baseIRI)),"script"!==e||this.targetScriptId&&t.id!==this.targetScriptId?this.handleMediaType=void 0:this.supportedTypes[t.type]?this.onlyFirstScript&&this.passedScripts>0?this.handleMediaType=void 0:(this.passedScripts++,this.handleMediaType=t.type,this.endBarrier++,this.requiresCustomJsonLdHandling(this.handleMediaType)?(this.textChunks=this.textChunksJsonLd,this.textChunks.push(0===this.textChunks.length?"[":",")):this.textChunks=[]):this.targetScriptId&&this.cbError(o.newErrorCoded(`Targeted script "${this.targetScriptId}" does not have a supported type`,"loading document failed"))}onText(e){this.handleMediaType&&this.textChunks.push(e)}requiresCustomJsonLdHandling(e){return!this.onlyFirstScript&&!this.targetScriptId&&"application/ld+json"===e}}t.HtmlScriptListener=o},89518:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17191),t)},52435:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtml=void 0;const n=r(93695),i=r(62304),a=r(51887);class o extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new a.Readable({objectMode:!0});return n._read=async()=>{n._read=()=>{};let t=1;function a(e){n.emit("error",e)}function o(){0==--t&&n.push(null)}const s={baseIRI:e.metadata?.baseIRI??"",context:r,emit:function(e){n.emit("data",e)},end:o,error:a,headers:e.headers};Promise.all(this.busRdfParseHtml.publish(s)).then((async r=>{t+=r.length;const n=[];for(const e of r){const{htmlParseListener:t}=await e.actor.run(s);n.push(t)}const c=new i.Parser({onclosetag(){try{for(const e of n)e.onTagClose()}catch(e){a(e)}},onend(){try{for(const e of n)e.onEnd()}catch(e){a(e)}o()},onopentag(e,t){try{for(const r of n)r.onTagOpen(e,t)}catch(e){a(e)}},ontext(e){try{for(const t of n)t.onText(e)}catch(e){a(e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:!1});e.data.on("error",a).on("data",(e=>c.write(e.toString()))).on("end",(()=>c.end()))})).catch(a)},{data:n}}}t.ActorRdfParseHtml=o},9381:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52435),t)},59562:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseJsonLd=void 0;const n=r(93695),i=r(78470),a=r(72333),o=r(97821);class s extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async testHandle(e,t,r){if(r.has(i.KeysRdfParseHtmlScript.processingHtmlScript)&&"application/ld+json"!==t)throw new Error("JSON-LD in script tags can only have media type 'application/ld+json'");if(!t||!(t in this.mediaTypePriorities)&&!t.endsWith("+json"))throw new Error(`Unrecognized media type: ${t}`);return await this.testHandleChecked(e)}async runHandle(e,t,r){return{data:a.JsonLdParser.fromHttpResponse(e.metadata?.baseIRI??"",t,e.headers,{documentLoader:r.get(i.KeysRdfParseJsonLd.documentLoader)||new o.DocumentLoaderMediated(this.mediatorHttp,r),strictValues:r.get(i.KeysRdfParseJsonLd.strictValues),...r.get(i.KeysRdfParseJsonLd.parserOptions)}).import(e.data)}}}t.ActorRdfParseJsonLd=s},97821:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DocumentLoaderMediated=void 0;const n=r(80389),i=r(1838),a=r(29038);class o extends i.FetchDocumentLoader{constructor(e,t){super(o.createFetcher(e,t)),this.mediatorHttp=e,this.context=t}static createFetcher(e,t){return async(r,i)=>{const o=await e.mediate({input:r,init:i,context:t});return o.json=async()=>JSON.parse(await a(n.ActorHttp.toNodeReadable(o.body))),o}}}t.DocumentLoaderMediated=o},79852:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(59562),t),i(r(97821),t)},22751:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseN3=void 0;const n=r(93695),i=r(66641);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){e.data.on("error",(e=>n.emit("error",e)));const n=e.data.pipe(new i.StreamParser({baseIRI:e.metadata?.baseIRI,format:t.endsWith("n3")?t:`${t}*`}));return{data:n,metadata:{triples:"text/turtle"===t||"application/n-triples"===t||"text/n3"===t}}}}t.ActorRdfParseN3=a},44500:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22751),t)},93566:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseRdfXml=void 0;const n=r(93695),i=r(94607);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){e.data.on("error",(e=>n.emit("error",e)));const n=e.data.pipe(new i.RdfXmlParser({baseIRI:e.metadata?.baseIRI}));return{data:n,metadata:{triples:!0}}}}t.ActorRdfParseRdfXml=a},71422:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93566),t)},93415:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseShaclc=void 0;const n=r(93695),i=r(51887),a=r(13411),o=r(29038),s=r(54169);class c extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new s.PrefixWrappingIterator(o(e.data).then((r=>(0,a.parse)(r,{extendedSyntax:"text/shaclc-ext"===t,baseIRI:e.metadata?.baseIRI})))),c=new i.Readable({objectMode:!0});return n.on("prefix",((...e)=>c.emit("prefix",...e))),{data:c.wrap(n),metadata:{triples:!0}}}}t.ActorRdfParseShaclc=c},54169:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PrefixWrappingIterator=void 0;const n=r(89227);class i extends n.WrappingIterator{constructor(e){super(e?.then((e=>(this.prefixes=e.prefixes,e))))}read(){if(this.prefixes){for(const e of Object.entries(this.prefixes))this.emit("prefix",...e);delete this.prefixes}return super.read()}}t.PrefixWrappingIterator=i},38688:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93415),t)},22079:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseXmlRdfa=void 0;const n=r(93695),i=r(1481);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=(e.headers&&e.headers.get("content-language"))??void 0;e.data.on("error",(e=>a.emit("error",e)));const a=e.data.pipe(new i.RdfaParser({baseIRI:e.metadata?.baseIRI,profile:"xml",language:n}));return{data:a,metadata:{triples:!0}}}}t.ActorRdfParseXmlRdfa=a},47385:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22079),t)},18625:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksNext=void 0;const n=r(67315);class i extends n.ActorRdfResolveHypermediaLinks{constructor(e){super(e)}async test(e){if(!e.metadata.next)throw new Error(`Actor ${this.name} requires a 'next' metadata entry.`);return!0}async run(e){return{links:[{url:e.metadata.next}]}}}t.ActorRdfResolveHypermediaLinksNext=i},62120:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(18625),t)},34716:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksQueueFifo=void 0;const n=r(15115),i=r(6642);class a extends n.ActorRdfResolveHypermediaLinksQueue{constructor(e){super(e)}async test(e){return!0}async run(e){return{linkQueue:new i.LinkQueueFifo}}}t.ActorRdfResolveHypermediaLinksQueueFifo=a},6642:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkQueueFifo=void 0,t.LinkQueueFifo=class{constructor(){this.links=[]}push(e){return this.links.push(e),!0}getSize(){return this.links.length}isEmpty(){return 0===this.links.length}pop(){return this.links.shift()}peek(){return this.links[0]}}},67506:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34716),t),i(r(6642),t)},67497:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaNone=void 0;const n=r(62515),i=r(71580),a=r(92608);class o extends i.ActorRdfResolveHypermedia{constructor(e){super(e,"file")}async testMetadata(e){return{filterFactor:0}}async run(e){return this.logInfo(e.context,`Identified as file source: ${e.url}`),{source:new n.RdfJsQuadSource(await(0,a.storeStream)(e.quads))}}}t.ActorRdfResolveHypermediaNone=o},2458:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(67497),t)},9466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaQpf=void 0;const n=r(71580),i=r(49078);class a extends n.ActorRdfResolveHypermedia{constructor(e){super(e,"qpf")}async testMetadata(e){const{searchForm:t}=this.createSource(e.url,e.metadata,e.context);if(e.handledDatasets&&e.handledDatasets[t.dataset])throw new Error(`Actor ${this.name} can only be applied for the first page of a QPF dataset.`);return{filterFactor:1}}async run(e){this.logInfo(e.context,`Identified as qpf source: ${e.url}`);const t=this.createSource(e.url,e.metadata,e.context,e.quads);return{source:t,dataset:t.searchForm.dataset}}createSource(e,t,r,n){return new i.RdfSourceQpf(this.mediatorMetadata,this.mediatorMetadataExtract,this.mediatorDereferenceRdf,this.subjectUri,this.predicateUri,this.objectUri,this.graphUri,e,t,r,n)}}t.ActorRdfResolveHypermediaQpf=a},49078:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfSourceQpf=void 0;const n=r(89227),i=r(91194),a=r(6053),o=r(98086),s=new i.DataFactory;function c(e){return"DefaultGraph"===e.termType?"|":(0,a.termToString)(e)}t.RdfSourceQpf=class{constructor(e,t,r,i,a,o,c,u,l,d,h){this.mediatorMetadata=e,this.mediatorMetadataExtract=t,this.mediatorDereferenceRdf=r,this.subjectUri=i,this.predicateUri=a,this.objectUri=o,this.graphUri=c,this.url=u,this.context=d,this.cachedQuads={};const p=this.getSearchForm(l);if(!p)throw new Error("Illegal state: found no TPF/QPF search form anymore in metadata.");if(this.searchForm=p,this.defaultGraph=l.defaultGraph?s.namedNode(l.defaultGraph):void 0,h){let e=(0,n.wrap)(h);this.defaultGraph&&(e=this.reverseMapQuadsToDefaultGraph(e)),e.setProperty("metadata",l),this.cacheQuads(e,s.variable(""),s.variable(""),s.variable(""),s.variable(""))}}getSearchForm(e){if(!e.searchForms||!e.searchForms.values)return;const{searchForms:t}=e;for(const e of t.values){if(this.graphUri&&this.subjectUri in e.mappings&&this.predicateUri in e.mappings&&this.objectUri in e.mappings&&this.graphUri in e.mappings&&4===Object.keys(e.mappings).length)return e;if(this.subjectUri in e.mappings&&this.predicateUri in e.mappings&&this.objectUri in e.mappings&&3===Object.keys(e.mappings).length)return e}}createFragmentUri(e,t,r,n,i){const s={},c=[{uri:this.subjectUri,term:t},{uri:this.predicateUri,term:r},{uri:this.objectUri,term:n},{uri:this.graphUri,term:i}];for(const e of c)e.uri&&"Variable"!==e.term.termType&&("Quad"!==e.term.termType||(0,o.everyTermsNested)(e.term,(e=>"Variable"!==e.termType)))&&(s[e.uri]=(0,a.termToString)(e.term));return e.getUri(s)}match(e,t,r,i){let a=!1;if("DefaultGraph"===i.termType)if(this.defaultGraph)a=!0,i=this.defaultGraph;else if(4===Object.keys(this.searchForm.mappings).length&&!this.defaultGraph){const e=new n.ArrayIterator([],{autoStart:!1});return e.setProperty("metadata",{requestTime:0,cardinality:{type:"exact",value:0},first:null,next:null,last:null,canContainUndefs:!1}),e}const c=this.getCachedQuads(e,t,r,i);if(c)return c;const u=new n.TransformIterator((async()=>{let c=this.createFragmentUri(this.searchForm,e,t,r,i);const l=await this.mediatorDereferenceRdf.mediate({context:this.context,url:c});c=l.url;const d=await this.mediatorMetadata.mediate({context:this.context,url:c,quads:l.data,triples:l.metadata?.triples}),h=this.mediatorMetadataExtract.mediate({context:this.context,url:c,metadata:d.metadata,requestTime:l.requestTime}).then((({metadata:e})=>u.setProperty("metadata",{...e,canContainUndefs:!1,subsetOf:this.url}))),p=s.defaultGraph();let f=(0,n.wrap)(d.data).transform({filter:n=>!!(0,o.matchPattern)(n,e,t,r,i)||a&&(0,o.matchPattern)(n,e,t,r,p)});return(a||"Variable"===i.termType)&&(f=this.reverseMapQuadsToDefaultGraph(f)),f.on("error",(()=>{})),await h,f}),{autoStart:!1});return this.cacheQuads(u,e,t,r,i),this.getCachedQuads(e,t,r,i)}reverseMapQuadsToDefaultGraph(e){const t=s.defaultGraph();return e.map((e=>(0,o.mapTerms)(e,((e,r)=>"graph"===r&&e.equals(this.defaultGraph)?t:e))))}getPatternId(e,t,r,n){return JSON.stringify({s:"Variable"===e.termType?"":c(e),p:"Variable"===t.termType?"":c(t),o:"Variable"===r.termType?"":c(r),g:"Variable"===n.termType?"":c(n)})}cacheQuads(e,t,r,n,i){const a=this.getPatternId(t,r,n,i);this.cachedQuads[a]=e.clone()}getCachedQuads(e,t,r,n){const i=this.getPatternId(e,t,r,n),a=this.cachedQuads[i];if(a)return a.clone()}}},14952:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(9466),t)},64389:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaSparql=void 0;const n=r(71580),i=r(1985);class a extends n.ActorRdfResolveHypermedia{constructor(e){super(e,"sparql")}async testMetadata(e){if(!(e.forceSourceType||e.metadata.sparqlService||this.checkUrlSuffix&&e.url.endsWith("/sparql")))throw new Error(`Actor ${this.name} could not detect a SPARQL service description or URL ending on /sparql.`);return{filterFactor:1}}async run(e){return this.logInfo(e.context,`Identified ${e.url} as sparql source with service URL: ${e.metadata.sparqlService||e.url}`),{source:new i.RdfSourceSparql(e.metadata.sparqlService||e.url,e.context,this.mediatorHttp,this.forceHttpGet,this.cacheSize)}}}t.ActorRdfResolveHypermediaSparql=a},1985:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfSourceSparql=void 0;const n=r(79550),i=r(89227),a=r(88436),o=r(70463),s=r(91194),c=r(98086),u=r(6789),l=new s.DataFactory,d=new n.BindingsFactory,h=l.variable("count");class p{constructor(e,t,r,n,i){this.url=e,this.context=t,this.mediatorHttp=r,this.endpointFetcher=new a.SparqlEndpointFetcher({method:n?"GET":"POST",fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.context}),prefixVariableQuestionMark:!0}),this.cache=i>0?new o.LRUCache({max:i}):void 0}static replaceBlankNodes(e){const t=(0,c.getVariables)((0,c.getTerms)(e)).map((e=>e.value)),r={};let n=!1;const i=(0,c.mapTermsNested)(e,(e=>{if("BlankNode"===e.termType){let i=e.value;if(r[i])i=r[i];else{if(t.includes(i)){let e=0;for(;t.includes(`${i}${e}`);)++e;i+=e}r[e.value]=i,t.push(i)}return n=!0,l.variable(i)}return e}));return n?i:e}static patternToBgp(e){return p.FACTORY.createBgp([p.FACTORY.createPattern(e.subject,e.predicate,e.object,e.graph)])}static patternToSelectQuery(e){const t=(0,c.getVariables)((0,c.getTerms)(e));return(0,u.toSparql)(p.FACTORY.createProject(p.patternToBgp(e),t),{sparqlStar:!0})}static patternToCountQuery(e){return(0,u.toSparql)(p.FACTORY.createProject(p.FACTORY.createExtend(p.FACTORY.createGroup(p.patternToBgp(e),[],[p.FACTORY.createBoundAggregate(l.variable("var0"),"count",p.FACTORY.createWildcardExpression(),!1)]),l.variable("count"),p.FACTORY.createTermExpression(l.variable("var0"))),[l.variable("count")]),{sparqlStar:!0})}async queryBindings(e,t){const r=await this.endpointFetcher.fetchBindings(e,t);return(0,i.wrap)(r,{autoStart:!1,maxBufferSize:Number.POSITIVE_INFINITY}).map((e=>d.bindings(Object.entries(e).map((([e,t])=>[l.variable(e.slice(1)),t])))))}match(e,t,r,n){const a=p.replaceBlankNodes(p.FACTORY.createPattern(e,t,r,n)),o=p.patternToCountQuery(a),s=p.patternToSelectQuery(a);new Promise((async(e,t)=>{try{const t=this.cache?.get(o);if(void 0!==t)return e(t);const r=await this.queryBindings(this.url,o);r.on("data",(t=>{const r=t.get(h),n={type:"estimate",value:Number.POSITIVE_INFINITY};if(r){const e=Number.parseInt(r.value,10);Number.isNaN(e)||(n.type="exact",n.value=e,this.cache?.set(o,n))}return e(n)})),r.on("error",(()=>e({type:"estimate",value:Number.POSITIVE_INFINITY}))),r.on("end",(()=>e({type:"estimate",value:Number.POSITIVE_INFINITY})))}catch(e){t(e)}})).then((e=>u.setProperty("metadata",{cardinality:e,canContainUndefs:!1}))).catch((()=>u.setProperty("metadata",{cardinality:{type:"estimate",value:Number.POSITIVE_INFINITY},canContainUndefs:!1})));const u=new i.TransformIterator((async()=>this.queryBindings(this.url,s)),{autoStart:!1}).transform({map:e=>(0,c.mapTermsNested)(a,(t=>{if("Variable"===t.termType){const r=e.get(t);return r||u.destroy(new Error(`The endpoint ${this.url} failed to provide a binding for ${t.value}.`)),r}return t})),autoStart:!1});return u}}t.RdfSourceSparql=p,p.FACTORY=new u.Factory},14579:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(64389),t)},27839:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternFederated=void 0;const n=r(58392),i=r(86571);class a extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e),this.emptyPatterns=new Map,e.mediatorRdfMetadataAccumulate||(this.mediatorRdfMetadataAccumulate={async mediate(e){if("initialize"===e.mode)return{metadata:{cardinality:{type:"exact",value:0},canContainUndefs:!1}};const t={...e.accumulatedMetadata},r=e.appendingMetadata;return r.cardinality&&Number.isFinite(r.cardinality.value)?("estimate"===r.cardinality.type&&(t.cardinality.type="estimate"),t.cardinality.value+=r.cardinality.value):(t.cardinality.type="estimate",t.cardinality.value=Number.POSITIVE_INFINITY),(t.requestTime||r.requestTime)&&(t.requestTime=t.requestTime||0,r.requestTime=r.requestTime||0,t.requestTime+=r.requestTime),(t.pageSize||r.pageSize)&&(t.pageSize=t.pageSize||0,r.pageSize=r.pageSize||0,t.pageSize+=r.pageSize),r.canContainUndefs&&(t.canContainUndefs=!0),{metadata:t}}})}async test(e){if(!(0,n.getContextSources)(e.context))throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a sources array.`);return!0}async getSource(e){return new i.FederatedQuadSource(this.mediatorResolveQuadPattern,this.mediatorRdfMetadataAccumulate,e,this.emptyPatterns,this.skipEmptyPatterns)}}t.ActorRdfResolveQuadPatternFederated=a},86571:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FederatedQuadSource=void 0;const n=r(83814),i=r(58392),a=r(78470),o=r(27057),s=r(33588),c=r(89227),u=r(91194),l=r(98086),d=r(6789),h=new u.DataFactory;class p{constructor(e,t,r,n,i){if(this.mediatorResolveQuadPattern=e,this.mediatorRdfMetadataAccumulate=t,this.sources=r.get(a.KeysRdfResolveQuadPattern.sources),this.contextDefault=r.delete(a.KeysRdfResolveQuadPattern.sources),this.emptyPatterns=n,this.sourceIds=r.get(a.KeysRdfResolveQuadPattern.sourceIds)??new Map,this.skipEmptyPatterns=i,this.algebraFactory=new d.Factory,this.skipEmptyPatterns)for(const e of this.sources)this.emptyPatterns.has(e)||this.emptyPatterns.set(e,[])}static isTermBound(e){return"Variable"!==e.termType}static isSubPatternOf(e,t){return(!p.isTermBound(t.subject)||t.subject.equals(e.subject))&&(!p.isTermBound(t.predicate)||t.predicate.equals(e.predicate))&&(!p.isTermBound(t.object)||t.object.equals(e.object))&&(!p.isTermBound(t.graph)||t.graph.equals(e.graph))}static skolemizeTerm(e,t){return"BlankNode"===e.termType?new o.BlankNodeScoped(`bc_${t}_${e.value}`,h.namedNode(`${p.SKOLEM_PREFIX}${t}:${e.value}`)):e}static skolemizeQuad(e,t){return(0,l.mapTermsNested)(e,(e=>p.skolemizeTerm(e,t)))}static deskolemizeTerm(e,t){if("BlankNode"===e.termType&&"skolemized"in e&&(e=e.skolemized),"NamedNode"===e.termType&&e.value.startsWith(p.SKOLEM_PREFIX)){const r=e.value.indexOf(":",p.SKOLEM_PREFIX.length);if(e.value.slice(p.SKOLEM_PREFIX.length,r)===t){const t=e.value.slice(r+1,e.value.length);return h.blankNode(t)}return null}return e}static deskolemizeQuad(e,t){return(0,l.mapTermsNested)(e,(e=>p.deskolemizeTerm(e,t)||e))}isSourceEmpty(e,t){if(!this.skipEmptyPatterns)return!1;const r=this.emptyPatterns.get(e);if(r)for(const e of r)if(p.isSubPatternOf(t,e))return!0;return!1}getSourceId(e){let t=this.sourceIds.get(e);return void 0===t&&(t=`${this.sourceIds.size}`,this.sourceIds.set(e,t)),t}match(e,t,r,o){const u=async()=>{if(l.size===this.sources.length){let e=(await this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault})).metadata;for(const t of l.values())e={...t,...(await this.mediatorRdfMetadataAccumulate.mediate({mode:"append",accumulatedMetadata:e,appendingMetadata:t,context:this.contextDefault})).metadata};e.state=new s.MetadataValidationState;const t=h.getProperty("metadata");h.setProperty("metadata",e),t?.state.invalidate()}},l=new Map,d=Promise.all(this.sources.map((async(n,d)=>{const f=this.getSourceId(n),y=p.deskolemizeTerm(e,f),g=p.deskolemizeTerm(t,f),m=p.deskolemizeTerm(r,f),b=p.deskolemizeTerm(o,f);let v,_,w=(0,i.getDataSourceContext)(n,this.contextDefault);w=w.set(a.KeysRdfResolveQuadPattern.source,n),y&&g&&m&&b&&!this.isSourceEmpty(n,v=this.algebraFactory.createPattern(y,g,m,b))?_=await this.mediatorResolveQuadPattern.mediate({pattern:v,context:w}):(_={data:new c.ArrayIterator([],{autoStart:!1})},_.data.setProperty("metadata",{state:new s.MetadataValidationState,...(await this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault})).metadata}));const T=()=>{_.data.getProperty("metadata",(e=>{l.set(`${d}`,e),this.skipEmptyPatterns&&!e.cardinality?.value&&v&&!this.isSourceEmpty(n,v)&&this.emptyPatterns.get(n).push(v),u().catch((e=>h.emit("error",e))),e.state?.addInvalidateListener((()=>{l.delete(`${d}`),T()}))}))};T();const S=_.data.map((e=>p.skolemizeQuad(e,f)));return S.on("error",(e=>h.emit("error",e))),S})));d.catch((e=>h.emit("error",e)));const h=new n.ClosableTransformIterator((async()=>new c.UnionIterator(await d)),{autoStart:!1,onClose(){d.then((e=>{for(const t of e)t.destroy()}),(()=>{}))}});return 0===this.sources.length&&this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault}).then((e=>h.setProperty("metadata",{state:new s.MetadataValidationState,...e.metadata}))).catch((e=>h.emit("error",e))),h}}t.FederatedQuadSource=p,p.SKOLEM_PREFIX="urn:comunica_skolem:source_"},87779:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(27839),t),i(r(86571),t)},45989:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternHypermedia=void 0;const n=r(58392),i=r(70463),a=r(65437);class o extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e),this.cache=this.cacheSize?new i.LRUCache({max:this.cacheSize}):void 0;const t=this.cache;t&&this.httpInvalidator.addInvalidateListener((({url:e})=>e?t.delete(e):t.clear())),e.mediatorMetadataAccumulate||(this.mediatorMetadataAccumulate={mediate:async e=>({metadata:{...e.accumulatedMetadata,...e.appendingMetadata}})})}async test(e){if(!(0,n.hasContextSingleSource)(e.context))throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a single source.`);return!0}getSource(e,t){const r=(0,n.getContextSource)(e),i=(0,n.getContextSourceUrl)(r);let o;return this.cache&&this.cache.has(i)?o=this.cache.get(i):(o=new a.MediatedQuadSource(this.cacheSize,i,(0,n.getDataSourceType)(r),this.maxIterators,this.aggregateStore,{mediatorMetadata:this.mediatorMetadata,mediatorMetadataExtract:this.mediatorMetadataExtract,mediatorMetadataAccumulate:this.mediatorMetadataAccumulate,mediatorDereferenceRdf:this.mediatorDereferenceRdf,mediatorRdfResolveHypermedia:this.mediatorRdfResolveHypermedia,mediatorRdfResolveHypermediaLinks:this.mediatorRdfResolveHypermediaLinks,mediatorRdfResolveHypermediaLinksQueue:this.mediatorRdfResolveHypermediaLinksQueue}),this.cache&&this.cache.set(i,o)),Promise.resolve(o)}}t.ActorRdfResolveQuadPatternHypermedia=o},51661:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedRdfSourcesAsyncRdfIterator=void 0;const n=r(33588),i=r(89227),a=r(70463);class o extends i.BufferedIterator{constructor(e,t,r,n,i,a,o,s){if(super({autoStart:!0,...s}),this.started=!1,this.currentIterators=[],this.iteratorsPendingCreation=0,this.accumulatedMetadata=Promise.resolve(void 0),this.cacheSize=e,this.subject=t,this.predicate=r,this.object=n,this.graph=i,this.firstUrl=a,this.maxIterators=o,this.maxIterators<=0)throw new Error(`LinkedRdfSourcesAsyncRdfIterator.maxIterators must be larger than zero, but got ${this.maxIterators}`)}_end(e){for(const e of this.currentIterators)e.destroy();super._end(e)}setSourcesState(e){e?this.sourcesState=e:(this.sourcesState={sources:new a.LRUCache({max:this.cacheSize})},this.getSourceCached({url:this.firstUrl},{}).catch((e=>this.destroy(e))))}getSourceCached(e,t){let r=this.sourcesState.sources.get(e.url);return r||(r=this.getSource(e,t),(e.url===this.firstUrl||this.shouldStoreSourcesStates())&&this.sourcesState.sources.set(e.url,r),r)}shouldStoreSourcesStates(){return!0}_read(e,t){if(this.started){for(const t of this.currentIterators){for(;e>0;){const r=t.read();if(null===r)break;e--,this._push(r)}if(e<=0)break}e>=0&&this.canStartNewIterator()?this.getSourceCached({url:this.firstUrl},{}).then((e=>{this.startIteratorsForNextUrls(e.handledDatasets,!1),t()})).catch((e=>this.destroy(e))):t()}else this.started=!0,this.sourcesState||this.setSourcesState(),this.getSourceCached({url:this.firstUrl},{}).then((e=>{this.startIterator(e,!0),t()})).catch((e=>setTimeout((()=>this.destroy(e)))))}canStartNewIterator(){return this.currentIterators.length+this.iteratorsPendingCreation0}startIterator(e,t){const r=e.source.match(this.subject,this.predicate,this.object,this.graph);this.currentIterators.push(r);let i=!1;r._destination=this,r.on("error",(e=>this.destroy(e))),r.on("readable",(()=>this._fillBuffer())),r.on("end",(()=>{this.currentIterators.splice(this.currentIterators.indexOf(r),1),i&&this.startIteratorsForNextUrls(e.handledDatasets,!0)})),r.getProperty("metadata",(t=>{this.accumulatedMetadata=this.accumulatedMetadata.then((r=>(async()=>(r||(r=e.metadata),this.accumulateMetadata(r,t)))().then((r=>{const a={...e.metadata,...t,...r};return a.state=new n.MetadataValidationState,this.updateMetadata(a),this.getSourceLinks(a).then((e=>Promise.all(e))).then((async t=>{const r=await this.getLinkQueue();for(const n of t)r.push(n,e.link);i=!0,this.startIteratorsForNextUrls(e.handledDatasets,!0)})).catch((e=>this.destroy(e))),a})))).catch((e=>(this.destroy(e),{})))}))}updateMetadata(e){const t=this.getProperty("metadata");this.setProperty("metadata",e),t?.state.invalidate()}isRunning(){return!this.done}startIteratorsForNextUrls(e,t){this.getLinkQueue().then((r=>{for(;this.canStartNewIterator()&&this.isRunning();){const t=r.pop();if(!t)break;this.iteratorsPendingCreation++,this.getSourceCached(t,e).then((e=>{this.iteratorsPendingCreation--,this.startIterator(e,!1)})).catch((e=>this.destroy(e)))}t&&this.isCloseable(r)&&this.close()})).catch((e=>this.destroy(e)))}isCloseable(e){return e.isEmpty()&&!this.areIteratorsRunning()}}t.LinkedRdfSourcesAsyncRdfIterator=o},74704:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatedLinkedRdfSourcesAsyncRdfIterator=void 0;const n=r(91194),i=r(51887),a=r(51661),o=new n.DataFactory;class s extends a.LinkedRdfSourcesAsyncRdfIterator{constructor(e,t,r,n,i,a,o,s,c,u,l){super(e,n,i,a,o,s,c,u?{maxBufferSize:Number.POSITIVE_INFINITY}:void 0),this.wasForcefullyClosed=!1,this.context=t,this.forceSourceType=r,this.mediatorDereferenceRdf=l.mediatorDereferenceRdf,this.mediatorMetadata=l.mediatorMetadata,this.mediatorMetadataExtract=l.mediatorMetadataExtract,this.mediatorMetadataAccumulate=l.mediatorMetadataAccumulate,this.mediatorRdfResolveHypermedia=l.mediatorRdfResolveHypermedia,this.mediatorRdfResolveHypermediaLinks=l.mediatorRdfResolveHypermediaLinks,this.mediatorRdfResolveHypermediaLinksQueue=l.mediatorRdfResolveHypermediaLinksQueue,this.handledUrls={[s]:!0},this.aggregatedStore=u}close(){this.aggregatedStore?this.getLinkQueue().then((e=>{this.isCloseable(e)?(this.aggregatedStore?.end(),super.close()):this.wasForcefullyClosed=!0})).catch((e=>super.destroy(e))):super.close()}destroy(e){this.aggregatedStore?this.getLinkQueue().then((t=>{e||this.isCloseable(t)?(this.aggregatedStore?.end(),super.destroy(e)):this.wasForcefullyClosed=!0})).catch((e=>super.destroy(e))):super.destroy(e)}isCloseable(e){return(this.wasForcefullyClosed||e.isEmpty())&&!this.areIteratorsRunning()}canStartNewIterator(){return!this.wasForcefullyClosed&&this.aggregatedStore&&this.aggregatedStore.hasRunningIterators()||super.canStartNewIterator()}isRunning(){return this.aggregatedStore&&this.aggregatedStore.hasRunningIterators()||!this.done}shouldStoreSourcesStates(){return void 0===this.aggregatedStore}getLinkQueue(){return this.linkQueue||(this.linkQueue=this.mediatorRdfResolveHypermediaLinksQueue.mediate({firstUrl:this.firstUrl,context:this.context}).then((e=>e.linkQueue))),this.linkQueue}async getSourceLinks(e){try{const{links:t}=await this.mediatorRdfResolveHypermediaLinks.mediate({context:this.context,metadata:e});return t.filter((e=>!this.handledUrls[e.url]&&(this.handledUrls[e.url]=!0,!0)))}catch{return[]}}async getSource(e,t){let r=this.context;e.context&&(r=r.merge(e.context));let n,a,o=e.url;try{const t=await this.mediatorDereferenceRdf.mediate({context:r,url:o});o=t.url;const i=await this.mediatorMetadata.mediate({context:r,url:o,quads:t.data,triples:t.metadata?.triples});i.data.on("error",(()=>{})),a=(await this.mediatorMetadataExtract.mediate({context:r,url:o,metadata:i.metadata,headers:t.headers,requestTime:t.requestTime})).metadata,n=i.data,e.transform&&(n=await e.transform(n))}catch(e){n=new i.Readable,n.read=()=>(setTimeout((()=>n.emit("error",e))),null),a={}}this.aggregatedStore?.setBaseMetadata(a,!1),this.aggregatedStore?.containedSources.add(e.url),this.aggregatedStore?.import(n);const{source:s,dataset:c}=await this.mediatorRdfResolveHypermedia.mediate({context:r,forceSourceType:this.forceSourceType,handledDatasets:t,metadata:a,quads:n,url:o});return c&&(t[c]=!0),{link:e,source:s,metadata:a,handledDatasets:t}}startIterator(e,t){if(this.aggregatedStore&&!this.aggregatedStore.containedSources.has(e.link.url)){this.aggregatedStore?.containedSources.add(e.link.url);const r=e.source.match(o.variable("s"),o.variable("p"),o.variable("o"),o.variable("g"),this.context);this.aggregatedStore.import(r).on("end",(()=>{super.startIterator(e,t)}))}else super.startIterator(e,t)}async accumulateMetadata(e,t){return(await this.mediatorMetadataAccumulate.mediate({mode:"append",accumulatedMetadata:e,appendingMetadata:t,context:this.context})).metadata}updateMetadata(e){super.updateMetadata(e),this.aggregatedStore?.setBaseMetadata(e,!0)}}t.MediatedLinkedRdfSourcesAsyncRdfIterator=s},65437:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatedQuadSource=void 0;const n=r(78470),i=r(74704),a=r(91353);class o{constructor(e,t,r,n,i,a){this.cacheSize=e,this.firstUrl=t,this.forceSourceType=r,this.maxIterators=n,this.aggregateStore=i,this.mediators=a}static nullifyVariables(e){return e&&"Variable"!==e.termType?e:void 0}match(e,t,r,s,c){let u;if(this.aggregateStore){const i=c.get(n.KeysRdfResolveQuadPattern.hypermediaSourcesAggregatedStores);if(i&&(u=i.get(this.firstUrl),u||(u=new a.StreamingStoreMetadata(void 0,((e,t)=>l.accumulateMetadata(e,t))),i.set(this.firstUrl,u)),u.started))return u.match(o.nullifyVariables(e),o.nullifyVariables(t),o.nullifyVariables(r),o.nullifyVariables(s))}const l=new i.MediatedLinkedRdfSourcesAsyncRdfIterator(this.cacheSize,c,this.forceSourceType,e,t,r,s,this.firstUrl,this.maxIterators,u,this.mediators);return this.sourcesState?l.setSourcesState(this.sourcesState):(l.setSourcesState(),this.sourcesState=l.sourcesState),u&&(u.started=!0),l}}t.MediatedQuadSource=o},91353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamingStoreMetadata=void 0;const n=r(83814),i=r(33588),a=r(47720);class o extends a.StreamingStore{constructor(e,t){super(e),this.started=!1,this.containedSources=new Set,this.runningIterators=new Set,this.baseMetadata={state:new i.MetadataValidationState,cardinality:{type:"exact",value:0},canContainUndefs:!1},this.metadataAccumulator=t}import(e){return this.ended||super.import(e),e}hasRunningIterators(){return this.runningIterators.size>0}match(e,t,r,a){const o=super.match(e,t,r,a),s=new n.ClosableTransformIterator(o,{autoStart:!1,onClose:()=>{this.runningIterators.delete(s)}});let c=this.getStore().countQuads(e,t,r,a);const u={state:new i.MetadataValidationState,cardinality:{type:"estimate",value:c},canContainUndefs:!1};return s.setProperty("metadata",u),s.setProperty("lastCount",c),o.on("quad",(()=>{s.setProperty("lastCount",++c),this.updateMetadataState(s,c)})),this.runningIterators.add(s),s}setBaseMetadata(e,t){if(this.baseMetadata={...e},this.baseMetadata.cardinality={type:"exact",value:0},t)for(const e of this.runningIterators){const t=e.getProperty("lastCount");this.updateMetadataState(e,t)}}updateMetadataState(e,t){const r={state:new i.MetadataValidationState,cardinality:{type:"estimate",value:t},canContainUndefs:!1};this.metadataAccumulator(this.baseMetadata,r).then((t=>{t.state=new i.MetadataValidationState;const r=e.getProperty("metadata");e.setProperty("metadata",t),r?.state.invalidate()})).catch((()=>{}))}}t.StreamingStoreMetadata=o},32008:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(45989),t),i(r(65437),t)},74344:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternRdfJsSource=void 0;const n=r(58392),i=r(419);class a extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e)}async test(e){if(!(0,n.hasContextSingleSourceOfType)("rdfjsSource",e.context))throw new Error(`${this.name} requires a single source with an rdfjsSource to be present in the context.`);const t=(0,n.getContextSource)(e.context);if(!t||"string"==typeof t||!("match"in t)&&!t.value.match)throw new Error(`${this.name} received an invalid rdfjsSource.`);return!0}async getSource(e){const t=(0,n.getContextSource)(e);return new i.RdfJsQuadSource("match"in t?t:t.value)}}t.ActorRdfResolveQuadPatternRdfJsSource=a},35468:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfJsQuadSource=void 0;const n=r(33588),i=r(89227),a=r(91194),o=r(98086),s=new a.DataFactory;class c{constructor(e){this.source=e}static nullifyVariables(e,t){return!e||"Variable"===e.termType||!t&&"Quad"===e.termType&&(0,o.someTermsNested)(e,(e=>"Variable"===e.termType))?void 0:e}static hasDuplicateVariables(e){const t=(0,o.filterTermsNested)(e,(e=>"Variable"===e.termType));return t.length>1&&(0,o.uniqTerms)(t).length"Quad"===e.termType))&&(l=l.filter((e=>(0,o.matchPatternComplete)(e,d)))),this.setMetadata(l,e,t,r,n).catch((e=>l.destroy(e))),l}async setMetadata(e,t,r,i,a){const u=Boolean(this.source.features?.quotedTripleFiltering);let l;if(this.source.countQuads)l=await this.source.countQuads(c.nullifyVariables(t,u),c.nullifyVariables(r,u),c.nullifyVariables(i,u),c.nullifyVariables(a,u));else{let e=0;l=await new Promise(((n,o)=>{const s=this.source.match(c.nullifyVariables(t,u),c.nullifyVariables(r,u),c.nullifyVariables(i,u),c.nullifyVariables(a,u));s.on("error",o),s.on("end",(()=>n(e))),s.on("data",(()=>e++))}))}const d=s.quad(t,r,i,a),h=!u&&(0,o.someTerms)(d,(e=>"Quad"===e.termType))||c.hasDuplicateVariables(d);e.setProperty("metadata",{state:new n.MetadataValidationState,cardinality:{type:h?"estimate":"exact",value:l},canContainUndefs:!1})}}t.RdfJsQuadSource=c},62515:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74344),t),i(r(35468),t),i(r(419),t)},55836:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternStringSource=void 0;const n=r(58392),i=r(78470),a=r(70463),o=r(92608),s=r(51887);class c extends n.ActorRdfResolveQuadPattern{constructor(e){super(e),this.cache=this.cacheSize?new a.LRUCache({max:this.cacheSize}):void 0}async test(e){const t=(0,n.getContextSource)(e.context);if(!t)throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a source.`);if(!this.isStringSource(t.valueOf()))throw new Error(`Actor ${this.name} can only resolve stringSource quad pattern`);return!0}run(e){const t=(0,n.getContextSource)(e.context);let r=this.cache?.get(t);return r||(r=this.getRdfSource(e.context,t),this.cache&&this.cache.set(t,r)),r.then((t=>this.mediatorRdfResolveQuadPattern.mediate({pattern:e.pattern,context:e.context.set(i.KeysRdfResolveQuadPattern.source,{value:t,type:"rdfjsSource"})})))}async getRdfSource(e,t){const r=new s.Readable({objectMode:!0});r._read=()=>{},r.push(t.value),r.push(null);const n={context:e,handle:{metadata:{baseIRI:t.baseIRI},data:r,context:e},handleMediaType:t.mediaType},i=await this.mediatorRdfParse.mediate(n);return await(0,o.storeStream)(i.handle.data)}isStringSource(e){return"type"in e?e.type===c.sourceType:"string"==typeof e.value&&"mediaType"in e}}t.ActorRdfResolveQuadPatternStringSource=c,c.sourceType="stringSource"},87798:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(55836),t)},71597:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeJsonLd=void 0;const n=r(51072),i=r(82694);class a extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new i.JsonLdSerializer({space:" ".repeat(this.jsonStringifyIndentSpaces)});let a;return"pipe"in e.quadStream?(e.quadStream.on("error",(e=>n.emit("error",e))),a=e.quadStream.pipe(n)):a=n.import(e.quadStream),{data:a}}}t.ActorRdfSerializeJsonLd=a},21336:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(71597),t)},24668:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeN3=void 0;const n=r(51072),i=r(66641);class a extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new i.StreamWriter({format:t});let a;return"pipe"in e.quadStream?(e.quadStream.on("error",(e=>n.emit("error",e))),a=e.quadStream.pipe(n)):a=n.import(e.quadStream),{data:a,triples:"text/turtle"===t||"application/n-triples"===t||"text/n3"===t}}}t.ActorRdfSerializeN3=a},97021:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(24668),t)},57285:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeShaclc=void 0;const n=r(51072),i=r(92248),a=r(51887),o=r(30890);class s extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new a.Readable;n._read=()=>{};try{const r={};e.quadStream.on("prefix",((e,t)=>{r[e]=t}));const{text:a}=await(0,o.write)(await(0,i.default)(e.quadStream),{errorOnUnused:!0,extendedSyntax:"text/shaclc-ext"===t,prefixes:r});n.push(a),n.push(null)}catch(e){n._read=()=>{n.emit("error",e)}}return{data:n,triples:!0}}}t.ActorRdfSerializeShaclc=s},76752:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(57285),t)},38537:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaPatchSparqlUpdate=void 0;const n=r(28250),i=r(86164);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"patchSparqlUpdate")}async testMetadata(e){if(!e.forceDestinationType&&!e.metadata.patchSparqlUpdate)throw new Error(`Actor ${this.name} could not detect a destination with 'application/sparql-update' as 'Accept-Patch' header.`);if(!e.forceDestinationType&&!e.exists)throw new Error(`Actor ${this.name} can only patch a destination that already exists.`);return!0}async run(e){return this.logInfo(e.context,`Identified as patchSparqlUpdate destination: ${e.url}`),{destination:new i.QuadDestinationPatchSparqlUpdate(e.url,e.context,this.mediatorHttp)}}}t.ActorRdfUpdateHypermediaPatchSparqlUpdate=a},86164:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationPatchSparqlUpdate=void 0;const n=r(80389),i=r(58595),a=r(96279),o=r(2122),s=r(51887);t.QuadDestinationPatchSparqlUpdate=class{constructor(e,t,r){this.url=e,this.context=t,this.mediatorHttp=r}insert(e){return this.wrapSparqlUpdateRequest("INSERT",e)}async delete(e){return this.wrapSparqlUpdateRequest("DELETE",e)}async wrapSparqlUpdateRequest(e,t){const r=t.map((e=>{let t=`${(0,o.termToString)(e.subject)} ${(0,o.termToString)(e.predicate)} ${(0,o.termToString)(e.object)} .`;return t="DefaultGraph"!==e.graph.termType?` GRAPH ${(0,o.termToString)(e.graph)} { ${t} }\n`:` ${t}\n`,t})).prepend([`${e} DATA {\n`]).append(["}"]),c=new s.Readable;c._read=()=>!0,r.on("data",(e=>c.push(e))),r.on("end",(()=>c.push(null)));const u=new a.Headers({"content-type":"application/sparql-update"}),l=await this.mediatorHttp.mediate({context:this.context,init:{headers:u,method:"PATCH",body:n.ActorHttp.toWebReadableStream(c)},input:this.url});await(0,i.validateHttpResponse)(this.url,l)}async deleteGraphs(e,t,r){throw new Error("Patch-based SPARQL Update destinations don't support named graphs")}async createGraphs(e,t){throw new Error("Patch-based SPARQL Update destinations don't support named graphs")}}},54612:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(38537),t),i(r(86164),t)},29278:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaPutLdp=void 0;const n=r(28250),i=r(47607);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"putLdp")}async testMetadata(e){if(!e.forceDestinationType){if(!e.metadata.allowHttpMethods||!e.metadata.allowHttpMethods.includes("PUT"))throw new Error(`Actor ${this.name} could not detect a destination with 'Allow: PUT' header.`);if(e.exists)throw new Error(`Actor ${this.name} can only put on a destination that does not already exists.`)}return!0}async run(e){return this.logInfo(e.context,`Identified as putLdp destination: ${e.url}`),{destination:new i.QuadDestinationPutLdp(e.url,e.context,e.metadata.putAccepted||[],this.mediatorHttp,this.mediatorRdfSerializeMediatypes,this.mediatorRdfSerialize)}}}t.ActorRdfUpdateHypermediaPutLdp=a},47607:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationPutLdp=void 0;const n=r(80389),i=r(58595),a=r(96279);t.QuadDestinationPutLdp=class{constructor(e,t,r,n,i,a){this.url=e,this.context=t,this.mediaTypes=r,this.mediatorHttp=n,this.mediatorRdfSerializeMediatypes=i,this.mediatorRdfSerialize=a}insert(e){return this.wrapRdfUpdateRequest("INSERT",e)}async delete(e){throw new Error("Put-based LDP destinations don't support deletions")}async wrapRdfUpdateRequest(e,t){const{mediaTypes:r}=await this.mediatorRdfSerializeMediatypes.mediate({context:this.context,mediaTypes:!0}),o=this.mediaTypes.filter((e=>e in r)),s=o.length>0?o[0]:Object.keys(r).sort(((e,t)=>r[t]-r[e]))[0],{handle:{data:c}}=await this.mediatorRdfSerialize.mediate({context:this.context,handle:{quadStream:t,context:this.context},handleMediaType:s}),u=new a.Headers({"content-type":s}),l=await this.mediatorHttp.mediate({context:this.context,init:{headers:u,method:"PUT",body:n.ActorHttp.toWebReadableStream(c)},input:this.url});await(0,i.validateHttpResponse)(this.url,l)}async deleteGraphs(e,t,r){throw new Error("Put-based LDP destinations don't support named graphs")}async createGraphs(e,t){throw new Error("Put-based LDP destinations don't support named graphs")}}},17344:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29278),t),i(r(47607),t)},48976:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaSparql=void 0;const n=r(28250),i=r(945);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"sparql")}async testMetadata(e){if(!(e.forceDestinationType||e.metadata.sparqlService||this.checkUrlSuffixSparql&&e.url.endsWith("/sparql")||this.checkUrlSuffixUpdate&&e.url.endsWith("/update")))throw new Error(`Actor ${this.name} could not detect a SPARQL service description or URL ending on /sparql or /update.`);return!0}async run(e){return this.logInfo(e.context,`Identified as sparql destination: ${e.url}`),{destination:new i.QuadDestinationSparql(e.metadata.sparqlService||e.url,e.context,this.mediatorHttp)}}}t.ActorRdfUpdateHypermediaSparql=a},945:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationSparql=void 0;const n=r(88436),i=r(2122),a=r(29038);t.QuadDestinationSparql=class{constructor(e,t,r){this.url=e,this.context=t,this.mediatorHttp=r,this.endpointFetcher=new n.SparqlEndpointFetcher({fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.context}),prefixVariableQuestionMark:!0})}insert(e){return this.wrapSparqlUpdateRequest("INSERT",e)}async delete(e){return this.wrapSparqlUpdateRequest("DELETE",e)}async wrapSparqlUpdateRequest(e,t){const r=t.map((e=>{let t=`${(0,i.termToString)(e.subject)} ${(0,i.termToString)(e.predicate)} ${(0,i.termToString)(e.object)} .`;return t="DefaultGraph"!==e.graph.termType?` GRAPH ${(0,i.termToString)(e.graph)} { ${t} }\n`:` ${t}\n`,t})).prepend([`${e} DATA {\n`]).append(["}"]),n=await a(r);await this.endpointFetcher.fetchUpdate(this.url,n)}async deleteGraphs(e,t,r){const n=Array.isArray(e)?e:[e],i=[];for(const e of n){let n;n="string"==typeof e?e:"DefaultGraph"===e.termType?"DEFAULT":`GRAPH <${e.value}>`,i.push(`${r?"DROP":"CLEAR"} ${t?"":"SILENT "}${n}`)}await this.endpointFetcher.fetchUpdate(this.url,i.join("; "))}async createGraphs(e,t){const r=[];for(const n of e)r.push(`CREATE${t?"":" SILENT"} GRAPH <${n.value}>`);await this.endpointFetcher.fetchUpdate(this.url,r.join("; "))}}},61908:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(48976),t),i(r(945),t)},50617:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsHypermedia=void 0;const n=r(58595),i=r(70463);class a extends n.ActorRdfUpdateQuadsDestination{constructor(e){super(e),this.cache=this.cacheSize?new i.LRUCache({max:this.cacheSize}):void 0;const t=this.cache;t&&this.httpInvalidator.addInvalidateListener((({url:e})=>e?t.delete(e):t.clear()))}async test(e){if(!(0,n.getContextDestinationUrl)((0,n.getContextDestination)(e.context)))throw new Error(`Actor ${this.name} can only update quads against a single destination URL.`);return!0}getDestination(e){const t=(0,n.getContextDestination)(e);let r=(0,n.getContextDestinationUrl)(t);if(this.cache&&this.cache.has(r))return this.cache.get(r);const i=(async()=>{let i,a;try{const t=await this.mediatorDereferenceRdf.mediate({context:e,url:r,acceptErrors:!0});a=t.exists,r=t.url;const n=await this.mediatorMetadata.mediate({context:e,url:r,quads:t.data,triples:t.metadata?.triples});i=(await this.mediatorMetadataExtract.mediate({context:e,url:r,metadata:n.metadata,headers:t.headers,requestTime:t.requestTime})).metadata}catch{i={},a=!1}const{destination:o}=await this.mediatorRdfUpdateHypermedia.mediate({context:e,url:r,metadata:i,exists:a,forceDestinationType:(0,n.getDataDestinationType)(t)});return o})();return this.cache&&this.cache.set(r,i),i}}t.ActorRdfUpdateQuadsHypermedia=a},14054:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50617),t)},77428:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsRdfJsStore=void 0;const n=r(58595),i=r(65024);class a extends n.ActorRdfUpdateQuadsDestination{constructor(e){super(e)}async test(e){const t=(0,n.getContextDestination)(e.context);if(!t||"string"==typeof t||!("remove"in t)&&"value"in t&&!t.value.remove)throw new Error(`${this.name} received an invalid rdfjsStore.`);return!0}async getDestination(e){const t=(0,n.getContextDestination)(e);return new i.RdfJsQuadDestination("remove"in t?t:t.value)}}t.ActorRdfUpdateQuadsRdfJsStore=a},65024:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfJsQuadDestination=void 0;const n=r(91194),i=r(6053),a=new n.DataFactory;t.RdfJsQuadDestination=class{constructor(e){this.store=e}promisifyEventEmitter(e){return new Promise(((t,r)=>{e.on("end",t),e.on("error",r)}))}delete(e){return this.promisifyEventEmitter(this.store.remove(e))}insert(e){return this.promisifyEventEmitter(this.store.import(e))}async deleteGraphs(e,t,r){switch(e){case"ALL":await this.promisifyEventEmitter(this.store.deleteGraph(a.defaultGraph()));case"NAMED":const t=this.store.match(),r={};t.on("data",(e=>{"DefaultGraph"!==e.graph.termType&&(r[(0,i.termToString)(e.graph)]=!0)})),await this.promisifyEventEmitter(t),await Promise.all(Object.keys(r).map((e=>this.promisifyEventEmitter(this.store.deleteGraph((0,i.stringToTerm)(e))))));break;default:for(const t of Array.isArray(e)?e:[e])await this.promisifyEventEmitter(this.store.deleteGraph(t))}}async createGraphs(e,t){if(t)for(const t of e){const e=this.store.match(void 0,void 0,void 0,t);await new Promise(((r,n)=>{e.once("data",(()=>{n(new Error(`Unable to create graph ${t.value} as it already exists`))})),e.on("end",r),e.on("error",n)}))}}}},2340:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77428),t)},35681:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Bindings=void 0;const n=r(27623),i=r(49836);class a{constructor(e,t){this.type="bindings",this.dataFactory=e,this.entries=t}has(e){return this.entries.has("string"==typeof e?e:e.value)}get(e){return this.entries.get("string"==typeof e?e:e.value)}set(e,t){return new a(this.dataFactory,this.entries.set("string"==typeof e?e:e.value,t))}delete(e){return new a(this.dataFactory,this.entries.delete("string"==typeof e?e:e.value))}keys(){return this.mapIterable(this.iteratorToIterable(this.entries.keys()),(e=>this.dataFactory.variable(e)))}values(){return this.iteratorToIterable(this.entries.values())}forEach(e){this.entries.forEach(((t,r)=>e(t,this.dataFactory.variable(r))))}get size(){return this.entries.size}[Symbol.iterator](){return this.mapIterable(this.iteratorToIterable(this.entries.entries()),(([e,t])=>[this.dataFactory.variable(e),t]))[Symbol.iterator]()}equals(e){if(!e)return!1;if(this===e)return!0;if(this.size!==e.size)return!1;for(const t of this.keys())if(!this.get(t)?.equals(e.get(t)))return!1;return!0}filter(e){return new a(this.dataFactory,(0,n.Map)(this.entries.filter(((t,r)=>e(t,this.dataFactory.variable(r))))))}map(e){return new a(this.dataFactory,(0,n.Map)(this.entries.map(((t,r)=>e(t,this.dataFactory.variable(r))))))}merge(e){const t=new Set([...this.iteratorToIterable(this.entries.keys()),...[...e.keys()].map((e=>e.value))]),r=[];for(const n of t){const t=this.entries.get(n),i=e.get(this.dataFactory.variable(n));if(t&&i&&!t.equals(i))return;const a=t||i;r.push([n,a])}return new a(this.dataFactory,(0,n.Map)(r))}mergeWith(e,t){const r=new Set([...this.iteratorToIterable(this.entries.keys()),...[...t.keys()].map((e=>e.value))]),i=[];for(const n of r){const r=this.dataFactory.variable(n),a=this.entries.get(n),o=t.get(r);let s;s=a&&o&&!a.equals(o)?e(a,o,r):a||o,i.push([n,s])}return new a(this.dataFactory,(0,n.Map)(i))}toString(){return(0,i.bindingsToString)(this)}*mapIterable(e,t){for(const r of e)yield t(r)}iteratorToIterable(e){return{[Symbol.iterator]:()=>e}}}t.Bindings=a},49239:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsFactory=void 0;const n=r(27623),i=r(91194),a=r(35681);t.BindingsFactory=class{constructor(e=new i.DataFactory){this.dataFactory=e}bindings(e=[]){return new a.Bindings(this.dataFactory,(0,n.Map)(e.map((([e,t])=>[e.value,t]))))}fromBindings(e){return this.bindings([...e])}fromRecord(e){return this.bindings(Object.entries(e).map((([e,t])=>[this.dataFactory.variable(e),t])))}}},49836:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bindingsToString=void 0;const n=r(6053);t.bindingsToString=function(e){const t={};for(const r of e.keys())t[r.value]=(0,n.termToString)(e.get(r));return JSON.stringify(t,null," ")}},79550:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35681),t),i(r(49239),t),i(r(49836),t)},73313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorContextPreprocess=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorContextPreprocess=i},20846:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(73313),t)},42292:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceRdf=void 0;const n=r(14402);class i extends n.ActorDereferenceParse{constructor(e){super(e)}}t.ActorDereferenceRdf=i},20961:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(42292),t)},34313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereference=void 0;const n=r(67005);class i extends n.ActorDereferenceBase{constructor(e){super(e)}async handleDereferenceErrors(e,t,r,n=0){return this.dereferenceErrorHandler(e,t,{url:e.url,exists:!1,headers:r,requestTime:n})}}t.ActorDereference=i},67005:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceBase=t.isHardError=t.emptyReadable=void 0;const n=r(78470),i=r(21049),a=r(51887);function o(){const e=new a.Readable;return e.push(null),e}function s(e){return!e.get(n.KeysInitQuery.lenient)}t.emptyReadable=o,t.isHardError=s;class c extends i.Actor{constructor(e){super(e)}async dereferenceErrorHandler(e,t,r){if(s(e.context))throw t;return this.logError(e.context,t.message),{...r,data:o()}}}t.ActorDereferenceBase=c},16898:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceParse=t.getMediaTypeFromExtension=void 0;const n=r(51887),i=r(67005);function a(e,t){const r=e.lastIndexOf(".");return r>=0&&t?.[e.slice(r+1)]||""}t.getMediaTypeFromExtension=a;class o extends i.ActorDereferenceBase{constructor(e){super(e)}async test(e){return!0}handleDereferenceStreamErrors(e,t){return(0,i.isHardError)(e.context)||(t.on("error",(r=>{this.logError(e.context,r.message,(()=>({url:e.url}))),t.push(null)})),t=t.pipe(new n.PassThrough({objectMode:!0}))),t}async run(e){const{context:t}=e,r=await this.mediatorDereference.mediate({...e,mediaTypes:async()=>(await(this.mediatorParseMediatypes?.mediate({context:t,mediaTypes:!0})))?.mediaTypes});let n;try{n=(await this.mediatorParse.mediate({context:t,handle:{context:t,...r,metadata:await this.getMetadata(r)},handleMediaType:r.mediaType||a(r.url,this.mediaMappings)||e.mediaType})).handle,n.data=this.handleDereferenceStreamErrors(e,n.data)}catch(t){await(r.data.close?.()),n=await this.dereferenceErrorHandler(e,t,{})}return{...r,...n}}}t.ActorDereferenceParse=o},14402:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34313),t),i(r(16898),t),i(r(67005),t)},90927:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHashBindings=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorHashBindings=i},47582:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90927),t)},8221:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpInvalidate=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorHttpInvalidate=i},37152:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpInvalidateListenable=void 0;const n=r(8221);class i extends n.ActorHttpInvalidate{constructor(e){super(e),this.invalidateListeners=[],this.invalidateListeners=[]}addInvalidateListener(e){this.invalidateListeners.push(e)}async test(e){return!0}async run(e){for(const t of this.invalidateListeners)t(e);return{}}}t.ActorHttpInvalidateListenable=i},90178:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(8221),t),i(r(37152),t)},14145:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttp=void 0;const n=r(21049),i=r(88146);globalThis.ReadableStream||(globalThis.ReadableStream=r(25919).ReadableStream);const a=r(58607),o=r(87809);class s extends n.Actor{constructor(e){super(e)}static toNodeReadable(e){return a(e)||null===e?e:new i.ReadableWebToNodeStream(e)}static toWebReadableStream(e){return o(e)}static headersToHash(e){const t={};return e.forEach(((e,r)=>{t[r]=e})),t}}t.ActorHttp=s},80389:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(14145),t)},97327:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInit=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorInit=i},40104:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(97327),t)},5227:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperation=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorOptimizeQueryOperation=i},9302:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5227),t)},44346:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperation=void 0;const n=r(78470),i=r(21049),a=r(27057),o=r(87804);let s=0;class c extends i.Actor{constructor(e){super(e)}static getSafeBindings(e){return c.validateQueryOutput(e,"bindings"),e}static getSafeQuads(e){return c.validateQueryOutput(e,"quads"),e}static getSafeBoolean(e){return c.validateQueryOutput(e,"boolean"),e}static getSafeVoid(e){return c.validateQueryOutput(e,"void"),e}static cachifyMetadata(e){let t;return()=>(t||(t=e(),t.then((e=>e.state.addInvalidateListener((()=>{t=void 0})))).catch((()=>{}))),t)}static validateQueryOutput(e,t){if(e.type!==t)throw new Error(`Invalid query output type: Expected '${t}' but got '${e.type}'`)}static getBaseExpressionContext(e){const t=e.get(n.KeysInitQuery.queryTimestamp),r=e.get(n.KeysInitQuery.baseIRI),i=e.get(n.KeysInitQuery.functionArgumentsCache)||{};if(e.has(n.KeysInitQuery.extensionFunctionCreator)&&e.has(n.KeysInitQuery.extensionFunctions))throw new Error("Illegal simultaneous usage of extensionFunctionCreator and extensionFunctions in context");let a=e.get(n.KeysInitQuery.extensionFunctionCreator);const o=e.get(n.KeysInitQuery.extensionFunctions);return o&&(a=e=>o[e.value]),{now:t,baseIRI:r,extensionFunctionCreator:a,functionArgumentsCache:i}}static getExpressionContext(e,t){return{...this.getBaseExpressionContext(e),bnode:e=>new a.BlankNodeBindingsScoped(e||"BNODE_"+s++)}}static getAsyncExpressionContext(e,t){return{...this.getBaseExpressionContext(e),bnode:e=>Promise.resolve(new a.BlankNodeBindingsScoped(e||"BNODE_"+s++)),exists:c.createExistenceResolver(e,t)}}static createExistenceResolver(e,t){return async(r,n)=>{const i=(0,o.materializeOperation)(r.input,n),a=await t.mediate({operation:i,context:e}),s=c.getSafeBindings(a);return new Promise(((e,t)=>{s.bindingsStream.on("end",(()=>{e(!1)})),s.bindingsStream.on("error",t),s.bindingsStream.on("data",(()=>{s.bindingsStream.close(),e(!0)}))})).then((e=>r.not?!e:e))}}static throwOnReadOnly(e){if(e.get(n.KeysQueryOperation.readOnly))throw new Error("Attempted a write operation in read-only mode")}}t.ActorQueryOperation=c},3312:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationTyped=void 0;const n=r(78470),i=r(44346);class a extends i.ActorQueryOperation{constructor(e,t){if(super({...e,operationName:t}),!this.operationName)throw new Error('A valid "operationName" argument must be provided.')}async test(e){if(!e.operation)throw new Error("Missing field 'operation' in a query operation action.");if(e.operation.type!==this.operationName)throw new Error(`Actor ${this.name} only supports ${this.operationName} operations, but got ${e.operation.type}`);const t=e.operation;return this.testOperation(t,e.context)}async run(e){const t=e.context.get(n.KeysInitQuery.physicalQueryPlanLogger);t&&(t.logOperation(e.operation.type,void 0,e.operation,e.context.get(n.KeysInitQuery.physicalQueryPlanNode),this.name,{}),e.context=e.context.set(n.KeysInitQuery.physicalQueryPlanNode,e.operation));const r=e.operation,a=e.context.set(n.KeysQueryOperation.operation,r),o=await this.runOperation(r,a);return"metadata"in o&&(o.metadata=i.ActorQueryOperation.cachifyMetadata(o.metadata)),o}}t.ActorQueryOperationTyped=a},95748:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationTypedMediated=void 0;const n=r(3312);class i extends n.ActorQueryOperationTyped{constructor(e,t){super(e,t)}}t.ActorQueryOperationTypedMediated=i},87804:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.materializeOperation=t.materializeTerm=void 0;const n=r(79550),i=r(6053),a=r(98086),o=r(6789),s=new n.BindingsFactory;function c(e,t){if("Variable"===e.termType){const r=t.get(e);if(r)return r}return"Quad"===e.termType&&(0,a.someTermsNested)(e,(e=>"Variable"===e.termType))?(0,a.mapTermsNested)(e,(e=>c(e,t))):e}t.materializeTerm=c,t.materializeOperation=function e(t,r,n={}){return n={strictTargetVariables:"strictTargetVariables"in n&&n.strictTargetVariables,bindFilter:!("bindFilter"in n)||n.bindFilter},o.Util.mapOperation(t,{path:(e,t)=>({recurse:!1,result:t.createPath(c(e.subject,r),e.predicate,c(e.object,r),c(e.graph,r))}),pattern:(e,t)=>({recurse:!1,result:t.createPattern(c(e.subject,r),c(e.predicate,r),c(e.object,r),c(e.graph,r))}),extend(t){if(r.has(t.variable)){if(n.strictTargetVariables)throw new Error(`Tried to bind variable ${(0,i.termToString)(t.variable)} in a BIND operator.`);return{recurse:!0,result:e(t.input,r,n)}}return{recurse:!0,result:t}},group(e,t){if(n.strictTargetVariables){for(const t of e.variables)if(r.has(t))throw new Error(`Tried to bind variable ${(0,i.termToString)(t)} in a GROUP BY operator.`);return{recurse:!0,result:e}}const a=e.variables.filter((e=>!r.has(e)));return{recurse:!0,result:t.createGroup(e.input,a,e.aggregates)}},project(t,a){if(n.strictTargetVariables){for(const e of t.variables)if(r.has(e))throw new Error(`Tried to bind variable ${(0,i.termToString)(e)} in a SELECT operator.`);return{recurse:!0,result:t}}const o=t.variables.filter((e=>!r.has(e))),c=s.bindings(t.variables.map((e=>{const t=r.get(e);if(t)return[e,t]})).filter((e=>Boolean(e))));return{recurse:!1,result:a.createProject(e(t.input,c,n),o)}},values(e,t){if(!n.strictTargetVariables){const n=e.variables.filter((e=>!r.has(e))),a=e.bindings.map((e=>{const t={...e};let n=!0;return r.forEach(((e,r)=>{const a=(0,i.termToString)(r);a in t&&(e.equals(t[a])||(n=!1),delete t[a])})),n?t:void 0})).filter(Boolean);return{recurse:!0,result:t.createValues(n,a)}}for(const t of e.variables)if(r.has(t))throw new Error(`Tried to bind variable ${(0,i.termToString)(t)} in a VALUES operator.`);return{recurse:!1,result:e}},expression(e,t){if(!n.bindFilter)return{recurse:!1,result:e};if("term"===e.expressionType)return{recurse:!1,result:t.createTermExpression(c(e.term,r))};if("aggregate"===e.expressionType&&"variable"in e&&r.has(e.variable)){if(n.strictTargetVariables)throw new Error(`Tried to bind ${(0,i.termToString)(e.variable)} in a ${e.aggregator} aggregate.`);return{recurse:!0,result:e}}return{recurse:!0,result:e}}})}},58235:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BusQueryOperation=void 0;const n=r(21049);class i extends n.BusIndexed{constructor(e){super({...e,actorIdentifierFields:["operationName"],actionIdentifierFields:["operation","type"]})}}t.BusQueryOperation=i},7914:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClosableTransformIterator=void 0;const n=r(89227);class i extends n.TransformIterator{constructor(e,t){super(e,t),this.onClose=t.onClose}_end(e){this.onClose(),super._end(e)}}t.ClosableTransformIterator=i},83814:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44346),t),i(r(3312),t),i(r(95748),t),i(r(87804),t),i(r(58235),t),i(r(7914),t)},79018:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParse=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorQueryParse=i},21744:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(79018),t)},36519:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerialize=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorQueryResultSerialize=i},55313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e,t){return!0}}t.ActorQueryResultSerializeFixedMediaTypes=i},42351:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36519),t),i(r(55313),t)},7215:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinEntriesSort=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfJoinEntriesSort=i},48955:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(7215),t)},75074:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSelectivity=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfJoinSelectivity=i},52185:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(75074),t)},53409:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoin=void 0;const n=r(83814),i=r(78470),a=r(21049),o=r(33588),s=r(91194),c=r(6053),u=new s.DataFactory;class l extends a.Actor{constructor(e,t){super(e),this.includeInLogs=!0,this.logicalType=t.logicalType,this.physicalName=t.physicalName,this.limitEntries=t.limitEntries??Number.POSITIVE_INFINITY,this.limitEntriesMin=t.limitEntriesMin??!1,this.canHandleUndefs=t.canHandleUndefs??!1}static hash(e,t){return t.filter((t=>e.has(t))).map((t=>(0,c.termToString)(e.get(t)))).join("")}static overlappingVariables(e){const t=e.map((e=>e.variables));let r=t[0];for(const e of t.slice(1))r=r.filter((t=>e.some((e=>e.value===t.value))));return r}static joinVariables(e){return[...new Set(e.flatMap((e=>e.variables.map((e=>e.value)))))].map((e=>u.variable(e)))}static joinBindings(...e){if(0===e.length)return null;if(1===e.length)return e[0];let t=e[0];for(const r of e.slice(1)){const e=t.merge(r);if(!e)return null;t=e}return t}static getCardinality(e){return e.cardinality}static async getMetadatas(e){return await Promise.all(e.map((e=>e.output.metadata())))}static async getEntriesWithMetadatas(e){const t=await l.getMetadatas(e);return e.map(((e,r)=>({...e,metadata:t[r]})))}static getRequestInitialTimes(e){return e.map((e=>e.pageSize?0:e.requestTime||0))}static getRequestItemTimes(e){return e.map((e=>e.pageSize?(e.requestTime||0)/e.pageSize:0))}async constructResultMetadata(e,t,r,n={}){let i;n.cardinality?i=n.cardinality:(i=t.reduce(((e,t)=>{const r=l.getCardinality(t);return{type:"estimate"===r.type?"estimate":e.type,value:e.value*r.value}}),{type:"exact",value:1}),i.value*=(await this.mediatorJoinSelectivity.mediate({entries:e,context:r})).selectivity);const a=new o.MetadataValidationState,s=()=>a.invalidate();for(const e of t)e.state.addInvalidateListener(s);return{state:a,...n,cardinality:{type:i.type,value:i.value},canContainUndefs:n.canContainUndefs??t.some((e=>e.canContainUndefs)),variables:l.joinVariables(t)}}async test(e){if(e.type!==this.logicalType)throw new Error(`${this.name} can only handle logical joins of type '${this.logicalType}', while '${e.type}' was given.`);if(e.entries.length<=1)throw new Error(`${this.name} requires at least two join entries.`);if(this.limitEntriesMin?e.entries.lengththis.limitEntries)throw new Error(`${this.name} requires ${this.limitEntries} join entries at ${this.limitEntriesMin?"least":"most"}. The input contained ${e.entries.length}.`);for(const t of e.entries)if("bindings"!==t.output.type)throw new Error(`Invalid type of a join entry: Expected 'bindings' but got '${t.output.type}'`);const t=await l.getMetadatas(e.entries);if(!this.canHandleUndefs)for(const e of t)if(e.canContainUndefs)throw new Error(`Actor ${this.name} can not join streams containing undefs`);return await this.getJoinCoefficients(e,t)}async run(e){let t;e.context.has(i.KeysInitQuery.physicalQueryPlanLogger)&&(t=e.context.get(i.KeysInitQuery.physicalQueryPlanNode),e.context=e.context.set(i.KeysInitQuery.physicalQueryPlanNode,e));const r=e.context.get(i.KeysInitQuery.physicalQueryPlanLogger);let a;this.includeInLogs&&r&&(a={},r.logOperation(`join-${this.logicalType}`,this.physicalName,e,t,this.name,a));const{result:o,physicalPlanMetadata:s}=await this.getOutput(e),c=await l.getMetadatas(e.entries);return a&&(Object.assign(a,s),a.cardinalities=c.map(l.getCardinality),a.joinCoefficients=await this.getJoinCoefficients(e,c)),o.metadata=n.ActorQueryOperation.cachifyMetadata(o.metadata),o}}t.ActorRdfJoin=l},97045:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53409),t)},69088:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulate=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadataAccumulate=i},36254:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69088),t)},17481:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtract=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadataExtract=i},23058:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17481),t)},50112:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadata=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadata=i},63460:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50112),t)},93762:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtml=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfParseHtml=i},44706:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93762),t)},5904:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParse=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorRdfParse=i},24932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e){return!0}}t.ActorRdfParseFixedMediaTypes=i},93695:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5904),t),i(r(24932),t)},11499:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksQueue=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveHypermediaLinksQueue=i},81603:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},31746:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkQueueWrapper=void 0,t.LinkQueueWrapper=class{constructor(e){this.linkQueue=e}push(e,t){return this.linkQueue.push(e,t)}getSize(){return this.linkQueue.getSize()}isEmpty(){return this.linkQueue.isEmpty()}pop(){return this.linkQueue.pop()}peek(){return this.linkQueue.peek()}}},15115:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(11499),t),i(r(81603),t),i(r(31746),t)},48782:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinks=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveHypermediaLinks=i},67315:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(48782),t)},52838:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermedia=void 0;const n=r(21049);class i extends n.Actor{constructor(e,t){super(e),this.sourceType=t}async test(e){if(e.forceSourceType&&this.sourceType!==e.forceSourceType)throw new Error(`Actor ${this.name} is not able to handle source type ${e.forceSourceType}.`);return this.testMetadata(e)}}t.ActorRdfResolveHypermedia=i},71580:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52838),t)},90:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPattern=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveQuadPattern=i},1795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternSource=void 0;const n=r(90);class i extends n.ActorRdfResolveQuadPattern{constructor(e){super(e)}async test(e){return!0}async run(e){const t=await this.getSource(e.context,e.pattern);return await this.getOutput(t,e.pattern,e.context)}async getOutput(e,t,r){return{data:e.match(t.subject,t.predicate,t.object,t.graph,r)}}}t.ActorRdfResolveQuadPatternSource=i},58392:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90),t),i(r(1795),t),i(r(18165),t)},18165:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasContextSingleSourceOfType=t.hasContextSingleSource=t.getContextSourceUrl=t.getContextSourceFirst=t.getContextSource=t.getContextSources=t.getDataSourceContext=t.getDataSourceValue=t.getDataSourceType=t.isDataSourceRawType=void 0;const n=r(78470),i=r(21049);function a(e){return"string"==typeof e||"match"in e}function o(e){return"string"==typeof e?"":"match"in e?"rdfjsSource":e.type}function s(e){return a(e)?e:e.value}function c(e){return e.get(n.KeysRdfResolveQuadPattern.source)}t.isDataSourceRawType=a,t.getDataSourceType=o,t.getDataSourceValue=s,t.getDataSourceContext=function(e,t){return a(e)||!e.context?t:t.merge(i.ActionContext.ensureActionContext(e.context))},t.getContextSources=function(e){return e.get(n.KeysRdfResolveQuadPattern.sources)},t.getContextSource=c,t.getContextSourceFirst=function(e){if(e.has(n.KeysRdfResolveQuadPattern.source))return e.get(n.KeysRdfResolveQuadPattern.source);const t=e.get(n.KeysRdfResolveQuadPattern.sources);return 1===t?.length?t[0]:void 0},t.getContextSourceUrl=function(e){if(e){let t=s(e);if("string"==typeof t){const e=t.indexOf("#");return e>=0&&(t=t.slice(0,e)),t}}},t.hasContextSingleSource=function(e){const t=c(e);return Boolean(t&&(a(t)||t.value))},t.hasContextSingleSourceOfType=function(e,t){const r=c(t);return Boolean(r&&o(r)===e&&s(r))}},40994:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerialize=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorRdfSerialize=i},56466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e){return!0}}t.ActorRdfSerializeFixedMediaTypes=i},51072:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(40994),t),i(r(56466),t)},75938:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermedia=void 0;const n=r(21049);class i extends n.Actor{constructor(e,t){super(e),this.destinationType=t}async test(e){if(e.forceDestinationType&&this.destinationType!==e.forceDestinationType)throw new Error(`Actor ${this.name} is not able to handle destination type ${e.forceDestinationType}.`);return this.testMetadata(e)}}t.ActorRdfUpdateHypermedia=i},28250:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(75938),t)},88143:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuads=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfUpdateQuads=i},49864:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsDestination=t.deskolemize=t.deskolemizeStream=void 0;const n=r(87779),i=r(78470),a=r(88143);function o(e,t){return e?.map((e=>n.FederatedQuadSource.deskolemizeQuad(e,t)))}function s(e){const t=e.context.get(i.KeysRdfUpdateQuads.destination),r=e.context.get(i.KeysRdfResolveQuadPattern.sourceIds)?.get(t);return r?{...e,quadStreamInsert:o(e.quadStreamInsert,r),quadStreamDelete:o(e.quadStreamDelete,r)}:e}t.deskolemizeStream=o,t.deskolemize=s;class c extends a.ActorRdfUpdateQuads{async test(e){return!0}async run(e){const t=await this.getDestination(e.context);return await this.getOutput(t,s(e),e.context)}async getOutput(e,t,r){return{execute:()=>Promise.all([t.quadStreamInsert?e.insert(t.quadStreamInsert):Promise.resolve(),t.quadStreamDelete?e.delete(t.quadStreamDelete):Promise.resolve(),t.deleteGraphs?e.deleteGraphs(t.deleteGraphs.graphs,t.deleteGraphs.requireExistence,t.deleteGraphs.dropGraphs):Promise.resolve(),t.createGraphs?e.createGraphs(t.createGraphs.graphs,t.createGraphs.requireNonExistence):Promise.resolve()]).then((()=>{}))}}}t.ActorRdfUpdateQuadsDestination=c},93744:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateHttpResponse=void 0;const n=r(80389),i=r(29038);t.validateHttpResponse=async function(e,t){if(t.status>=400){let r="empty response";if(t.body){const e=n.ActorHttp.toNodeReadable(t.body);r=await i(e)}throw new Error(`Could not update ${e} (HTTP status ${t.status}):\n${r}`)}await(t.body?.cancel())}},58595:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(88143),t),i(r(49864),t),i(r(93744),t),i(r(71180),t)},71180:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getContextDestinationUrl=t.getContextDestinationFirst=t.getContextDestination=t.getDataDestinationContext=t.getDataDestinationValue=t.getDataDestinationType=t.isDataDestinationRawType=void 0;const n=r(78470);function i(e){return"string"==typeof e||"remove"in e}function a(e){return i(e)?e:e.value}t.isDataDestinationRawType=i,t.getDataDestinationType=function(e){return"string"==typeof e?"":"remove"in e?"rdfjsStore":e.type},t.getDataDestinationValue=a,t.getDataDestinationContext=function(e,t){return"string"==typeof e||"remove"in e||!e.context?t:t.merge(e.context)},t.getContextDestination=function(e){return e.get(n.KeysRdfUpdateQuads.destination)},t.getContextDestinationFirst=function(e){if(e.has(n.KeysRdfUpdateQuads.destination))return e.get(n.KeysRdfUpdateQuads.destination)},t.getContextDestinationUrl=function(e){if(e){let t=a(e);if("string"==typeof t){const e=t.indexOf("#");return e>=0&&(t=t.slice(0,e)),t}}}},6180:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KeysRdfUpdateQuads=t.KeysRdfResolveQuadPattern=t.KeysRdfParseHtmlScript=t.KeysRdfParseJsonLd=t.KeysQueryOperation=t.KeysInitQuery=t.KeysHttpProxy=t.KeysHttpMemento=t.KeysHttpWayback=t.KeysHttp=t.KeysCore=void 0;const n=r(21049);t.KeysCore={log:n.CONTEXT_KEY_LOGGER},t.KeysHttp={includeCredentials:new n.ActionContextKey("@comunica/bus-http:include-credentials"),auth:new n.ActionContextKey("@comunica/bus-http:auth"),fetch:new n.ActionContextKey("@comunica/bus-http:fetch"),httpTimeout:new n.ActionContextKey("@comunica/bus-http:http-timeout"),httpBodyTimeout:new n.ActionContextKey("@comunica/bus-http:http-body-timeout"),httpRetryCount:new n.ActionContextKey("@comunica/bus-http:http-retry-count"),httpRetryDelay:new n.ActionContextKey("@comunica/bus-http:http-retry-delay"),httpRetryOnServerError:new n.ActionContextKey("@comunica/bus-http:http-retry-on-server-error")},t.KeysHttpWayback={recoverBrokenLinks:new n.ActionContextKey("@comunica/bus-http:recover-broken-links")},t.KeysHttpMemento={datetime:new n.ActionContextKey("@comunica/actor-http-memento:datetime")},t.KeysHttpProxy={httpProxyHandler:new n.ActionContextKey("@comunica/actor-http-proxy:httpProxyHandler")},t.KeysInitQuery={initialBindings:new n.ActionContextKey("@comunica/actor-init-query:initialBindings"),queryFormat:new n.ActionContextKey("@comunica/actor-init-query:queryFormat"),graphqlSingularizeVariables:new n.ActionContextKey("@comunica/actor-init-query:singularizeVariables"),lenient:new n.ActionContextKey("@comunica/actor-init-query:lenient"),queryString:new n.ActionContextKey("@comunica/actor-init-query:queryString"),query:new n.ActionContextKey("@comunica/actor-init-query:query"),baseIRI:new n.ActionContextKey("@comunica/actor-init-query:baseIRI"),functionArgumentsCache:new n.ActionContextKey("@comunica/actor-init-query:functionArgumentsCache"),queryTimestamp:new n.ActionContextKey("@comunica/actor-init-query:queryTimestamp"),extensionFunctionCreator:new n.ActionContextKey("@comunica/actor-init-query:extensionFunctionCreator"),extensionFunctions:new n.ActionContextKey("@comunica/actor-init-query:extensionFunctions"),cliArgsHandlers:new n.ActionContextKey("@comunica/actor-init-query:cliArgsHandlers"),explain:new n.ActionContextKey("@comunica/actor-init-query:explain"),physicalQueryPlanLogger:new n.ActionContextKey("@comunica/actor-init-query:physicalQueryPlanLogger"),physicalQueryPlanNode:new n.ActionContextKey("@comunica/actor-init-query:physicalQueryPlanNode"),jsonLdContext:new n.ActionContextKey("@context")},t.KeysQueryOperation={operation:new n.ActionContextKey("@comunica/bus-query-operation:operation"),joinLeftMetadata:new n.ActionContextKey("@comunica/bus-query-operation:joinLeftMetadata"),joinRightMetadatas:new n.ActionContextKey("@comunica/bus-query-operation:joinRightMetadatas"),joinBindings:new n.ActionContextKey("@comunica/bus-query-operation:joinBindings"),readOnly:new n.ActionContextKey("@comunica/bus-query-operation:readOnly"),isPathArbitraryLengthDistinctKey:new n.ActionContextKey("@comunica/bus-query-operation:isPathArbitraryLengthDistinct"),limitIndicator:new n.ActionContextKey("@comunica/bus-query-operation:limitIndicator"),unionDefaultGraph:new n.ActionContextKey("@comunica/bus-query-operation:unionDefaultGraph")},t.KeysRdfParseJsonLd={documentLoader:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:documentLoader"),strictValues:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:strictValues"),parserOptions:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:parserOptions")},t.KeysRdfParseHtmlScript={processingHtmlScript:new n.ActionContextKey("@comunica/actor-rdf-parse-html-script:processingHtmlScript"),extractAllScripts:new n.ActionContextKey("extractAllScripts")},t.KeysRdfResolveQuadPattern={sources:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:sources"),source:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:source"),sourceIds:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:sourceIds"),hypermediaSourcesAggregatedStores:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:hypermediaSourcesAggregatedStores")},t.KeysRdfUpdateQuads={destination:new n.ActionContextKey("@comunica/bus-rdf-update-quads:destination")}},78470:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(6180),t)},81662:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionContextKey=t.ActionContext=void 0;const n=r(27623);class i{constructor(e={}){this.map=(0,n.Map)(e)}setDefault(e,t){return this.has(e)?this:this.set(e,t)}set(e,t){return this.setRaw(e.name,t)}setRaw(e,t){return new i(this.map.set(e,t))}delete(e){return new i(this.map.delete(e.name))}get(e){return this.getRaw(e.name)}getRaw(e){return this.map.get(e)}getSafe(e){if(!this.has(e))throw new Error(`Context entry ${e.name} is required but not available`);return this.get(e)}has(e){return this.hasRaw(e.name)}hasRaw(e){return this.map.has(e)}merge(...e){let t=this;for(const r of e)for(const e of r.keys())t=t.set(e,r.get(e));return t}keys(){return[...this.map.keys()].map((e=>new a(e)))}toJS(){return this.map.toJS()}toString(){return`ActionContext(${JSON.stringify(this.map.toJS())})`}[Symbol.for("nodejs.util.inspect.custom")](){return`ActionContext(${JSON.stringify(this.map.toJS(),null," ")})`}static ensureActionContext(e){return e instanceof i?e:new i((0,n.Map)(e||{}))}}t.ActionContext=i;class a{constructor(e){this.name=e}}t.ActionContextKey=a},13650:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserver=void 0,t.ActionObserver=class{constructor(e){Object.assign(this,e)}}},47405:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Actor=void 0;const n=r(13832);class i{constructor(e){this.beforeActors=[],Object.assign(this,e),this.bus.subscribe(this),this.beforeActors.length>0&&this.bus.addDependencies(this,this.beforeActors)}static getContextLogger(e){return e.get(n.CONTEXT_KEY_LOGGER)}runObservable(e){const t=this.run(e);return this.bus.onRun(this,e,t),t}async initialize(){return!0}async deinitialize(){return!0}getDefaultLogData(e,t){const r=t?t():{};return r.actor=this.name,r}logTrace(e,t,r){const n=i.getContextLogger(e);n&&n.trace(t,this.getDefaultLogData(e,r))}logDebug(e,t,r){const n=i.getContextLogger(e);n&&n.debug(t,this.getDefaultLogData(e,r))}logInfo(e,t,r){const n=i.getContextLogger(e);n&&n.info(t,this.getDefaultLogData(e,r))}logWarn(e,t,r){const n=i.getContextLogger(e);n&&n.warn(t,this.getDefaultLogData(e,r))}logError(e,t,r){const n=i.getContextLogger(e);n&&n.error(t,this.getDefaultLogData(e,r))}logFatal(e,t,r){const n=i.getContextLogger(e);n&&n.fatal(t,this.getDefaultLogData(e,r))}}t.Actor=i},56910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Bus=void 0,t.Bus=class{constructor(e){this.actors=[],this.observers=[],this.dependencyLinks=new Map,Object.assign(this,e)}subscribe(e){this.actors.push(e),this.reorderForDependencies()}subscribeObserver(e){this.observers.push(e)}unsubscribe(e){const t=this.actors.indexOf(e);return t>=0&&(this.actors.splice(t,1),!0)}unsubscribeObserver(e){const t=this.observers.indexOf(e);return t>=0&&(this.observers.splice(t,1),!0)}publish(e){return this.actors.map((t=>({actor:t,reply:t.test(e)})))}onRun(e,t,r){for(const n of this.observers)n.onRun(e,t,r)}addDependencies(e,t){for(const r of t){let t=this.dependencyLinks.get(r);t||(t=[],this.dependencyLinks.set(r,t)),t.push(e)}this.reorderForDependencies()}reorderForDependencies(){if(this.dependencyLinks.size>0){const e=[];for(const t of this.dependencyLinks.keys()){const r=this.actors.indexOf(t);r>=0&&(this.actors.splice(r,1),e.push(t))}for(;e.length>0;){let t=-1;for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BusIndexed=void 0;const n=r(56910);class i extends n.Bus{constructor(e){super(e),this.actorsIndex={}}subscribe(e){const t=this.getActorIdentifier(e)||"_undefined_";let r=this.actorsIndex[t];r||(r=this.actorsIndex[t]=[]),r.push(e),super.subscribe(e)}unsubscribe(e){const t=this.getActorIdentifier(e)||"_undefined_",r=this.actorsIndex[t];if(r){const n=r.indexOf(e);n>=0&&r.splice(n,1),0===r.length&&delete this.actorsIndex[t]}return super.unsubscribe(e)}publish(e){const t=this.getActionIdentifier(e);return t?[...this.actorsIndex[t]||[],...this.actorsIndex._undefined_||[]].map((t=>({actor:t,reply:t.test(e)}))):super.publish(e)}getActorIdentifier(e){return this.actorIdentifierFields.reduce(((e,t)=>e[t]),e)}getActionIdentifier(e){return this.actionIdentifierFields.reduce(((e,t)=>e[t]),e)}}t.BusIndexed=i},13832:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CONTEXT_KEY_LOGGER=void 0;const n=r(81662);t.CONTEXT_KEY_LOGGER=new n.ActionContextKey("@comunica/core:log")},39014:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Mediator=void 0,t.Mediator=class{constructor(e){Object.assign(this,e)}publish(e){const t=this.bus.publish(e);if(0===t.length)throw new Error(`No actors are able to reply to a message in the bus ${this.bus.name}`);return t}async mediateActor(e){return await this.mediateWith(e,this.publish(e))}async mediate(e){return(await this.mediateActor(e)).runObservable(e)}}},21049:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=void 0;const a=r(24331).Logger;t.Logger=a,i(r(81662),t),i(r(56910),t),i(r(52430),t),i(r(13832),t),i(r(13650),t),i(r(47405),t),i(r(39014),t)},77265:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNodeBindingsScoped=void 0,t.BlankNodeBindingsScoped=class{constructor(e){this.termType="BlankNode",this.singleBindingsScope=!0,this.value=e}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},61705:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNodeScoped=void 0,t.BlankNodeScoped=class{constructor(e,t){this.termType="BlankNode",this.value=e,this.skolemized=t}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},27057:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(61705),t),i(r(77265),t)},3120:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Aggregator=t.AggregatorComponent=void 0;const n=r(6053),i=r(34932),a=r(8399),o=r(96251);t.AggregatorComponent=class{static emptyValue(){}constructor(e,t){this.sharedContext=t,this.separator=e.separator||" ",this.termTransformer=new i.TermTransformer(t.superTypeProvider)}termToNumericOrError(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a numeric literal`);if(!(0,o.isSubTypeOf)(e.datatype.value,a.TypeAlias.SPARQL_NUMERIC,this.sharedContext.superTypeProvider))throw new Error(`Term datatype ${e.datatype.value} with value ${e.value} has type ${e.termType} and is not a numeric literal`);return this.termTransformer.transformLiteral(e)}},t.Aggregator=class{constructor(e,t){this.aggregatorComponent=t,this.variableValues=new Map,this.distinct=e.distinct}static emptyValue(e){return e.emptyValue()}result(){return this.aggregatorComponent.result()}put(e,t=""){this.canSkip(e,t)||(this.aggregatorComponent.put(e),this.addSeen(e,t))}canSkip(e,t){const r=this.variableValues.get(t);return this.distinct&&void 0!==r&&r.has(n.termToString(e))}addSeen(e,t){this.distinct&&(this.variableValues.has(t)||this.variableValues.set(t,new Set),this.variableValues.get(t).add(n.termToString(e)))}}},27661:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Average=void 0;const n=r(57358),i=r(64640),a=r(36389),o=r(8399),s=r(3120);class c extends s.AggregatorComponent{constructor(){super(...arguments),this.summer=i.regularFunctions[o.RegularOperator.ADDITION],this.divider=i.regularFunctions[o.RegularOperator.DIVISION],this.state=void 0}static emptyValue(){return(0,a.integer)(0).toRDF()}put(e){if(void 0===this.state){const t=this.termToNumericOrError(e);this.state={sum:t,count:1}}else{const t=this.termToNumericOrError(e);this.state.sum=this.summer.apply([this.state.sum,t],this.sharedContext),this.state.count++}}result(){if(void 0===this.state)return c.emptyValue();const e=new n.IntegerLiteral(this.state.count);return this.divider.apply([this.state.sum,e],this.sharedContext).toRDF()}}t.Average=c},37712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Count=void 0;const n=r(36389),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}static emptyValue(){return(0,n.integer)(0).toRDF()}put(e){void 0===this.state&&(this.state=0),this.state++}result(){return void 0===this.state?a.emptyValue():(0,n.integer)(this.state).toRDF()}}t.Count=a},3041:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupConcat=void 0;const n=r(36389),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}static emptyValue(){return(0,n.string)("").toRDF()}put(e){void 0===this.state?this.state=e.value:this.state+=this.separator+e.value}result(){return void 0===this.state?a.emptyValue():(0,n.string)(this.state).toRDF()}}t.GroupConcat=a},4900:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Max=void 0;const n=r(34964),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a literal`);(void 0===this.state||-1===(0,n.orderTypes)(this.state,e))&&(this.state=e)}result(){return void 0===this.state?a.emptyValue():this.state}}t.Max=a},30422:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Min=void 0;const n=r(34964),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a literal`);(void 0===this.state||1===(0,n.orderTypes)(this.state,e))&&(this.state=e)}result(){return void 0===this.state?a.emptyValue():this.state}}t.Min=a},56258:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Sample=void 0;const n=r(3120);class i extends n.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){void 0===this.state&&(this.state=e)}result(){return void 0===this.state?i.emptyValue():this.state}}t.Sample=i},80244:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Sum=void 0;const n=r(64640),i=r(36389),a=r(8399),o=r(3120);class s extends o.AggregatorComponent{constructor(){super(...arguments),this.state=void 0,this.summer=n.regularFunctions[a.RegularOperator.ADDITION]}static emptyValue(){return(0,i.integer)(0).toRDF()}put(e){if(void 0===this.state)this.state=this.termToNumericOrError(e);else{const t=this.termToNumericOrError(e);this.state=this.summer.apply([this.state,t],this.sharedContext)}}result(){return void 0===this.state?s.emptyValue():this.state.toRDF()}}t.Sum=s},37254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WildcardCountAggregator=void 0;const n=r(6053),i=r(36389);t.WildcardCountAggregator=class{constructor(e){this.bindingValues=new Map,this.counter=0,this.distinct=e.distinct}putBindings(e){this.handleDistinct(e)||(this.counter+=1)}static emptyValue(){return(0,i.integer)(0).toRDF()}result(){return(0,i.integer)(this.counter).toRDF()}handleDistinct(e){if(this.distinct){const t=[...e];t.sort(((e,t)=>e[0].value.localeCompare(t[0].value)));const r=t.map((([e])=>e.value)).join(","),i=t.map((([,e])=>n.termToString(e))).join(","),a=this.bindingValues.get(r),o=void 0!==a&&a.has(i);return a||this.bindingValues.set(r,new Set),this.bindingValues.get(r).add(i),o}return!1}}},86441:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.aggregators=void 0;const n=r(27661),i=r(37712),a=r(3041),o=r(4900),s=r(30422),c=r(56258),u=r(80244);t.aggregators={count:i.Count,sum:u.Sum,min:s.Min,max:o.Max,avg:n.Average,group_concat:a.GroupConcat,sample:c.Sample}},45997:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregateEvaluator=void 0;const n=r(58272),i=r(64481);class a extends n.BaseAggregateEvaluator{constructor(e,t,r){super(e,i.SyncEvaluator.completeContext(t||{}),r),this.evaluator=new i.SyncEvaluator(e.expression,t)}put(e){if(!this.errorOccurred)if(this.isWildcard)this.wildcardAggregator.putBindings(e);else try{const t=this.evaluator.evaluate(e);this.aggregator.put(t)}catch(e){this.safeThrow(e)}}safeThrow(e){if(this.throwError)throw e;this.errorOccurred=!0}}t.AggregateEvaluator=a},3694:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncAggregateEvaluator=void 0;const n=r(72407),i=r(58272);class a extends i.BaseAggregateEvaluator{constructor(e,t,r){super(e,n.AsyncEvaluator.completeContext(t||{}),r),this.evaluator=new n.AsyncEvaluator(e.expression,t),this.errorOccurred=!1}async put(e){if(!this.errorOccurred)if(this.isWildcard)this.wildcardAggregator.putBindings(e);else try{const t=await this.evaluator.evaluate(e);if(!t||this.errorOccurred)return;this.aggregator.put(t)}catch(e){this.safeThrow(e)}}safeThrow(e){if(this.throwError)throw e;this.errorOccurred=!0}}t.AsyncAggregateEvaluator=a},72407:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncEvaluator=void 0;const n=r(70463),i=r(84765),a=r(90799),o=r(44029);class s{static completeContext(e){const t=e.now||new Date(Date.now());return{now:t,baseIRI:e.baseIRI||void 0,functionArgumentsCache:e.functionArgumentsCache||{},superTypeProvider:{cache:e.typeCache||new n.LRUCache({max:1e3}),discoverer:e.getSuperType||(()=>"term")},extensionFunctionCreator:e.extensionFunctionCreator,exists:e.exists,aggregate:e.aggregate,bnode:e.bnode,defaultTimeZone:e.defaultTimeZone||(0,a.extractTimeZone)(t)}}constructor(e,t={}){this.algExpr=e;const r=t.extensionFunctionCreator||(()=>{}),n=s.completeContext(t),a=new i.AlgebraTransformer({type:"async",creator:r,...n});this.expr=a.transformAlgebra(e),this.evaluator=new o.AsyncRecursiveEvaluator(n,a)}async evaluate(e){return(await this.evaluator.evaluate(this.expr,e)).toRDF()}async evaluateAsEBV(e){return(await this.evaluator.evaluate(this.expr,e)).coerceEBV()}async evaluateAsInternal(e){return await this.evaluator.evaluate(this.expr,e)}}t.AsyncEvaluator=s},64481:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncEvaluator=void 0;const n=r(70463),i=r(84765),a=r(90799),o=r(44749);class s{static completeContext(e){const t=e.now||new Date(Date.now());return{now:t,baseIRI:e.baseIRI||void 0,functionArgumentsCache:e.functionArgumentsCache||{},superTypeProvider:{cache:e.typeCache||new n.LRUCache({max:1e3}),discoverer:e.getSuperType||(()=>"term")},extensionFunctionCreator:e.extensionFunctionCreator,exists:e.exists,aggregate:e.aggregate,bnode:e.bnode,defaultTimeZone:e.defaultTimeZone||(0,a.extractTimeZone)(t)}}constructor(e,t={}){this.algExpr=e,this.context=t;const r=t.extensionFunctionCreator||(()=>{}),n=s.completeContext(t),a=new i.AlgebraTransformer({type:"sync",creator:r,...n});this.expr=a.transformAlgebra(e),this.evaluator=new o.SyncRecursiveEvaluator(n,a)}evaluate(e){return this.evaluator.evaluate(this.expr,e).toRDF()}evaluateAsEBV(e){return this.evaluator.evaluate(this.expr,e).coerceEBV()}evaluateAsInternal(e){return this.evaluator.evaluate(this.expr,e)}}t.SyncEvaluator=s},44029:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncRecursiveEvaluator=void 0;const n=r(57358),i=r(34932),a=r(75218),o=r(26847);class s extends o.BaseExpressionEvaluator{constructor(e,t){super(t||new i.TermTransformer(e.superTypeProvider)),this.context=e,this.subEvaluators={[n.ExpressionType.Term]:this.term.bind(this),[n.ExpressionType.Variable]:this.variable.bind(this),[n.ExpressionType.Operator]:this.evalOperator.bind(this),[n.ExpressionType.SpecialOperator]:this.evalSpecialOperator.bind(this),[n.ExpressionType.Named]:this.evalNamed.bind(this),[n.ExpressionType.Existence]:this.evalExistence.bind(this),[n.ExpressionType.Aggregate]:this.evalAggregate.bind(this),[n.ExpressionType.AsyncExtension]:this.evalAsyncExtension.bind(this)}}async evaluate(e,t){const r=this.subEvaluators[e.expressionType];if(!r)throw new a.InvalidExpressionType(e);return r.bind(this)(e,t)}async evalOperator(e,t){const r=e.args.map((e=>this.evaluate(e,t))),n=await Promise.all(r);return e.apply(n)}async evalSpecialOperator(e,t){const r=this.evaluate.bind(this),n={args:e.args,mapping:t,superTypeProvider:this.context.superTypeProvider,now:this.context.now,baseIRI:this.context.baseIRI,functionArgumentsCache:this.context.functionArgumentsCache,evaluate:r,bnode:this.context.bnode,defaultTimeZone:this.context.defaultTimeZone};return e.applyAsync(n)}async _evalAsyncArgs(e,t){const r=e.map((e=>this.evaluate(e,t)));return await Promise.all(r)}async evalNamed(e,t){return e.apply(await this._evalAsyncArgs(e.args,t))}async evalAsyncExtension(e,t){return await e.apply(await this._evalAsyncArgs(e.args,t))}async evalExistence(e,t){if(!this.context.exists)throw new a.NoExistenceHook;return new n.BooleanLiteral(await this.context.exists(e.expression,t))}async evalAggregate(e,t){if(!this.context.aggregate)throw new a.NoAggregator;return this.termTransformer.transformRDFTermUnsafe(await this.context.aggregate(e.expression))}}t.AsyncRecursiveEvaluator=s},58272:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseAggregateEvaluator=void 0;const n=r(6789),i=r(86441),a=r(3120),o=r(37254),s=r(75218);t.BaseAggregateEvaluator=class{constructor(e,t,r){this.throwError=!1,this.isWildcard=!1,this.errorOccurred=!1,this.expression=e,this.aggregator=new a.Aggregator(e,new i.aggregators[e.aggregator](e,t)),this.throwError=r||!1,this.isWildcard=e.expression.expressionType===n.Algebra.expressionTypes.WILDCARD,this.isWildcard&&(this.wildcardAggregator=new o.WildcardCountAggregator(e))}static emptyValue(e,t=!1){let r;if(r=e.expression.expressionType===n.Algebra.expressionTypes.WILDCARD?o.WildcardCountAggregator.emptyValue():a.Aggregator.emptyValue(i.aggregators[e.aggregator]),void 0===r&&t)throw new s.EmptyAggregateError;return r}result(){if(!this.errorOccurred)return this.isWildcard?this.wildcardAggregator.result():this.aggregator.result()}}},26847:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseExpressionEvaluator=void 0;const n=r(36389),i=r(75218);t.BaseExpressionEvaluator=class{constructor(e){this.termTransformer=e}term(e,t){return e}variable(e,t){const r=t.get((0,n.expressionToVar)(e));if(!r)throw new i.UnboundVariableError(e.name,t);return this.termTransformer.transformRDFTermUnsafe(r)}}},44749:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncRecursiveEvaluator=void 0;const n=r(57358),i=r(34932),a=r(75218),o=r(26847);class s extends o.BaseExpressionEvaluator{constructor(e,t){super(t||new i.TermTransformer(e.superTypeProvider)),this.context=e,this.subEvaluators={[n.ExpressionType.Term]:this.term.bind(this),[n.ExpressionType.Variable]:this.variable.bind(this),[n.ExpressionType.Operator]:this.evalOperator.bind(this),[n.ExpressionType.SpecialOperator]:this.evalSpecialOperator.bind(this),[n.ExpressionType.Named]:this.evalNamed.bind(this),[n.ExpressionType.Existence]:this.evalExistence.bind(this),[n.ExpressionType.Aggregate]:this.evalAggregate.bind(this),[n.ExpressionType.SyncExtension]:this.evalSyncExtension.bind(this)}}evaluate(e,t){const r=this.subEvaluators[e.expressionType];if(!r)throw new a.InvalidExpressionType(e);return r.bind(this)(e,t)}evalOperator(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalSpecialOperator(e,t){const r=this.evaluate.bind(this),n={args:e.args,mapping:t,superTypeProvider:this.context.superTypeProvider,now:this.context.now,baseIRI:this.context.baseIRI,functionArgumentsCache:this.context.functionArgumentsCache,evaluate:r,bnode:this.context.bnode,defaultTimeZone:this.context.defaultTimeZone};return e.applySynchronously(n)}evalNamed(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalSyncExtension(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalExistence(e,t){if(!this.context.exists)throw new a.NoExistenceHook;return new n.BooleanLiteral(this.context.exists(e.expression,t))}evalAggregate(e,t){if(!this.context.aggregate)throw new a.NoAggregator;return this.termTransformer.transformRDFTermUnsafe(this.context.aggregate(e.expression))}}t.SyncRecursiveEvaluator=s},19667:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Aggregate=void 0;const n=r(29846);t.Aggregate=class{constructor(e,t){this.name=e,this.expression=t,this.expressionType=n.ExpressionType.Aggregate}}},48524:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncExtension=void 0;const n=r(29846);t.AsyncExtension=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.AsyncExtension}}},40940:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Existence=void 0;const n=r(29846);t.Existence=class{constructor(e){this.expression=e,this.expressionType=n.ExpressionType.Existence}}},29846:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.asTermType=t.ExpressionType=void 0,function(e){e.Aggregate="aggregate",e.Existence="existence",e.Named="named",e.Operator="operator",e.SpecialOperator="specialOperator",e.Term="term",e.Variable="variable",e.AsyncExtension="asyncExtension",e.SyncExtension="syncExtension"}(r||(t.ExpressionType=r={})),t.asTermType=function(e){if("namedNode"===e||"literal"===e||"blankNode"===e||"quad"===e)return e}},6821:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Named=void 0;const n=r(29846);t.Named=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.Named}}},61923:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Operator=void 0;const n=r(29846);t.Operator=class{constructor(e,t){this.args=e,this.apply=t,this.expressionType=n.ExpressionType.Operator}}},4160:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SpecialOperator=void 0;const n=r(29846);t.SpecialOperator=class{constructor(e,t,r){this.args=e,this.applyAsync=t,this.applySynchronously=r,this.expressionType=n.ExpressionType.SpecialOperator}}},32466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncExtension=void 0;const n=r(29846);t.SyncExtension=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.SyncExtension}}},36719:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNonLexicalLiteral=t.NonLexicalLiteral=t.YearMonthDurationLiteral=t.DayTimeDurationLiteral=t.DurationLiteral=t.DateLiteral=t.TimeLiteral=t.DateTimeLiteral=t.StringLiteral=t.LangStringLiteral=t.BooleanLiteral=t.DoubleLiteral=t.FloatLiteral=t.DecimalLiteral=t.IntegerLiteral=t.NumericLiteral=t.Literal=t.isLiteralTermExpression=t.Quad=t.BlankNode=t.NamedNode=t.Term=void 0;const n=r(91194),i=r(34932),a=r(8399),o=r(8399),s=r(75218),c=r(6521),u=r(96251),l=r(29846),d=new n.DataFactory;class h{constructor(){this.expressionType=l.ExpressionType.Term}str(){throw new s.InvalidArgumentTypes([this],a.RegularOperator.STR)}coerceEBV(){throw new s.EBVCoercionError(this)}}t.Term=h,t.NamedNode=class extends h{constructor(e){super(),this.value=e,this.termType="namedNode"}toRDF(){return d.namedNode(this.value)}str(){return this.value}},t.BlankNode=class extends h{constructor(e){super(),this.termType="blankNode",this.value="string"==typeof e?d.blankNode(e):e}toRDF(){return this.value}},t.Quad=class extends h{constructor(e,t){super(),this.termType="quad",this.transformer=new i.TermTransformer(t),this.valueTerm=e}toRDF(){return this.valueTerm}get subject(){return this.transformer.transformRDFTermUnsafe(this.RDFsubject)}get predicate(){return this.transformer.transformRDFTermUnsafe(this.RDFpredicate)}get object(){return this.transformer.transformRDFTermUnsafe(this.RDFobject)}get RDFsubject(){return this.toRDF().subject}get RDFpredicate(){return this.toRDF().predicate}get RDFobject(){return this.toRDF().object}},t.isLiteralTermExpression=function(e){if("literal"===e.termType)return e};class p extends h{constructor(e,t,r,n){super(),this.typedValue=e,this.dataType=t,this.strValue=r,this.language=n,this.termType="literal"}toRDF(){return d.literal(this.strValue||this.str(),this.language||d.namedNode(this.dataType))}str(){return this.strValue||this.typedValue.toString()}}t.Literal=p;class f extends p{constructor(e,t,r,n){super(e,t,r,n),this.typedValue=e,this.strValue=r,this.language=n}coerceEBV(){return Boolean(this.typedValue)}toRDF(){const e=super.toRDF();return Number.isFinite(this.typedValue)||(e.value=e.value.replace("Infinity","INF")),e}str(){return this.strValue||this.specificFormatter(this.typedValue)}}t.NumericLiteral=f,t.IntegerLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_INTEGER,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toFixed(0)}},t.DecimalLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_DECIMAL,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toString()}},t.FloatLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_FLOAT,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toString()}},t.DoubleLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_DOUBLE,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){if(!Number.isFinite(e))return e>0?"INF":e<0?"-INF":"NaN";const t=e.toExponential(),[r,n]=t.split("e"),i=n.replace(/\+/u,"");return`${r.includes(".")?r:`${r}.0`}E${i}`}},t.BooleanLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_BOOLEAN,t),this.typedValue=e,this.strValue=t}coerceEBV(){return this.typedValue}},t.LangStringLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.RDF_LANG_STRING,e,t),this.typedValue=e,this.language=t}coerceEBV(){return this.str().length>0}},t.StringLiteral=class extends p{constructor(e,t){super(e,t||o.TypeURL.XSD_STRING,e),this.typedValue=e}coerceEBV(){return this.str().length>0}},t.DateTimeLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DATE_TIME,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDateTime)(this.typedValue)}},t.TimeLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_TIME,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeTime)(this.typedValue)}},t.DateLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DATE,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDate)(this.typedValue)}};class y extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DURATION,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDuration)(this.typedValue)}}t.DurationLiteral=y,t.DayTimeDurationLiteral=class extends y{constructor(e,t,r){super(e,t,r||o.TypeURL.XSD_DAY_TIME_DURATION),this.typedValue=e,this.strValue=t}},t.YearMonthDurationLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_YEAR_MONTH_DURATION,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDuration)(this.typedValue,"P0M")}};class g extends p{constructor(e,t,r,n,i){super({toString:()=>"undefined"},t,n,i),this.openWorldType=r}coerceEBV(){if((0,u.isSubTypeOf)(this.dataType,o.TypeURL.XSD_BOOLEAN,this.openWorldType)||(0,u.isSubTypeOf)(this.dataType,o.TypeAlias.SPARQL_NUMERIC,this.openWorldType))return!1;throw new s.EBVCoercionError(this)}toRDF(){return d.literal(this.str(),this.language||d.namedNode(this.dataType))}str(){return this.strValue||""}}t.NonLexicalLiteral=g,t.isNonLexicalLiteral=function(e){if(e instanceof g)return e}},20332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0;const n=r(29846);t.Variable=class{constructor(e){this.expressionType=n.ExpressionType.Variable,this.name=e}}},57358:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29846),t),i(r(20332),t),i(r(36719),t),i(r(61923),t),i(r(4160),t),i(r(6821),t),i(r(19667),t),i(r(40940),t),i(r(48524),t),i(r(32466),t)},53390:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SpecialFunction=t.NamedFunction=t.RegularFunction=t.BaseFunction=void 0;const n=r(75218);class i{constructor(e,t){this.operator=e,this.apply=(e,t)=>(this.monomorph(e,t.superTypeProvider,t.functionArgumentsCache)||this.handleInvalidTypes(e))(t)(e),this.arity=t.arity,this.overloads=t.overloads}monomorph(e,t,r){return this.overloads.search(e,t,r)}}t.BaseFunction=i,t.RegularFunction=class extends i{constructor(e,t){super(e,t),this.functionClass="regular"}handleInvalidTypes(e){throw new n.InvalidArgumentTypes(e,this.operator)}},t.NamedFunction=class extends i{constructor(e,t){super(e,t),this.functionClass="named"}handleInvalidTypes(e){throw new n.InvalidArgumentTypes(e,this.operator)}},t.SpecialFunction=class{constructor(e,t){var r;this.operator=e,this.functionClass="special",this.arity=t.arity,this.applySynchronously=t.applySynchronously,this.applyAsync=t.applyAsync,this.checkArity=t.checkArity||(r=this.arity,e=>r===Number.POSITIVE_INFINITY||e.length===r)}}},36389:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.expressionToVar=t.dateTime=t.langString=t.string=t.double=t.float=t.decimal=t.integer=t.bool=t.Builder=t.declare=void 0;const n=r(91194),i=r(57358),a=r(57358),o=r(8399),s=r(8399),c=r(75218),u=r(71243),l=new n.DataFactory;t.declare=function(e){return new d(e)};class d{constructor(e){this.overloadTree=new u.OverloadTree(e),this.collected=!1}collect(){if(this.collected)throw new Error("Builders can only be collected once!");return this.collected=!0,this.overloadTree}static wrapInvalidLexicalProtected(e){return t=>r=>(r.forEach(((e,t)=>{if(e instanceof a.NonLexicalLiteral)throw new c.InvalidLexicalForm(r[t].toRDF())})),e(t)(r))}set(e,t,r=!0){return this.overloadTree.addOverload(e,r?d.wrapInvalidLexicalProtected(t):t),this}copy({from:e,to:t}){const r=this.overloadTree.getImplementationExact(e);if(!r)throw new c.UnexpectedError("Tried to copy implementation, but types not found",{from:e,to:t});return this.set(t,r)}onUnary(e,t,r=!0){return this.set([e],(e=>([r])=>t(e)(r)),r)}onUnaryTyped(e,t,r=!0){return this.set([e],(e=>([r])=>t(e)(r.typedValue)),r)}onBinary(e,t,r=!0){return this.set(e,(e=>([r,n])=>t(e)(r,n)),r)}onBinaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n])=>t(e)(r.typedValue,n.typedValue)),r)}onTernaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n,i])=>t(e)(r.typedValue,n.typedValue,i.typedValue)),r)}onTernary(e,t,r=!0){return this.set(e,(e=>([r,n,i])=>t(e)(r,n,i)),r)}onQuaternaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n,i,a])=>t(e)(r.typedValue,n.typedValue,i.typedValue,a.typedValue)),r)}onTerm1(e,t=!1){return this.set(["term"],(t=>([r])=>e(t)(r)),t)}onTerm3(e){return this.set(["term","term","term"],(t=>([r,n,i])=>e(t)(r,n,i)))}onQuad1(e){return this.set(["quad"],(t=>([r])=>e(t)(r)))}onLiteral1(e,t=!0){return this.set(["literal"],(t=>([r])=>e(t)(r)),t)}onBoolean1(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN],(t=>([r])=>e(t)(r)),t)}onBoolean1Typed(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN],(t=>([r])=>e(t)(r.typedValue)),t)}onString1(e,t=!0){return this.set([o.TypeURL.XSD_STRING],(t=>([r])=>e(t)(r)),t)}onString1Typed(e,t=!0){return this.set([o.TypeURL.XSD_STRING],(t=>([r])=>e(t)(r.typedValue)),t)}onLangString1(e,t=!0){return this.set([o.TypeURL.RDF_LANG_STRING],(t=>([r])=>e(t)(r)),t)}onStringly1(e,t=!0){return this.set([o.TypeAlias.SPARQL_STRINGLY],(t=>([r])=>e(t)(r)),t)}onStringly1Typed(e,t=!0){return this.set([o.TypeAlias.SPARQL_STRINGLY],(t=>([r])=>e(t)(r.typedValue)),t)}onNumeric1(e,t=!0){return this.set([o.TypeAlias.SPARQL_NUMERIC],(t=>([r])=>e(t)(r)),t)}onDateTime1(e,t=!0){return this.set([o.TypeURL.XSD_DATE_TIME],(t=>([r])=>e(t)(r)),t)}numericConverter(e,t=!0){const r=t=>r=>e(t)(r.typedValue);return this.onBinary([s.TypeURL.XSD_INTEGER],(e=>t=>p(r(e)(t))),t).onBinary([s.TypeURL.XSD_DECIMAL],(e=>t=>f(r(e)(t))),t).onBinary([s.TypeURL.XSD_FLOAT],(e=>t=>y(r(e)(t))),t).onBinary([s.TypeURL.XSD_DOUBLE],(e=>t=>g(r(e)(t))),t)}arithmetic(e,t=!0){const r=t=>(r,n)=>e(t)(r.typedValue,n.typedValue);return this.onBinary([s.TypeURL.XSD_INTEGER,s.TypeURL.XSD_INTEGER],(e=>(t,n)=>p(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_DECIMAL,s.TypeURL.XSD_DECIMAL],(e=>(t,n)=>f(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_FLOAT,s.TypeURL.XSD_FLOAT],(e=>(t,n)=>y(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_DOUBLE,s.TypeURL.XSD_DOUBLE],(e=>(t,n)=>g(r(e)(t,n))),t)}numberTest(e){return this.numeric((t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))))}stringTest(e,t=!0){return this.set([o.TypeURL.XSD_STRING,o.TypeURL.XSD_STRING],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}booleanTest(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN,o.TypeURL.XSD_BOOLEAN],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}dateTimeTest(e,t=!0){return this.set([o.TypeURL.XSD_DATE_TIME,o.TypeURL.XSD_DATE_TIME],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}numeric(e){return this.set([o.TypeAlias.SPARQL_NUMERIC,o.TypeAlias.SPARQL_NUMERIC],e)}}function h(e){return new i.BooleanLiteral(e)}function p(e){return new i.IntegerLiteral(e)}function f(e){return new i.DecimalLiteral(e)}function y(e){return new i.FloatLiteral(e)}function g(e){return new i.DoubleLiteral(e)}t.Builder=d,t.bool=h,t.integer=p,t.decimal=f,t.float=y,t.double=g,t.string=function(e){return new i.StringLiteral(e)},t.langString=function(e,t){return new i.LangStringLiteral(e,t)},t.dateTime=function(e,t){return new i.DateTimeLiteral(e,t)},t.expressionToVar=function(e){return l.variable(e.name.slice(1))}},43923:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.namedDefinitions=void 0;const n=r(57358),i=r(57358),a=r(8399),o=r(90799),s=r(75218),c=r(31029),u=r(36389),l={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_STRING).onNumeric1((()=>e=>(0,u.string)((0,u.float)(e.typedValue).str()))).onBoolean1Typed((()=>e=>(0,u.string)((0,u.bool)(e).str()))).onTerm1((()=>e=>(0,u.string)(e.str()))).collect()},d={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_FLOAT).onNumeric1((()=>e=>(0,u.float)(e.typedValue))).onBoolean1Typed((()=>e=>(0,u.float)(e?1:0))).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{const t=(0,c.parseXSDFloat)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_FLOAT);return(0,u.float)(t)}),!1).collect()},h={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DOUBLE).onNumeric1((()=>e=>(0,u.double)(e.typedValue))).onBoolean1Typed((()=>e=>(0,u.double)(e?1:0))).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{const t=(0,c.parseXSDFloat)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_DOUBLE);return(0,u.double)(t)}),!1).collect()},p={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DECIMAL).onNumeric1((()=>e=>{const t=(0,c.parseXSDDecimal)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_DECIMAL);return(0,u.decimal)(t)})).onString1((()=>e=>{const t=e.str(),r=/^([+-])?(\d+(\.\d+)?)$/u.test(t)?(0,c.parseXSDDecimal)(t):void 0;if(void 0===r)throw new s.CastError(e,a.TypeURL.XSD_DECIMAL);return(0,u.decimal)(r)}),!1).onBoolean1Typed((()=>e=>(0,u.decimal)(e?1:0))).collect()},f={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_INTEGER).onBoolean1Typed((()=>e=>(0,u.integer)(e?1:0))).onNumeric1((()=>e=>{const t=(0,c.parseXSDInteger)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_INTEGER);return(0,u.integer)(t)}),!1).onString1((()=>e=>{const t=e.str(),r=/^\d+$/u.test(t)?(0,c.parseXSDInteger)(t):void 0;if(void 0===r)throw new s.CastError(e,a.TypeURL.XSD_INTEGER);return(0,u.integer)(r)})).collect()},y={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DATE_TIME).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>e)).onUnary(a.TypeURL.XSD_STRING,(()=>e=>(0,u.dateTime)((0,c.parseDateTime)(e.str()),e.str())),!1).onUnary(a.TypeURL.XSD_DATE,(()=>e=>new n.DateTimeLiteral({...e.typedValue,hours:0,minutes:0,seconds:0}))).collect()},g={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_BOOLEAN).onNumeric1((()=>e=>(0,u.bool)(e.coerceEBV())),!0).onUnary(a.TypeURL.XSD_BOOLEAN,(()=>e=>(0,u.bool)(e.coerceEBV())),!0).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{switch(e.str()){case"true":case"1":return(0,u.bool)(!0);case"false":case"0":return(0,u.bool)(!1);default:throw new s.CastError(e,a.TypeURL.XSD_BOOLEAN)}}),!1).collect()},m={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_TIME).onUnary(a.TypeURL.XSD_TIME,(()=>e=>new n.TimeLiteral(e.typedValue,e.strValue))).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>new n.TimeLiteral(e.typedValue))).onStringly1((()=>e=>new n.TimeLiteral((0,c.parseTime)(e.str())))).collect()},b={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DATE).onUnary(a.TypeURL.XSD_DATE,(()=>e=>new n.DateLiteral(e.typedValue,e.strValue))).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>new n.DateLiteral(e.typedValue))).onStringly1((()=>e=>new n.DateLiteral((0,c.parseDate)(e.str())))).collect()},v={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.DurationLiteral(e.typedValue,e.strValue))).onStringly1((()=>e=>new i.DurationLiteral((0,c.parseDuration)(e.str())))).collect()},_={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DAY_TIME_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.DayTimeDurationLiteral((0,o.trimToDayTimeDuration)(e.typedValue)))).onStringly1((()=>e=>new n.DayTimeDurationLiteral((0,c.parseDayTimeDuration)(e.str())))).collect()},w={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_YEAR_MONTH_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.YearMonthDurationLiteral((0,o.trimToYearMonthDuration)(e.typedValue)))).onStringly1((()=>e=>new n.YearMonthDurationLiteral((0,c.parseYearMonthDuration)(e.str())))).collect()};t.namedDefinitions={[a.TypeURL.XSD_STRING]:l,[a.TypeURL.XSD_FLOAT]:d,[a.TypeURL.XSD_DOUBLE]:h,[a.TypeURL.XSD_DECIMAL]:p,[a.TypeURL.XSD_INTEGER]:f,[a.TypeURL.XSD_DATE_TIME]:y,[a.TypeURL.XSD_DATE]:b,[a.TypeURL.XSD_BOOLEAN]:g,[a.TypeURL.XSD_TIME]:m,[a.TypeURL.XSD_DURATION]:v,[a.TypeURL.XSD_DAY_TIME_DURATION]:_,[a.TypeURL.XSD_YEAR_MONTH_DURATION]:w}},71243:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OverloadTree=void 0;const n=r(57358),i=r(96251);class a{constructor(e,t){this.identifier=e,this.implementation=void 0,this.generalOverloads=Object.create(null),this.literalOverLoads=[],this.depth=t||0,this.promotionCount=void 0}getSubtree(e){const t=(0,i.asGeneralType)(e);if(t)return this.generalOverloads[t];for(const[t,r]of this.literalOverLoads)if(e===t)return r}getImplementationExact(e){let t=this;for(const r of e)if(t=t.getSubtree(r),!t)return;return t.implementation}search(e,t,r){let i=r[this.identifier],a=0;for(;a({node:e,index:1}))));o.length>0;){const{index:n,node:i}=o.pop();if(n===e.length&&i.implementation)return this.addToCache(r,e,i.implementation),i.implementation;o.push(...i.getSubTreeWithArg(e[n],t).map((e=>({node:e,index:n+1}))))}}addToCache(e,t,r){function i(e,t){return t in e||(e[t]={}),e[t]}let a=i(e,this.identifier);for(const e of t){const t=(0,n.isLiteralTermExpression)(e),r=t?t.dataType:e.termType;a.cache=a.cache||{},a=i(a.cache,r)}a.func=r}addOverload(e,t){this._addOverload([...e],t,0)}_addOverload(e,t,r){const[n,...o]=e;if(!n)return void((void 0===this.promotionCount||r<=this.promotionCount)&&(this.promotionCount=r,this.implementation=t));let s=this.getSubtree(n);if(!s){const e=new a(this.identifier,this.depth+1),t=(0,i.asGeneralType)(n);t&&(this.generalOverloads[t]=e);const r=(0,i.asOverrideType)(n);r&&this.literalOverLoads.push([r,e]),s=e}s._addOverload(o,t,r),i.typePromotion[n]?.forEach((e=>this.addPromotedOverload(e.typeToPromote,t,e.conversionFunction,o,r)))}addPromotedOverload(e,t,r,n,i){let o=this.getSubtree(e);if(!o){const t=new a(this.identifier,this.depth+1);this.literalOverLoads.push([e,t]),o=t}o._addOverload(n,(e=>n=>t(e)([...n.slice(0,this.depth),r(n[this.depth]),...n.slice(this.depth+1,n.length)])),i+1)}getSubTreeWithArg(e,t){const r=[],a=(0,n.isLiteralTermExpression)(e);if(this.generalOverloads.term&&r.push(this.generalOverloads.term),this.generalOverloads[e.termType]&&r.push(this.generalOverloads[e.termType]),a){const e=(0,i.asKnownLiteralType)(a.dataType);let n;n=e?i.superTypeDictTable[e]:(0,i.getSuperTypes)(a.dataType,t);const o=this.literalOverLoads.filter((([e,t])=>e in n)).map((([e,t])=>[n[e],t]));o.sort((([e,t],[r,n])=>e-r)),r.push(...o.map((([e,t])=>t)))}return r}}t.OverloadTree=a},41511:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.definitions=void 0;const n=r(6391),i=r(34485),a=r(91194),o=r(84690),s=r(84791),c=r(60130),u=r(57358),l=r(34932),d=r(8399),h=r(8399),p=r(90799),f=r(75218),y=r(34964),g=r(84595),m=r(53390),b=r(36389),v=r(80242),_=r(64640),w=new a.DataFactory,T={arity:1,overloads:(0,b.declare)(d.RegularOperator.NOT).onTerm1((()=>e=>(0,b.bool)(!e.coerceEBV()))).collect()},S={arity:1,overloads:(0,b.declare)(d.RegularOperator.UPLUS).numericConverter((()=>e=>e)).collect()},O={arity:1,overloads:(0,b.declare)(d.RegularOperator.UMINUS).numericConverter((()=>e=>-e)).collect()},E={arity:2,overloads:(0,b.declare)(d.RegularOperator.MULTIPLICATION).arithmetic((()=>(e,t)=>new n.BigNumber(e).times(t).toNumber())).collect()},x={arity:2,overloads:(0,b.declare)(d.RegularOperator.DIVISION).arithmetic((()=>(e,t)=>new n.BigNumber(e).div(t).toNumber())).onBinaryTyped([h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>{if(0===t)throw new f.ExpressionError("Integer division by 0");return(0,b.decimal)(new n.BigNumber(e).div(t).toNumber())})).collect()},A={arity:2,overloads:(0,b.declare)(d.RegularOperator.ADDITION).arithmetic((()=>(e,t)=>new n.BigNumber(e).plus(t).toNumber())).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateTimeLiteral((0,g.addDurationToDateTime)(e.typedValue,(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.TimeLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).collect()},R={arity:2,overloads:(0,b.declare)(d.RegularOperator.SUBTRACTION).arithmetic((()=>(e,t)=>new n.BigNumber(e).minus(t).toNumber())).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],(({defaultTimeZone:e})=>([t,r])=>new u.DayTimeDurationLiteral((0,g.elapsedDuration)(t.typedValue,r.typedValue,e)))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME]}).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateTimeLiteral((0,g.addDurationToDateTime)(e.typedValue,(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).copy({from:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.TimeLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).collect()},I={arity:2,overloads:(0,b.declare)(d.RegularOperator.EQUAL).numberTest((()=>(e,t)=>e===t)).stringTest((()=>(e,t)=>0===e.localeCompare(t))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>([e,t])=>(0,b.bool)(e.str()===t.str()&&e.language===t.language))).set([h.TypeAlias.SPARQL_STRINGLY,h.TypeAlias.SPARQL_STRINGLY],(()=>()=>(0,b.bool)(!1))).booleanTest((()=>(e,t)=>e===t)).dateTimeTest((({defaultTimeZone:e})=>(t,r)=>(0,p.toUTCDate)(t,e).getTime()===(0,p.toUTCDate)(r,e).getTime())).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).set(["quad","quad"],(e=>([t,r])=>{const n=new m.RegularFunction(h.RegularOperator.EQUAL,I);return(0,b.bool)(n.apply([t.subject,r.subject],e).coerceEBV()&&n.apply([t.predicate,r.predicate],e).coerceEBV()&&n.apply([t.object,r.object],e).coerceEBV())}),!1).set(["term","term"],(()=>([e,t])=>(0,b.bool)(function(e,t){const r=e.toRDF(),n=t.toRDF(),i=r.equals(n);if(!i&&"Literal"===r.termType&&"Literal"===n.termType)throw new f.RDFEqualTypeError([e,t]);return i}(e,t))),!1).set([h.TypeURL.XSD_DURATION,h.TypeURL.XSD_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(e.typedValue))===(0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(t.typedValue))&&(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(e.typedValue))===(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME],(({defaultTimeZone:e})=>([t,r])=>(0,b.bool)((0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(t.typedValue),e).getTime()===(0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(r.typedValue),e).getTime()))).collect()},P={arity:2,overloads:(0,b.declare)(d.RegularOperator.NOT_EQUAL).set(["term","term"],(e=>([t,r])=>(0,b.bool)(!_.regularFunctions[d.RegularOperator.EQUAL].apply([t,r],e).typedValue))).collect()},D={arity:2,overloads:(0,b.declare)(d.RegularOperator.LT).numberTest((()=>(e,t)=>e(e,t)=>-1===e.localeCompare(t))).booleanTest((()=>(e,t)=>e([e,t])=>(0,b.bool)(-1===(0,y.orderTypes)(e.toRDF(),t.toRDF(),!0))),!1).dateTimeTest((({defaultTimeZone:e})=>(t,r)=>(0,p.toUTCDate)(t,e).getTime()<(0,p.toUTCDate)(r,e).getTime())).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).set([h.TypeURL.XSD_YEAR_MONTH_DURATION,h.TypeURL.XSD_YEAR_MONTH_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(e.typedValue))<(0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_DAY_TIME_DURATION,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(e.typedValue))<(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME],(({defaultTimeZone:e})=>([t,r])=>(0,b.bool)((0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(t.typedValue),e).getTime()<(0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(r.typedValue),e).getTime()))).collect()},N={arity:2,overloads:(0,b.declare)(d.RegularOperator.GT).set(["term","term"],(e=>([t,r])=>_.regularFunctions[d.RegularOperator.LT].apply([r,t],e))).collect()},j={arity:2,overloads:(0,b.declare)(d.RegularOperator.LTE).set(["term","term"],(e=>([t,r])=>(0,b.bool)(_.regularFunctions[d.RegularOperator.LT].apply([t,r],e).typedValue||_.regularFunctions[d.RegularOperator.EQUAL].apply([t,r],e).typedValue))).collect()},C={arity:2,overloads:(0,b.declare)(d.RegularOperator.GTE).set(["term","term"],(e=>([t,r])=>_.regularFunctions[d.RegularOperator.LTE].apply([r,t],e))).collect()},M={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_IRI).onTerm1((()=>e=>(0,b.bool)("namedNode"===e.termType))).collect()},L={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_BLANK).onTerm1((()=>e=>(0,b.bool)("blankNode"===e.termType))).collect()},k={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_LITERAL).onTerm1((()=>e=>(0,b.bool)("literal"===e.termType))).collect()},F={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_NUMERIC).onNumeric1((()=>()=>(0,b.bool)(!0))).onTerm1((()=>()=>(0,b.bool)(!1))).collect()},B={arity:1,overloads:(0,b.declare)(d.RegularOperator.STR).onTerm1((()=>e=>(0,b.string)(e.str()))).collect()},U={arity:1,overloads:(0,b.declare)(d.RegularOperator.LANG).onLiteral1((()=>e=>(0,b.string)(e.language||""))).collect()},q={arity:1,overloads:(0,b.declare)(d.RegularOperator.DATATYPE).onLiteral1((()=>e=>new u.NamedNode(e.dataType))).collect()},V={arity:1,overloads:(0,b.declare)(d.RegularOperator.IRI).set(["namedNode"],(e=>t=>{const r=t[0],n=(0,o.resolve)(r.str(),e.baseIRI||"");return new u.NamedNode(n)})).onString1((e=>t=>{const r=(0,o.resolve)(t.str(),e.baseIRI||"");return new u.NamedNode(r)})).collect()},Q={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRDT).set([h.TypeURL.XSD_STRING,"namedNode"],(({superTypeProvider:e})=>([t,r])=>{const n=w.literal(t.typedValue,w.namedNode(r.value));return new l.TermTransformer(e).transformLiteral(n)})).collect()},$={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRLANG).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>new u.LangStringLiteral(e,t.toLowerCase()))).collect()},H={arity:0,overloads:(0,b.declare)(d.RegularOperator.UUID).set([],(()=>()=>new u.NamedNode(`urn:uuid:${c.v4()}`))).collect()},G={arity:0,overloads:(0,b.declare)(d.RegularOperator.STRUUID).set([],(()=>()=>(0,b.string)(c.v4()))).collect()},z={arity:1,overloads:(0,b.declare)(d.RegularOperator.STRLEN).onStringly1((()=>e=>(0,b.integer)([...e.typedValue].length))).collect()},K={arity:[2,3],overloads:(0,b.declare)(d.RegularOperator.SUBSTR).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>(0,b.string)([...e].slice(t-1).join("")))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>{const r=[...e.typedValue].slice(t.typedValue-1).join("");return(0,b.langString)(r,e.language)})).onTernaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t,r)=>(0,b.string)([...e].slice(t-1,r+t-1).join("")))).onTernary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t,r)=>{const n=[...e.typedValue].slice(t.typedValue-1,r.typedValue+t.typedValue-1).join("");return(0,b.langString)(n,e.language)})).collect()},X={arity:1,overloads:(0,b.declare)(d.RegularOperator.UCASE).onString1Typed((()=>e=>(0,b.string)(e.toUpperCase()))).onLangString1((()=>e=>(0,b.langString)(e.typedValue.toUpperCase(),e.language))).collect()},W={arity:1,overloads:(0,b.declare)(d.RegularOperator.LCASE).onString1Typed((()=>e=>(0,b.string)(e.toLowerCase()))).onLangString1((()=>e=>(0,b.langString)(e.typedValue.toLowerCase(),e.language))).collect()},J={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRSTARTS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.startsWith(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.startsWith(t.typedValue))})).collect()},Y={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRENDS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.endsWith(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.endsWith(t.typedValue))})).collect()},Z={arity:2,overloads:(0,b.declare)(d.RegularOperator.CONTAINS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.includes(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.includes(t.typedValue))})).collect()},ee={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRBEFORE).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.string)(e.slice(0,Math.max(0,e.indexOf(t)))))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>{const[r,n]=[e.typedValue,t.typedValue],i=e.typedValue.slice(0,Math.max(0,r.indexOf(n)));return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);const[r,n]=[e.typedValue,t.typedValue],i=e.typedValue.slice(0,Math.max(0,r.indexOf(n)));return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).collect()},te={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRAFTER).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.string)(e.slice(e.indexOf(t)).slice(t.length)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>{const[r,n]=[e.typedValue,t.typedValue],i=r.slice(r.indexOf(n)).slice(n.length);return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);const[r,n]=[e.typedValue,t.typedValue],i=r.slice(r.indexOf(n)).slice(n.length);return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).collect()},re={arity:1,overloads:(0,b.declare)(d.RegularOperator.ENCODE_FOR_URI).onStringly1Typed((()=>e=>(0,b.string)(encodeURI(e)))).collect()},ne={arity:2,overloads:(0,b.declare)(d.RegularOperator.LANG_MATCHES).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(v.langMatches(e,t)))).collect()},ie={arity:[2,3],overloads:(0,b.declare)(d.RegularOperator.REGEX).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(v.matches(e,t)))).onTernaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r)=>(0,b.bool)(v.matches(e,t,r)))).collect()},ae={arity:[3,4],overloads:(0,b.declare)(d.RegularOperator.REPLACE).onTernaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r)=>(0,b.string)(v.replace(e,t,r)))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>([e,t,r])=>{const n=v.replace(e.typedValue,t.typedValue,r.typedValue);return(0,b.langString)(n,e.language)})).onQuaternaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r,n)=>(0,b.string)(v.replace(e,t,r,n)))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>([e,t,r,n])=>{const i=v.replace(e.typedValue,t.typedValue,r.typedValue,n.typedValue);return(0,b.langString)(i,e.language)})).collect()},oe={arity:1,overloads:(0,b.declare)(d.RegularOperator.ABS).numericConverter((()=>e=>Math.abs(e))).collect()},se={arity:1,overloads:(0,b.declare)(d.RegularOperator.ROUND).numericConverter((()=>e=>Math.round(e))).collect()},ce={arity:1,overloads:(0,b.declare)(d.RegularOperator.CEIL).numericConverter((()=>e=>Math.ceil(e))).collect()},ue={arity:1,overloads:(0,b.declare)(d.RegularOperator.FLOOR).numericConverter((()=>e=>Math.floor(e))).collect()},le={arity:0,overloads:(0,b.declare)(d.RegularOperator.RAND).set([],(()=>()=>(0,b.double)(Math.random()))).collect()},de={arity:0,overloads:(0,b.declare)(d.RegularOperator.NOW).set([],(e=>()=>new u.DateTimeLiteral((0,p.toDateTimeRepresentation)({date:e.now,timeZone:e.defaultTimeZone})))).collect()},he={arity:1,overloads:(0,b.declare)(d.RegularOperator.YEAR).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.year))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.year))).collect()},pe={arity:1,overloads:(0,b.declare)(d.RegularOperator.MONTH).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.month))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.month))).collect()},fe={arity:1,overloads:(0,b.declare)(d.RegularOperator.DAY).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.day))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.day))).collect()},ye={arity:1,overloads:(0,b.declare)(d.RegularOperator.HOURS).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.hours))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.hours))).collect()},ge={arity:1,overloads:(0,b.declare)(d.RegularOperator.MINUTES).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.minutes))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.minutes))).collect()},me={arity:1,overloads:(0,b.declare)(d.RegularOperator.SECONDS).onDateTime1((()=>e=>(0,b.decimal)(e.typedValue.seconds))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.seconds))).collect()},be={arity:1,overloads:(0,b.declare)(d.RegularOperator.TIMEZONE).onDateTime1((()=>e=>{const t={hours:e.typedValue.zoneHours,minutes:e.typedValue.zoneMinutes};if(void 0===t.hours&&void 0===t.minutes)throw new f.InvalidTimezoneCall(e.str());return new u.DayTimeDurationLiteral(t)})).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME]}).collect()},ve={arity:1,overloads:(0,b.declare)(d.RegularOperator.TZ).onDateTime1((()=>e=>(0,b.string)((0,p.extractRawTimeZone)(e.str())))).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME]}).collect()},_e={arity:1,overloads:(0,b.declare)(d.RegularOperator.MD5).onString1Typed((()=>e=>(0,b.string)((0,s.hash)(e)))).collect()},we={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA1).onString1Typed((()=>e=>(0,b.string)((0,i.sha1)().update(e).digest("hex")))).collect()},Te={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA256).onString1Typed((()=>e=>(0,b.string)((0,i.sha256)().update(e).digest("hex")))).collect()},Se={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA384).onString1Typed((()=>e=>(0,b.string)((0,i.sha384)().update(e).digest("hex")))).collect()},Oe={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA512).onString1Typed((()=>e=>(0,b.string)((0,i.sha512)().update(e).digest("hex")))).collect()},Ee={arity:3,overloads:(0,b.declare)(d.RegularOperator.TRIPLE).onTerm3((e=>(...t)=>new u.Quad(w.quad(t[0].toRDF(),t[1].toRDF(),t[2].toRDF()),e.superTypeProvider))).collect()},xe={arity:1,overloads:(0,b.declare)(d.RegularOperator.SUBJECT).onQuad1((()=>e=>e.subject)).collect()},Ae={arity:1,overloads:(0,b.declare)(d.RegularOperator.PREDICATE).onQuad1((()=>e=>e.predicate)).collect()},Re={arity:1,overloads:(0,b.declare)(d.RegularOperator.OBJECT).onQuad1((()=>e=>e.object)).collect()},Ie={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_TRIPLE).onTerm1((()=>e=>(0,b.bool)("quad"===e.termType))).collect()};t.definitions={"!":T,uplus:S,uminus:O,"*":E,"/":x,"+":A,"-":R,"=":I,"!=":P,"<":D,">":N,"<=":j,">=":C,isiri:M,isuri:M,isblank:L,isliteral:k,isnumeric:F,str:B,lang:U,datatype:q,iri:V,uri:V,strdt:Q,strlang:$,uuid:H,struuid:G,strlen:z,substr:K,ucase:X,lcase:W,strstarts:J,strends:Y,contains:Z,strbefore:ee,strafter:te,encode_for_uri:re,langmatches:ne,regex:ie,replace:ae,abs:oe,round:se,ceil:ce,floor:ue,rand:le,now:de,year:he,month:pe,day:fe,hours:ye,minutes:ge,seconds:me,timezone:be,tz:ve,md5:_e,sha1:we,sha256:Te,sha384:Se,sha512:Oe,triple:Ee,subject:xe,predicate:Ae,object:Re,istriple:Ie}},21325:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.specialDefinitions=void 0;const n=r(60130),i=r(57358),a=r(8399),o=r(75218),s=r(36389),c=r(64640),u={arity:1,applyAsync:async({args:e,mapping:t})=>l({args:e,mapping:t}),applySynchronously:({args:e,mapping:t})=>l({args:e,mapping:t})};function l({args:e,mapping:t}){const r=e[0];if(r.expressionType!==i.ExpressionType.Variable)throw new o.InvalidArgumentTypes(e,a.SpecialOperator.BOUND);const n=t.has((0,s.expressionToVar)(r));return(0,s.bool)(n)}const d={arity:3,async applyAsync({args:e,mapping:t,evaluate:r}){const n=await r(e[0],t);return r(n.coerceEBV()?e[1]:e[2],t)},applySynchronously({args:e,mapping:t,evaluate:r}){const n=r(e[0],t);return r(n.coerceEBV()?e[1]:e[2],t)}},h={arity:Number.POSITIVE_INFINITY,async applyAsync({args:e,mapping:t,evaluate:r}){const n=[];for(const i of e)try{return await r(i,t)}catch(e){n.push(e)}throw new o.CoalesceError(n)},applySynchronously({args:e,mapping:t,evaluate:r}){const n=[];for(const i of e)try{return r(i,t)}catch(e){n.push(e)}throw new o.CoalesceError(n)}},p={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if((await r(n,t)).coerceEBV())return(0,s.bool)(!0);const e=(await r(i,t)).coerceEBV();return(0,s.bool)(e)}catch(e){if(!(await r(i,t)).coerceEBV())throw e;return(0,s.bool)(!0)}},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(r(n,t).coerceEBV())return(0,s.bool)(!0);const e=r(i,t).coerceEBV();return(0,s.bool)(e)}catch(e){if(!r(i,t).coerceEBV())throw e;return(0,s.bool)(!0)}}},f={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(!(await r(n,t)).coerceEBV())return(0,s.bool)(!1);const e=(await r(i,t)).coerceEBV();return(0,s.bool)(e)}catch(e){if((await r(i,t)).coerceEBV())throw e;return(0,s.bool)(!1)}},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(!r(n,t).coerceEBV())return(0,s.bool)(!1);const e=r(i,t).coerceEBV();return(0,s.bool)(e)}catch(e){if(r(i,t).coerceEBV())throw e;return(0,s.bool)(!1)}}},y={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e.map((e=>r(e,t))),[a,o]=await Promise.all([n,i]);return(0,s.bool)(a.toRDF().equals(o.toRDF()))},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e.map((e=>r(e,t)));return(0,s.bool)(n.toRDF().equals(i.toRDF()))}},g={arity:Number.POSITIVE_INFINITY,checkArity:e=>e.length>0,async applyAsync(e){const{args:t,mapping:r,evaluate:n}=e,[i,...a]=t;return m(await n(i,r),{...e,args:a},[])},applySynchronously(e){const{args:t,mapping:r,evaluate:n}=e,[i,...a]=t;return b(n(i,r),{...e,args:a},[])}};async function m(e,t,r){const{args:n,mapping:i,evaluate:u}=t;if(0===n.length)return r.every((e=>!e))?(0,s.bool)(!1):Promise.reject(new o.InError(r));try{const o=n.shift(),l=await u(o,i);return c.regularFunctions[a.RegularOperator.EQUAL].apply([e,l],t).typedValue?(0,s.bool)(!0):m(e,t,[...r,!1])}catch(n){return m(e,t,[...r,n])}}function b(e,t,r){const{args:n,mapping:i,evaluate:u}=t;if(0===n.length){if(r.every((e=>!e)))return(0,s.bool)(!1);throw new o.InError(r)}try{const o=u(n.shift(),i);return c.regularFunctions[a.RegularOperator.EQUAL].apply([e,o],t).typedValue?(0,s.bool)(!0):b(e,t,[...r,!1])}catch(n){return b(e,t,[...r,n])}}const v={arity:Number.POSITIVE_INFINITY,checkArity:e=>e.length>0,async applyAsync(e){const t=c.specialFunctions[a.SpecialOperator.IN],r=await t.applyAsync(e);return(0,s.bool)(!r.typedValue)},applySynchronously(e){const t=c.specialFunctions[a.SpecialOperator.IN].applySynchronously(e);return(0,s.bool)(!t.typedValue)}},_=(0,s.declare)(a.SpecialOperator.CONCAT).onStringly1((()=>e=>e)).collect(),w={arity:Number.POSITIVE_INFINITY,async applyAsync(e){const{args:t,mapping:r,evaluate:n,functionArgumentsCache:i,superTypeProvider:c}=e,u=t.map((async e=>n(e,r))).map((async r=>{const n=_.search([await r],c,i);if(!n)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.CONCAT);return n(e)([await r])})),l=await Promise.all(u),d=l.map((e=>e.typedValue)).join(""),h=T(l)?l[0].language:void 0;return h?(0,s.langString)(d,h):(0,s.string)(d)},applySynchronously(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:i,functionArgumentsCache:c}=e,u=t.map((e=>n(e,r))).map((r=>{const n=_.search([r],i,c);if(!n)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.CONCAT);return n(e)([r])})),l=u.map((e=>e.typedValue)).join(""),d=T(u)?u[0].language:void 0;return d?(0,s.langString)(l,d):(0,s.string)(l)}};function T(e){return e.length>0&&e.every((t=>t.language===e[0].language))}const S=(0,s.declare)(a.SpecialOperator.BNODE).onString1((()=>e=>e)).collect(),O={arity:Number.POSITIVE_INFINITY,checkArity:e=>0===e.length||1===e.length,async applyAsync(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:s,functionArgumentsCache:c}=e,u=1===t.length?await n(t[0],r):void 0;let l;if(u){const r=S.search([u],s,c);if(!r)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.BNODE);l=r(e)([u]).str()}if(e.bnode){const t=await e.bnode(l);return new i.BlankNode(t)}return E(l)},applySynchronously(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:s,functionArgumentsCache:c}=e,u=1===t.length?n(t[0],r):void 0;let l;if(u){const r=S.search([u],s,c);if(!r)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.BNODE);l=r(e)([u]).str()}if(e.bnode){const t=e.bnode(l);return new i.BlankNode(t)}return E(l)}};function E(e){return new i.BlankNode(e||n.v4())}t.specialDefinitions={bound:u,if:d,coalesce:h,"&&":f,"||":p,sameterm:y,in:g,notin:v,concat:w,bnode:O}},80242:(e,t)=>{"use strict";function r(e){return"*"===e}function n(e,t){return new RegExp(`/${e}/`,"iu").test(`/${t}/`)}Object.defineProperty(t,"__esModule",{value:!0}),t.langMatches=t.replace=t.matches=void 0,t.matches=function(e,t,r){return new RegExp(t,r).test(e)},t.replace=function(e,t,r,n){let i=new RegExp(t,n);return i.global||(i=new RegExp(t,`${n||""}g`)),e.replace(i,r)},t.langMatches=function(e,t){const i=e.split("-"),a=t.split("-");if(!n(a[0],i[0])&&!r(i[0]))return!1;let o=1,s=1;for(;s[e,new a.RegularFunction(e,t)]))),t.specialFunctions=Object.fromEntries(Object.entries(c.specialDefinitions).map((([e,t])=>[e,new a.SpecialFunction(e,t)]))),t.namedFunctions=Object.fromEntries(Object.entries(o.namedDefinitions).map((([e,t])=>[e,new a.NamedFunction(e,t)])));var u=r(71243);Object.defineProperty(t,"OverloadTree",{enumerable:!0,get:function(){return u.OverloadTree}})},89206:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncAggregateEvaluator=t.orderTypes=t.isExpressionError=t.ExpressionError=t.AggregateEvaluator=t.SyncEvaluator=t.AsyncEvaluator=void 0;var n=r(72407);Object.defineProperty(t,"AsyncEvaluator",{enumerable:!0,get:function(){return n.AsyncEvaluator}});var i=r(64481);Object.defineProperty(t,"SyncEvaluator",{enumerable:!0,get:function(){return i.SyncEvaluator}});var a=r(45997);Object.defineProperty(t,"AggregateEvaluator",{enumerable:!0,get:function(){return a.AggregateEvaluator}});var o=r(75218);Object.defineProperty(t,"ExpressionError",{enumerable:!0,get:function(){return o.ExpressionError}}),Object.defineProperty(t,"isExpressionError",{enumerable:!0,get:function(){return o.isExpressionError}});var s=r(34964);Object.defineProperty(t,"orderTypes",{enumerable:!0,get:function(){return s.orderTypes}});var c=r(3694);Object.defineProperty(t,"AsyncAggregateEvaluator",{enumerable:!0,get:function(){return c.AsyncAggregateEvaluator}})},84765:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AlgebraTransformer=void 0;const n=r(6789),i=r(57358),a=r(64640),o=r(8399),s=r(75218),c=r(75218),u=r(34932);class l extends u.TermTransformer{constructor(e){super(e.superTypeProvider),this.algebraConfig=e,this.creatorConfig={type:e.type,creator:e.creator}}transformAlgebra(e){const t=n.Algebra.expressionTypes;switch(e.expressionType){case t.TERM:return this.transformTerm(e);case t.OPERATOR:return this.transformOperator(e);case t.NAMED:return this.transformNamed(e);case t.EXISTENCE:return l.transformExistence(e);case t.AGGREGATE:return l.transformAggregate(e);case t.WILDCARD:return l.transformWildcard(e)}}static transformWildcard(e){return new i.NamedNode(e.wildcard.value)}transformOperator(e){const t=e.operator.toLowerCase();if(o.SpecialOperators.has(t)){const r=t,n=e.args.map((e=>this.transformAlgebra(e))),o=a.specialFunctions[r];if(!o.checkArity(n))throw new s.InvalidArity(n,r);return new i.SpecialOperator(n,o.applyAsync,o.applySynchronously)}if(!o.Operators.has(t))throw new s.UnknownOperator(e.operator);const r=t,n=e.args.map((e=>this.transformAlgebra(e))),c=a.regularFunctions[r];if(!l.hasCorrectArity(n,c.arity))throw new s.InvalidArity(n,r);return new i.Operator(n,(e=>c.apply(e,this.algebraConfig)))}wrapSyncFunction(e,t){return r=>{try{const t=e(r.map((e=>e.toRDF())));return this.transformRDFTermUnsafe(t)}catch(e){throw new c.ExtensionFunctionError(t,e)}}}wrapAsyncFunction(e,t){return async r=>{try{const t=await e(r.map((e=>e.toRDF())));return this.transformRDFTermUnsafe(t)}catch(e){throw new c.ExtensionFunctionError(t,e)}}}transformNamed(e){const t=e.name.value,r=e.args.map((e=>this.transformAlgebra(e)));if(o.NamedOperators.has(t)){const t=e.name.value,n=a.namedFunctions[t];return new i.Named(e.name,r,(e=>n.apply(e,this.algebraConfig)))}if("sync"===this.creatorConfig.type){const t=this.creatorConfig.creator(e.name);if(t){const n=this.wrapSyncFunction(t,e.name.value);return new i.SyncExtension(e.name,r,n)}}else{const t=this.creatorConfig.creator(e.name);if(t){const n=this.wrapAsyncFunction(t,e.name.value);return new i.AsyncExtension(e.name,r,n)}}throw new s.UnknownNamedOperator(e.name.value)}static hasCorrectArity(e,t){return Array.isArray(t)?t.includes(e.length):e.length===t}static transformAggregate(e){const t=e.aggregator;return new i.Aggregate(t,e)}static transformExistence(e){return new i.Existence(e)}}t.AlgebraTransformer=l},34932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermTransformer=void 0;const n=r(6053),i=r(6789),a=r(57358),o=r(8399),s=r(75218),c=r(75218),u=r(31029),l=r(31029),d=r(96251);t.TermTransformer=class{constructor(e){this.superTypeProvider=e}transformRDFTermUnsafe(e){return this.transformTerm({term:e,type:i.Algebra.types.EXPRESSION,expressionType:i.Algebra.expressionTypes.TERM})}transformTerm(e){if(!e.term)throw new s.InvalidExpression(e);switch(e.term.termType){case"Variable":return new a.Variable(n.termToString(e.term));case"Literal":return this.transformLiteral(e.term);case"NamedNode":return new a.NamedNode(e.term.value);case"BlankNode":return new a.BlankNode(e.term.value);case"Quad":return new a.Quad(e.term,this.superTypeProvider);default:throw new s.InvalidTermType(e)}}transformLiteral(e){if(!e.datatype||[null,void 0,""].includes(e.datatype.value))return e.language?new a.LangStringLiteral(e.value,e.language):new a.StringLiteral(e.value);const t=e.datatype.value,r=(0,d.getSuperTypeDict)(t,this.superTypeProvider);try{if(o.TypeURL.XSD_STRING in r)return new a.StringLiteral(e.value,t);if(o.TypeURL.RDF_LANG_STRING in r)return new a.LangStringLiteral(e.value,e.language);if(o.TypeURL.XSD_YEAR_MONTH_DURATION in r)return new a.YearMonthDurationLiteral((0,u.parseYearMonthDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DAY_TIME_DURATION in r)return new a.DayTimeDurationLiteral((0,u.parseDayTimeDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DURATION in r)return new a.DurationLiteral((0,u.parseDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DATE_TIME in r){const r=new Date(e.value);return Number.isNaN(r.getTime())?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):new a.DateTimeLiteral((0,u.parseDateTime)(e.value),e.value,t)}if(o.TypeURL.XSD_DATE in r)return new a.DateLiteral((0,u.parseDate)(e.value),e.value,t);if(o.TypeURL.XSD_TIME in r)return new a.TimeLiteral((0,u.parseTime)(e.value),e.value,t);if(o.TypeURL.XSD_BOOLEAN in r)return"true"!==e.value&&"false"!==e.value&&"1"!==e.value&&"0"!==e.value?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):new a.BooleanLiteral("true"===e.value||"1"===e.value,e.value);if(o.TypeURL.XSD_DECIMAL in r){const n=l.parseXSDDecimal(e.value);return void 0===n?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):o.TypeURL.XSD_INTEGER in r?new a.IntegerLiteral(n,t,e.value):new a.DecimalLiteral(n,t,e.value)}const n=o.TypeURL.XSD_FLOAT in r,i=o.TypeURL.XSD_DOUBLE in r;if(n||i){const r=l.parseXSDFloat(e.value);return void 0===r?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):n?new a.FloatLiteral(r,t,e.value):new a.DoubleLiteral(r,t,e.value)}return new a.Literal(e.value,t,e.value)}catch(r){if(r instanceof Error&&(0,c.isExpressionError)(r))return new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value);throw r}}}},8399:(e,t)=>{"use strict";var r,n,i,a,o;Object.defineProperty(t,"__esModule",{value:!0}),t.NamedOperators=t.SetFunctions=t.SetFunction=t.Operators=t.SpecialOperators=t.RegularOperators=t.SpecialOperator=t.RegularOperator=t.TypeURL=t.TypeAlias=void 0,function(e){e.SPARQL_NUMERIC="SPARQL_NUMERIC",e.SPARQL_STRINGLY="SPARQL_STRINGLY"}(r||(t.TypeAlias=r={})),function(e){e.XSD_ANY_URI="http://www.w3.org/2001/XMLSchema#anyURI",e.XSD_STRING="http://www.w3.org/2001/XMLSchema#string",e.RDF_LANG_STRING="http://www.w3.org/1999/02/22-rdf-syntax-ns#langString",e.XSD_BOOLEAN="http://www.w3.org/2001/XMLSchema#boolean",e.XSD_DATE_TIME="http://www.w3.org/2001/XMLSchema#dateTime",e.XSD_DATE_TIME_STAMP="http://www.w3.org/2001/XMLSchema#dateTimeStamp",e.XSD_DATE="http://www.w3.org/2001/XMLSchema#date",e.XSD_G_MONTH="http://www.w3.org/2001/XMLSchema#gMonth",e.XSD_G_MONTHDAY="http://www.w3.org/2001/XMLSchema#gMonthDay",e.XSD_G_YEAR="http://www.w3.org/2001/XMLSchema#gYear",e.XSD_G_YEAR_MONTH="http://www.w3.org/2001/XMLSchema#gYearMonth",e.XSD_TIME="http://www.w3.org/2001/XMLSchema#time",e.XSD_G_DAY="http://www.w3.org/2001/XMLSchema#gDay",e.XSD_DECIMAL="http://www.w3.org/2001/XMLSchema#decimal",e.XSD_FLOAT="http://www.w3.org/2001/XMLSchema#float",e.XSD_DOUBLE="http://www.w3.org/2001/XMLSchema#double",e.XSD_INTEGER="http://www.w3.org/2001/XMLSchema#integer",e.XSD_NON_POSITIVE_INTEGER="http://www.w3.org/2001/XMLSchema#nonPositiveInteger",e.XSD_NEGATIVE_INTEGER="http://www.w3.org/2001/XMLSchema#negativeInteger",e.XSD_LONG="http://www.w3.org/2001/XMLSchema#long",e.XSD_INT="http://www.w3.org/2001/XMLSchema#int",e.XSD_SHORT="http://www.w3.org/2001/XMLSchema#short",e.XSD_BYTE="http://www.w3.org/2001/XMLSchema#byte",e.XSD_NON_NEGATIVE_INTEGER="http://www.w3.org/2001/XMLSchema#nonNegativeInteger",e.XSD_POSITIVE_INTEGER="http://www.w3.org/2001/XMLSchema#positiveInteger",e.XSD_UNSIGNED_LONG="http://www.w3.org/2001/XMLSchema#unsignedLong",e.XSD_UNSIGNED_INT="http://www.w3.org/2001/XMLSchema#unsignedInt",e.XSD_UNSIGNED_SHORT="http://www.w3.org/2001/XMLSchema#unsignedShort",e.XSD_UNSIGNED_BYTE="http://www.w3.org/2001/XMLSchema#unsignedByte",e.XSD_NORMALIZED_STRING="http://www.w3.org/2001/XMLSchema#normalizedString",e.XSD_TOKEN="http://www.w3.org/2001/XMLSchema#token",e.XSD_LANGUAGE="http://www.w3.org/2001/XMLSchema#language",e.XSD_NM_TOKEN="http://www.w3.org/2001/XMLSchema#NMTOKEN",e.XSD_NAME="http://www.w3.org/2001/XMLSchema#name",e.XSD_NC_NAME="http://www.w3.org/2001/XMLSchema#NCName",e.XSD_ENTITY="http://www.w3.org/2001/XMLSchema#ENTITY",e.XSD_ID="http://www.w3.org/2001/XMLSchema#ID",e.XSD_ID_REF="http://www.w3.org/2001/XMLSchema#IDREF",e.XSD_DURATION="http://www.w3.org/2001/XMLSchema#duration",e.XSD_YEAR_MONTH_DURATION="http://www.w3.org/2001/XMLSchema#yearMonthDuration",e.XSD_DAY_TIME_DURATION="http://www.w3.org/2001/XMLSchema#dayTimeDuration"}(n||(t.TypeURL=n={})),function(e){e.NOT="!",e.UMINUS="uminus",e.UPLUS="uplus",e.EQUAL="=",e.NOT_EQUAL="!=",e.LT="<",e.GT=">",e.LTE="<=",e.GTE=">=",e.MULTIPLICATION="*",e.DIVISION="/",e.ADDITION="+",e.SUBTRACTION="-",e.IS_IRI="isiri",e.IS_URI="isuri",e.IS_BLANK="isblank",e.IS_LITERAL="isliteral",e.IS_NUMERIC="isnumeric",e.STR="str",e.LANG="lang",e.DATATYPE="datatype",e.IRI="iri",e.URI="uri",e.STRDT="strdt",e.STRLANG="strlang",e.UUID="uuid",e.STRUUID="struuid",e.STRLEN="strlen",e.SUBSTR="substr",e.UCASE="ucase",e.LCASE="lcase",e.STRSTARTS="strstarts",e.STRENDS="strends",e.CONTAINS="contains",e.STRBEFORE="strbefore",e.STRAFTER="strafter",e.ENCODE_FOR_URI="encode_for_uri",e.LANG_MATCHES="langmatches",e.REGEX="regex",e.REPLACE="replace",e.ABS="abs",e.ROUND="round",e.CEIL="ceil",e.FLOOR="floor",e.RAND="rand",e.NOW="now",e.YEAR="year",e.MONTH="month",e.DAY="day",e.HOURS="hours",e.MINUTES="minutes",e.SECONDS="seconds",e.TIMEZONE="timezone",e.TZ="tz",e.MD5="md5",e.SHA1="sha1",e.SHA256="sha256",e.SHA384="sha384",e.SHA512="sha512",e.TRIPLE="triple",e.SUBJECT="subject",e.PREDICATE="predicate",e.OBJECT="object",e.IS_TRIPLE="istriple"}(i||(t.RegularOperator=i={})),function(e){e.BOUND="bound",e.IF="if",e.COALESCE="coalesce",e.LOGICAL_OR="||",e.LOGICAL_AND="&&",e.SAME_TERM="sameterm",e.IN="in",e.NOT_IN="notin",e.CONCAT="concat",e.BNODE="bnode"}(a||(t.SpecialOperator=a={})),t.RegularOperators=new Set(Object.values(i)),t.SpecialOperators=new Set(Object.values(a)),t.Operators=new Set([...t.RegularOperators,...t.SpecialOperators]),function(e){e.COUNT="count",e.SUM="sum",e.MIN="min",e.MAX="max",e.AVG="avg",e.GROUP_CONCAT="group_concat",e.SAMPLE="sample"}(o||(t.SetFunction=o={})),t.SetFunctions=new Set(Object.values(o)),t.NamedOperators=new Set([n.XSD_STRING,n.XSD_FLOAT,n.XSD_DOUBLE,n.XSD_DECIMAL,n.XSD_INTEGER,n.XSD_DATE_TIME,n.XSD_DATE,n.XSD_BOOLEAN,n.XSD_TIME,n.XSD_DURATION,n.XSD_DAY_TIME_DURATION,n.XSD_YEAR_MONTH_DURATION])},90799:(e,t)=>{"use strict";function r(e){return{day:e.day||0,hours:e.hours||0,minutes:e.minutes||0,seconds:e.seconds||0}}function n(e){return{year:e.year||0,month:e.month||0}}function i(e){return{...r(e),...n(e)}}function a(e){return{...e,day:e.day||1,hours:e.hours||0,month:e.month||1,year:e.year||0,seconds:e.seconds||0,minutes:e.minutes||0}}function o(e){const t=new Date(e.year,e.month-1,e.day,e.hours,e.minutes,Math.trunc(e.seconds),e.seconds%1*1e3);if(0<=e.year&&e.year<100){const e=1900;t.setFullYear(t.getFullYear()-e)}return t}Object.defineProperty(t,"__esModule",{value:!0}),t.extractTimeZone=t.extractRawTimeZone=t.dayTimeDurationsToSeconds=t.yearMonthDurationsToMonths=t.trimToDayTimeDuration=t.trimToYearMonthDuration=t.toUTCDate=t.toJSDate=t.negateDuration=t.toDateTimeRepresentation=t.defaultedDateTimeRepresentation=t.simplifyDurationRepresentation=t.defaultedDurationRepresentation=t.defaultedYearMonthDurationRepresentation=t.defaultedDayTimeDurationRepresentation=void 0,t.defaultedDayTimeDurationRepresentation=r,t.defaultedYearMonthDurationRepresentation=n,t.defaultedDurationRepresentation=i,t.simplifyDurationRepresentation=function(e){const t=i(e),r={},n=t.year+Math.trunc(t.month/12);n&&(r.year=n,t.month%=12),t.month&&(r.month=t.month);const a=t.day+Math.trunc(t.hours/24)+Math.trunc(t.minutes/1440)+Math.trunc(t.seconds/86400);a&&(r.day=a,t.hours%=24,t.minutes%=1440,t.seconds%=86400);const o=t.hours+Math.trunc(t.minutes/60)+Math.trunc(t.seconds/3600);o&&(r.hours=o,t.minutes%=60,t.seconds%=3600);const s=t.minutes+Math.trunc(t.seconds/60);return s&&(r.minutes=s,t.seconds%=60),t.seconds&&(r.seconds=t.seconds),r},t.defaultedDateTimeRepresentation=a,t.toDateTimeRepresentation=function({date:e,timeZone:t}){return{year:e.getFullYear(),month:e.getMonth()+1,day:e.getDate(),hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds(),zoneHours:t.zoneHours,zoneMinutes:t.zoneMinutes}},t.negateDuration=function(e){return{year:void 0!==e.year?-1*e.year:void 0,month:void 0!==e.month?-1*e.month:void 0,day:void 0!==e.day?-1*e.day:void 0,hours:void 0!==e.hours?-1*e.hours:void 0,minutes:void 0!==e.minutes?-1*e.minutes:void 0,seconds:void 0!==e.seconds?-1*e.seconds:void 0}},t.toJSDate=o,t.toUTCDate=function(e,t){const r=o(a(e)),n=r.getTimezoneOffset(),i=void 0===e.zoneHours?t.zoneHours:e.zoneHours,s=void 0===e.zoneMinutes?t.zoneMinutes:e.zoneMinutes;return new Date(r.getTime()-60*(n+60*i+s)*1e3)},t.trimToYearMonthDuration=function(e){return{year:e.year,month:e.month}},t.trimToDayTimeDuration=function(e){return{day:e.day,hours:e.hours,minutes:e.minutes,seconds:e.seconds}},t.yearMonthDurationsToMonths=function(e){return 12*e.year+e.month},t.dayTimeDurationsToSeconds=function(e){return 60*(60*(24*e.day+e.hours)+e.minutes)+e.seconds},t.extractRawTimeZone=function(e){return/(Z|([+-]\d\d:\d\d))?$/u.exec(e)[0]},t.extractTimeZone=function(e){return{zoneHours:e.getTimezoneOffset()/60,zoneMinutes:e.getTimezoneOffset()%60}}},75218:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NoExistenceHook=t.NoAggregator=t.ExtensionFunctionError=t.UnknownNamedOperator=t.UnknownOperator=t.InvalidTermType=t.InvalidExpressionType=t.InvalidExpression=t.InvalidArity=t.UnexpectedError=t.ParseError=t.EmptyAggregateError=t.IncompatibleLanguageOperation=t.InvalidTimezoneCall=t.CastError=t.InvalidCompareArgumentTypes=t.InvalidArgumentTypes=t.InError=t.CoalesceError=t.RDFEqualTypeError=t.EBVCoercionError=t.UnboundVariableError=t.InvalidLexicalForm=t.isExpressionError=t.ExpressionError=void 0;class r extends Error{}t.ExpressionError=r,t.isExpressionError=function(e){return e instanceof r},t.InvalidLexicalForm=class extends r{constructor(e){super(`Invalid lexical form '${p(e)}'`),this.arg=e}},t.UnboundVariableError=class extends r{constructor(e,t){super(`Unbound variable '${p(e)}'`),this.variable=e,this.bindings=t}},t.EBVCoercionError=class extends r{constructor(e){super(`Cannot coerce term to EBV '${p(e)}'`),this.arg=e}},t.RDFEqualTypeError=class extends r{constructor(e){super("Equality test for literals with unsupported datatypes"),this.args=e}},t.CoalesceError=class extends r{constructor(e){super("All COALESCE arguments threw errors"),this.errors=e}},t.InError=class extends r{constructor(e){super(`Some argument to IN errorred and none where equal. ${e.map((e=>`(${e.toString()}) `)).join("and ")}`),this.errors=e}},t.InvalidArgumentTypes=class extends r{constructor(e,t){super(`Argument types not valid for operator: '${p(t)}' with '${p(e)}`),this.args=e,this.op=t}},t.InvalidCompareArgumentTypes=class extends r{constructor(e,t){super(`Compared argument types are supported: '${e.termType}' and '${t.termType}'`),this.arg0=e,this.arg1=t}},t.CastError=class extends r{constructor(e,t){super(`Invalid cast: '${p(e)}' to '${p(t)}'`),this.arg=e}},t.InvalidTimezoneCall=class extends r{constructor(e){super(`TIMEZONE call on ${e} which has no timezone`),this.dateString=e}},t.IncompatibleLanguageOperation=class extends r{constructor(e,t){super(`Operation on incompatible language literals '${p(e)}' and '${p(t)}'`),this.arg1=e,this.arg2=t}},t.EmptyAggregateError=class extends r{constructor(){super("Empty aggregate expression")}},t.ParseError=class extends r{constructor(e,t){super(`Failed to parse ${e} as ${t}.`)}};class n extends Error{constructor(e,t){super(`Programmer Error '${e}'`),this.payload=t}}t.UnexpectedError=n;class i extends Error{constructor(e,t){super(`The number of args does not match the arity of the operator '${p(t)}'.`),this.args=e,this.op=t}}t.InvalidArity=i;class a extends Error{constructor(e){super(`Invalid SPARQL Expression '${p(e)}'`)}}t.InvalidExpression=a;class o extends Error{constructor(e){super(`Invalid expression type for SPARQL Expression '${p(e)}'`),this.expr=e}}t.InvalidExpressionType=o;class s extends Error{constructor(e){super(`Invalid term type for term '${p(e)}'`),this.term=e}}t.InvalidTermType=s;class c extends Error{constructor(e){super(`Unknown operator: '${p(e)}`)}}t.UnknownOperator=c;class u extends Error{constructor(e){super(`Unknown named operator: '${p(e)}'`)}}t.UnknownNamedOperator=u;class l extends Error{constructor(e,t){t instanceof Error?super(`Error thrown in ${e}: ${t.message}${t.stack?`\n${t.stack}`:""}`):super(`Error thrown in ${e}`)}}t.ExtensionFunctionError=l;class d extends Error{constructor(e){super(`Aggregate expression ${p(e)} found, but no aggregate hook provided.`)}}t.NoAggregator=d;class h extends Error{constructor(){super("EXISTS found, but no existence hook provided.")}}function p(e){return JSON.stringify(e)}t.NoExistenceHook=h},34964:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.orderTypes=void 0;const n=r(70463),i=r(64640),a=r(34932),o=r(8399),s=r(75218);function c(e,t){return e===t?0:e"term"),cache:s||new n.LRUCache({max:1e3})},defaultTimeZone:{zoneHours:0,zoneMinutes:0}},h=new a.TermTransformer(d.superTypeProvider),p=h.transformLiteral(e),f=h.transformLiteral(t);try{return l.apply([p,f],d).typedValue?0:u.apply([p,f],d).typedValue?1:-1}catch{const e=c(p.dataType,f.dataType);return 0!==e?e:c(p.str(),f.str())}}(t,r,d,h);if(l)throw new s.InvalidCompareArgumentTypes(t,r);return c(t.value,r.value)};const u={Variable:0,BlankNode:1,NamedNode:2,Literal:3,Quad:4,DefaultGraph:5}},31029:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseDayTimeDuration=t.parseYearMonthDuration=t.parseDuration=t.parseTime=t.parseDate=t.parseDateTime=t.parseXSDInteger=t.parseXSDDecimal=t.parseXSDFloat=void 0;const n=r(90799),i=r(75218),a=r(84595);function o(e){if(""===e)return{zoneHours:void 0,zoneMinutes:void 0};if("Z"===e)return{zoneHours:0,zoneMinutes:0};const t=e.replace(/^([+|-])(\d\d):(\d\d)$/gu,"$11!$2!$3").split("!").map((e=>Number(e)));return{zoneHours:t[0]*t[1],zoneMinutes:t[0]*t[2]}}function s(e){const t=e.replace(/^(-)?([123456789]*\d{4})-(\d\d)-(\d\d)(Z|([+-]\d\d:\d\d))?$/gu,"$11!$2!$3!$4!$5");if(t===e)throw new i.ParseError(e,"date");const r=t.split("!"),n=r.slice(0,-1).map((e=>Number(e))),s={year:n[0]*n[1],month:n[2],day:n[3],...o(r[4])};if(!(1<=s.month&&s.month<=12&&1<=s.day&&s.day<=(0,a.maximumDayInMonthFor)(s.year,s.month)))throw new i.ParseError(e,"date");return s}function c(e){const t=e.replace(/^(\d\d):(\d\d):(\d\d(\.\d+)?)(Z|([+-]\d\d:\d\d))?$/gu,"$1!$2!$3!$5");if(t===e)throw new i.ParseError(e,"time");const r=t.split("!"),n=r.slice(0,-1).map((e=>Number(e))),a={hours:n[0],minutes:n[1],seconds:n[2],...o(r[3])};if(a.seconds>=60||a.minutes>=60||a.hours>24||24===a.hours&&(0!==a.minutes||0!==a.seconds))throw new i.ParseError(e,"time");return a}function u(e){const[t,r]=e.split("T"),a=t.replace(/^(-)?P(\d+Y)?(\d+M)?(\d+D)?$/gu,"$11S!$2!$3!$4");if(a===t)throw new i.ParseError(e,"duration");const o=a.split("!");if(void 0!==r){const t=r.replace(/^(\d+H)?(\d+M)?(\d+(\.\d+)?S)?$/gu,"$1!$2!$3");if(""===r||r===t)throw new i.ParseError(e,"duration");o.push(...t.split("!"))}const s=o.map((e=>e.slice(0,-1)));if(!s.slice(1).some((e=>e)))throw new i.ParseError(e,"duration");const c=Number(s[0]);return(0,n.simplifyDurationRepresentation)({year:s[1]?c*Number(s[1]):void 0,month:s[2]?c*Number(s[2]):void 0,day:s[3]?c*Number(s[3]):void 0,hours:s[4]?c*Number(s[4]):void 0,minutes:s[5]?c*Number(s[5]):void 0,seconds:s[6]?c*Number(s[6]):void 0})}t.parseXSDFloat=function(e){const t=Number(e);return Number.isNaN(t)?"NaN"===e?Number.NaN:"INF"===e||"+INF"===e?Number.POSITIVE_INFINITY:"-INF"===e?Number.NEGATIVE_INFINITY:void 0:t},t.parseXSDDecimal=function(e){const t=Number(e);return Number.isNaN(t)?void 0:t},t.parseXSDInteger=function(e){const t=Number.parseInt(e,10);return Number.isNaN(t)?void 0:t},t.parseDateTime=function(e){const[t,r]=e.split("T");return{...s(t),...c(r)}},t.parseDate=s,t.parseTime=function(e){const t=c(e);return t.hours%=24,t},t.parseDuration=u,t.parseYearMonthDuration=function(e){const t=u(e);if(["hours","minutes","seconds","day"].some((e=>Boolean(t[e]))))throw new i.ParseError(e,"yearMonthDuration");return t},t.parseDayTimeDuration=function(e){const t=u(e);if(["year","month"].some((e=>Boolean(t[e]))))throw new i.ParseError(e,"dayTimeDuration");return t}},6521:(e,t)=>{"use strict";function r(e,t=2){return e.toLocaleString(void 0,{minimumIntegerDigits:t,useGrouping:!1})}function n(e){return void 0===e.zoneHours||void 0===e.zoneMinutes?"":0===e.zoneHours&&0===e.zoneMinutes?"Z":`${e.zoneHours>=0?`+${r(e.zoneHours)}`:r(e.zoneHours)}:${r(Math.abs(e.zoneMinutes))}`}function i(e){return`${r(e.year,4)}-${r(e.month)}-${r(e.day)}${n(e)}`}function a(e){return`${r(e.hours)}:${r(e.minutes)}:${r(e.seconds)}${n(e)}`}Object.defineProperty(t,"__esModule",{value:!0}),t.serializeDuration=t.serializeTime=t.serializeDate=t.serializeDateTime=void 0,t.serializeDateTime=function(e){return`${i({year:e.year,month:e.month,day:e.day})}T${a(e)}`},t.serializeDate=i,t.serializeTime=a,t.serializeDuration=function(e,t="PT0S"){if(!Object.values(e).some((e=>0!==(e||0))))return t;const r=`${Object.values(e).some((e=>(e||0)<0))?"-":""}P${e.year?`${Math.abs(e.year)}Y`:""}${e.month?`${Math.abs(e.month)}M`:""}${e.day?`${Math.abs(e.day)}D`:""}`;return e.hours||e.minutes||e.seconds?`${r}T${e.hours?`${Math.abs(e.hours)}H`:""}${e.minutes?`${Math.abs(e.minutes)}M`:""}${e.seconds?`${Math.abs(e.seconds)}S`:""}`:r}},84595:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.elapsedDuration=t.addDurationToDateTime=t.maximumDayInMonthFor=void 0;const n=r(90799);function i(e,t,r=0){const n=e-r,i=t-r,a=Math.floor(n/i);return{intDiv:a,remainder:e-a*i}}function a(e,t){const{intDiv:r,remainder:n}=i(t,13,1),a=e+r;return[1,3,5,7,8,10,12].includes(n)?31:[4,6,9,11].includes(n)?30:2===n&&(0===i(a,400).remainder||0!==i(a,100).remainder&&0===i(a,4).remainder)?29:28}t.maximumDayInMonthFor=a,t.addDurationToDateTime=function(e,t){const r={...e};let n=i(e.month+t.month,13,1);for(r.month=n.remainder,r.year=e.year+t.year+n.intDiv,n=i(e.seconds+t.seconds,60),r.seconds=n.remainder,n=i(e.minutes+t.minutes+n.intDiv,60),r.minutes=n.remainder,n=i(e.hours+t.hours+n.intDiv,24),r.hours=n.remainder,r.day=e.day+t.day+n.intDiv;;){let e;if(r.day<1)r.day+=a(r.year,r.month-1),e=-1;else{if(!(r.day>a(r.year,r.month)))break;r.day-=a(r.year,r.month),e=1}n=i(r.month+e,13,1),r.month=n.remainder,r.year+=n.intDiv}return r},t.elapsedDuration=function(e,t,r){const i=(0,n.toUTCDate)(e,r),a=(0,n.toUTCDate)(t,r),o=i.getTime()-a.getTime();return{day:Math.floor(o/864e5),hours:Math.floor(o%864e5/36e5),minutes:Math.floor(o%36e5/6e4),seconds:o%6e4}}},96251:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.typePromotion=t.isSubTypeOf=t.getSuperTypeDict=t.isInternalSubType=t.asGeneralType=t.asOverrideType=t.asKnownLiteralType=t.asTypeAlias=t.typeAliasCheck=t.extensionTableInit=t.getSuperTypes=t.superTypeDictTable=t.extensionTableInput=void 0;const n=r(57358),i=r(36389),a=r(8399);function o(e,r){const n=r.cache.get(e);if(n)return n;const i=r.discoverer(e);if("term"===i){const t=Object.create(null);return t.__depth=0,t[e]=0,r.cache.set(e,t),t}let a;const s=u(i);return a=s?{...t.superTypeDictTable[s]}:{...o(i,r)},a.__depth++,a[e]=a.__depth,r.cache.set(e,a),a}function s(){for(const[e,r]of Object.entries(t.extensionTableInput)){const n=e;t.superTypeDictTable[n]||c(n,r,t.superTypeDictTable)}}function c(e,r,n){if("term"===r||void 0===r){const t=Object.create(null);return t.__depth=0,t[e]=0,void(n[e]=t)}n[r]||c(r,t.extensionTableInput[r],n),n[e]={...n[r],[e]:n[r].__depth+1,__depth:n[r].__depth+1}}function u(e){if(e in t.superTypeDictTable)return e}function l(e,r){const n=u(e);return n?t.superTypeDictTable[n]:o(e,r)}t.extensionTableInput={[a.TypeURL.XSD_DATE_TIME_STAMP]:a.TypeURL.XSD_DATE_TIME,[a.TypeURL.XSD_DAY_TIME_DURATION]:a.TypeURL.XSD_DURATION,[a.TypeURL.XSD_YEAR_MONTH_DURATION]:a.TypeURL.XSD_DURATION,[a.TypeURL.RDF_LANG_STRING]:a.TypeAlias.SPARQL_STRINGLY,[a.TypeURL.XSD_STRING]:a.TypeAlias.SPARQL_STRINGLY,[a.TypeURL.XSD_NORMALIZED_STRING]:a.TypeURL.XSD_STRING,[a.TypeURL.XSD_TOKEN]:a.TypeURL.XSD_NORMALIZED_STRING,[a.TypeURL.XSD_LANGUAGE]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NM_TOKEN]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NAME]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NC_NAME]:a.TypeURL.XSD_NAME,[a.TypeURL.XSD_ENTITY]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_ID]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_ID_REF]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_DOUBLE]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_FLOAT]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_DECIMAL]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_INTEGER]:a.TypeURL.XSD_DECIMAL,[a.TypeURL.XSD_NON_POSITIVE_INTEGER]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_NEGATIVE_INTEGER]:a.TypeURL.XSD_NON_POSITIVE_INTEGER,[a.TypeURL.XSD_LONG]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_INT]:a.TypeURL.XSD_LONG,[a.TypeURL.XSD_SHORT]:a.TypeURL.XSD_INT,[a.TypeURL.XSD_BYTE]:a.TypeURL.XSD_SHORT,[a.TypeURL.XSD_NON_NEGATIVE_INTEGER]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_POSITIVE_INTEGER]:a.TypeURL.XSD_NON_NEGATIVE_INTEGER,[a.TypeURL.XSD_UNSIGNED_LONG]:a.TypeURL.XSD_NON_NEGATIVE_INTEGER,[a.TypeURL.XSD_UNSIGNED_INT]:a.TypeURL.XSD_UNSIGNED_LONG,[a.TypeURL.XSD_UNSIGNED_SHORT]:a.TypeURL.XSD_UNSIGNED_INT,[a.TypeURL.XSD_UNSIGNED_BYTE]:a.TypeURL.XSD_UNSIGNED_SHORT,[a.TypeURL.XSD_DATE_TIME]:"term",[a.TypeURL.XSD_BOOLEAN]:"term",[a.TypeURL.XSD_DATE]:"term",[a.TypeURL.XSD_G_MONTH]:"term",[a.TypeURL.XSD_G_MONTHDAY]:"term",[a.TypeURL.XSD_G_YEAR]:"term",[a.TypeURL.XSD_G_YEAR_MONTH]:"term",[a.TypeURL.XSD_TIME]:"term",[a.TypeURL.XSD_G_DAY]:"term",[a.TypeURL.XSD_DURATION]:"term",[a.TypeAlias.SPARQL_NUMERIC]:"term",[a.TypeAlias.SPARQL_STRINGLY]:"term",[a.TypeURL.XSD_ANY_URI]:"term"},t.superTypeDictTable=Object.create(null),t.getSuperTypes=o,t.extensionTableInit=s,s(),t.typeAliasCheck=Object.create(null),function(){for(const e of Object.values(a.TypeAlias))t.typeAliasCheck[e]=!0}(),t.asTypeAlias=function(e){if(e in t.typeAliasCheck)return e},t.asKnownLiteralType=u,t.asOverrideType=function(e){if(u(e)||"term"===e)return e},t.asGeneralType=function(e){if("term"===e||(0,n.asTermType)(e))return e},t.isInternalSubType=function(e,r){return"term"!==e&&t.superTypeDictTable[e]&&void 0!==t.superTypeDictTable[e][r]},t.getSuperTypeDict=l,t.isSubTypeOf=function(e,t,r){return"term"!==e&&void 0!==l(e,r)[t]},t.typePromotion={[a.TypeURL.XSD_STRING]:[{typeToPromote:a.TypeURL.XSD_ANY_URI,conversionFunction:e=>(0,i.string)(e.str())}],[a.TypeURL.XSD_DOUBLE]:[{typeToPromote:a.TypeURL.XSD_FLOAT,conversionFunction:e=>(0,i.double)(e.typedValue)},{typeToPromote:a.TypeURL.XSD_DECIMAL,conversionFunction:e=>(0,i.double)(e.typedValue)}],[a.TypeURL.XSD_FLOAT]:[{typeToPromote:a.TypeURL.XSD_DECIMAL,conversionFunction:e=>(0,i.float)(e.typedValue)}]}},37045:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LoggerVoid=void 0;const n=r(24331);class i extends n.Logger{debug(){}error(){}fatal(){}info(){}trace(){}warn(){}}t.LoggerVoid=i},60738:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(37045),t)},85170:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorAll=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}async mediate(e){const t=[];let r;try{r=this.publish(e)}catch{r=[]}for(const e of r)try{await e.reply,t.push(e.actor)}catch{}return(await Promise.all(t.map((t=>t.runObservable(e)))))[0]}async mediateWith(){throw new Error("Unsupported operation: MediatorAll#mediateWith")}}t.MediatorAll=i},95069:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85170),t)},67979:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorCombinePipeline=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}async mediate(e){let t;try{t=this.publish(e)}catch{return e}if(this.filterErrors){const e=[];for(const r of t)try{await r.reply,e.push(r)}catch{}t=e}if(t=await Promise.all(t.map((async({actor:e,reply:t})=>({actor:e,reply:await t})))),this.order){const e=e=>{const t=this.field?e[this.field]:e;if("number"!=typeof t)throw new Error("Cannot order elements that are not numbers.");return t};t=t.sort(((t,r)=>("increasing"===this.order?1:-1)*(e(t.reply)-e(r.reply))))}let r=e;for(const{actor:e}of t)r={...r,...await e.runObservable(r)};return r}mediateWith(){throw new Error("Method not supported.")}}t.MediatorCombinePipeline=i},84190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(67979),t)},12396:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorCombineUnion=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e),this.combiner=this.createCombiner()}async mediate(e){let t;try{t=this.publish(e)}catch{t=[]}await Promise.all(t.map((({reply:e})=>e)));const r=await Promise.all(t.map((t=>t.actor.runObservable(e))));return this.combiner(r)}mediateWith(){throw new Error("Method not supported.")}createCombiner(){return e=>{const t={};return t[this.field]={},[{}].concat(e.map((e=>e[this.field]))).forEach(((e,r,n)=>{t[this.field]={...e,...t[this.field]}})),t}}}t.MediatorCombineUnion=i},21413:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(12396),t)},37966:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorJoinCoefficientsFixed=void 0;const n=r(78470),i=r(21049);class a extends i.Mediator{constructor(e){super(e)}async mediateWith(e,t){const r=[],a=t.map((({reply:e})=>e)).map((e=>e.catch((e=>{r.push(e)})))),o=await Promise.all(a);let s=o.map(((e,t)=>{if(e)return e.iterations*this.cpuWeight+e.persistedItems*this.memoryWeight+e.blockingItems*this.timeWeight+e.requestTime*this.ioWeight}));const c=Math.max(...s.filter((e=>void 0!==e))),u=e.context.get(n.KeysQueryOperation.limitIndicator);u&&(s=s.map(((e,t)=>void 0!==e&&o[t].persistedItems>0&&o[t].iterations>u?e+c:e)));let l=-1,d=Number.POSITIVE_INFINITY;for(const[e,t]of s.entries())void 0!==t&&(-1===l||te.message)).join("\n")}`);const h=t[l].actor;return h.includeInLogs&&i.Actor.getContextLogger(e.context)?.debug(`Determined physical join operator '${h.logicalType}-${h.physicalName}'`,{entries:e.entries.length,variables:await Promise.all(e.entries.map((async e=>(await e.output.metadata()).variables.map((e=>e.value))))),costs:Object.fromEntries(s.map(((e,r)=>[`${t[r].actor.logicalType}-${t[r].actor.physicalName}`,e]))),coefficients:Object.fromEntries(o.map(((e,r)=>[`${t[r].actor.logicalType}-${t[r].actor.physicalName}`,e])))}),h}}t.MediatorJoinCoefficientsFixed=a},78557:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(37966),t)},29064:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorNumber=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e),this.indexPicker=this.createIndexPicker()}createIndexPicker(){switch(this.type){case"min":return e=>e.reduce(((e,t,r)=>{const n=this.getOrDefault(t[this.field],Number.POSITIVE_INFINITY);return null!==n&&(Number.isNaN(e[0])||e[0]>n)?[n,r]:e}),[Number.NaN,-1])[1];case"max":return e=>e.reduce(((e,t,r)=>{const n=this.getOrDefault(t[this.field],Number.NEGATIVE_INFINITY);return null!==n&&(Number.isNaN(e[0])||e[0]e));const n=[];if(this.ignoreErrors){const e={};e[this.field]=null,r=r.map((t=>t.catch((t=>(n.push(t),e)))))}const i=await Promise.all(r),a=this.indexPicker(i);if(a<0)throw new Error(`All actors rejected their test in ${this.name}\n${n.map((e=>e.message)).join("\n")}`);return t[a].actor}}t.MediatorNumber=i},92201:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29064),t)},19465:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorRace=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}mediateWith(e,t){return new Promise(((e,r)=>{const n=[];for(const i of t)i.reply.then((()=>{e(i.actor)})).catch((e=>{n.push(e),n.length===t.length&&r(new Error(`${this.name} mediated over all rejecting actors:\n${n.map((e=>e.message)).join("\n")}`))}))}))}}t.MediatorRace=i},7204:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(19465),t)},49648:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MetadataValidationState=void 0,t.MetadataValidationState=class{constructor(){this.invalidateListeners=[],this.valid=!0}addInvalidateListener(e){this.invalidateListeners.push(e)}invalidate(){if(this.valid){this.valid=!1;for(const e of this.invalidateListeners)e()}}}},33588:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(49648),t)},69923:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},80416:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},7378:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},42461:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},61817:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},65622:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},4179:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27188:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},21716:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},96946:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},13518:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},46537:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27293:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},52120:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=void 0;class r{static getLevelOrdinal(e){return r.LEVELS[e]}}t.Logger=r,r.LEVELS={trace:0,debug:1,info:2,warn:3,error:4,fatal:5}},24331:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69923),t),i(r(80416),t),i(r(7378),t),i(r(42461),t),i(r(61817),t),i(r(65622),t),i(r(4179),t),i(r(27188),t),i(r(21716),t),i(r(96946),t),i(r(13518),t),i(r(46537),t),i(r(27293),t),i(r(52120),t)},95766:(e,t)=>{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=s(e),o=a[0],c=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,o,c)),l=0,d=c>0?o-4:o;for(r=0;r>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[l++]=255&t),1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},6391:function(e,t,r){var n;!function(i){"use strict";var a,o=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,s=Math.ceil,c=Math.floor,u="[BigNumber Error] ",l=u+"Number primitive has more than 15 significant digits: ",d=1e14,h=14,p=9007199254740991,f=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],y=1e7,g=1e9;function m(e){var t=0|e;return e>0||e===t?t:t-1}function b(e){for(var t,r,n=1,i=e.length,a=e[0]+"";nu^r?1:-1;for(s=(c=i.length)<(u=a.length)?c:u,o=0;oa[o]^r?1:-1;return c==u?0:c>u^r?1:-1}function _(e,t,r,n){if(er||e!==c(e))throw Error(u+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function w(e){var t=e.c.length-1;return m(e.e/h)==t&&e.c[t]%2!=0}function T(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function S(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else tk?m.c=m.e=null:e.e=10;d/=10,u++);return void(u>k?m.c=m.e=null:(m.e=u,m.c=[e]))}g=String(e)}else{if(!o.test(g=String(e)))return i(m,g,f);m.s=45==g.charCodeAt(0)?(g=g.slice(1),-1):1}(u=g.indexOf("."))>-1&&(g=g.replace(".","")),(d=g.search(/e/i))>0?(u<0&&(u=d),u+=+g.slice(d+1),g=g.substring(0,d)):u<0&&(u=g.length)}else{if(_(t,2,V.length,"Base"),10==t&&Q)return K(m=new $(e),N+m.e+1,j);if(g=String(e),f="number"==typeof e){if(0*e!=0)return i(m,g,f,t);if(m.s=1/e<0?(g=g.slice(1),-1):1,$.DEBUG&&g.replace(/^0\.0*|\./,"").length>15)throw Error(l+e)}else m.s=45===g.charCodeAt(0)?(g=g.slice(1),-1):1;for(r=V.slice(0,t),u=d=0,y=g.length;du){u=y;continue}}else if(!s&&(g==g.toUpperCase()&&(g=g.toLowerCase())||g==g.toLowerCase()&&(g=g.toUpperCase()))){s=!0,d=-1,u=0;continue}return i(m,String(e),f,t)}f=!1,(u=(g=n(g,t,10,m.s)).indexOf("."))>-1?g=g.replace(".",""):u=g.length}for(d=0;48===g.charCodeAt(d);d++);for(y=g.length;48===g.charCodeAt(--y););if(g=g.slice(d,++y)){if(y-=d,f&&$.DEBUG&&y>15&&(e>p||e!==c(e)))throw Error(l+m.s*e);if((u=u-d-1)>k)m.c=m.e=null;else if(u=M)?T(c,o):S(c,o,"0");else if(a=(e=K(new $(e),t,r)).e,s=(c=b(e.c)).length,1==n||2==n&&(t<=a||a<=C)){for(;ss){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-s)>0)for(a+1==s&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function G(e,t){for(var r,n,i=1,a=new $(e[0]);i=10;i/=10,n++);return(r=n+r*h-1)>k?e.c=e.e=null:r=10;u/=10,i++);if((a=t-i)<0)a+=h,o=t,l=g[p=0],y=c(l/m[i-o-1]%10);else if((p=s((a+1)/h))>=g.length){if(!n)break e;for(;g.length<=p;g.push(0));l=y=0,i=1,o=(a%=h)-h+1}else{for(l=u=g[p],i=1;u>=10;u/=10,i++);y=(o=(a%=h)-h+i)<0?0:c(l/m[i-o-1]%10)}if(n=n||t<0||null!=g[p+1]||(o<0?l:l%m[i-o-1]),n=r<4?(y||n)&&(0==r||r==(e.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(a>0?o>0?l/m[i-o]:0:g[p-1])%10&1||r==(e.s<0?8:7)),t<1||!g[0])return g.length=0,n?(t-=e.e+1,g[0]=m[(h-t%h)%h],e.e=-t||0):g[0]=e.e=0,e;if(0==a?(g.length=p,u=1,p--):(g.length=p+1,u=m[h-a],g[p]=o>0?c(l/m[i-o]%m[o])*u:0),n)for(;;){if(0==p){for(a=1,o=g[0];o>=10;o/=10,a++);for(o=g[0]+=u,u=1;o>=10;o/=10,u++);a!=u&&(e.e++,g[0]==d&&(g[0]=1));break}if(g[p]+=u,g[p]!=d)break;g[p--]=0,u=1}for(a=g.length;0===g[--a];g.pop());}e.e>k?e.c=e.e=null:e.e=M?T(t,r):S(t,r,"0"),e.s<0?"-"+t:t)}return $.clone=e,$.ROUND_UP=0,$.ROUND_DOWN=1,$.ROUND_CEIL=2,$.ROUND_FLOOR=3,$.ROUND_HALF_UP=4,$.ROUND_HALF_DOWN=5,$.ROUND_HALF_EVEN=6,$.ROUND_HALF_CEIL=7,$.ROUND_HALF_FLOOR=8,$.EUCLID=9,$.config=$.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(u+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(_(r=e[t],0,g,t),N=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(_(r=e[t],0,8,t),j=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(_(r[0],-g,0,t),_(r[1],0,g,t),C=r[0],M=r[1]):(_(r,-g,g,t),C=-(M=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)_(r[0],-g,-1,t),_(r[1],1,g,t),L=r[0],k=r[1];else{if(_(r,-g,g,t),!r)throw Error(u+t+" cannot be zero: "+r);L=-(k=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(u+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw F=!r,Error(u+"crypto unavailable");F=r}else F=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(_(r=e[t],0,9,t),B=r),e.hasOwnProperty(t="POW_PRECISION")&&(_(r=e[t],0,g,t),U=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(u+t+" not an object: "+r);q=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(u+t+" invalid: "+r);Q="0123456789"==r.slice(0,10),V=r}}return{DECIMAL_PLACES:N,ROUNDING_MODE:j,EXPONENTIAL_AT:[C,M],RANGE:[L,k],CRYPTO:F,MODULO_MODE:B,POW_PRECISION:U,FORMAT:q,ALPHABET:V}},$.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!$.DEBUG)return!0;var t,r,n=e.c,i=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===a||-1===a)&&i>=-g&&i<=g&&i===c(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%h)<1&&(t+=h),String(n[0]).length==t){for(t=0;t=d||r!==c(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===a||1===a||-1===a))return!0;throw Error(u+"Invalid BigNumber: "+e)},$.maximum=$.max=function(){return G(arguments,-1)},$.minimum=$.min=function(){return G(arguments,1)},$.random=(a=9007199254740992,O=Math.random()*a&2097151?function(){return c(Math.random()*a)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,r,n,i,a,o=0,l=[],d=new $(D);if(null==e?e=N:_(e,0,g),i=s(e/h),F)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(i*=2));o>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),t[o]=r[0],t[o+1]=r[1]):(l.push(a%1e14),o+=2);o=i/2}else{if(!crypto.randomBytes)throw F=!1,Error(u+"crypto unavailable");for(t=crypto.randomBytes(i*=7);o=9e15?crypto.randomBytes(7).copy(t,o):(l.push(a%1e14),o+=7);o=i/7}if(!F)for(;o=10;a/=10,o++);or-1&&(null==o[i+1]&&(o[i+1]=0),o[i+1]+=o[i]/r|0,o[i]%=r)}return o.reverse()}return function(n,i,a,o,s){var c,u,l,d,h,p,f,y,g=n.indexOf("."),m=N,v=j;for(g>=0&&(d=U,U=0,n=n.replace(".",""),p=(y=new $(i)).pow(n.length-g),U=d,y.c=t(S(b(p.c),p.e,"0"),10,a,e),y.e=y.c.length),l=d=(f=t(n,i,a,s?(c=V,e):(c=e,V))).length;0==f[--d];f.pop());if(!f[0])return c.charAt(0);if(g<0?--l:(p.c=f,p.e=l,p.s=o,f=(p=r(p,y,m,v,a)).c,h=p.r,l=p.e),g=f[u=l+m+1],d=a/2,h=h||u<0||null!=f[u+1],h=v<4?(null!=g||h)&&(0==v||v==(p.s<0?3:2)):g>d||g==d&&(4==v||h||6==v&&1&f[u-1]||v==(p.s<0?8:7)),u<1||!f[0])n=h?S(c.charAt(1),-m,c.charAt(0)):c.charAt(0);else{if(f.length=u,h)for(--a;++f[--u]>a;)f[u]=0,u||(++l,f=[1].concat(f));for(d=f.length;!f[--d];);for(g=0,n="";g<=d;n+=c.charAt(f[g++]));n=S(n,l,c.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,a,o,s=0,c=e.length,u=t%y,l=t/y|0;for(e=e.slice();c--;)s=((i=u*(a=e[c]%y)+(n=l*a+(o=e[c]/y|0)*u)%y*y+s)/r|0)+(n/y|0)+l*o,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,a;if(r!=n)a=r>n?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,a,o,s){var u,l,p,f,y,g,b,v,_,w,T,S,O,E,x,A,R,I=n.s==i.s?1:-1,P=n.c,D=i.c;if(!(P&&P[0]&&D&&D[0]))return new $(n.s&&i.s&&(P?!D||P[0]!=D[0]:D)?P&&0==P[0]||!D?0*I:I/0:NaN);for(_=(v=new $(I)).c=[],I=a+(l=n.e-i.e)+1,s||(s=d,l=m(n.e/h)-m(i.e/h),I=I/h|0),p=0;D[p]==(P[p]||0);p++);if(D[p]>(P[p]||0)&&l--,I<0)_.push(1),f=!0;else{for(E=P.length,A=D.length,p=0,I+=2,(y=c(s/(D[0]+1)))>1&&(D=e(D,y,s),P=e(P,y,s),A=D.length,E=P.length),O=A,T=(w=P.slice(0,A)).length;T=s/2&&x++;do{if(y=0,(u=t(D,w,A,T))<0){if(S=w[0],A!=T&&(S=S*s+(w[1]||0)),(y=c(S/x))>1)for(y>=s&&(y=s-1),b=(g=e(D,y,s)).length,T=w.length;1==t(g,w,b,T);)y--,r(g,A=10;I/=10,p++);K(v,a+(v.e=p+l*h-1)+1,o,f)}else v.e=l,v.r=+f;return v}}(),E=/^(-?)0([xbo])(?=\w[\w.]*$)/i,x=/^([^.]+)\.$/,A=/^\.([^.]+)$/,R=/^-?(Infinity|NaN)$/,I=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,r,n){var i,a=r?t:t.replace(I,"");if(R.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!r&&(a=a.replace(E,(function(e,t,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?e:t})),n&&(i=n,a=a.replace(x,"$1").replace(A,"0.$1")),t!=a))return new $(a,i);if($.DEBUG)throw Error(u+"Not a"+(n?" base "+n:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new $(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return v(this,new $(e,t))},P.decimalPlaces=P.dp=function(e,t){var r,n,i,a=this;if(null!=e)return _(e,0,g),null==t?t=j:_(t,0,8),K(new $(a),e+a.e+1,t);if(!(r=a.c))return null;if(n=((i=r.length-1)-m(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},P.dividedBy=P.div=function(e,t){return r(this,new $(e,t),N,j)},P.dividedToIntegerBy=P.idiv=function(e,t){return r(this,new $(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var r,n,i,a,o,l,d,p,f=this;if((e=new $(e)).c&&!e.isInteger())throw Error(u+"Exponent not an integer: "+X(e));if(null!=t&&(t=new $(t)),o=e.e>14,!f.c||!f.c[0]||1==f.c[0]&&!f.e&&1==f.c.length||!e.c||!e.c[0])return p=new $(Math.pow(+X(f),o?e.s*(2-w(e)):+X(e))),t?p.mod(t):p;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new $(NaN);(n=!l&&f.isInteger()&&t.isInteger())&&(f=f.mod(t))}else{if(e.e>9&&(f.e>0||f.e<-1||(0==f.e?f.c[0]>1||o&&f.c[1]>=24e7:f.c[0]<8e13||o&&f.c[0]<=9999975e7)))return a=f.s<0&&w(e)?-0:0,f.e>-1&&(a=1/a),new $(l?1/a:a);U&&(a=s(U/h+2))}for(o?(r=new $(.5),l&&(e.s=1),d=w(e)):d=(i=Math.abs(+X(e)))%2,p=new $(D);;){if(d){if(!(p=p.times(f)).c)break;a?p.c.length>a&&(p.c.length=a):n&&(p=p.mod(t))}if(i){if(0===(i=c(i/2)))break;d=i%2}else if(K(e=e.times(r),e.e+1,1),e.e>14)d=w(e);else{if(0==(i=+X(e)))break;d=i%2}f=f.times(f),a?f.c&&f.c.length>a&&(f.c.length=a):n&&(f=f.mod(t))}return n?p:(l&&(p=D.div(p)),t?p.mod(t):a?K(p,U,j,void 0):p)},P.integerValue=function(e){var t=new $(this);return null==e?e=j:_(e,0,8),K(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===v(this,new $(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return v(this,new $(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=v(this,new $(e,t)))||0===t},P.isInteger=function(){return!!this.c&&m(this.e/h)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return v(this,new $(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=v(this,new $(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var r,n,i,a,o=this,s=o.s;if(t=(e=new $(e,t)).s,!s||!t)return new $(NaN);if(s!=t)return e.s=-t,o.plus(e);var c=o.e/h,u=e.e/h,l=o.c,p=e.c;if(!c||!u){if(!l||!p)return l?(e.s=-t,e):new $(p?o:NaN);if(!l[0]||!p[0])return p[0]?(e.s=-t,e):new $(l[0]?o:3==j?-0:0)}if(c=m(c),u=m(u),l=l.slice(),s=c-u){for((a=s<0)?(s=-s,i=l):(u=c,i=p),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(a=(s=l.length)<(t=p.length))?s:t,s=t=0;t0)for(;t--;l[r++]=0);for(t=d-1;n>s;){if(l[--n]=0;){for(r=0,f=S[i]%_,g=S[i]/_|0,a=i+(o=c);a>i;)r=((u=f*(u=T[--o]%_)+(s=g*u+(l=T[o]/_|0)*f)%_*_+b[a]+r)/v|0)+(s/_|0)+g*l,b[a--]=u%v;b[a]=r}return r?++n:b.splice(0,1),z(e,b,n)},P.negated=function(){var e=new $(this);return e.s=-e.s||null,e},P.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new $(e,t)).s,!i||!t)return new $(NaN);if(i!=t)return e.s=-t,n.minus(e);var a=n.e/h,o=e.e/h,s=n.c,c=e.c;if(!a||!o){if(!s||!c)return new $(i/0);if(!s[0]||!c[0])return c[0]?e:new $(s[0]?n:0*i)}if(a=m(a),o=m(o),s=s.slice(),i=a-o){for(i>0?(o=a,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/d|0,s[t]=d===s[t]?0:s[t]%d;return i&&(s=[i].concat(s),++o),z(e,s,o)},P.precision=P.sd=function(e,t){var r,n,i,a=this;if(null!=e&&e!==!!e)return _(e,1,g),null==t?t=j:_(t,0,8),K(new $(a),e,t);if(!(r=a.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&a.e+1>n&&(n=a.e+1),n},P.shiftedBy=function(e){return _(e,-9007199254740991,p),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,n,i,a,o=this,s=o.c,c=o.s,u=o.e,l=N+4,d=new $("0.5");if(1!==c||!s||!s[0])return new $(!c||c<0&&(!s||s[0])?NaN:s?o:1/0);if(0==(c=Math.sqrt(+X(o)))||c==1/0?(((t=b(s)).length+u)%2==0&&(t+="0"),c=Math.sqrt(+t),u=m((u+1)/2)-(u<0||u%2),n=new $(t=c==1/0?"5e"+u:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+u)):n=new $(c+""),n.c[0])for((c=(u=n.e)+l)<3&&(c=0);;)if(a=n,n=d.times(a.plus(r(o,a,l,1))),b(a.c).slice(0,c)===(t=b(n.c)).slice(0,c)){if(n.e0&&y>0){for(a=y%s||s,d=f.substr(0,a);a0&&(d+=l+f.slice(a)),p&&(d="-"+d)}n=h?d+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):d}return(r.prefix||"")+n+(r.suffix||"")},P.toFraction=function(e){var t,n,i,a,o,s,c,l,d,p,y,g,m=this,v=m.c;if(null!=e&&(!(c=new $(e)).isInteger()&&(c.c||1!==c.s)||c.lt(D)))throw Error(u+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+X(c));if(!v)return new $(m);for(t=new $(D),d=n=new $(D),i=l=new $(D),g=b(v),o=t.e=g.length-m.e-1,t.c[0]=f[(s=o%h)<0?h+s:s],e=!e||c.comparedTo(t)>0?o>0?t:d:c,s=k,k=1/0,c=new $(g),l.c[0]=0;p=r(c,t,0,1),1!=(a=n.plus(p.times(i))).comparedTo(e);)n=i,i=a,d=l.plus(p.times(a=d)),l=a,t=c.minus(p.times(a=t)),c=a;return a=r(e.minus(n),i,0,1),l=l.plus(a.times(d)),n=n.plus(a.times(i)),l.s=d.s=m.s,y=r(d,i,o*=2,j).minus(m).abs().comparedTo(r(l,n,o,j).minus(m).abs())<1?[d,i]:[l,n],k=s,y},P.toNumber=function(){return+X(this)},P.toPrecision=function(e,t){return null!=e&&_(e,1,g),H(this,e,t,2)},P.toString=function(e){var t,r=this,i=r.s,a=r.e;return null===a?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=a<=C||a>=M?T(b(r.c),a):S(b(r.c),a,"0"):10===e&&Q?t=S(b((r=K(new $(r),N+a+1,j)).c),r.e,"0"):(_(e,2,V.length,"Base"),t=n(S(b(r.c),a,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return X(this)},P._isBigNumber=!0,null!=t&&$.set(t),$}(),a.default=a.BigNumber=a,void 0===(n=function(){return a}.call(t,r,t,e))||(e.exports=n)}()},48834:(e,t,r)=>{"use strict";const n=r(95766),i=r(62333),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const o=2147483647;function s(e){if(e>o)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=s(r);const i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(X(e,Uint8Array)){const t=new Uint8Array(e);return p(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(X(e,ArrayBuffer)||e&&X(e.buffer,ArrayBuffer))return p(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(X(e,SharedArrayBuffer)||e&&X(e.buffer,SharedArrayBuffer)))return p(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|f(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||W(e.length)?s(0):h(e):"Buffer"===e.type&&Array.isArray(e.data)?h(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return l(e),s(e<0?0:0|f(e))}function h(e){const t=e.length<0?0:0|f(e.length),r=s(t);for(let n=0;n=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||X(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return G(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return z(e).length;default:if(i)return n?-1:G(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return P(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return R(this,t,r);case"latin1":case"binary":return I(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function m(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function b(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),W(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:v(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):v(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,r,n,i){let a,o=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,c/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){let n=-1;for(a=r;as&&(r=s-c),a=r;a>=0;a--){let r=!0;for(let n=0;ni&&(n=i):n=i;const a=t.length;let o;for(n>a/2&&(n=a/2),o=0;o>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+o<=r){let r,n,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:r=e[i+1],128==(192&r)&&(c=(31&t)<<6|63&r,c>127&&(a=c));break;case 3:r=e[i+1],n=e[i+2],128==(192&r)&&128==(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128==(192&r)&&128==(192&n)&&128==(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(a=c))}}null===a?(a=65533,o=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),i+=o}return function(e){const t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(X(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0);const s=Math.min(a,o),u=this.slice(n,i),l=e.slice(t,r);for(let e=0;e>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return _(this,e,t,r);case"utf8":case"utf-8":return w(this,e,t,r);case"ascii":case"latin1":case"binary":return T(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const A=4096;function R(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let n=t;nr)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function C(e,t,r,n,i){V(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function M(e,t,r,n,i){V(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function L(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function k(e,t,r,n,a){return t=+t,r>>>=0,a||L(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function F(e,t,r,n,a){return t=+t,r>>>=0,a||L(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e],i=1,a=0;for(;++a>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=Y((function(e){Q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e],i=1,a=0;for(;++a=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);let n=t,i=1,a=this[e+--n];for(;n>0&&(i*=256);)a+=this[e+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=Y((function(e){Q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||j(this,e,t,r,Math.pow(2,8*r)-1,0);let i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||j(this,e,t,r,Math.pow(2,8*r)-1,0);let i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=Y((function(e,t=0){return C(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=Y((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let i=0,a=1,o=0;for(this[t]=255&e;++i>0)-o&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let i=r-1,a=1,o=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===o&&0!==this[t+i+1]&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=Y((function(e,t=0){return C(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=Y((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return k(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return k(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return F(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return F(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function V(e,t,r,n,i,a){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(a+1)}${n}`:`>= -(2${n} ** ${8*(a+1)-1}${n}) and < 2 ** ${8*(a+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){Q(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||$(t,e.length-(r+1))}(n,i,a)}function Q(e,t){if("number"!=typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function $(e,t,r){if(Math.floor(e)!==e)throw Q(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}U("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),U("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),U("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=q(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=q(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const H=/[^+/0-9A-Za-z-_]/g;function G(e,t){let r;t=t||1/0;const n=e.length;let i=null;const a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function z(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(H,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function X(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function W(e){return e!=e}const J=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Y(e){return"undefined"==typeof BigInt?Z:e}function Z(){throw new Error("BigInt not supported")}},67026:e=>{"use strict";e.exports=function e(t){return null===t||"object"!=typeof t||null!=t.toJSON?JSON.stringify(t):Array.isArray(t)?"["+t.reduce(((t,r,n)=>t+(0===n?"":",")+e(void 0===r||"symbol"==typeof r?null:r)),"")+"]":"{"+Object.keys(t).sort().reduce(((r,n,i)=>void 0===t[n]||"symbol"==typeof t[n]?r:r+(0===r.length?"":",")+e(n)+":"+e(t[n])),"")+"}"}},43616:function(){!function(e){!function(t){var r="undefined"!=typeof globalThis&&globalThis||void 0!==e&&e||void 0!==r&&r,n="URLSearchParams"in r,i="Symbol"in r&&"iterator"in Symbol,a="FileReader"in r&&"Blob"in r&&function(){try{return new Blob,!0}catch(e){return!1}}(),o="FormData"in r,s="ArrayBuffer"in r;if(s)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1};function l(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function d(e){return"string"!=typeof e&&(e=String(e)),e}function h(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return i&&(t[Symbol.iterator]=function(){return t}),t}function p(e){this.map={},e instanceof p?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function y(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=y(t);return t.readAsArrayBuffer(e),r}function m(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:a&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:o&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:n&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&a&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=m(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=m(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},a&&(this.blob=function(){var e=f(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?f(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=y(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(i),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==t.cache&&"no-cache"!==t.cache)){var a=/([?&])_=[^&]*/;a.test(this.url)?this.url=this.url.replace(a,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function w(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function T(e,t){if(!(this instanceof T))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new p(t.headers),this.url=t.url||"",this._initBody(e)}_.prototype.clone=function(){return new _(this,{body:this._bodyInit})},b.call(_.prototype),b.call(T.prototype),T.prototype.clone=function(){return new T(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},T.error=function(){var e=new T(null,{status:0,statusText:""});return e.type="error",e};var S=[301,302,303,307,308];T.redirect=function(e,t){if(-1===S.indexOf(t))throw new RangeError("Invalid status code");return new T(null,{status:t,headers:{location:e}})},t.DOMException=r.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,n){return new Promise((function(i,o){var c=new _(e,n);if(c.signal&&c.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var u=new XMLHttpRequest;function l(){u.abort()}u.onload=function(){var e,t,r={status:u.status,statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new p,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL");var n="response"in u?u.response:u.responseText;setTimeout((function(){i(new T(n,r))}),0)},u.onerror=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.onabort=function(){setTimeout((function(){o(new t.DOMException("Aborted","AbortError"))}),0)},u.open(c.method,function(e){try{return""===e&&r.location.href?r.location.href:e}catch(t){return e}}(c.url),!0),"include"===c.credentials?u.withCredentials=!0:"omit"===c.credentials&&(u.withCredentials=!1),"responseType"in u&&(a?u.responseType="blob":s&&c.headers.get("Content-Type")&&-1!==c.headers.get("Content-Type").indexOf("application/octet-stream")&&(u.responseType="arraybuffer")),!n||"object"!=typeof n.headers||n.headers instanceof p?c.headers.forEach((function(e,t){u.setRequestHeader(t,e)})):Object.getOwnPropertyNames(n.headers).forEach((function(e){u.setRequestHeader(e,d(n.headers[e]))})),c.signal&&(c.signal.addEventListener("abort",l),u.onreadystatechange=function(){4===u.readyState&&c.signal.removeEventListener("abort",l)}),u.send(void 0===c._bodyInit?null:c._bodyInit)}))}O.polyfill=!0,r.fetch||(r.fetch=O,r.Headers=p,r.Request=_,r.Response=T),t.Headers=p,t.Request=_,t.Response=T,t.fetch=O}({})}("undefined"!=typeof self?self:this)},96279:(e,t,r)=>{var n="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==r.g&&r.g,i=function(){function e(){this.fetch=!1,this.DOMException=n.DOMException}return e.prototype=n,new e}();!function(e){!function(t){var r=void 0!==e&&e||"undefined"!=typeof self&&self||void 0!==r&&r,n="URLSearchParams"in r,i="Symbol"in r&&"iterator"in Symbol,a="FileReader"in r&&"Blob"in r&&function(){try{return new Blob,!0}catch(e){return!1}}(),o="FormData"in r,s="ArrayBuffer"in r;if(s)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1};function l(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function d(e){return"string"!=typeof e&&(e=String(e)),e}function h(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return i&&(t[Symbol.iterator]=function(){return t}),t}function p(e){this.map={},e instanceof p?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function y(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=y(t);return t.readAsArrayBuffer(e),r}function m(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:a&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:o&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:n&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&a&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=m(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=m(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},a&&(this.blob=function(){var e=f(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?f(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=y(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(i),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==t.cache&&"no-cache"!==t.cache)){var a=/([?&])_=[^&]*/;a.test(this.url)?this.url=this.url.replace(a,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function w(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function T(e,t){if(!(this instanceof T))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new p(t.headers),this.url=t.url||"",this._initBody(e)}_.prototype.clone=function(){return new _(this,{body:this._bodyInit})},b.call(_.prototype),b.call(T.prototype),T.prototype.clone=function(){return new T(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},T.error=function(){var e=new T(null,{status:0,statusText:""});return e.type="error",e};var S=[301,302,303,307,308];T.redirect=function(e,t){if(-1===S.indexOf(t))throw new RangeError("Invalid status code");return new T(null,{status:t,headers:{location:e}})},t.DOMException=r.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,n){return new Promise((function(i,o){var c=new _(e,n);if(c.signal&&c.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var u=new XMLHttpRequest;function l(){u.abort()}u.onload=function(){var e,t,r={status:u.status,statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new p,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL");var n="response"in u?u.response:u.responseText;setTimeout((function(){i(new T(n,r))}),0)},u.onerror=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.onabort=function(){setTimeout((function(){o(new t.DOMException("Aborted","AbortError"))}),0)},u.open(c.method,function(e){try{return""===e&&r.location.href?r.location.href:e}catch(t){return e}}(c.url),!0),"include"===c.credentials?u.withCredentials=!0:"omit"===c.credentials&&(u.withCredentials=!1),"responseType"in u&&(a?u.responseType="blob":s&&c.headers.get("Content-Type")&&-1!==c.headers.get("Content-Type").indexOf("application/octet-stream")&&(u.responseType="arraybuffer")),!n||"object"!=typeof n.headers||n.headers instanceof p?c.headers.forEach((function(e,t){u.setRequestHeader(t,e)})):Object.getOwnPropertyNames(n.headers).forEach((function(e){u.setRequestHeader(e,d(n.headers[e]))})),c.signal&&(c.signal.addEventListener("abort",l),u.onreadystatechange=function(){4===u.readyState&&c.signal.removeEventListener("abort",l)}),u.send(void 0===c._bodyInit?null:c._bodyInit)}))}O.polyfill=!0,r.fetch||(r.fetch=O,r.Headers=p,r.Request=_,r.Response=T),t.Headers=p,t.Request=_,t.Response=T,t.fetch=O}({})}(i),i.fetch.ponyfill=!0,delete i.fetch.polyfill;var a=n.fetch?n:i;(t=a.fetch).default=a.fetch,t.fetch=a.fetch,t.Headers=a.Headers,t.Request=a.Request,t.Response=a.Response,e.exports=t},16594:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.attributeNames=t.elementNames=void 0,t.elementNames=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((function(e){return[e.toLowerCase(),e]}))),t.attributeNames=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((function(e){return[e.toLowerCase(),e]})))},50606:function(e,t,r){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r");case s.Comment:return"\x3c!--".concat(e.data,"--\x3e");case s.CDATA:return function(e){return"")}(e);case s.Script:case s.Style:case s.Tag:return function(e,t){var r;"foreign"===t.xmlMode&&(e.name=null!==(r=u.elementNames.get(e.name))&&void 0!==r?r:e.name,e.parent&&y.has(e.parent.name)&&(t=n(n({},t),{xmlMode:!1}))),!t.xmlMode&&g.has(e.name)&&(t=n(n({},t),{xmlMode:"foreign"}));var i="<".concat(e.name),a=function(e,t){var r;if(e){var n=!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)?d:t.xmlMode||"utf8"!==t.encodeEntities?c.encodeXML:c.escapeAttribute;return Object.keys(e).map((function(r){var i,a,o=null!==(i=e[r])&&void 0!==i?i:"";return"foreign"===t.xmlMode&&(r=null!==(a=u.attributeNames.get(r))&&void 0!==a?a:r),t.emptyAttrs||t.xmlMode||""!==o?"".concat(r,'="').concat(n(o),'"'):r})).join(" ")}}(e.attribs,t);return a&&(i+=" ".concat(a)),0===e.children.length&&(t.xmlMode?!1!==t.selfClosingTags:t.selfClosingTags&&h.has(e.name))?(t.xmlMode||(i+=" "),i+="/>"):(i+=">",e.children.length>0&&(i+=p(e.children,t)),!t.xmlMode&&h.has(e.name)||(i+=""))),i}(e,t);case s.Text:return function(e,t){var r,n=e.data||"";return!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)||!t.xmlMode&&e.parent&&l.has(e.parent.name)||(n=t.xmlMode||"utf8"!==t.encodeEntities?(0,c.encodeXML)(n):(0,c.escapeText)(n)),n}(e,t)}}t.render=p,t.default=p;var y=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),g=new Set(["svg","math"])},34821:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(r=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===r.Tag||e.type===r.Script||e.type===r.Style},t.Root=r.Root,t.Text=r.Text,t.Directive=r.Directive,t.Comment=r.Comment,t.Script=r.Script,t.Style=r.Style,t.Tag=r.Tag,t.CDATA=r.CDATA,t.Doctype=r.Doctype},79959:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var a=r(34821),o=r(75538);i(r(75538),t);var s={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},c=function(){function e(e,t,r){this.dom=[],this.root=new o.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(r=t,t=s),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:s,this.elementCB=null!=r?r:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new o.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var r=this.options.xmlMode?a.ElementType.Tag:void 0,n=new o.Element(e,t,void 0,r);this.addNode(n),this.tagStack.push(n)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===a.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var r=new o.Text(e);this.addNode(r),this.lastNode=r}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===a.ElementType.Comment)this.lastNode.data+=e;else{var t=new o.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new o.Text(""),t=new o.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var r=new o.ProcessingInstruction(e,t);this.addNode(r)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],r=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),r&&(e.prev=r,r.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=c,t.default=c},75538:function(e,t,r){"use strict";var n,i=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);t.NodeWithChildren=h;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=o.ElementType.CDATA,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(h);t.CDATA=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=o.ElementType.Root,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(h);t.Document=f;var y=function(e){function t(t,r,n,i){void 0===n&&(n=[]),void 0===i&&(i="script"===t?o.ElementType.Script:"style"===t?o.ElementType.Style:o.ElementType.Tag);var a=e.call(this,n)||this;return a.name=t,a.attribs=r,a.type=i,a}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var r,n;return{name:t,value:e.attribs[t],namespace:null===(r=e["x-attribsNamespace"])||void 0===r?void 0:r[t],prefix:null===(n=e["x-attribsPrefix"])||void 0===n?void 0:n[t]}}))},enumerable:!1,configurable:!0}),t}(h);function g(e){return(0,o.isTag)(e)}function m(e){return e.type===o.ElementType.CDATA}function b(e){return e.type===o.ElementType.Text}function v(e){return e.type===o.ElementType.Comment}function _(e){return e.type===o.ElementType.Directive}function w(e){return e.type===o.ElementType.Root}function T(e,t){var r;if(void 0===t&&(t=!1),b(e))r=new u(e.data);else if(v(e))r=new l(e.data);else if(g(e)){var n=t?S(e.children):[],i=new y(e.name,a({},e.attribs),n);n.forEach((function(e){return e.parent=i})),null!=e.namespace&&(i.namespace=e.namespace),e["x-attribsNamespace"]&&(i["x-attribsNamespace"]=a({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(i["x-attribsPrefix"]=a({},e["x-attribsPrefix"])),r=i}else if(m(e)){n=t?S(e.children):[];var o=new p(n);n.forEach((function(e){return e.parent=o})),r=o}else if(w(e)){n=t?S(e.children):[];var s=new f(n);n.forEach((function(e){return e.parent=s})),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),r=s}else{if(!_(e))throw new Error("Not implemented yet: ".concat(e.type));var c=new d(e.name,e.data);null!=e["x-name"]&&(c["x-name"]=e["x-name"],c["x-publicId"]=e["x-publicId"],c["x-systemId"]=e["x-systemId"]),r=c}return r.startIndex=e.startIndex,r.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function S(e){for(var t=e.map((function(e){return T(e,!0)})),r=1;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFeed=void 0;var n=r(87559),i=r(65310);t.getFeed=function(e){var t=c(d,e);return t?"feed"===t.name?function(e){var t,r=e.children,n={type:"atom",items:(0,i.getElementsByTagName)("entry",r).map((function(e){var t,r=e.children,n={media:s(r)};l(n,"id","id",r),l(n,"title","title",r);var i=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;i&&(n.link=i);var a=u("summary",r)||u("content",r);a&&(n.description=a);var o=u("updated",r);return o&&(n.pubDate=new Date(o)),n}))};l(n,"id","id",r),l(n,"title","title",r);var a=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;a&&(n.link=a),l(n,"description","subtitle",r);var o=u("updated",r);return o&&(n.updated=new Date(o)),l(n,"author","email",r,!0),n}(t):function(e){var t,r,n=null!==(r=null===(t=c("channel",e.children))||void 0===t?void 0:t.children)&&void 0!==r?r:[],a={type:e.name.substr(0,3),id:"",items:(0,i.getElementsByTagName)("item",e.children).map((function(e){var t=e.children,r={media:s(t)};l(r,"id","guid",t),l(r,"title","title",t),l(r,"link","link",t),l(r,"description","description",t);var n=u("pubDate",t)||u("dc:date",t);return n&&(r.pubDate=new Date(n)),r}))};l(a,"title","title",n),l(a,"link","link",n),l(a,"description","description",n);var o=u("lastBuildDate",n);return o&&(a.updated=new Date(o)),l(a,"author","managingEditor",n,!0),a}(t):null};var a=["url","type","lang"],o=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function s(e){return(0,i.getElementsByTagName)("media:content",e).map((function(e){for(var t=e.attribs,r={medium:t.medium,isDefault:!!t.isDefault},n=0,i=a;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uniqueSort=t.compareDocumentPosition=t.DocumentPosition=t.removeSubsets=void 0;var n,i=r(79959);function a(e,t){var r=[],a=[];if(e===t)return 0;for(var o=(0,i.hasChildren)(e)?e:e.parent;o;)r.unshift(o),o=o.parent;for(o=(0,i.hasChildren)(t)?t:t.parent;o;)a.unshift(o),o=o.parent;for(var s=Math.min(r.length,a.length),c=0;cl.indexOf(h)?u===t?n.FOLLOWING|n.CONTAINED_BY:n.FOLLOWING:u===e?n.PRECEDING|n.CONTAINS:n.PRECEDING}t.removeSubsets=function(e){for(var t=e.length;--t>=0;){var r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0)e.splice(t,1);else for(var n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e},function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"}(n=t.DocumentPosition||(t.DocumentPosition={})),t.compareDocumentPosition=a,t.uniqueSort=function(e){return(e=e.filter((function(e,t,r){return!r.includes(e,t+1)}))).sort((function(e,t){var r=a(e,t);return r&n.PRECEDING?-1:r&n.FOLLOWING?1:0})),e}},64622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=t.isDocument=t.isComment=t.isText=t.isCDATA=t.isTag=void 0,i(r(87559),t),i(r(16304),t),i(r(57427),t),i(r(17853),t),i(r(65310),t),i(r(42880),t),i(r(57065),t);var a=r(79959);Object.defineProperty(t,"isTag",{enumerable:!0,get:function(){return a.isTag}}),Object.defineProperty(t,"isCDATA",{enumerable:!0,get:function(){return a.isCDATA}}),Object.defineProperty(t,"isText",{enumerable:!0,get:function(){return a.isText}}),Object.defineProperty(t,"isComment",{enumerable:!0,get:function(){return a.isComment}}),Object.defineProperty(t,"isDocument",{enumerable:!0,get:function(){return a.isDocument}}),Object.defineProperty(t,"hasChildren",{enumerable:!0,get:function(){return a.hasChildren}})},65310:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getElementsByTagType=t.getElementsByTagName=t.getElementById=t.getElements=t.testElement=void 0;var n=r(79959),i=r(17853),a={tag_name:function(e){return"function"==typeof e?function(t){return(0,n.isTag)(t)&&e(t.name)}:"*"===e?n.isTag:function(t){return(0,n.isTag)(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return(0,n.isText)(t)&&e(t.data)}:function(t){return(0,n.isText)(t)&&t.data===e}}};function o(e,t){return"function"==typeof t?function(r){return(0,n.isTag)(r)&&t(r.attribs[e])}:function(r){return(0,n.isTag)(r)&&r.attribs[e]===t}}function s(e,t){return function(r){return e(r)||t(r)}}function c(e){var t=Object.keys(e).map((function(t){var r=e[t];return Object.prototype.hasOwnProperty.call(a,t)?a[t](r):o(t,r)}));return 0===t.length?null:t.reduce(s)}t.testElement=function(e,t){var r=c(e);return!r||r(t)},t.getElements=function(e,t,r,n){void 0===n&&(n=1/0);var a=c(e);return a?(0,i.filter)(a,t,r,n):[]},t.getElementById=function(e,t,r){return void 0===r&&(r=!0),Array.isArray(t)||(t=[t]),(0,i.findOne)(o("id",e),t,r)},t.getElementsByTagName=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_name(e),t,r,n)},t.getElementsByTagType=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_type(e),t,r,n)}},57427:(e,t)=>{"use strict";function r(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}Object.defineProperty(t,"__esModule",{value:!0}),t.prepend=t.prependChild=t.append=t.appendChild=t.replaceElement=t.removeElement=void 0,t.removeElement=r,t.replaceElement=function(e,t){var r=t.prev=e.prev;r&&(r.next=t);var n=t.next=e.next;n&&(n.prev=t);var i=t.parent=e.parent;if(i){var a=i.children;a[a.lastIndexOf(e)]=t,e.parent=null}},t.appendChild=function(e,t){if(r(t),t.next=null,t.parent=e,e.children.push(t)>1){var n=e.children[e.children.length-2];n.next=t,t.prev=n}else t.prev=null},t.append=function(e,t){r(t);var n=e.parent,i=e.next;if(t.next=i,t.prev=e,e.next=t,t.parent=n,i){if(i.prev=t,n){var a=n.children;a.splice(a.lastIndexOf(i),0,t)}}else n&&n.children.push(t)},t.prependChild=function(e,t){if(r(t),t.parent=e,t.prev=null,1!==e.children.unshift(t)){var n=e.children[1];n.prev=t,t.next=n}else t.next=null},t.prepend=function(e,t){r(t);var n=e.parent;if(n){var i=n.children;i.splice(i.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=n,t.prev=e.prev,t.next=e,e.prev=t}},17853:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findAll=t.existsOne=t.findOne=t.findOneChild=t.find=t.filter=void 0;var n=r(79959);function i(e,t,r,i){for(var a=[],o=[t],s=[0];;)if(s[0]>=o[0].length){if(1===s.length)return a;o.shift(),s.shift()}else{var c=o[0][s[0]++];if(e(c)&&(a.push(c),--i<=0))return a;r&&(0,n.hasChildren)(c)&&c.children.length>0&&(s.unshift(0),o.unshift(c.children))}}t.filter=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),i(e,Array.isArray(t)?t:[t],r,n)},t.find=i,t.findOneChild=function(e,t){return t.find(e)},t.findOne=function e(t,r,i){void 0===i&&(i=!0);for(var a=null,o=0;o0&&(a=e(t,s.children,!0)))}return a},t.existsOne=function e(t,r){return r.some((function(r){return(0,n.isTag)(r)&&(t(r)||e(t,r.children))}))},t.findAll=function(e,t){for(var r=[],i=[t],a=[0];;)if(a[0]>=i[0].length){if(1===i.length)return r;i.shift(),a.shift()}else{var o=i[0][a[0]++];(0,n.isTag)(o)&&(e(o)&&r.push(o),o.children.length>0&&(a.unshift(0),i.unshift(o.children)))}}},87559:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.innerText=t.textContent=t.getText=t.getInnerHTML=t.getOuterHTML=void 0;var i=r(79959),a=n(r(50606)),o=r(34821);function s(e,t){return(0,a.default)(e,t)}t.getOuterHTML=s,t.getInnerHTML=function(e,t){return(0,i.hasChildren)(e)?e.children.map((function(e){return s(e,t)})).join(""):""},t.getText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.isTag)(t)?"br"===t.name?"\n":e(t.children):(0,i.isCDATA)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.textContent=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&!(0,i.isComment)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.innerText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&(t.type===o.ElementType.Tag||(0,i.isCDATA)(t))?e(t.children):(0,i.isText)(t)?t.data:""}},16304:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.prevElementSibling=t.nextElementSibling=t.getName=t.hasAttrib=t.getAttributeValue=t.getSiblings=t.getParent=t.getChildren=void 0;var n=r(79959);function i(e){return(0,n.hasChildren)(e)?e.children:[]}function a(e){return e.parent||null}t.getChildren=i,t.getParent=a,t.getSiblings=function(e){var t=a(e);if(null!=t)return i(t);for(var r=[e],n=e.prev,o=e.next;null!=n;)r.unshift(n),n=n.prev;for(;null!=o;)r.push(o),o=o.next;return r},t.getAttributeValue=function(e,t){var r;return null===(r=e.attribs)||void 0===r?void 0:r[t]},t.hasAttrib=function(e,t){return null!=e.attribs&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&null!=e.attribs[t]},t.getName=function(e){return e.name},t.nextElementSibling=function(e){for(var t=e.next;null!==t&&!(0,n.isTag)(t);)t=t.next;return t},t.prevElementSibling=function(e){for(var t=e.prev;null!==t&&!(0,n.isTag)(t);)t=t.prev;return t}},73094:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXML=t.decodeHTMLStrict=t.decodeHTMLAttribute=t.decodeHTML=t.determineBranch=t.EntityDecoder=t.DecodingMode=t.BinTrieFlags=t.fromCodePoint=t.replaceCodePoint=t.decodeCodePoint=t.xmlDecodeTree=t.htmlDecodeTree=void 0;var s=o(r(35537));t.htmlDecodeTree=s.default;var c=o(r(57424));t.xmlDecodeTree=c.default;var u=a(r(70105));t.decodeCodePoint=u.default;var l,d,h,p,f=r(70105);function y(e){return e>=l.ZERO&&e<=l.NINE}Object.defineProperty(t,"replaceCodePoint",{enumerable:!0,get:function(){return f.replaceCodePoint}}),Object.defineProperty(t,"fromCodePoint",{enumerable:!0,get:function(){return f.fromCodePoint}}),function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(l||(l={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}(d=t.BinTrieFlags||(t.BinTrieFlags={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(h||(h={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(p=t.DecodingMode||(t.DecodingMode={}));var g=function(){function e(e,t,r){this.decodeTree=e,this.emitCodePoint=t,this.errors=r,this.state=h.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=p.Strict}return e.prototype.startEntity=function(e){this.decodeMode=e,this.state=h.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1},e.prototype.write=function(e,t){switch(this.state){case h.EntityStart:return e.charCodeAt(t)===l.NUM?(this.state=h.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=h.NamedEntity,this.stateNamedEntity(e,t));case h.NumericStart:return this.stateNumericStart(e,t);case h.NumericDecimal:return this.stateNumericDecimal(e,t);case h.NumericHex:return this.stateNumericHex(e,t);case h.NamedEntity:return this.stateNamedEntity(e,t)}},e.prototype.stateNumericStart=function(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===l.LOWER_X?(this.state=h.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=h.NumericDecimal,this.stateNumericDecimal(e,t))},e.prototype.addToNumericResult=function(e,t,r,n){if(t!==r){var i=r-t;this.result=this.result*Math.pow(n,i)+parseInt(e.substr(t,i),n),this.consumed+=i}},e.prototype.stateNumericHex=function(e,t){for(var r,n=t;t=l.UPPER_A&&r<=l.UPPER_F||r>=l.LOWER_A&&r<=l.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(i,3);t+=1}return this.addToNumericResult(e,n,t,16),-1},e.prototype.stateNumericDecimal=function(e,t){for(var r=t;t>14;t=l.UPPER_A&&e<=l.UPPER_Z||e>=l.LOWER_A&&e<=l.LOWER_Z||y(e)}(o)))?0:this.emitNotTerminatedNamedEntity();if(0!=(i=((n=r[this.treeIndex])&d.VALUE_LENGTH)>>14)){if(a===l.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==p.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}var o;return-1},e.prototype.emitNotTerminatedNamedEntity=function(){var e,t=this.result,r=(this.decodeTree[t]&d.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed},e.prototype.emitNamedEntityData=function(e,t,r){var n=this.decodeTree;return this.emitCodePoint(1===t?n[e]&~d.VALUE_LENGTH:n[e+1],r),3===t&&this.emitCodePoint(n[e+2],r),r},e.prototype.end=function(){var e;switch(this.state){case h.NamedEntity:return 0===this.result||this.decodeMode===p.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case h.NumericDecimal:return this.emitNumericEntity(0,2);case h.NumericHex:return this.emitNumericEntity(0,3);case h.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case h.EntityStart:return 0}},e}();function m(e){var t="",r=new g(e,(function(e){return t+=(0,u.fromCodePoint)(e)}));return function(e,n){for(var i=0,a=0;(a=e.indexOf("&",a))>=0;){t+=e.slice(i,a),r.startEntity(n);var o=r.write(e,a+1);if(o<0){i=a+r.end();break}i=a+o,a=0===o?i+1:i}var s=t+e.slice(i);return t="",s}}function b(e,t,r,n){var i=(t&d.BRANCH_LENGTH)>>7,a=t&d.JUMP_TABLE;if(0===i)return 0!==a&&n===a?r:-1;if(a){var o=n-a;return o<0||o>=i?-1:e[r+o]-1}for(var s=r,c=s+i-1;s<=c;){var u=s+c>>>1,l=e[u];if(ln))return e[u+i];c=u-1}}return-1}t.EntityDecoder=g,t.determineBranch=b;var v=m(s.default),_=m(c.default);t.decodeHTML=function(e,t){return void 0===t&&(t=p.Legacy),v(e,t)},t.decodeHTMLAttribute=function(e){return v(e,p.Attribute)},t.decodeHTMLStrict=function(e){return v(e,p.Strict)},t.decodeXML=function(e){return _(e,p.Strict)}},70105:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.replaceCodePoint=t.fromCodePoint=void 0;var n=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function i(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=n.get(e))&&void 0!==t?t:e}t.fromCodePoint=null!==(r=String.fromCodePoint)&&void 0!==r?r:function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)},t.replaceCodePoint=i,t.default=function(e){return(0,t.fromCodePoint)(i(e))}},41029:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.encodeNonAsciiHTML=t.encodeHTML=void 0;var i=n(r(76437)),a=r(29970),o=/[\t\n!-,./:-@[-`\f{-}$\x80-\uFFFF]/g;function s(e,t){for(var r,n="",o=0;null!==(r=e.exec(t));){var s=r.index;n+=t.substring(o,s);var c=t.charCodeAt(s),u=i.default.get(c);if("object"==typeof u){if(s+1{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.getCodePoint=t.xmlReplacer=void 0,t.xmlReplacer=/["&'<>$\x80-\uFFFF]/g;var r=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]);function n(e){for(var n,i="",a=0;null!==(n=t.xmlReplacer.exec(e));){var o=n.index,s=e.charCodeAt(o),c=r.get(s);void 0!==c?(i+=e.substring(a,o)+c,a=o+1):(i+="".concat(e.substring(a,o),"&#x").concat((0,t.getCodePoint)(e,o).toString(16),";"),a=t.xmlReplacer.lastIndex+=Number(55296==(64512&s)))}return i+e.substr(a)}function i(e,t){return function(r){for(var n,i=0,a="";n=e.exec(r);)i!==n.index&&(a+=r.substring(i,n.index)),a+=t.get(n[0].charCodeAt(0)),i=n.index+1;return a+r.substring(i)}}t.getCodePoint=null!=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return 55296==(64512&e.charCodeAt(t))?1024*(e.charCodeAt(t)-55296)+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t)},t.encodeXML=n,t.escape=n,t.escapeUTF8=i(/[&<>'"]/g,r),t.escapeAttribute=i(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),t.escapeText=i(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))},35537:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e){return e.charCodeAt(0)})))},57424:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e){return e.charCodeAt(0)})))},76437:(e,t)=>{"use strict";function r(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLAttribute=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.DecodingMode=t.EntityDecoder=t.encodeHTML5=t.encodeHTML4=t.encodeNonAsciiHTML=t.encodeHTML=t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.encode=t.decodeStrict=t.decode=t.EncodingMode=t.EntityLevel=void 0;var n,i,a=r(73094),o=r(41029),s=r(29970);function c(e,t){if(void 0===t&&(t=n.XML),("number"==typeof t?t:t.level)===n.HTML){var r="object"==typeof t?t.mode:void 0;return(0,a.decodeHTML)(e,r)}return(0,a.decodeXML)(e)}!function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"}(n=t.EntityLevel||(t.EntityLevel={})),function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"}(i=t.EncodingMode||(t.EncodingMode={})),t.decode=c,t.decodeStrict=function(e,t){var r;void 0===t&&(t=n.XML);var i="number"==typeof t?{level:t}:t;return null!==(r=i.mode)&&void 0!==r||(i.mode=a.DecodingMode.Strict),c(e,i)},t.encode=function(e,t){void 0===t&&(t=n.XML);var r="number"==typeof t?{level:t}:t;return r.mode===i.UTF8?(0,s.escapeUTF8)(e):r.mode===i.Attribute?(0,s.escapeAttribute)(e):r.mode===i.Text?(0,s.escapeText)(e):r.level===n.HTML?r.mode===i.ASCII?(0,o.encodeNonAsciiHTML)(e):(0,o.encodeHTML)(e):(0,s.encodeXML)(e)};var u=r(29970);Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return u.encodeXML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return u.escape}}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:function(){return u.escapeUTF8}}),Object.defineProperty(t,"escapeAttribute",{enumerable:!0,get:function(){return u.escapeAttribute}}),Object.defineProperty(t,"escapeText",{enumerable:!0,get:function(){return u.escapeText}});var l=r(41029);Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return l.encodeNonAsciiHTML}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return l.encodeHTML}});var d=r(73094);Object.defineProperty(t,"EntityDecoder",{enumerable:!0,get:function(){return d.EntityDecoder}}),Object.defineProperty(t,"DecodingMode",{enumerable:!0,get:function(){return d.DecodingMode}}),Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return d.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTMLAttribute",{enumerable:!0,get:function(){return d.decodeHTMLAttribute}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return d.decodeXML}})},22699:e=>{"use strict";var t,r="object"==typeof Reflect?Reflect:null,n=r&&"function"==typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,a),n(r)}function a(){"function"==typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}y(e,t,a,{once:!0}),"error"!==t&&function(e,t,r){"function"==typeof e.on&&y(e,"error",t,{once:!0})}(e,i)}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var o=10;function s(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?a.defaultMaxListeners:e._maxListeners}function u(e,t,r,n){var i,a,o,u;if(s(r),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),a=e._events),o=a[t]),void 0===o)o=a[t]=r,++e._eventsCount;else if("function"==typeof o?o=a[t]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),(i=c(e))>0&&o.length>i&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=o.length,u=l,console&&console.warn&&console.warn(u)}return e}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=l.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var c=a[e];if(void 0===c)return!1;if("function"==typeof c)n(c,this,t);else{var u=c.length,l=f(c,u);for(r=0;r=0;a--)if(r[a]===t||r[a].listener===t){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return h(this,e,!0)},a.prototype.rawListeners=function(e){return h(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},a.prototype.listenerCount=p,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},42598:e=>{"use strict";e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;var n,i,a;if(Array.isArray(t)){if((n=t.length)!=r.length)return!1;for(i=n;0!=i--;)if(!e(t[i],r[i]))return!1;return!0}if(t instanceof Map&&r instanceof Map){if(t.size!==r.size)return!1;for(i of t.entries())if(!r.has(i[0]))return!1;for(i of t.entries())if(!e(i[1],r.get(i[0])))return!1;return!0}if(t instanceof Set&&r instanceof Set){if(t.size!==r.size)return!1;for(i of t.entries())if(!r.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(r)){if((n=t.length)!=r.length)return!1;for(i=n;0!=i--;)if(t[i]!==r[i])return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((n=(a=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(r,a[i]))return!1;for(i=n;0!=i--;){var o=a[i];if(!e(t[o],r[o]))return!1}return!0}return t!=t&&r!=r}},88436:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(587),t)},587:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlEndpointFetcher=void 0,r(84342);const n=r(47948),i=r(2085),a=r(78152),o=r(31709),s=r(29038),c=r(88146),u=r(66641),l=r(58607);class d{constructor(e){e=e||{},this.method=e.method||"POST",this.additionalUrlParams=e.additionalUrlParams||new URLSearchParams,this.defaultHeaders=e.defaultHeaders||new Headers,this.fetchCb=e.fetch,this.sparqlJsonParser=new a.SparqlJsonParser(e),this.sparqlXmlParser=new o.SparqlXmlParser(e),this.sparqlParsers={[d.CONTENTTYPE_SPARQL_JSON]:{parseBooleanStream:e=>this.sparqlJsonParser.parseJsonBooleanStream(e),parseResultsStream:e=>this.sparqlJsonParser.parseJsonResultsStream(e)},[d.CONTENTTYPE_SPARQL_XML]:{parseBooleanStream:e=>this.sparqlXmlParser.parseXmlBooleanStream(e),parseResultsStream:e=>this.sparqlXmlParser.parseXmlResultsStream(e)}},this.timeout=e.timeout}getQueryType(e){const t=new i.Parser({sparqlStar:!0}).parse(e);return"query"===t.type?"DESCRIBE"===t.queryType?"CONSTRUCT":t.queryType:"UNKNOWN"}getUpdateTypes(e){const t=new i.Parser({sparqlStar:!0}).parse(e);if("update"===t.type){const e={};for(const r of t.updates)"type"in r?e[r.type]=!0:e[r.updateType]=!0;return e}return"UNKNOWN"}async fetchBindings(e,t){const[r,n]=await this.fetchRawStream(e,t,d.CONTENTTYPE_SPARQL),i=this.sparqlParsers[r];if(!i)throw new Error("Unknown SPARQL results content type: "+r);return i.parseResultsStream(n)}async fetchAsk(e,t){const[r,n]=await this.fetchRawStream(e,t,d.CONTENTTYPE_SPARQL),i=this.sparqlParsers[r];if(!i)throw new Error("Unknown SPARQL results content type: "+r);return i.parseBooleanStream(n)}async fetchTriples(e,t){return(await this.fetchRawStream(e,t,d.CONTENTTYPE_TURTLE))[1].pipe(new u.StreamParser({format:d.CONTENTTYPE_TURTLE}))}async fetchUpdate(e,t){const r=new n.default,i={};this.defaultHeaders.forEach(((e,t)=>{i[t]=e}));const a={method:"POST",headers:Object.assign(Object.assign({},i),{"content-type":"application/sparql-update"}),body:t,signal:r.signal};await this.handleFetchCall(e,a,{ignoreBody:!0}),r.abort()}async fetchRawStream(e,t,r){let n="POST"===this.method?e:e+"?query="+encodeURIComponent(t);const i=new Headers(this.defaultHeaders);let a;return i.append("Accept",r),"POST"===this.method?(i.append("Content-Type","application/x-www-form-urlencoded"),a=new URLSearchParams,a.set("query",t),this.additionalUrlParams.forEach(((e,t)=>{a.set(t,e)})),i.append("Content-Length",a.toString().length.toString())):""!==this.additionalUrlParams.toString()&&(n+=`&${this.additionalUrlParams.toString()}`),this.handleFetchCall(n,{headers:i,method:this.method,body:a})}async handleFetchCall(e,t,r={}){let i;if(this.timeout){const e=new n.default;t.signal=e.signal,i=setTimeout((()=>e.abort()),this.timeout)}const a=await(this.fetchCb||fetch)(e,t);let o;clearTimeout(i),r.ignoreBody||(o=l(a.body)?a.body:new c.ReadableWebToNodeStream(a.body));let u=a.headers.get("Content-Type")||"";if(u.indexOf(";")>0&&(u=u.substr(0,u.indexOf(";"))),!a.ok){const t=/^[^?]*/u.exec(e)[0];let r="empty response";throw o&&(r=await s(o)),new Error(`Invalid SPARQL endpoint response from ${t} (HTTP status ${a.status}):\n${r}`)}return[u,o]}}d.CONTENTTYPE_SPARQL_JSON="application/sparql-results+json",d.CONTENTTYPE_SPARQL_XML="application/sparql-results+xml",d.CONTENTTYPE_SPARQL=`${d.CONTENTTYPE_SPARQL_JSON};q=1.0,${d.CONTENTTYPE_SPARQL_XML};q=0.7`,d.CONTENTTYPE_TURTLE="text/turtle",t.SparqlEndpointFetcher=d},84342:function(){!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}("undefined"!=typeof self?self:this)},67020:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(10972),t),i(r(65093),t),i(r(20651),t),i(r(57736),t),i(r(27666),t)},65093:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.Converter=void 0;const i=r(47401),a=r(10972),o=r(35119),s=r(20651),c=r(27666);class u{constructor(e){(e=e||{}).variableDelimiter=e.variableDelimiter||"_",e.expressionVariableCounter=e.expressionVariableCounter||0,this.util=new c.Util(e),this.initializeNodeHandlers(e)}static registerNodeHandlers(e,t){e.registerNodeHandler(new a.NodeHandlerDocument(e,t)),e.registerNodeHandler(new a.NodeHandlerDefinitionOperation(e,t)),e.registerNodeHandler(new a.NodeHandlerDefinitionFragment(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionFragmentSpread(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionInlineFragment(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionField(e,t))}static registerNodeValueHandlers(e,t){e.registerNodeValueHandler(new a.NodeValueHandlerVariable(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerInt(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerFloat(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerString(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerBoolean(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerNull(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerEnum(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerList(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerObject(e,t))}static registerDirectiveNodeHandlers(e,t){e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerInclude(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerOptional(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerPlural(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerSingle(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerSkip(e,t))}graphqlToSparqlAlgebra(e,t,r){return n(this,void 0,void 0,(function*(){return this.graphqlToSparqlAlgebraRawContext(e,yield this.util.contextParser.parse(t),r)}))}graphqlToSparqlAlgebraRawContext(e,t,r){r=r||{};const n="string"==typeof e?(0,i.parse)(e):e,a={context:t,fragmentDefinitions:this.indexFragments(n),graph:this.util.dataFactory.defaultGraph(),path:[],singularizeState:s.SingularizeState.PLURAL,singularizeVariables:r.singularizeVariables||{},subject:null,terminalVariables:[],variablesDict:r.variablesDict||{},variablesMetaDict:{}};return this.util.handleNode(n,a)}indexFragments(e){const t={},r=[];for(const n of e.definitions)"FragmentDefinition"===n.kind?t[n.name.value]=n:r.push(n);return e.definitions=r,t}initializeNodeHandlers(e){u.registerNodeHandlers(this.util,e),u.registerNodeValueHandlers(this.util,e),u.registerDirectiveNodeHandlers(this.util,e)}}t.Converter=u},20651:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.SingularizeState=void 0,(r=t.SingularizeState||(t.SingularizeState={}))[r.SINGLE=0]="SINGLE",r[r.PLURAL=1]="PLURAL"},57736:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27666:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(91194),i=r(1838),a=r(6789);t.Util=class{constructor(e){this.nodeHandlers={},this.nodeValueHandlers={},this.directiveNodeHandlers={},this.settings=e,this.dataFactory=e.dataFactory||new n.DataFactory,this.operationFactory=new a.Factory(this.dataFactory),this.contextParser=new i.ContextParser}registerNodeHandler(e){this.nodeHandlers[e.targetKind]=e}registerNodeValueHandler(e){this.nodeValueHandlers[e.targetKind]=e}registerDirectiveNodeHandler(e){this.directiveNodeHandlers[e.targetKind]=e}handleNode(e,t){const r=this.nodeHandlers[e.kind];if(!r)throw new Error(`Unsupported GraphQL node '${e.kind}'`);return r.handle(e,t)}handleNodeValue(e,t,r){const n=this.nodeValueHandlers[e.kind];if(!n)throw new Error(`Unsupported GraphQL value node '${e.kind}'`);return n.handle(e,t,r)}handleDirectiveNode(e,t){const r=this.directiveNodeHandlers[e.directive.name.value];return r?r.handle(e,t):null}joinOperations(e){if(1===e.length)return e[0];const t=[],r=[];for(const n of e)"bgp"===n.type?t.push(n):r.push(n);if(t.length===e.length)return this.joinOperationsAsBgp(t);if(t.length===e.length-1&&"leftjoin"===r[0].type&&"bgp"===r[0].input[0].type){const e=r[0];return t.push(e.input[0]),this.operationFactory.createLeftJoin(this.joinOperationsAsBgp(t),e.input[1])}return r.length===e.length?this.joinOperationsAsNestedJoin(r):this.joinOperationsAsNestedJoin([this.joinOperationsAsBgp(t),this.joinOperationsAsNestedJoin(r)])}joinOperationsAsBgp(e){return this.operationFactory.createBgp([].concat.apply([],e.map((e=>e.patterns))))}joinOperationsAsNestedJoin(e){return this.operationFactory.createJoin(e)}appendFieldToPath(e,t){return e.concat([t])}getFieldLabel(e){return(e.alias?e.alias:e.name).value}nameToVariable(e,t){return this.dataFactory.variable((t.path.length?t.path.join(this.settings.variableDelimiter)+this.settings.variableDelimiter:"")+e)}valueToNamedNode(e,t){const r=t.expandTerm(e,!0);if(this.settings.requireContext&&!r)throw new Error("No context entry was found for "+e);return this.dataFactory.namedNode(r||e)}getArgument(e,t){if(e)for(const r of e)if(r.name.value===t)return r}newTypePattern(e,t,r){return this.operationFactory.createPattern(e,this.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),this.valueToNamedNode(t.name.value,r.context),r.graph)}createQuadPattern(e,t,r,n,i){const a=this.valueToNamedNode(t.value,i);return i&&i.getContextRaw()[t.value]&&i.getContextRaw()[t.value]["@reverse"]?this.operationFactory.createPattern(r,a,e,n):this.operationFactory.createPattern(e,a,r,n)}createQuadPath(e,t,r,n,i,a){const o=this.valueToNamedNode(t.value,a);let s=this.operationFactory.createLink(o);for(const e of r.values){if("EnumValue"!==e.kind)throw new Error("Invalid value type for 'alt' argument, must be EnumValue, but got "+e.kind);s=this.operationFactory.createAlt([s,this.operationFactory.createLink(this.valueToNamedNode(e.value,a))])}return a&&a.getContextRaw()[t.value]&&a.getContextRaw()[t.value]["@reverse"]?this.operationFactory.createPath(n,s,e,i):this.operationFactory.createPath(e,s,n,i)}}},99798:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerAdapter=void 0,t.NodeHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}getNodeQuadContextSelectionSet(e,t,r){const n={};if(e)for(const t of e.selections)if("Field"===t.kind){const e=t;this.handleNodeQuadContextField(e,r,n,"id","subject"),this.handleNodeQuadContextField(e,r,n,"graph","graph")}return n}handleNodeQuadContextField(e,t,r,n,i){if(!r[i]&&e.name.value===n){if(!r[i]){const a=this.util.getArgument(e.arguments,"_");if(a){const o=this.util.handleNodeValue(a.value,e.name.value,t);if(1!==o.terms.length)throw new Error(`Only single values can be set as ${n}, but got ${o.terms.length} at ${e.name.value}`);r[i]=o.terms[0],o.auxiliaryPatterns&&(r.auxiliaryPatterns||(r.auxiliaryPatterns=[]),r.auxiliaryPatterns.concat(o.auxiliaryPatterns))}}if(!r[i]){const n=this.util.nameToVariable(this.util.getFieldLabel(e),t);t.terminalVariables.push(n),r[i]=n}}}getDirectiveOutputs(e,t,r){const n=[];if(e)for(const i of e){const e=this.util.handleDirectiveNode({directive:i,fieldLabel:t},r);if(e){if(e.ignore)return null;n.push(e)}}return n}handleDirectiveOutputs(e,t){for(const r of e){if(r.ignore)return this.util.operationFactory.createBgp([]);r.operationOverrider&&(t=r.operationOverrider(t))}return t}}},51092:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionAdapter=void 0;const n=r(99798);class i extends n.NodeHandlerAdapter{constructor(e,t,r){super(e,t,r)}}t.NodeHandlerDefinitionAdapter=i},87440:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionFragment=void 0;const n=r(51092);class i extends n.NodeHandlerDefinitionAdapter{constructor(e,t){super("FragmentDefinition",e,t)}handle(e,t){throw new Error("Illegal state: fragment definitions must be indexed and removed before processing")}}t.NodeHandlerDefinitionFragment=i},59329:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionOperation=void 0;const n=r(51092);class i extends n.NodeHandlerDefinitionAdapter{constructor(e,t){super("OperationDefinition",e,t)}handle(e,t){if("query"!==e.operation)throw new Error("Unsupported definition operation: "+e.operation);if(e.variableDefinitions)for(const r of e.variableDefinitions){const e=r.variable.name.value;r.defaultValue&&(t.variablesDict[e]||(t.variablesDict[e]=r.defaultValue));let n=r.type;const i="NonNullType"===n.kind;i&&(n=n.type);const a="ListType"===n.kind;a&&(n=n.type);const o=n.name.value;t.variablesMetaDict[e]={mandatory:i,list:a,type:o}}const r=this.getDirectiveOutputs(e.directives,e.name?e.name.value:"",t);if(!r)return this.util.operationFactory.createBgp([]);const n=this.util.joinOperations(e.selectionSet.selections.map((e=>this.util.handleNode(e,t))));return this.handleDirectiveOutputs(r,n)}}t.NodeHandlerDefinitionOperation=i},1678:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDocument=void 0;const n=r(6789),i=r(99798);class a extends i.NodeHandlerAdapter{constructor(e,t){super("Document",e,t)}handle(e,t){const r=e.definitions.map((e=>{const r=this.getNodeQuadContextDefinitionNode(e,Object.assign(Object.assign({},t),{ignoreUnknownVariables:!0})),n=Object.assign(Object.assign({},t),{graph:r.graph||t.graph,subject:r.subject||this.util.dataFactory.blankNode()});let i=this.util.handleNode(e,n);return r&&r.auxiliaryPatterns&&(i=this.util.joinOperations([i,this.util.operationFactory.createBgp(r.auxiliaryPatterns)])),i})),n=this.util.operationFactory.createProject(1===r.length?r[0]:this.util.operationFactory.createUnion(r),t.terminalVariables);return this.translateBlankNodesToVariables(n)}getNodeQuadContextDefinitionNode(e,t){if("OperationDefinition"===e.kind)return this.getNodeQuadContextSelectionSet(e.selectionSet,e.name?e.name.value:"",t);throw new Error(`Unsupported definition: ${e.kind}`)}translateBlankNodesToVariables(e){const t=this,r={},i=Array.from(e.variables).reduce(((e,t)=>(e[t.value]=!0,e)),{});return n.Util.mapOperation(e,{path:(e,t)=>({recurse:!1,result:t.createPath(a(e.subject),e.predicate,a(e.object),a(e.graph))}),pattern:(e,t)=>({recurse:!1,result:t.createPattern(a(e.subject),a(e.predicate),a(e.object),a(e.graph))})});function a(e){if("BlankNode"===e.termType){let a=r[e.value];return a||(a=n.Util.createUniqueVariable(e.value,i,t.util.dataFactory),i[a.value]=!0,r[e.value]=a),a}return e}}}t.NodeHandlerDocument=a},30623:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionAdapter=void 0;const n=r(6789),i=r(20651),a=r(99798);class o extends a.NodeHandlerAdapter{constructor(e,t,r){super(e,t,r)}getNodeQuadContextFieldNode(e,t,r){return this.getNodeQuadContextSelectionSet(e.selectionSet,t,Object.assign(Object.assign({},r),{path:this.util.appendFieldToPath(r.path,t)}))}fieldToOperation(e,t,r,a){const o=r;let s,c=0;if(("id"===t.name.value||"graph"===t.name.value)&&(r=!1,t.arguments))for(const r of t.arguments)"_"===r.name.value&&this.util.handleNodeValue(r.value,t.name.value,e);const u=this.util.getFieldLabel(t);if(e.singularizeState===i.SingularizeState.SINGLE&&(e.singularizeVariables[this.util.nameToVariable(u,e).value]=!0),r){const t=this.handleMetaField(e,u,a);if(t)return t}const l=a?[this.util.operationFactory.createBgp(a)]:[],d=this.getNodeQuadContextFieldNode(t,u,e);let h=d.subject||this.util.nameToVariable(u,e),p=d.graph||e.graph;d.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(d.auxiliaryPatterns));let f=!0,y=null;if(r&&t.arguments&&t.arguments.length)for(const n of t.arguments){if("_"===n.name.value){const i=this.util.handleNodeValue(n.value,t.name.value,e);y=i.terms,l.push(this.util.operationFactory.createBgp(i.terms.map((r=>this.util.createQuadPattern(e.subject,t.name,r,e.graph,e.context))))),i.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(i.auxiliaryPatterns)),r=!1;break}if("graph"===n.name.value){const r=this.util.handleNodeValue(n.value,t.name.value,e);if(1!==r.terms.length)throw new Error(`Only single values can be set as graph, but got ${r.terms.length} at ${t.name.value}`);p=r.terms[0],e=Object.assign(Object.assign({},e),{graph:p}),r.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(r.auxiliaryPatterns));break}if("alt"===n.name.value){let r=n.value;"ListValue"!==r.kind&&(r={kind:"ListValue",values:[r]}),l.push(this.util.createQuadPath(e.subject,t.name,r,h,e.graph,e.context)),f=!1;break}}if(r&&f&&l.push(this.util.operationFactory.createBgp([this.util.createQuadPattern(e.subject,t.name,h,e.graph,e.context)])),t.arguments&&t.arguments.length)for(const r of t.arguments)if("_"===r.name.value||"graph"===r.name.value||"alt"===r.name.value);else if("first"===r.name.value){if("IntValue"!==r.value.kind)throw new Error("Invalid value type for 'first' argument: "+r.value.kind);s=parseInt(r.value.value,10)}else if("offset"===r.name.value){if("IntValue"!==r.value.kind)throw new Error("Invalid value type for 'offset' argument: "+r.value.kind);c=parseInt(r.value.value,10)}else{const t=this.util.handleNodeValue(r.value,r.name.value,e);l.push(this.util.operationFactory.createBgp(t.terms.map((t=>this.util.createQuadPattern(h,r.name,t,e.graph,e.context))))),t.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(t.auxiliaryPatterns))}const g=this.getDirectiveOutputs(t.directives,u,e);if(!g)return this.util.operationFactory.createBgp([]);let m=this.util.joinOperations(l);if(t.selectionSet&&t.selectionSet.selections.length){if(y){if(1!==y.length)throw new Error(`Only single values can be set as id, but got ${y.length} at ${t.name.value}`);h=y[0]}const r=Object.assign(Object.assign(Object.assign({},e),o?{path:this.util.appendFieldToPath(e.path,u)}:{}),{graph:p,subject:o?h:e.subject});let n=!1;const i=t.selectionSet.selections.filter((e=>"Field"!==e.kind||"totalCount"!==e.name.value||(n=!0,!1)));let a=this.util.joinOperations(l.concat(i.map((e=>this.util.handleNode(e,r)))));if(n){const t=this.util.dataFactory.variable("var"+this.settings.expressionVariableCounter++),r=this.util.dataFactory.variable(h.value+this.settings.variableDelimiter+"totalCount"),n=this.util.operationFactory.createBoundAggregate(t,"count",this.util.operationFactory.createTermExpression(h),!1),o=this.util.operationFactory.createProject(this.util.operationFactory.createExtend(this.util.operationFactory.createGroup(m,[],[n]),r,this.util.operationFactory.createTermExpression(t)),[r]);e.terminalVariables.push(r),a=i.length?this.util.operationFactory.createJoin([this.util.operationFactory.createProject(a,[]),o]):o}m=a}else r&&"Variable"===h.termType&&e.terminalVariables.push(h);return(c||s)&&(m=this.util.operationFactory.createSlice(this.util.operationFactory.createProject(m,n.Util.inScopeVariables(m)),c,s)),this.handleDirectiveOutputs(g,m)}handleMetaField(e,t,r){if("__typename"===t){const n=this.util.nameToVariable(t,e);return e.terminalVariables.push(n),this.util.operationFactory.createBgp([this.util.operationFactory.createPattern(e.subject,this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),this.util.nameToVariable(t,e),e.graph)].concat(r||[]))}}}t.NodeHandlerSelectionAdapter=o},90080:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionField=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("Field",e,t)}handle(e,t){return this.fieldToOperation(t,e,!0)}}t.NodeHandlerSelectionField=i},42646:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionFragmentSpread=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("FragmentSpread",e,t)}handle(e,t){const r=t.fragmentDefinitions[e.name.value];if(!r)throw new Error("Undefined fragment definition: "+e.name.value);const n={alias:void 0,arguments:void 0,directives:r.directives,kind:"Field",name:e.name,selectionSet:r.selectionSet},i=[this.util.newTypePattern(t.subject,r.typeCondition,t)];return this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),this.fieldToOperation(t,n,!1,i))}}t.NodeHandlerSelectionFragmentSpread=i},19501:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionInlineFragment=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("InlineFragment",e,t)}handle(e,t){const r={alias:void 0,arguments:void 0,directives:e.directives,kind:"Field",name:{kind:"Name",value:t.subject.value},selectionSet:e.selectionSet},n=e.typeCondition?[this.util.newTypePattern(t.subject,e.typeCondition,t)]:[];return this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),this.fieldToOperation(t,r,!1,n))}}t.NodeHandlerSelectionInlineFragment=i},43630:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerAdapter=void 0,t.DirectiveNodeHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}getDirectiveConditionalValue(e,t){const r=this.util.getArgument(e.arguments,"if");if(!r)throw new Error(`The directive ${e.name.value} is missing an if-argument.`);const n=this.util.handleNodeValue(r.value,r.name.value,t);if(1!==n.terms.length)throw new Error(`Can not apply the directive ${e.name.value} with a list.`);return n.terms[0]}isDirectiveScopeAll(e){const t=this.util.getArgument(e.arguments,"scope");return t&&"EnumValue"===t.value.kind&&"all"===t.value.value}}},76895:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerInclude=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("include",e,t)}handle(e,t){const r=this.getDirectiveConditionalValue(e.directive,t);return"Literal"===r.termType&&"false"===r.value?{ignore:!0}:{}}}t.DirectiveNodeHandlerInclude=i},83423:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerOptional=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("optional",e,t)}handle(e,t){return{operationOverrider:e=>this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),e)}}}t.DirectiveNodeHandlerOptional=i},14254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerPlural=void 0;const n=r(20651),i=r(43630);class a extends i.DirectiveNodeHandlerAdapter{constructor(e,t){super("plural",e,t)}handle(e,t){return this.isDirectiveScopeAll(e.directive)&&(t.singularizeState=n.SingularizeState.PLURAL),delete t.singularizeVariables[this.util.nameToVariable(e.fieldLabel,t).value],{}}}t.DirectiveNodeHandlerPlural=a},83675:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerSingle=void 0;const n=r(20651),i=r(43630);class a extends i.DirectiveNodeHandlerAdapter{constructor(e,t){super("single",e,t)}handle(e,t){return this.isDirectiveScopeAll(e.directive)&&(t.singularizeState=n.SingularizeState.SINGLE),t.singularizeVariables[this.util.nameToVariable(e.fieldLabel,t).value]=!0,{}}}t.DirectiveNodeHandlerSingle=a},80363:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerSkip=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("skip",e,t)}handle(e,t){const r=this.getDirectiveConditionalValue(e.directive,t);return"Literal"===r.termType&&"true"===r.value?{ignore:!0}:{}}}t.DirectiveNodeHandlerSkip=i},35119:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(43630),t),i(r(76895),t),i(r(83423),t),i(r(14254),t),i(r(83675),t),i(r(80363),t)},10972:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35119),t),i(r(14849),t),i(r(99798),t),i(r(51092),t),i(r(87440),t),i(r(59329),t),i(r(1678),t),i(r(30623),t),i(r(90080),t),i(r(42646),t),i(r(19501),t)},33743:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerAdapter=void 0,t.NodeValueHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}}},75811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerBoolean=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("BooleanValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#boolean")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value?"true":"false",this.datatype)]}}}t.NodeValueHandlerBoolean=i},67931:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerEnum=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("EnumValue",e,t)}handle(e,t,r){return{terms:[this.util.valueToNamedNode(e.value,r.context)]}}}t.NodeValueHandlerEnum=i},28715:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerFloat=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("FloatValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#float")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value,this.datatype)]}}}t.NodeValueHandlerFloat=i},44163:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerInt=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("IntValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#integer")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value,this.datatype)]}}}t.NodeValueHandlerInt=i},69864:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerList=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("ListValue",e,t),this.nodeFirst=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),this.nodeRest=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),this.nodeNil=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil")}handle(e,t,r){const n=[];let i=[];for(const a of e.values){const e=this.util.handleNodeValue(a,t,r);for(const t of e.terms)n.push(t);e.auxiliaryPatterns&&(i=i.concat(e.auxiliaryPatterns))}if(this.settings.arraysToRdfLists){const e=this.util.dataFactory.blankNode();let t=e,a=n.length;for(const e of n){i.push(this.util.operationFactory.createPattern(t,this.nodeFirst,e,r.graph));const n=0==--a?this.nodeNil:this.util.dataFactory.blankNode();i.push(this.util.operationFactory.createPattern(t,this.nodeRest,n,r.graph)),t=n}return{terms:[e],auxiliaryPatterns:i}}return{terms:n,auxiliaryPatterns:i}}}t.NodeValueHandlerList=i},39757:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerNull=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("NullValue",e,t),this.nil=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil")}handle(e,t,r){return{terms:[this.nil]}}}t.NodeValueHandlerNull=i},82649:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerObject=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("ObjectValue",e,t)}handle(e,t,r){const n=this.util.dataFactory.blankNode();let i=[];for(const a of e.fields){const e=this.util.handleNodeValue(a.value,t,r);for(const t of e.terms)i.push(this.util.createQuadPattern(n,a.name,t,r.graph,r.context));e.auxiliaryPatterns&&(i=i.concat(e.auxiliaryPatterns))}return{terms:[n],auxiliaryPatterns:i}}}t.NodeValueHandlerObject=i},86842:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerString=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("StringValue",e,t)}handle(e,t,r){const n=r.context.getContextRaw()[t];let i,a;return n&&"string"!=typeof n&&(n["@language"]?i=n["@language"]:n["@type"]&&(a=this.util.dataFactory.namedNode(n["@type"]))),{terms:[this.util.dataFactory.literal(e.value,i||a)]}}}t.NodeValueHandlerString=i},15834:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerVariable=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("Variable",e,t)}handle(e,t,r){const n=e.name.value,i=r.variablesDict[n],a=r.variablesMetaDict[n];if(!i){if(r.ignoreUnknownVariables||a&&!a.mandatory){const e=this.util.dataFactory.variable(n);return r.terminalVariables.map((e=>e.value)).indexOf(n)<0&&r.terminalVariables.push(e),{terms:[e]}}throw new Error(`Undefined variable: ${n}`)}if("Variable"===i.kind)throw new Error(`Variable refers to another variable: ${n}`);if(a)if(a.list){if("ListValue"!==i.kind)throw new Error(`Expected a list, but got ${i.kind} for ${n}`);if(a.type){const e=i;for(const t of e.values)if(t.kind!==a.type)throw new Error(`Expected ${a.type}, but got ${t.kind} for ${n}`)}}else a.type;return this.util.handleNodeValue(i,t,r)}}t.NodeValueHandlerVariable=i},14849:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33743),t),i(r(75811),t),i(r(67931),t),i(r(28715),t),i(r(44163),t),i(r(69864),t),i(r(39757),t),i(r(82649),t),i(r(86842),t),i(r(15834),t)},86583:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.printError=w,t.GraphQLError=void 0;var i,a=(i=r(68648))&&i.__esModule?i:{default:i},o=r(97682),s=r(27447),c=r(79941);function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){for(var r=0;r0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),null!=o&&o.stack?(Object.defineProperty(p(b),"stack",{value:o.stack,writable:!0,configurable:!0}),h(b)):(Error.captureStackTrace?Error.captureStackTrace(p(b),f):Object.defineProperty(p(b),"stack",{value:Error().stack,writable:!0,configurable:!0}),b)}return n=f,(i=[{key:"toString",value:function(){return w(this)}},{key:o.SYMBOL_TO_STRING_TAG,get:function(){return"Object"}}])&&d(n.prototype,i),f}(f(Error));function _(e){return void 0===e||0===e.length?void 0:e}function w(e){var t=e.message;if(e.nodes)for(var r=0,n=e.nodes;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.syntaxError=function(e,t,r){return new n.GraphQLError("Syntax Error: ".concat(r),void 0,e,[t])};var n=r(86583)},72678:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=e.prototype.toJSON;"function"==typeof t||(0,n.default)(0),e.prototype.inspect=t,i.default&&(e.prototype[i.default]=t)};var n=a(r(75006)),i=a(r(98019));function a(e){return e&&e.__esModule?e:{default:e}}},61914:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!Boolean(e))throw new Error(t)}},98048:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return c(e,[])};var n,i=(n=r(98019))&&n.__esModule?n:{default:n};function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}var o=10,s=2;function c(e,t){switch(a(e)){case"string":return JSON.stringify(e);case"function":return e.name?"[function ".concat(e.name,"]"):"[function]";case"object":return null===e?"null":function(e,t){if(-1!==t.indexOf(e))return"[Circular]";var r=[].concat(t,[e]),n=function(e){var t=e[String(i.default)];return"function"==typeof t?t:"function"==typeof e.inspect?e.inspect:void 0}(e);if(void 0!==n){var a=n.call(e);if(a!==e)return"string"==typeof a?a:c(a,r)}else if(Array.isArray(e))return function(e,t){if(0===e.length)return"[]";if(t.length>s)return"[Array]";for(var r=Math.min(o,e.length),n=e.length-r,i=[],a=0;a1&&i.push("... ".concat(n," more items")),"["+i.join(", ")+"]"}(e,r);return function(e,t){var r=Object.keys(e);return 0===r.length?"{}":t.length>s?"["+function(e){var t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if("Object"===t&&"function"==typeof e.constructor){var r=e.constructor.name;if("string"==typeof r&&""!==r)return r}return t}(e)+"]":"{ "+r.map((function(r){return r+": "+c(e[r],t)})).join(", ")+" }"}(e,r)}(e,t);default:return String(e)}}},70882:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,(n=r(98048))&&n.__esModule;t.default=function(e,t){return e instanceof t}},75006:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!Boolean(e))throw new Error(null!=t?t:"Unexpected invariant triggered.")}},68648:(e,t)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"object"==r(e)&&null!==e}},98019:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):void 0;t.default=r},64560:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=function(e){return null!=e&&"string"==typeof e.kind},t.Token=t.Location=void 0;var n,i=(n=r(72678))&&n.__esModule?n:{default:n},a=function(){function e(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}return e.prototype.toJSON=function(){return{start:this.start,end:this.end}},e}();t.Location=a,(0,i.default)(a);var o=function(){function e(e,t,r,n,i,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=i,this.value=o,this.prev=a,this.next=null}return e.prototype.toJSON=function(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}},e}();t.Token=o,(0,i.default)(o)},49501:(e,t)=>{"use strict";function r(e){for(var t=0;to&&r(t[s-1]);)--s;return t.slice(o,s).join("\n")},t.getBlockStringIndentation=n,t.printBlockString=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=-1===e.indexOf("\n"),i=" "===e[0]||"\t"===e[0],a='"'===e[e.length-1],o="\\"===e[e.length-1],s=!n||a||o||r,c="";return!s||n&&i||(c+="\n"+t),c+=t?e.replace(/\n/g,"\n"+t):e,s&&(c+="\n"),'"""'+c.replace(/"""/g,'\\"""')+'"""'}},29496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveLocation=void 0;var r=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});t.DirectiveLocation=r},47401:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Source",{enumerable:!0,get:function(){return n.Source}}),Object.defineProperty(t,"getLocation",{enumerable:!0,get:function(){return i.getLocation}}),Object.defineProperty(t,"printLocation",{enumerable:!0,get:function(){return a.printLocation}}),Object.defineProperty(t,"printSourceLocation",{enumerable:!0,get:function(){return a.printSourceLocation}}),Object.defineProperty(t,"Kind",{enumerable:!0,get:function(){return o.Kind}}),Object.defineProperty(t,"TokenKind",{enumerable:!0,get:function(){return s.TokenKind}}),Object.defineProperty(t,"Lexer",{enumerable:!0,get:function(){return c.Lexer}}),Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return u.parse}}),Object.defineProperty(t,"parseValue",{enumerable:!0,get:function(){return u.parseValue}}),Object.defineProperty(t,"parseType",{enumerable:!0,get:function(){return u.parseType}}),Object.defineProperty(t,"print",{enumerable:!0,get:function(){return l.print}}),Object.defineProperty(t,"visit",{enumerable:!0,get:function(){return d.visit}}),Object.defineProperty(t,"visitInParallel",{enumerable:!0,get:function(){return d.visitInParallel}}),Object.defineProperty(t,"getVisitFn",{enumerable:!0,get:function(){return d.getVisitFn}}),Object.defineProperty(t,"BREAK",{enumerable:!0,get:function(){return d.BREAK}}),Object.defineProperty(t,"Location",{enumerable:!0,get:function(){return h.Location}}),Object.defineProperty(t,"Token",{enumerable:!0,get:function(){return h.Token}}),Object.defineProperty(t,"isDefinitionNode",{enumerable:!0,get:function(){return p.isDefinitionNode}}),Object.defineProperty(t,"isExecutableDefinitionNode",{enumerable:!0,get:function(){return p.isExecutableDefinitionNode}}),Object.defineProperty(t,"isSelectionNode",{enumerable:!0,get:function(){return p.isSelectionNode}}),Object.defineProperty(t,"isValueNode",{enumerable:!0,get:function(){return p.isValueNode}}),Object.defineProperty(t,"isTypeNode",{enumerable:!0,get:function(){return p.isTypeNode}}),Object.defineProperty(t,"isTypeSystemDefinitionNode",{enumerable:!0,get:function(){return p.isTypeSystemDefinitionNode}}),Object.defineProperty(t,"isTypeDefinitionNode",{enumerable:!0,get:function(){return p.isTypeDefinitionNode}}),Object.defineProperty(t,"isTypeSystemExtensionNode",{enumerable:!0,get:function(){return p.isTypeSystemExtensionNode}}),Object.defineProperty(t,"isTypeExtensionNode",{enumerable:!0,get:function(){return p.isTypeExtensionNode}}),Object.defineProperty(t,"DirectiveLocation",{enumerable:!0,get:function(){return f.DirectiveLocation}});var n=r(7811),i=r(27447),a=r(79941),o=r(55325),s=r(49226),c=r(1622),u=r(24665),l=r(33083),d=r(82624),h=r(64560),p=r(92858),f=r(29496)},55325:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Kind=void 0;var r=Object.freeze({NAME:"Name",DOCUMENT:"Document",OPERATION_DEFINITION:"OperationDefinition",VARIABLE_DEFINITION:"VariableDefinition",SELECTION_SET:"SelectionSet",FIELD:"Field",ARGUMENT:"Argument",FRAGMENT_SPREAD:"FragmentSpread",INLINE_FRAGMENT:"InlineFragment",FRAGMENT_DEFINITION:"FragmentDefinition",VARIABLE:"Variable",INT:"IntValue",FLOAT:"FloatValue",STRING:"StringValue",BOOLEAN:"BooleanValue",NULL:"NullValue",ENUM:"EnumValue",LIST:"ListValue",OBJECT:"ObjectValue",OBJECT_FIELD:"ObjectField",DIRECTIVE:"Directive",NAMED_TYPE:"NamedType",LIST_TYPE:"ListType",NON_NULL_TYPE:"NonNullType",SCHEMA_DEFINITION:"SchemaDefinition",OPERATION_TYPE_DEFINITION:"OperationTypeDefinition",SCALAR_TYPE_DEFINITION:"ScalarTypeDefinition",OBJECT_TYPE_DEFINITION:"ObjectTypeDefinition",FIELD_DEFINITION:"FieldDefinition",INPUT_VALUE_DEFINITION:"InputValueDefinition",INTERFACE_TYPE_DEFINITION:"InterfaceTypeDefinition",UNION_TYPE_DEFINITION:"UnionTypeDefinition",ENUM_TYPE_DEFINITION:"EnumTypeDefinition",ENUM_VALUE_DEFINITION:"EnumValueDefinition",INPUT_OBJECT_TYPE_DEFINITION:"InputObjectTypeDefinition",DIRECTIVE_DEFINITION:"DirectiveDefinition",SCHEMA_EXTENSION:"SchemaExtension",SCALAR_TYPE_EXTENSION:"ScalarTypeExtension",OBJECT_TYPE_EXTENSION:"ObjectTypeExtension",INTERFACE_TYPE_EXTENSION:"InterfaceTypeExtension",UNION_TYPE_EXTENSION:"UnionTypeExtension",ENUM_TYPE_EXTENSION:"EnumTypeExtension",INPUT_OBJECT_TYPE_EXTENSION:"InputObjectTypeExtension"});t.Kind=r},1622:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPunctuatorTokenKind=function(e){return e===a.TokenKind.BANG||e===a.TokenKind.DOLLAR||e===a.TokenKind.AMP||e===a.TokenKind.PAREN_L||e===a.TokenKind.PAREN_R||e===a.TokenKind.SPREAD||e===a.TokenKind.COLON||e===a.TokenKind.EQUALS||e===a.TokenKind.AT||e===a.TokenKind.BRACKET_L||e===a.TokenKind.BRACKET_R||e===a.TokenKind.BRACE_L||e===a.TokenKind.PIPE||e===a.TokenKind.BRACE_R},t.Lexer=void 0;var n=r(59671),i=r(64560),a=r(49226),o=r(49501),s=function(){function e(e){var t=new i.Token(a.TokenKind.SOF,0,0,0,0,null);this.source=e,this.lastToken=t,this.token=t,this.line=1,this.lineStart=0}var t=e.prototype;return t.advance=function(){return this.lastToken=this.token,this.token=this.lookahead()},t.lookahead=function(){var e=this.token;if(e.kind!==a.TokenKind.EOF)do{var t;e=null!==(t=e.next)&&void 0!==t?t:e.next=u(this,e)}while(e.kind===a.TokenKind.COMMENT);return e},e}();function c(e){return isNaN(e)?a.TokenKind.EOF:e<127?JSON.stringify(String.fromCharCode(e)):'"\\u'.concat(("00"+e.toString(16).toUpperCase()).slice(-4),'"')}function u(e,t){for(var r=e.source,o=r.body,s=o.length,c=t.end;c31||9===s));return new i.Token(a.TokenKind.COMMENT,t,u,r,n,o,c.slice(t+1,u))}function h(e,t,r,o,s,u){var l=e.body,d=r,h=t,f=!1;if(45===d&&(d=l.charCodeAt(++h)),48===d){if((d=l.charCodeAt(++h))>=48&&d<=57)throw(0,n.syntaxError)(e,h,"Invalid number, unexpected digit after 0: ".concat(c(d),"."))}else h=p(e,h,d),d=l.charCodeAt(h);if(46===d&&(f=!0,d=l.charCodeAt(++h),h=p(e,h,d),d=l.charCodeAt(h)),69!==d&&101!==d||(f=!0,43!==(d=l.charCodeAt(++h))&&45!==d||(d=l.charCodeAt(++h)),h=p(e,h,d),d=l.charCodeAt(h)),46===d||function(e){return 95===e||e>=65&&e<=90||e>=97&&e<=122}(d))throw(0,n.syntaxError)(e,h,"Invalid number, expected digit but got: ".concat(c(d),"."));return new i.Token(f?a.TokenKind.FLOAT:a.TokenKind.INT,t,h,o,s,u,l.slice(t,h))}function p(e,t,r){var i=e.body,a=t,o=r;if(o>=48&&o<=57){do{o=i.charCodeAt(++a)}while(o>=48&&o<=57);return a}throw(0,n.syntaxError)(e,a,"Invalid number, expected digit but got: ".concat(c(o),"."))}function f(e,t,r,o,s){for(var u,l,d,h,p=e.body,f=t+1,y=f,m=0,b="";f=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function m(e,t,r,n,o){for(var s=e.body,c=s.length,u=t+1,l=0;u!==c&&!isNaN(l=s.charCodeAt(u))&&(95===l||l>=48&&l<=57||l>=65&&l<=90||l>=97&&l<=122);)++u;return new i.Token(a.TokenKind.NAME,t,u,r,n,o,s.slice(t,u))}t.Lexer=s},27447:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getLocation=function(e,t){for(var r,n=/\r\n|[\n\r]/g,i=1,a=t+1;(r=n.exec(e.body))&&r.index{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parse=function(e,t){return new l(e,t).parseDocument()},t.parseValue=function(e,t){var r=new l(e,t);r.expectToken(o.TokenKind.SOF);var n=r.parseValueLiteral(!1);return r.expectToken(o.TokenKind.EOF),n},t.parseType=function(e,t){var r=new l(e,t);r.expectToken(o.TokenKind.SOF);var n=r.parseTypeReference();return r.expectToken(o.TokenKind.EOF),n},t.Parser=void 0;var n=r(59671),i=r(55325),a=r(64560),o=r(49226),s=r(7811),c=r(29496),u=r(1622),l=function(){function e(e,t){var r=(0,s.isSource)(e)?e:new s.Source(e);this._lexer=new u.Lexer(r),this._options=t}var t=e.prototype;return t.parseName=function(){var e=this.expectToken(o.TokenKind.NAME);return{kind:i.Kind.NAME,value:e.value,loc:this.loc(e)}},t.parseDocument=function(){var e=this._lexer.token;return{kind:i.Kind.DOCUMENT,definitions:this.many(o.TokenKind.SOF,this.parseDefinition,o.TokenKind.EOF),loc:this.loc(e)}},t.parseDefinition=function(){if(this.peek(o.TokenKind.NAME))switch(this._lexer.token.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return this.parseTypeSystemDefinition();case"extend":return this.parseTypeSystemExtension()}else{if(this.peek(o.TokenKind.BRACE_L))return this.parseOperationDefinition();if(this.peekDescription())return this.parseTypeSystemDefinition()}throw this.unexpected()},t.parseOperationDefinition=function(){var e=this._lexer.token;if(this.peek(o.TokenKind.BRACE_L))return{kind:i.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet(),loc:this.loc(e)};var t,r=this.parseOperationType();return this.peek(o.TokenKind.NAME)&&(t=this.parseName()),{kind:i.Kind.OPERATION_DEFINITION,operation:r,name:t,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},t.parseOperationType=function(){var e=this.expectToken(o.TokenKind.NAME);switch(e.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw this.unexpected(e)},t.parseVariableDefinitions=function(){return this.optionalMany(o.TokenKind.PAREN_L,this.parseVariableDefinition,o.TokenKind.PAREN_R)},t.parseVariableDefinition=function(){var e=this._lexer.token;return{kind:i.Kind.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(o.TokenKind.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(o.TokenKind.EQUALS)?this.parseValueLiteral(!0):void 0,directives:this.parseDirectives(!0),loc:this.loc(e)}},t.parseVariable=function(){var e=this._lexer.token;return this.expectToken(o.TokenKind.DOLLAR),{kind:i.Kind.VARIABLE,name:this.parseName(),loc:this.loc(e)}},t.parseSelectionSet=function(){var e=this._lexer.token;return{kind:i.Kind.SELECTION_SET,selections:this.many(o.TokenKind.BRACE_L,this.parseSelection,o.TokenKind.BRACE_R),loc:this.loc(e)}},t.parseSelection=function(){return this.peek(o.TokenKind.SPREAD)?this.parseFragment():this.parseField()},t.parseField=function(){var e,t,r=this._lexer.token,n=this.parseName();return this.expectOptionalToken(o.TokenKind.COLON)?(e=n,t=this.parseName()):t=n,{kind:i.Kind.FIELD,alias:e,name:t,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(o.TokenKind.BRACE_L)?this.parseSelectionSet():void 0,loc:this.loc(r)}},t.parseArguments=function(e){var t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(o.TokenKind.PAREN_L,t,o.TokenKind.PAREN_R)},t.parseArgument=function(){var e=this._lexer.token,t=this.parseName();return this.expectToken(o.TokenKind.COLON),{kind:i.Kind.ARGUMENT,name:t,value:this.parseValueLiteral(!1),loc:this.loc(e)}},t.parseConstArgument=function(){var e=this._lexer.token;return{kind:i.Kind.ARGUMENT,name:this.parseName(),value:(this.expectToken(o.TokenKind.COLON),this.parseValueLiteral(!0)),loc:this.loc(e)}},t.parseFragment=function(){var e=this._lexer.token;this.expectToken(o.TokenKind.SPREAD);var t=this.expectOptionalKeyword("on");return!t&&this.peek(o.TokenKind.NAME)?{kind:i.Kind.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1),loc:this.loc(e)}:{kind:i.Kind.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},t.parseFragmentDefinition=function(){var e,t=this._lexer.token;return this.expectKeyword("fragment"),!0===(null===(e=this._options)||void 0===e?void 0:e.experimentalFragmentVariables)?{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(t)}:{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(t)}},t.parseFragmentName=function(){if("on"===this._lexer.token.value)throw this.unexpected();return this.parseName()},t.parseValueLiteral=function(e){var t=this._lexer.token;switch(t.kind){case o.TokenKind.BRACKET_L:return this.parseList(e);case o.TokenKind.BRACE_L:return this.parseObject(e);case o.TokenKind.INT:return this._lexer.advance(),{kind:i.Kind.INT,value:t.value,loc:this.loc(t)};case o.TokenKind.FLOAT:return this._lexer.advance(),{kind:i.Kind.FLOAT,value:t.value,loc:this.loc(t)};case o.TokenKind.STRING:case o.TokenKind.BLOCK_STRING:return this.parseStringLiteral();case o.TokenKind.NAME:switch(this._lexer.advance(),t.value){case"true":return{kind:i.Kind.BOOLEAN,value:!0,loc:this.loc(t)};case"false":return{kind:i.Kind.BOOLEAN,value:!1,loc:this.loc(t)};case"null":return{kind:i.Kind.NULL,loc:this.loc(t)};default:return{kind:i.Kind.ENUM,value:t.value,loc:this.loc(t)}}case o.TokenKind.DOLLAR:if(!e)return this.parseVariable()}throw this.unexpected()},t.parseStringLiteral=function(){var e=this._lexer.token;return this._lexer.advance(),{kind:i.Kind.STRING,value:e.value,block:e.kind===o.TokenKind.BLOCK_STRING,loc:this.loc(e)}},t.parseList=function(e){var t=this,r=this._lexer.token;return{kind:i.Kind.LIST,values:this.any(o.TokenKind.BRACKET_L,(function(){return t.parseValueLiteral(e)}),o.TokenKind.BRACKET_R),loc:this.loc(r)}},t.parseObject=function(e){var t=this,r=this._lexer.token;return{kind:i.Kind.OBJECT,fields:this.any(o.TokenKind.BRACE_L,(function(){return t.parseObjectField(e)}),o.TokenKind.BRACE_R),loc:this.loc(r)}},t.parseObjectField=function(e){var t=this._lexer.token,r=this.parseName();return this.expectToken(o.TokenKind.COLON),{kind:i.Kind.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e),loc:this.loc(t)}},t.parseDirectives=function(e){for(var t=[];this.peek(o.TokenKind.AT);)t.push(this.parseDirective(e));return t},t.parseDirective=function(e){var t=this._lexer.token;return this.expectToken(o.TokenKind.AT),{kind:i.Kind.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e),loc:this.loc(t)}},t.parseTypeReference=function(){var e,t=this._lexer.token;return this.expectOptionalToken(o.TokenKind.BRACKET_L)?(e=this.parseTypeReference(),this.expectToken(o.TokenKind.BRACKET_R),e={kind:i.Kind.LIST_TYPE,type:e,loc:this.loc(t)}):e=this.parseNamedType(),this.expectOptionalToken(o.TokenKind.BANG)?{kind:i.Kind.NON_NULL_TYPE,type:e,loc:this.loc(t)}:e},t.parseNamedType=function(){var e=this._lexer.token;return{kind:i.Kind.NAMED_TYPE,name:this.parseName(),loc:this.loc(e)}},t.parseTypeSystemDefinition=function(){var e=this.peekDescription()?this._lexer.lookahead():this._lexer.token;if(e.kind===o.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}throw this.unexpected(e)},t.peekDescription=function(){return this.peek(o.TokenKind.STRING)||this.peek(o.TokenKind.BLOCK_STRING)},t.parseDescription=function(){if(this.peekDescription())return this.parseStringLiteral()},t.parseSchemaDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");var r=this.parseDirectives(!0),n=this.many(o.TokenKind.BRACE_L,this.parseOperationTypeDefinition,o.TokenKind.BRACE_R);return{kind:i.Kind.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n,loc:this.loc(e)}},t.parseOperationTypeDefinition=function(){var e=this._lexer.token,t=this.parseOperationType();this.expectToken(o.TokenKind.COLON);var r=this.parseNamedType();return{kind:i.Kind.OPERATION_TYPE_DEFINITION,operation:t,type:r,loc:this.loc(e)}},t.parseScalarTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");var r=this.parseName(),n=this.parseDirectives(!0);return{kind:i.Kind.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n,loc:this.loc(e)}},t.parseObjectTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");var r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseDirectives(!0),o=this.parseFieldsDefinition();return{kind:i.Kind.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o,loc:this.loc(e)}},t.parseImplementsInterfaces=function(){var e;if(!this.expectOptionalKeyword("implements"))return[];if(!0===(null===(e=this._options)||void 0===e?void 0:e.allowLegacySDLImplementsInterfaces)){var t=[];this.expectOptionalToken(o.TokenKind.AMP);do{t.push(this.parseNamedType())}while(this.expectOptionalToken(o.TokenKind.AMP)||this.peek(o.TokenKind.NAME));return t}return this.delimitedMany(o.TokenKind.AMP,this.parseNamedType)},t.parseFieldsDefinition=function(){var e;return!0===(null===(e=this._options)||void 0===e?void 0:e.allowLegacySDLEmptyFields)&&this.peek(o.TokenKind.BRACE_L)&&this._lexer.lookahead().kind===o.TokenKind.BRACE_R?(this._lexer.advance(),this._lexer.advance(),[]):this.optionalMany(o.TokenKind.BRACE_L,this.parseFieldDefinition,o.TokenKind.BRACE_R)},t.parseFieldDefinition=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(o.TokenKind.COLON);var a=this.parseTypeReference(),s=this.parseDirectives(!0);return{kind:i.Kind.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:s,loc:this.loc(e)}},t.parseArgumentDefs=function(){return this.optionalMany(o.TokenKind.PAREN_L,this.parseInputValueDef,o.TokenKind.PAREN_R)},t.parseInputValueDef=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(o.TokenKind.COLON);var n,a=this.parseTypeReference();this.expectOptionalToken(o.TokenKind.EQUALS)&&(n=this.parseValueLiteral(!0));var s=this.parseDirectives(!0);return{kind:i.Kind.INPUT_VALUE_DEFINITION,description:t,name:r,type:a,defaultValue:n,directives:s,loc:this.loc(e)}},t.parseInterfaceTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");var r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseDirectives(!0),o=this.parseFieldsDefinition();return{kind:i.Kind.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o,loc:this.loc(e)}},t.parseUnionTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseUnionMemberTypes();return{kind:i.Kind.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a,loc:this.loc(e)}},t.parseUnionMemberTypes=function(){return this.expectOptionalToken(o.TokenKind.EQUALS)?this.delimitedMany(o.TokenKind.PIPE,this.parseNamedType):[]},t.parseEnumTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseEnumValuesDefinition();return{kind:i.Kind.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a,loc:this.loc(e)}},t.parseEnumValuesDefinition=function(){return this.optionalMany(o.TokenKind.BRACE_L,this.parseEnumValueDefinition,o.TokenKind.BRACE_R)},t.parseEnumValueDefinition=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseDirectives(!0);return{kind:i.Kind.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n,loc:this.loc(e)}},t.parseInputObjectTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseInputFieldsDefinition();return{kind:i.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a,loc:this.loc(e)}},t.parseInputFieldsDefinition=function(){return this.optionalMany(o.TokenKind.BRACE_L,this.parseInputValueDef,o.TokenKind.BRACE_R)},t.parseTypeSystemExtension=function(){var e=this._lexer.lookahead();if(e.kind===o.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)},t.parseSchemaExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");var t=this.parseDirectives(!0),r=this.optionalMany(o.TokenKind.BRACE_L,this.parseOperationTypeDefinition,o.TokenKind.BRACE_R);if(0===t.length&&0===r.length)throw this.unexpected();return{kind:i.Kind.SCHEMA_EXTENSION,directives:t,operationTypes:r,loc:this.loc(e)}},t.parseScalarTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");var t=this.parseName(),r=this.parseDirectives(!0);if(0===r.length)throw this.unexpected();return{kind:i.Kind.SCALAR_TYPE_EXTENSION,name:t,directives:r,loc:this.loc(e)}},t.parseObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");var t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseDirectives(!0),a=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===a.length)throw this.unexpected();return{kind:i.Kind.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a,loc:this.loc(e)}},t.parseInterfaceTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");var t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseDirectives(!0),a=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===a.length)throw this.unexpected();return{kind:i.Kind.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a,loc:this.loc(e)}},t.parseUnionTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseUnionMemberTypes();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.UNION_TYPE_EXTENSION,name:t,directives:r,types:n,loc:this.loc(e)}},t.parseEnumTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseEnumValuesDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n,loc:this.loc(e)}},t.parseInputObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseInputFieldsDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n,loc:this.loc(e)}},t.parseDirectiveDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(o.TokenKind.AT);var r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");var s=this.parseDirectiveLocations();return{kind:i.Kind.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:s,loc:this.loc(e)}},t.parseDirectiveLocations=function(){return this.delimitedMany(o.TokenKind.PIPE,this.parseDirectiveLocation)},t.parseDirectiveLocation=function(){var e=this._lexer.token,t=this.parseName();if(void 0!==c.DirectiveLocation[t.value])return t;throw this.unexpected(e)},t.loc=function(e){var t;if(!0!==(null===(t=this._options)||void 0===t?void 0:t.noLocation))return new a.Location(e,this._lexer.lastToken,this._lexer.source)},t.peek=function(e){return this._lexer.token.kind===e},t.expectToken=function(e){var t=this._lexer.token;if(t.kind===e)return this._lexer.advance(),t;throw(0,n.syntaxError)(this._lexer.source,t.start,"Expected ".concat(h(e),", found ").concat(d(t),"."))},t.expectOptionalToken=function(e){var t=this._lexer.token;if(t.kind===e)return this._lexer.advance(),t},t.expectKeyword=function(e){var t=this._lexer.token;if(t.kind!==o.TokenKind.NAME||t.value!==e)throw(0,n.syntaxError)(this._lexer.source,t.start,'Expected "'.concat(e,'", found ').concat(d(t),"."));this._lexer.advance()},t.expectOptionalKeyword=function(e){var t=this._lexer.token;return t.kind===o.TokenKind.NAME&&t.value===e&&(this._lexer.advance(),!0)},t.unexpected=function(e){var t=null!=e?e:this._lexer.token;return(0,n.syntaxError)(this._lexer.source,t.start,"Unexpected ".concat(d(t),"."))},t.any=function(e,t,r){this.expectToken(e);for(var n=[];!this.expectOptionalToken(r);)n.push(t.call(this));return n},t.optionalMany=function(e,t,r){if(this.expectOptionalToken(e)){var n=[];do{n.push(t.call(this))}while(!this.expectOptionalToken(r));return n}return[]},t.many=function(e,t,r){this.expectToken(e);var n=[];do{n.push(t.call(this))}while(!this.expectOptionalToken(r));return n},t.delimitedMany=function(e,t){this.expectOptionalToken(e);var r=[];do{r.push(t.call(this))}while(this.expectOptionalToken(e));return r},e}();function d(e){var t=e.value;return h(e.kind)+(null!=t?' "'.concat(t,'"'):"")}function h(e){return(0,u.isPunctuatorTokenKind)(e)?'"'.concat(e,'"'):e}t.Parser=l},92858:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isDefinitionNode=function(e){return i(e)||a(e)||s(e)},t.isExecutableDefinitionNode=i,t.isSelectionNode=function(e){return e.kind===n.Kind.FIELD||e.kind===n.Kind.FRAGMENT_SPREAD||e.kind===n.Kind.INLINE_FRAGMENT},t.isValueNode=function(e){return e.kind===n.Kind.VARIABLE||e.kind===n.Kind.INT||e.kind===n.Kind.FLOAT||e.kind===n.Kind.STRING||e.kind===n.Kind.BOOLEAN||e.kind===n.Kind.NULL||e.kind===n.Kind.ENUM||e.kind===n.Kind.LIST||e.kind===n.Kind.OBJECT},t.isTypeNode=function(e){return e.kind===n.Kind.NAMED_TYPE||e.kind===n.Kind.LIST_TYPE||e.kind===n.Kind.NON_NULL_TYPE},t.isTypeSystemDefinitionNode=a,t.isTypeDefinitionNode=o,t.isTypeSystemExtensionNode=s,t.isTypeExtensionNode=c;var n=r(55325);function i(e){return e.kind===n.Kind.OPERATION_DEFINITION||e.kind===n.Kind.FRAGMENT_DEFINITION}function a(e){return e.kind===n.Kind.SCHEMA_DEFINITION||o(e)||e.kind===n.Kind.DIRECTIVE_DEFINITION}function o(e){return e.kind===n.Kind.SCALAR_TYPE_DEFINITION||e.kind===n.Kind.OBJECT_TYPE_DEFINITION||e.kind===n.Kind.INTERFACE_TYPE_DEFINITION||e.kind===n.Kind.UNION_TYPE_DEFINITION||e.kind===n.Kind.ENUM_TYPE_DEFINITION||e.kind===n.Kind.INPUT_OBJECT_TYPE_DEFINITION}function s(e){return e.kind===n.Kind.SCHEMA_EXTENSION||c(e)}function c(e){return e.kind===n.Kind.SCALAR_TYPE_EXTENSION||e.kind===n.Kind.OBJECT_TYPE_EXTENSION||e.kind===n.Kind.INTERFACE_TYPE_EXTENSION||e.kind===n.Kind.UNION_TYPE_EXTENSION||e.kind===n.Kind.ENUM_TYPE_EXTENSION||e.kind===n.Kind.INPUT_OBJECT_TYPE_EXTENSION}},79941:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.printLocation=function(e){return i(e.source,(0,n.getLocation)(e.source,e.start))},t.printSourceLocation=i;var n=r(27447);function i(e,t){var r=e.locationOffset.column-1,n=o(r)+e.body,i=t.line-1,s=e.locationOffset.line-1,c=t.line+s,u=1===t.line?r:0,l=t.column+u,d="".concat(e.name,":").concat(c,":").concat(l,"\n"),h=n.split(/\r\n|[\n\r]/g),p=h[i];if(p.length>120){for(var f=Math.floor(l/80),y=l%80,g=[],m=0;m{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.print=function(e){return(0,n.visit)(e,{leave:a})};var n=r(82624),i=r(49501),a={Name:function(e){return e.value},Variable:function(e){return"$"+e.name},Document:function(e){return s(e.definitions,"\n\n")+"\n"},OperationDefinition:function(e){var t=e.operation,r=e.name,n=u("(",s(e.variableDefinitions,", "),")"),i=s(e.directives," "),a=e.selectionSet;return r||i||n||"query"!==t?s([t,s([r,n]),i,a]," "):a},VariableDefinition:function(e){var t=e.variable,r=e.type,n=e.defaultValue,i=e.directives;return t+": "+r+u(" = ",n)+u(" ",s(i," "))},SelectionSet:function(e){return c(e.selections)},Field:function(e){var t=e.alias,r=e.name,n=e.arguments,i=e.directives,a=e.selectionSet,o=u("",t,": ")+r,c=o+u("(",s(n,", "),")");return c.length>80&&(c=o+u("(\n",l(s(n,"\n")),"\n)")),s([c,s(i," "),a]," ")},Argument:function(e){return e.name+": "+e.value},FragmentSpread:function(e){return"..."+e.name+u(" ",s(e.directives," "))},InlineFragment:function(e){var t=e.typeCondition,r=e.directives,n=e.selectionSet;return s(["...",u("on ",t),s(r," "),n]," ")},FragmentDefinition:function(e){var t=e.name,r=e.typeCondition,n=e.variableDefinitions,i=e.directives,a=e.selectionSet;return"fragment ".concat(t).concat(u("(",s(n,", "),")")," ")+"on ".concat(r," ").concat(u("",s(i," ")," "))+a},IntValue:function(e){return e.value},FloatValue:function(e){return e.value},StringValue:function(e,t){var r=e.value;return e.block?(0,i.printBlockString)(r,"description"===t?"":" "):JSON.stringify(r)},BooleanValue:function(e){return e.value?"true":"false"},NullValue:function(){return"null"},EnumValue:function(e){return e.value},ListValue:function(e){return"["+s(e.values,", ")+"]"},ObjectValue:function(e){return"{"+s(e.fields,", ")+"}"},ObjectField:function(e){return e.name+": "+e.value},Directive:function(e){return"@"+e.name+u("(",s(e.arguments,", "),")")},NamedType:function(e){return e.name},ListType:function(e){return"["+e.type+"]"},NonNullType:function(e){return e.type+"!"},SchemaDefinition:o((function(e){var t=e.directives,r=e.operationTypes;return s(["schema",s(t," "),c(r)]," ")})),OperationTypeDefinition:function(e){return e.operation+": "+e.type},ScalarTypeDefinition:o((function(e){return s(["scalar",e.name,s(e.directives," ")]," ")})),ObjectTypeDefinition:o((function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["type",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")})),FieldDefinition:o((function(e){var t=e.name,r=e.arguments,n=e.type,i=e.directives;return t+(h(r)?u("(\n",l(s(r,"\n")),"\n)"):u("(",s(r,", "),")"))+": "+n+u(" ",s(i," "))})),InputValueDefinition:o((function(e){var t=e.name,r=e.type,n=e.defaultValue,i=e.directives;return s([t+": "+r,u("= ",n),s(i," ")]," ")})),InterfaceTypeDefinition:o((function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["interface",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")})),UnionTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.types;return s(["union",t,s(r," "),n&&0!==n.length?"= "+s(n," | "):""]," ")})),EnumTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.values;return s(["enum",t,s(r," "),c(n)]," ")})),EnumValueDefinition:o((function(e){return s([e.name,s(e.directives," ")]," ")})),InputObjectTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.fields;return s(["input",t,s(r," "),c(n)]," ")})),DirectiveDefinition:o((function(e){var t=e.name,r=e.arguments,n=e.repeatable,i=e.locations;return"directive @"+t+(h(r)?u("(\n",l(s(r,"\n")),"\n)"):u("(",s(r,", "),")"))+(n?" repeatable":"")+" on "+s(i," | ")})),SchemaExtension:function(e){var t=e.directives,r=e.operationTypes;return s(["extend schema",s(t," "),c(r)]," ")},ScalarTypeExtension:function(e){return s(["extend scalar",e.name,s(e.directives," ")]," ")},ObjectTypeExtension:function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["extend type",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")},InterfaceTypeExtension:function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["extend interface",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")},UnionTypeExtension:function(e){var t=e.name,r=e.directives,n=e.types;return s(["extend union",t,s(r," "),n&&0!==n.length?"= "+s(n," | "):""]," ")},EnumTypeExtension:function(e){var t=e.name,r=e.directives,n=e.values;return s(["extend enum",t,s(r," "),c(n)]," ")},InputObjectTypeExtension:function(e){var t=e.name,r=e.directives,n=e.fields;return s(["extend input",t,s(r," "),c(n)]," ")}};function o(e){return function(t){return s([t.description,e(t)],"\n")}}function s(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return null!==(t=null==e?void 0:e.filter((function(e){return e})).join(r))&&void 0!==t?t:""}function c(e){return u("{\n",l(s(e,"\n")),"\n}")}function u(e,t){return null!=t&&""!==t?e+t+(arguments.length>2&&void 0!==arguments[2]?arguments[2]:""):""}function l(e){return u(" ",e.replace(/\n/g,"\n "))}function d(e){return-1!==e.indexOf("\n")}function h(e){return null!=e&&e.some(d)}},7811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSource=function(e){return(0,o.default)(e,u)},t.Source=void 0;var n=r(97682),i=s(r(98048)),a=s(r(61914)),o=s(r(70882));function s(e){return e&&e.__esModule?e:{default:e}}function c(e,t){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:"GraphQL request",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{line:1,column:1};"string"==typeof e||(0,a.default)(0,"Body must be a string. Received: ".concat((0,i.default)(e),".")),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||(0,a.default)(0,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||(0,a.default)(0,"column in locationOffset is 1-indexed and must be positive.")}var t,r;return t=e,(r=[{key:n.SYMBOL_TO_STRING_TAG,get:function(){return"Source"}}])&&c(t.prototype,r),e}();t.Source=u},49226:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TokenKind=void 0;var r=Object.freeze({SOF:"",EOF:"",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});t.TokenKind=r},82624:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.visit=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o,n=void 0,u=Array.isArray(e),l=[e],d=-1,h=[],p=void 0,f=void 0,y=void 0,g=[],m=[],b=e;do{var v=++d===l.length,_=v&&0!==h.length;if(v){if(f=0===m.length?void 0:g[g.length-1],p=y,y=m.pop(),_){if(u)p=p.slice();else{for(var w={},T=0,S=Object.keys(p);T{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SYMBOL_TO_STRING_TAG=t.SYMBOL_ASYNC_ITERATOR=t.SYMBOL_ITERATOR=void 0;var r="function"==typeof Symbol&&null!=Symbol.iterator?Symbol.iterator:"@@iterator";t.SYMBOL_ITERATOR=r;var n="function"==typeof Symbol&&null!=Symbol.asyncIterator?Symbol.asyncIterator:"@@asyncIterator";t.SYMBOL_ASYNC_ITERATOR=n;var i="function"==typeof Symbol&&null!=Symbol.toStringTag?Symbol.toStringTag:"@@toStringTag";t.SYMBOL_TO_STRING_TAG=i},34485:(e,t,r)=>{var n=t;n.utils=r(50212),n.common=r(74495),n.sha=r(45530),n.ripemd=r(91396),n.hmac=r(15047),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},74495:(e,t,r)=>{"use strict";var n=r(50212),i=r(79561);function a(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=a,a.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a{"use strict";var n=r(50212),i=r(79561);function a(e,t,r){if(!(this instanceof a))return new a(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=a,a.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(50212),i=r(74495),a=n.rotl32,o=n.sum32,s=n.sum32_3,c=n.sum32_4,u=i.BlockHash;function l(){if(!(this instanceof l))return new l;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function p(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(l,u),t.ripemd160=l,l.blockSize=512,l.outSize=160,l.hmacStrength=192,l.padLength=64,l.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],u=this.h[3],l=this.h[4],b=r,v=n,_=i,w=u,T=l,S=0;S<80;S++){var O=o(a(c(r,d(S,n,i,u),e[f[S]+t],h(S)),g[S]),l);r=l,l=u,u=a(i,10),i=n,n=O,O=o(a(c(b,d(79-S,v,_,w),e[y[S]+t],p(S)),m[S]),T),b=T,T=w,w=a(_,10),_=v,v=O}O=s(this.h[1],i,w),this.h[1]=s(this.h[2],u,T),this.h[2]=s(this.h[3],l,b),this.h[3]=s(this.h[4],r,v),this.h[4]=s(this.h[0],n,_),this.h[0]=O},l.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var f=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],y=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],m=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},45530:(e,t,r)=>{"use strict";t.sha1=r(35079),t.sha224=r(63823),t.sha256=r(68032),t.sha384=r(25328),t.sha512=r(20168)},35079:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(40713),o=n.rotl32,s=n.sum32,c=n.sum32_5,u=a.ft_1,l=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,l),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212),i=r(68032);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(a,i),e.exports=a,a.blockSize=512,a.outSize=224,a.hmacStrength=192,a.padLength=64,a.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},68032:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(40713),o=r(79561),s=n.sum32,c=n.sum32_4,u=n.sum32_5,l=a.ch32,d=a.maj32,h=a.s0_256,p=a.s1_256,f=a.g0_256,y=a.g1_256,g=i.BlockHash,m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=m,this.W=new Array(64)}n.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212),i=r(20168);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(a,i),e.exports=a,a.blockSize=1024,a.outSize=384,a.hmacStrength=192,a.padLength=128,a.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},20168:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(79561),o=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,u=n.shr64_lo,l=n.sum64,d=n.sum64_hi,h=n.sum64_lo,p=n.sum64_4_hi,f=n.sum64_4_lo,y=n.sum64_5_hi,g=n.sum64_5_lo,m=i.BlockHash,b=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=b,this.W=new Array(160)}function _(e,t,r,n,i){var a=e&r^~e&i;return a<0&&(a+=4294967296),a}function w(e,t,r,n,i,a){var o=t&n^~t&a;return o<0&&(o+=4294967296),o}function T(e,t,r,n,i){var a=e&r^e&i^r&i;return a<0&&(a+=4294967296),a}function S(e,t,r,n,i,a){var o=t&n^t&a^n&a;return o<0&&(o+=4294967296),o}function O(e,t){var r=o(e,t,28)^o(t,e,2)^o(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function x(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function A(e,t){var r=o(e,t,1)^o(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function R(e,t){var r=s(e,t,1)^s(e,t,8)^u(e,t,7);return r<0&&(r+=4294967296),r}function I(e,t){var r=s(e,t,19)^s(t,e,29)^u(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(v,m),e.exports=v,v.blockSize=1024,v.outSize=512,v.hmacStrength=192,v.padLength=128,v.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212).rotr32;function i(e,t,r){return e&t^~e&r}function a(e,t,r){return e&t^e&r^t&r}function o(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?o(t,r,n):2===e?a(t,r,n):void 0},t.ch32=i,t.maj32=a,t.p32=o,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},50212:(e,t,r)=>{"use strict";var n=r(79561),i=r(91285);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1))}function o(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>6|192,r[n++]=63&o|128):a(e,i)?(o=65536+((1023&o)<<10)+(1023&e.charCodeAt(++i)),r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=63&o|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=63&o|128)}else for(i=0;i>>0}return o},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,o=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,a,o,s){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,a,o,s){return t+n+a+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,a,o,s,c,u){var l=0,d=t;return l+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,a,o,s,c,u){return t+n+a+s+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},75233:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var o=a(r(59636)),s=r(73094),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),d=new Set(["dd","dt"]),h=new Set(["rt","rp"]),p=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",d],["dt",d],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",h],["rp",h],["tbody",l],["tfoot",l]]),f=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,s;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:!t.xmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:!t.xmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:o.default)(this.options,this),null===(s=(a=this.cbs).onparserinit)||void 0===s||s.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e){var t,r,n=this.tokenizer.getSectionStart();this.endIndex=n-1,null===(r=(t=this.cbs).ontext)||void 0===r||r.call(t,(0,s.fromCodePoint)(e)),this.startIndex=n},e.prototype.isVoidElement=function(e){return!this.options.xmlMode&&f.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=!this.options.xmlMode&&p.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){var o=this.stack.pop();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,o,!0)}this.isVoidElement(e)||(this.stack.push(e),y.has(e)?this.foreignContext.push(!0):g.has(e)&&this.foreignContext.push(!1)),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,o,s;this.endIndex=t;var c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(y.has(c)||g.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(n=(r=this.cbs).onopentagname)||void 0===n||n.call(r,"br"),null===(a=(i=this.cbs).onopentag)||void 0===a||a.call(i,"br",{},!0),null===(s=(o=this.cbs).onclosetag)||void 0===s||s.call(o,"br",!1));else{var u=this.stack.lastIndexOf(c);if(-1!==u)if(this.cbs.onclosetag)for(var l=this.stack.length-u;l--;)this.cbs.onclosetag(this.stack.pop(),0!==l);else this.stack.length=u;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.pop())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,s.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===o.QuoteType.Double?'"':e===o.QuoteType.Single?"'":e===o.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,o;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(o=(a=this.cbs).oncommentend)||void 0===o||o.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,o,s,c,u,l,d,h;this.endIndex=t;var p=this.getSlice(e,t-r);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(o=(a=this.cbs).ontext)||void 0===o||o.call(a,p),null===(c=(s=this.cbs).oncdataend)||void 0===c||c.call(s)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(p,"]]")),null===(h=(d=this.cbs).oncommentend)||void 0===h||h.call(d)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=this.stack.length;r>0;this.cbs.onclosetag(this.stack[--r],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)},e.prototype.reset=function(){var e,t,r,n;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(n=(r=this.cbs).onparserinit)||void 0===n||n.call(r,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1},e.prototype.parseComplete=function(e){this.reset(),this.end(e)},e.prototype.getSlice=function(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,o=r(73094);function s(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||s(e)}function u(e){return e>=n.Zero&&e<=n.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var l={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},d=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,s=void 0===a||a;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=n,this.decodeEntities=s,this.entityTrie=n?o.xmlDecodeTree:o.htmlDecodeTree}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&(this.state=i.BeforeEntity)},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||s(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==l.TitleEnd[2]?this.state=this.xmlMode||t!==l.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(l.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){s(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||s(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:s(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):s(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):s(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):s(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){s(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=l.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===l.ScriptEnd[3]?this.startSpecial(l.ScriptEnd,4):t===l.StyleEnd[3]?this.startSpecial(l.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.stateBeforeEntity=function(e){this.entityExcess=1,this.entityResult=0,e===n.Number?this.state=i.BeforeNumericEntity:e===n.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=i.InNamedEntity,this.stateInNamedEntity(e))},e.prototype.stateInNamedEntity=function(e){if(this.entityExcess+=1,this.trieIndex=(0,o.determineBranch)(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];var t=this.trieCurrent&o.BinTrieFlags.VALUE_LENGTH;if(t){var r=(t>>14)-1;if(this.allowLegacyEntity()||e===n.Semi){var i=this.index-this.entityExcess+1;i>this.sectionStart&&this.emitPartial(this.sectionStart,i),this.entityResult=this.trieIndex,this.trieIndex+=r,this.entityExcess=0,this.sectionStart=this.index+1,0===r&&this.emitNamedEntity()}else this.trieIndex+=r}},e.prototype.emitNamedEntity=function(){if(this.state=this.baseState,0!==this.entityResult)switch((this.entityTrie[this.entityResult]&o.BinTrieFlags.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~o.BinTrieFlags.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}},e.prototype.stateBeforeNumericEntity=function(e){(32|e)===n.LowerX?(this.entityExcess++,this.state=i.InHexEntity):(this.state=i.InNumericEntity,this.stateInNumericEntity(e))},e.prototype.emitNumericEntity=function(e){var t=this.index-this.entityExcess-1;t+2+Number(this.state===i.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint((0,o.replaceCodePoint)(this.entityResult))),this.state=this.baseState},e.prototype.stateInNumericEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=10*this.entityResult+(e-n.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.stateInHexEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=16*this.entityResult+(e-n.Zero),this.entityExcess++):function(e){return e>=n.UpperA&&e<=n.UpperF||e>=n.LowerA&&e<=n.LowerF}(e)?(this.entityResult=16*this.entityResult+((32|e)-n.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.allowLegacyEntity=function(){return!this.xmlMode&&(this.baseState===i.Text||this.baseState===i.InSpecialTag)},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index{"use strict";var n=r(48834).Buffer,i=/^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i,a=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/\s|\uFEFF|\xA0/,s=/\r?\n[\x20\x09]+/g,c=/[;,"]/,u=/[;,"]|\s/,l=/^[!#$%&'*+\-\.^_`|~\da-zA-Z]+$/;function d(e){return e.replace(a,"")}function h(e){return o.test(e)}function p(e,t){for(;h(e[t]);)t++;return t}function f(e){return u.test(e)||!l.test(e)}class y{constructor(e){this.refs=[],e&&this.parse(e)}rel(e){for(var t=[],r=e.toLowerCase(),n=0;n{return r=t,n=e,Object.keys(r).length===Object.keys(n).length&&Object.keys(r).every((e=>e in n&&r[e]===n[e]));var r,n}))||this.refs.push(e),this}has(e,t){e=e.toLowerCase();for(var r=0;r",t)))throw new Error("Expected end of URI delimiter at offset "+t);i={uri:e.slice(t+1,u)},t=u,r=2,t++}else if(2===r){if(h(e[t])){t++;continue}if(";"===e[t])r=4,t++;else{if(","!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);r=1,t++}}else{if(4!==r)throw new Error('Unknown parser state "'+r+'"');if(";"===e[t]||h(e[t])){t++;continue}-1===(u=e.indexOf("=",t))&&(u=e.indexOf(";",t)),-1===u&&(u=e.length);var a=d(e.slice(t,u)).toLowerCase(),o="";if('"'===e[t=p(e,t=u+1)])for(t++;t"),e.push(t);return e.join(", ")}}y.isCompatibleEncoding=function(e){return i.test(e)},y.parse=function(e,t){return(new y).parse(e,t)},y.isSingleOccurenceAttr=function(e){return"rel"===e||"type"===e||"media"===e||"title"===e||"title*"===e},y.isTokenAttr=function(e){return"rel"===e||"type"===e||"anchor"===e},y.escapeQuotes=function(e){return e.replace(/"/g,'\\"')},y.expandRelations=function(e){return e.rel.split(" ").map((function(t){var r=Object.assign({},e);return r.rel=t,r}))},y.parseExtendedValue=function(e){var t=/([^']+)?(?:'([^']*)')?(.+)/.exec(e);return{language:t[2].toLowerCase(),encoding:y.isCompatibleEncoding(t[1])?null:t[1].toLowerCase(),value:y.isCompatibleEncoding(t[1])?decodeURIComponent(t[3]):t[3]}},y.formatExtendedAttribute=function(e,t){var r=(t.encoding||"utf-8").toUpperCase();return e+"="+r+"'"+(t.language||"en")+"'"+(n.isBuffer(t.value)&&y.isCompatibleEncoding(r)?t.value.toString(r):n.isBuffer(t.value)?t.value.toString("hex").replace(/[0-9a-f]{2}/gi,"%$1"):encodeURIComponent(t.value))},y.formatAttribute=function(e,t){return Array.isArray(t)?t.map((t=>y.formatAttribute(e,t))).join("; "):"*"===e[e.length-1]||"string"!=typeof t?y.formatExtendedAttribute(e,t):(y.isTokenAttr(e)?t=f(t)?'"'+y.escapeQuotes(t)+'"':y.escapeQuotes(t):f(t)&&(t='"'+(t=(t=encodeURIComponent(t)).replace(/%20/g," ").replace(/%2C/g,",").replace(/%3B/g,";"))+'"'),e+"="+t)},e.exports=y},62333:(e,t)=>{t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,c=(1<>1,l=-7,d=r?i-1:0,h=r?-1:1,p=e[t+d];for(d+=h,a=p&(1<<-l)-1,p>>=-l,l+=s;l>0;a=256*a+e[t+d],d+=h,l-=8);for(o=a&(1<<-l)-1,a>>=-l,l+=n;l>0;o=256*o+e[t+d],d+=h,l-=8);if(0===a)a=1-u;else{if(a===c)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=u}return(p?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,c,u=8*a-i-1,l=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,f=n?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),(t+=o+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(o++,c/=2),o+d>=l?(s=0,o=l):o+d>=1?(s=(t*c-1)*Math.pow(2,i),o+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),o=0));i>=8;e[r+p]=255&s,p+=f,s/=256,i-=8);for(o=o<0;e[r+p]=255&o,p+=f,o/=256,u-=8);e[r+p-f]|=128*y}},27623:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Collection:()=>E,Iterable:()=>Rn,List:()=>cr,Map:()=>Ft,OrderedMap:()=>Tr,OrderedSet:()=>ln,PairSorting:()=>yn,Range:()=>Gr,Record:()=>gn,Repeat:()=>Sn,Seq:()=>J,Set:()=>Br,Stack:()=>Rr,default:()=>In,fromJS:()=>On,get:()=>ct,getIn:()=>zr,has:()=>st,hasIn:()=>Xr,hash:()=>me,is:()=>pe,isAssociative:()=>O,isCollection:()=>v,isImmutable:()=>j,isIndexed:()=>S,isKeyed:()=>w,isList:()=>sr,isMap:()=>le,isOrdered:()=>M,isOrderedMap:()=>de,isOrderedSet:()=>Mr,isPlainObject:()=>it,isRecord:()=>N,isSeq:()=>P,isSet:()=>Cr,isStack:()=>Ar,isValueObject:()=>he,merge:()=>Ot,mergeDeep:()=>xt,mergeDeepWith:()=>At,mergeWith:()=>Et,remove:()=>lt,removeIn:()=>gt,set:()=>dt,setIn:()=>ft,update:()=>bt,updateIn:()=>ht,version:()=>An});var n="delete",i=5,a=1<>>0;if(""+r!==t||4294967295===r)return NaN;t=r}return t<0?l(e)+t:t}function h(){return!0}function p(e,t,r){return(0===e&&!m(e)||void 0!==r&&e<=-r)&&(void 0===t||void 0!==r&&t>=r)}function f(e,t){return g(e,t,0)}function y(e,t){return g(e,t,t)}function g(e,t,r){return void 0===e?r:m(e)?t===1/0?t:0|Math.max(0,t+e):void 0===t||t===e?e:0|Math.min(t,e)}function m(e){return e<0||0===e&&1/e==-1/0}var b="@@__IMMUTABLE_ITERABLE__@@";function v(e){return Boolean(e&&e[b])}var _="@@__IMMUTABLE_KEYED__@@";function w(e){return Boolean(e&&e[_])}var T="@@__IMMUTABLE_INDEXED__@@";function S(e){return Boolean(e&&e[T])}function O(e){return w(e)||S(e)}var E=function(e){return v(e)?e:J(e)},x=function(e){function t(e){return w(e)?e:Y(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E),A=function(e){function t(e){return S(e)?e:Z(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E),R=function(e){function t(e){return v(e)&&!O(e)?e:ee(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E);E.Keyed=x,E.Indexed=A,E.Set=R;var I="@@__IMMUTABLE_SEQ__@@";function P(e){return Boolean(e&&e[I])}var D="@@__IMMUTABLE_RECORD__@@";function N(e){return Boolean(e&&e[D])}function j(e){return v(e)||N(e)}var C="@@__IMMUTABLE_ORDERED__@@";function M(e){return Boolean(e&&e[C])}var L=0,k=1,F=2,B="function"==typeof Symbol&&Symbol.iterator,U="@@iterator",q=B||U,V=function(e){this.next=e};function Q(e,t,r,n){var i=0===e?t:1===e?r:[t,r];return n?n.value=i:n={value:i,done:!1},n}function $(){return{value:void 0,done:!0}}function H(e){return!!Array.isArray(e)||!!K(e)}function G(e){return e&&"function"==typeof e.next}function z(e){var t=K(e);return t&&t.call(e)}function K(e){var t=e&&(B&&e[B]||e[U]);if("function"==typeof t)return t}V.prototype.toString=function(){return"[Iterator]"},V.KEYS=L,V.VALUES=k,V.ENTRIES=F,V.prototype.inspect=V.prototype.toSource=function(){return this.toString()},V.prototype[q]=function(){return this};var X=Object.prototype.hasOwnProperty;function W(e){return!(!Array.isArray(e)&&"string"!=typeof e)||e&&"object"==typeof e&&Number.isInteger(e.length)&&e.length>=0&&(0===e.length?1===Object.keys(e).length:e.hasOwnProperty(e.length-1))}var J=function(e){function t(e){return null==e?ae():j(e)?e.toSeq():function(e){var t,r,n=ce(e);if(n)return(r=K(t=e))&&r===t.entries?n.fromEntrySeq():function(e){var t=K(e);return t&&t===e.keys}(e)?n.toSetSeq():n;if("object"==typeof e)return new re(e);throw new TypeError("Expected Array or collection object of values, or keyed object: "+e)}(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.toSeq=function(){return this},t.prototype.toString=function(){return this.__toString("Seq {","}")},t.prototype.cacheResult=function(){return!this._cache&&this.__iterateUncached&&(this._cache=this.entrySeq().toArray(),this.size=this._cache.length),this},t.prototype.__iterate=function(e,t){var r=this._cache;if(r){for(var n=r.length,i=0;i!==n;){var a=r[t?n-++i:i++];if(!1===e(a[1],a[0],this))break}return i}return this.__iterateUncached(e,t)},t.prototype.__iterator=function(e,t){var r=this._cache;if(r){var n=r.length,i=0;return new V((function(){if(i===n)return{value:void 0,done:!0};var a=r[t?n-++i:i++];return Q(e,a[0],a[1])}))}return this.__iteratorUncached(e,t)},t}(E),Y=function(e){function t(e){return null==e?ae().toKeyedSeq():v(e)?w(e)?e.toSeq():e.fromEntrySeq():N(e)?e.toSeq():oe(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.toKeyedSeq=function(){return this},t}(J),Z=function(e){function t(e){return null==e?ae():v(e)?w(e)?e.entrySeq():e.toIndexedSeq():N(e)?e.toSeq().entrySeq():se(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return t(arguments)},t.prototype.toIndexedSeq=function(){return this},t.prototype.toString=function(){return this.__toString("Seq [","]")},t}(J),ee=function(e){function t(e){return(v(e)&&!O(e)?e:Z(e)).toSetSeq()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return t(arguments)},t.prototype.toSetSeq=function(){return this},t}(J);J.isSeq=P,J.Keyed=Y,J.Set=ee,J.Indexed=Z,J.prototype[I]=!0;var te=function(e){function t(e){this._array=e,this.size=e.length}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e,t){return this.has(e)?this._array[d(this,e)]:t},t.prototype.__iterate=function(e,t){for(var r=this._array,n=r.length,i=0;i!==n;){var a=t?n-++i:i++;if(!1===e(r[a],a,this))break}return i},t.prototype.__iterator=function(e,t){var r=this._array,n=r.length,i=0;return new V((function(){if(i===n)return{value:void 0,done:!0};var a=t?n-++i:i++;return Q(e,a,r[a])}))},t}(Z),re=function(e){function t(e){var t=Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e):[]);this._object=e,this._keys=t,this.size=t.length}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},t.prototype.has=function(e){return X.call(this._object,e)},t.prototype.__iterate=function(e,t){for(var r=this._object,n=this._keys,i=n.length,a=0;a!==i;){var o=n[t?i-++a:a++];if(!1===e(r[o],o,this))break}return a},t.prototype.__iterator=function(e,t){var r=this._object,n=this._keys,i=n.length,a=0;return new V((function(){if(a===i)return{value:void 0,done:!0};var o=n[t?i-++a:a++];return Q(e,o,r[o])}))},t}(Y);re.prototype[C]=!0;var ne,ie=function(e){function t(e){this._collection=e,this.size=e.length||e.size}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var r=z(this._collection),n=0;if(G(r))for(var i;!(i=r.next()).done&&!1!==e(i.value,n++,this););return n},t.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var r=z(this._collection);if(!G(r))return new V($);var n=0;return new V((function(){var t=r.next();return t.done?t:Q(e,n++,t.value)}))},t}(Z);function ae(){return ne||(ne=new te([]))}function oe(e){var t=ce(e);if(t)return t.fromEntrySeq();if("object"==typeof e)return new re(e);throw new TypeError("Expected Array or collection object of [k, v] entries, or keyed object: "+e)}function se(e){var t=ce(e);if(t)return t;throw new TypeError("Expected Array or collection object of values: "+e)}function ce(e){return W(e)?new te(e):H(e)?new ie(e):void 0}var ue="@@__IMMUTABLE_MAP__@@";function le(e){return Boolean(e&&e[ue])}function de(e){return le(e)&&M(e)}function he(e){return Boolean(e&&"function"==typeof e.equals&&"function"==typeof e.hashCode)}function pe(e,t){if(e===t||e!=e&&t!=t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if((e=e.valueOf())===(t=t.valueOf())||e!=e&&t!=t)return!0;if(!e||!t)return!1}return!!(he(e)&&he(t)&&e.equals(t))}var fe="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){var r=65535&(e|=0),n=65535&(t|=0);return r*n+((e>>>16)*n+r*(t>>>16)<<16>>>0)|0};function ye(e){return e>>>1&1073741824|3221225471&e}var ge=Object.prototype.valueOf;function me(e){if(null==e)return be(e);if("function"==typeof e.hashCode)return ye(e.hashCode(e));var t,r,n,i=(t=e).valueOf!==ge&&"function"==typeof t.valueOf?t.valueOf(t):t;if(null==i)return be(i);switch(typeof i){case"boolean":return i?1108378657:1108378656;case"number":return function(e){if(e!=e||e===1/0)return 0;var t=0|e;for(t!==e&&(t^=4294967295*e);e>4294967295;)t^=e/=4294967295;return ye(t)}(i);case"string":return i.length>Re?(void 0===(n=De[r=i])&&(n=ve(r),Pe===Ie&&(Pe=0,De={}),Pe++,De[r]=n),n):ve(i);case"object":case"function":return function(e){var t;if(Oe&&void 0!==(t=Se.get(e)))return t;if(void 0!==(t=e[Ae]))return t;if(!we){if(void 0!==(t=e.propertyIsEnumerable&&e.propertyIsEnumerable[Ae]))return t;if(void 0!==(t=function(e){if(e&&e.nodeType>0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}(e)))return t}if(t=Te(),Oe)Se.set(e,t);else{if(void 0!==_e&&!1===_e(e))throw new Error("Non-extensible objects are not allowed as keys.");if(we)Object.defineProperty(e,Ae,{enumerable:!1,configurable:!1,writable:!1,value:t});else if(void 0!==e.propertyIsEnumerable&&e.propertyIsEnumerable===e.constructor.prototype.propertyIsEnumerable)e.propertyIsEnumerable=function(){return this.constructor.prototype.propertyIsEnumerable.apply(this,arguments)},e.propertyIsEnumerable[Ae]=t;else{if(void 0===e.nodeType)throw new Error("Unable to set a non-enumerable property on object.");e[Ae]=t}}return t}(i);case"symbol":return function(e){var t=Ee[e];return void 0!==t||(t=Te(),Ee[e]=t),t}(i);default:if("function"==typeof i.toString)return ve(i.toString());throw new Error("Value type "+typeof i+" cannot be hashed.")}}function be(e){return null===e?1108378658:1108378659}function ve(e){for(var t=0,r=0;r=0&&(u.get=function(t,r){return(t=d(this,t))>=0&&ts)return{value:void 0,done:!0};var e=i.next();return n||t===k||e.done?e:Q(t,c-1,t===L?void 0:e.value[1],e)}))},u}function qe(e,t,r,n){var i=We(e);return i.__iterateUncached=function(i,a){var o=this;if(a)return this.cacheResult().__iterate(i,a);var s=!0,c=0;return e.__iterate((function(e,a,u){if(!s||!(s=t.call(r,e,a,u)))return c++,i(e,n?a:c-1,o)})),c},i.__iteratorUncached=function(i,a){var o=this;if(a)return this.cacheResult().__iterator(i,a);var s=e.__iterator(F,a),c=!0,u=0;return new V((function(){var e,a,l;do{if((e=s.next()).done)return n||i===k?e:Q(i,u++,i===L?void 0:e.value[1],e);var d=e.value;a=d[0],l=d[1],c&&(c=t.call(r,l,a,o))}while(c);return i===F?e:Q(i,a,l,e)}))},i}function Ve(e,t,r){var n=We(e);return n.__iterateUncached=function(i,a){if(a)return this.cacheResult().__iterate(i,a);var o=0,s=!1;return function e(c,u){c.__iterate((function(a,c){return(!t||u0}function Ge(e,t,r,n){var i=We(e),a=new te(r).map((function(e){return e.size}));return i.size=n?a.max():a.min(),i.__iterate=function(e,t){for(var r,n=this.__iterator(k,t),i=0;!(r=n.next()).done&&!1!==e(r.value,i++,this););return i},i.__iteratorUncached=function(e,i){var a=r.map((function(e){return e=E(e),z(i?e.reverse():e)})),o=0,s=!1;return new V((function(){var r;return s||(r=a.map((function(e){return e.next()})),s=n?r.every((function(e){return e.done})):r.some((function(e){return e.done}))),s?{value:void 0,done:!0}:Q(e,o++,t.apply(null,r.map((function(e){return e.value}))))}))},i}function ze(e,t){return e===t?e:P(e)?t:e.constructor(t)}function Ke(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Xe(e){return w(e)?x:S(e)?A:R}function We(e){return Object.create((w(e)?Y:S(e)?Z:ee).prototype)}function Je(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):J.prototype.cacheResult.call(this)}function Ye(e,t){return void 0===e&&void 0===t?0:void 0===e?1:void 0===t?-1:e>t?1:e0;)t[r]=arguments[r+1];if("function"!=typeof e)throw new TypeError("Invalid merger function: "+e);return St(this,t,e)}function St(e,t,r){for(var n=[],i=0;i0;)t[r]=arguments[r+1];return It(e,t)}function Et(e,t){for(var r=[],n=arguments.length-2;n-- >0;)r[n]=arguments[n+2];return It(t,r,e)}function xt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return Rt(e,t)}function At(e,t){for(var r=[],n=arguments.length-2;n-- >0;)r[n]=arguments[n+2];return Rt(t,r,e)}function Rt(e,t,r){return It(e,t,function(e){return function t(r,n,i){return at(r)&&at(n)&&(a=n,o=J(r),s=J(a),S(o)===S(s)&&w(o)===w(s))?It(r,[n],t):e?e(r,n,i):n;var a,o,s}}(r))}function It(e,t,r){if(!at(e))throw new TypeError("Cannot merge into non-data-structure value: "+e);if(j(e))return"function"==typeof r&&e.mergeWith?e.mergeWith.apply(e,[r].concat(t)):e.merge?e.merge.apply(e,t):e.concat.apply(e,t);for(var n=Array.isArray(e),i=e,a=n?A:x,o=n?function(t){i===e&&(i=ut(i)),i.push(t)}:function(t,n){var a=X.call(i,n),o=a&&r?r(i[n],t,n):t;a&&o===i[n]||(i===e&&(i=ut(i)),i[n]=o)},s=0;s0;)t[r]=arguments[r+1];return Rt(this,t,e)}function Nt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return ht(this,e,Wt(),(function(e){return It(e,t)}))}function jt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return ht(this,e,Wt(),(function(e){return Rt(e,t)}))}function Ct(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this}function Mt(){return this.__ownerID?this:this.__ensureOwner(new u)}function Lt(){return this.__ensureOwner()}function kt(){return this.__altered}var Ft=function(e){function t(t){return null==t?Wt():le(t)&&!M(t)?t:Wt().withMutations((function(r){var n=e(t);tt(n.size),n.forEach((function(e,t){return r.set(t,e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return Wt().withMutations((function(t){for(var r=0;r=e.length)throw new Error("Missing value for key: "+e[r]);t.set(e[r],e[r+1])}}))},t.prototype.toString=function(){return this.__toString("Map {","}")},t.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},t.prototype.set=function(e,t){return Jt(this,e,t)},t.prototype.remove=function(e){return Jt(this,e,s)},t.prototype.deleteAll=function(e){var t=E(e);return 0===t.size?this:this.withMutations((function(e){t.forEach((function(t){return e.remove(t)}))}))},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Wt()},t.prototype.sort=function(e){return Tr(Qe(this,e))},t.prototype.sortBy=function(e,t){return Tr(Qe(this,t,e))},t.prototype.map=function(e,t){var r=this;return this.withMutations((function(n){n.forEach((function(i,a){n.set(a,e.call(t,i,a,r))}))}))},t.prototype.__iterator=function(e,t){return new Gt(this,e,t)},t.prototype.__iterate=function(e,t){var r=this,n=0;return this._root&&this._root.iterate((function(t){return n++,e(t[1],t[0],r)}),t),n},t.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Xt(this.size,this._root,e,this.__hash):0===this.size?Wt():(this.__ownerID=e,this.__altered=!1,this)},t}(x);Ft.isMap=le;var Bt=Ft.prototype;Bt[ue]=!0,Bt[n]=Bt.remove,Bt.removeAll=Bt.deleteAll,Bt.setIn=yt,Bt.removeIn=Bt.deleteIn=mt,Bt.update=vt,Bt.updateIn=_t,Bt.merge=Bt.concat=wt,Bt.mergeWith=Tt,Bt.mergeDeep=Pt,Bt.mergeDeepWith=Dt,Bt.mergeIn=Nt,Bt.mergeDeepIn=jt,Bt.withMutations=Ct,Bt.wasAltered=kt,Bt.asImmutable=Lt,Bt["@@transducer/init"]=Bt.asMutable=Mt,Bt["@@transducer/step"]=function(e,t){return e.set(t[0],t[1])},Bt["@@transducer/result"]=function(e){return e.asImmutable()};var Ut=function(e,t){this.ownerID=e,this.entries=t};Ut.prototype.get=function(e,t,r,n){for(var i=this.entries,a=0,o=i.length;a=nr)return function(e,t,r,n){e||(e=new u);for(var i=new $t(e,me(r),[r,n]),a=0;a>>e)&o),s=this.bitmap;return 0==(s&a)?n:this.nodes[tr(s&a-1)].get(e+i,t,r,n)},qt.prototype.update=function(e,t,r,n,c,u,l){void 0===r&&(r=me(n));var d=(0===t?r:r>>>t)&o,h=1<=ir)return function(e,t,r,n,i){for(var o=0,s=new Array(a),c=0;0!==r;c++,r>>>=1)s[c]=1&r?t[o++]:void 0;return s[n]=i,new Vt(e,o+1,s)}(e,g,p,d,b);if(f&&!b&&2===g.length&&Zt(g[1^y]))return g[1^y];if(f&&b&&1===g.length&&Zt(b))return b;var v=e&&e===this.ownerID,_=f?b?p:p^h:p|h,w=f?b?rr(g,y,b,v):function(e,t,r){var n=e.length-1;if(r&&t===n)return e.pop(),e;for(var i=new Array(n),a=0,o=0;o>>e)&o,s=this.nodes[a];return s?s.get(e+i,t,r,n):n},Vt.prototype.update=function(e,t,r,n,a,c,u){void 0===r&&(r=me(n));var l=(0===t?r:r>>>t)&o,d=a===s,h=this.nodes,p=h[l];if(d&&!p)return this;var f=Yt(p,e,t+i,r,n,a,c,u);if(f===p)return this;var y=this.count;if(p){if(!f&&--y>>r)&o,u=(0===r?n:n>>>r)&o,l=c===u?[er(e,t,r+i,n,a)]:(s=new $t(t,n,a),c>1&1431655765))+(e>>2&858993459))+(e>>4)&252645135,127&(e+=e>>8)+(e>>16)}function rr(e,t,r,n){var i=n?e:Ze(e);return i[t]=r,i}var nr=a/4,ir=a/2,ar=a/4,or="@@__IMMUTABLE_LIST__@@";function sr(e){return Boolean(e&&e[or])}var cr=function(e){function t(t){var r=yr();if(null==t)return r;if(sr(t))return t;var n=e(t),o=n.size;return 0===o?r:(tt(o),o>0&&o=0&&e=e.size||t<0)return e.withMutations((function(e){t<0?vr(e,t).set(0,r):vr(e,0,t+1).set(t,r)}));t+=e._origin;var n=e._tail,i=e._root,a={value:!1};return t>=_r(e._capacity)?n=gr(n,e.__ownerID,0,t,r,a):i=gr(i,e.__ownerID,e._level,t,r,a),a.value?e.__ownerID?(e._root=i,e._tail=n,e.__hash=void 0,e.__altered=!0,e):fr(e._origin,e._capacity,e._level,i,n):e}(this,e,t)},t.prototype.remove=function(e){return this.has(e)?0===e?this.shift():e===this.size-1?this.pop():this.splice(e,1):this},t.prototype.insert=function(e,t){return this.splice(e,0,t)},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=this._origin=this._capacity=0,this._level=i,this._root=this._tail=this.__hash=void 0,this.__altered=!0,this):yr()},t.prototype.push=function(){var e=arguments,t=this.size;return this.withMutations((function(r){vr(r,0,t+e.length);for(var n=0;n>>t&o;if(n>=this.array.length)return new lr([],e);var a,s=0===n;if(t>0){var c=this.array[n];if((a=c&&c.removeBefore(e,t-i,r))===c&&s)return this}if(s&&!a)return this;var u=mr(this,e);if(!s)for(var l=0;l>>t&o;if(a>=this.array.length)return this;if(t>0){var s=this.array[a];if((n=s&&s.removeAfter(e,t-i,r))===s&&a===this.array.length-1)return this}var c=mr(this,e);return c.array.splice(a+1),n&&(c.array[a]=n),c};var dr,hr={};function pr(e,t){var r=e._origin,n=e._capacity,o=_r(n),s=e._tail;return function e(c,u,l){return 0===u?function(e,i){var c=i===o?s&&s.array:e&&e.array,u=i>r?0:r-i,l=n-i;return l>a&&(l=a),function(){if(u===l)return hr;var e=t?--l:u++;return c&&c[e]}}(c,l):function(o,s,c){var u,l=o&&o.array,d=c>r?0:r-c>>s,h=1+(n-c>>s);return h>a&&(h=a),function(){for(;;){if(u){var r=u();if(r!==hr)return r;u=null}if(d===h)return hr;var n=t?--h:d++;u=e(l&&l[n],s-i,c+(n<>>r&o,d=e&&l0){var h=e&&e.array[l],p=gr(h,t,r-i,n,a,s);return p===h?e:((u=mr(e,t)).array[l]=p,u)}return d&&e.array[l]===a?e:(s&&c(s),u=mr(e,t),void 0===a&&l===u.array.length-1?u.array.pop():u.array[l]=a,u)}function mr(e,t){return t&&e&&t===e.ownerID?e:new lr(e?e.array.slice():[],t)}function br(e,t){if(t>=_r(e._capacity))return e._tail;if(t<1<0;)r=r.array[t>>>n&o],n-=i;return r}}function vr(e,t,r){void 0!==t&&(t|=0),void 0!==r&&(r|=0);var n=e.__ownerID||new u,a=e._origin,s=e._capacity,c=a+t,l=void 0===r?s:r<0?s+r:a+r;if(c===a&&l===s)return e;if(c>=l)return e.clear();for(var d=e._level,h=e._root,p=0;c+p<0;)h=new lr(h&&h.array.length?[void 0,h]:[],n),p+=1<<(d+=i);p&&(c+=p,a+=p,l+=p,s+=p);for(var f=_r(s),y=_r(l);y>=1<f?new lr([],n):g;if(g&&y>f&&ci;v-=i){var _=f>>>v&o;b=b.array[_]=mr(b.array[_],n)}b.array[f>>>i&o]=g}if(l=y)c-=y,l-=y,d=i,h=null,m=m&&m.removeBefore(n,0,c);else if(c>a||y>>d&o;if(w!==y>>>d&o)break;w&&(p+=(1<a&&(h=h.removeBefore(n,d,c-p)),h&&y>>i<=a&&c.size>=2*o.size?(n=(i=c.filter((function(e,t){return void 0!==e&&u!==t}))).toKeyedSeq().map((function(e){return e[0]})).flip().toMap(),e.__ownerID&&(n.__ownerID=i.__ownerID=e.__ownerID)):(n=o.remove(t),i=u===c.size-1?c.pop():c.set(u,void 0))}else if(l){if(r===c.get(u)[1])return e;n=o,i=c.set(u,[t,r])}else n=o.set(t,c.size),i=c.set(c.size,[t,r]);return e.__ownerID?(e.size=n.size,e._map=n,e._list=i,e.__hash=void 0,e.__altered=!0,e):Sr(n,i)}Tr.isOrderedMap=de,Tr.prototype[C]=!0,Tr.prototype[n]=Tr.prototype.remove;var xr="@@__IMMUTABLE_STACK__@@";function Ar(e){return Boolean(e&&e[xr])}var Rr=function(e){function t(e){return null==e?Nr():Ar(e)?e:Nr().pushAll(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.prototype.toString=function(){return this.__toString("Stack [","]")},t.prototype.get=function(e,t){var r=this._head;for(e=d(this,e);r&&e--;)r=r.next;return r?r.value:t},t.prototype.peek=function(){return this._head&&this._head.value},t.prototype.push=function(){var e=arguments;if(0===arguments.length)return this;for(var t=this.size+arguments.length,r=this._head,n=arguments.length-1;n>=0;n--)r={value:e[n],next:r};return this.__ownerID?(this.size=t,this._head=r,this.__hash=void 0,this.__altered=!0,this):Dr(t,r)},t.prototype.pushAll=function(t){if(0===(t=e(t)).size)return this;if(0===this.size&&Ar(t))return t;tt(t.size);var r=this.size,n=this._head;return t.__iterate((function(e){r++,n={value:e,next:n}}),!0),this.__ownerID?(this.size=r,this._head=n,this.__hash=void 0,this.__altered=!0,this):Dr(r,n)},t.prototype.pop=function(){return this.slice(1)},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Nr()},t.prototype.slice=function(t,r){if(p(t,r,this.size))return this;var n=f(t,this.size);if(y(r,this.size)!==this.size)return e.prototype.slice.call(this,t,r);for(var i=this.size-n,a=this._head;n--;)a=a.next;return this.__ownerID?(this.size=i,this._head=a,this.__hash=void 0,this.__altered=!0,this):Dr(i,a)},t.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Dr(this.size,this._head,e,this.__hash):0===this.size?Nr():(this.__ownerID=e,this.__altered=!1,this)},t.prototype.__iterate=function(e,t){var r=this;if(t)return new te(this.toArray()).__iterate((function(t,n){return e(t,n,r)}),t);for(var n=0,i=this._head;i&&!1!==e(i.value,n++,this);)i=i.next;return n},t.prototype.__iterator=function(e,t){if(t)return new te(this.toArray()).__iterator(e,t);var r=0,n=this._head;return new V((function(){if(n){var t=n.value;return n=n.next,Q(e,r++,t)}return{value:void 0,done:!0}}))},t}(A);Rr.isStack=Ar;var Ir,Pr=Rr.prototype;function Dr(e,t,r,n){var i=Object.create(Pr);return i.size=e,i._head=t,i.__ownerID=r,i.__hash=n,i.__altered=!1,i}function Nr(){return Ir||(Ir=Dr(0))}Pr[xr]=!0,Pr.shift=Pr.pop,Pr.unshift=Pr.push,Pr.unshiftAll=Pr.pushAll,Pr.withMutations=Ct,Pr.wasAltered=kt,Pr.asImmutable=Lt,Pr["@@transducer/init"]=Pr.asMutable=Mt,Pr["@@transducer/step"]=function(e,t){return e.unshift(t)},Pr["@@transducer/result"]=function(e){return e.asImmutable()};var jr="@@__IMMUTABLE_SET__@@";function Cr(e){return Boolean(e&&e[jr])}function Mr(e){return Cr(e)&&M(e)}function Lr(e,t){if(e===t)return!0;if(!v(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||w(e)!==w(t)||S(e)!==S(t)||M(e)!==M(t))return!1;if(0===e.size&&0===t.size)return!0;var r=!O(e);if(M(e)){var n=e.entries();return t.every((function(e,t){var i=n.next().value;return i&&pe(i[1],e)&&(r||pe(i[0],t))}))&&n.next().done}var i=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{i=!0;var a=e;e=t,t=a}var o=!0,c=t.__iterate((function(t,n){if(r?!e.has(t):i?!pe(t,e.get(n,s)):!pe(e.get(n,s),t))return o=!1,!1}));return o&&e.size===c}function kr(e,t){var r=function(r){e.prototype[r]=t[r]};return Object.keys(t).forEach(r),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(r),e}function Fr(e){if(!e||"object"!=typeof e)return e;if(!v(e)){if(!at(e))return e;e=J(e)}if(w(e)){var t={};return e.__iterate((function(e,r){t[r]=Fr(e)})),t}var r=[];return e.__iterate((function(e){r.push(Fr(e))})),r}var Br=function(e){function t(t){return null==t?$r():Cr(t)&&!M(t)?t:$r().withMutations((function(r){var n=e(t);tt(n.size),n.forEach((function(e){return r.add(e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.fromKeys=function(e){return this(x(e).keySeq())},t.intersect=function(e){return(e=E(e).toArray()).length?qr.intersect.apply(t(e.pop()),e):$r()},t.union=function(e){return(e=E(e).toArray()).length?qr.union.apply(t(e.pop()),e):$r()},t.prototype.toString=function(){return this.__toString("Set {","}")},t.prototype.has=function(e){return this._map.has(e)},t.prototype.add=function(e){return Vr(this,this._map.set(e,e))},t.prototype.remove=function(e){return Vr(this,this._map.remove(e))},t.prototype.clear=function(){return Vr(this,this._map.clear())},t.prototype.map=function(e,t){var r=this,n=!1,i=Vr(this,this._map.mapEntries((function(i){var a=i[1],o=e.call(t,a,a,r);return o!==a&&(n=!0),[o,o]}),t));return n?i:this},t.prototype.union=function(){for(var t=[],r=arguments.length;r--;)t[r]=arguments[r];return 0===(t=t.filter((function(e){return 0!==e.size}))).length?this:0!==this.size||this.__ownerID||1!==t.length?this.withMutations((function(r){for(var n=0;n=0&&t=0&&r>>-15,461845907),t=fe(t<<13|t>>>-13,5),t=fe((t=(t+3864292196|0)^e)^t>>>16,2246822507),t=ye((t=fe(t^t>>>13,3266489909))^t>>>16)}(e.__iterate(r?t?function(e,t){n=31*n+un(me(e),me(t))|0}:function(e,t){n=n+un(me(e),me(t))|0}:t?function(e){n=31*n+me(e)|0}:function(e){n=n+me(e)|0}),n)}(this))}});var Jr=E.prototype;Jr[b]=!0,Jr[q]=Jr.values,Jr.toJSON=Jr.toArray,Jr.__toStringMapper=ot,Jr.inspect=Jr.toSource=function(){return this.toString()},Jr.chain=Jr.flatMap,Jr.contains=Jr.includes,kr(x,{flip:function(){return ze(this,Le(this))},mapEntries:function(e,t){var r=this,n=0;return ze(this,this.toSeq().map((function(i,a){return e.call(t,[a,i],n++,r)})).fromEntrySeq())},mapKeys:function(e,t){var r=this;return ze(this,this.toSeq().flip().map((function(n,i){return e.call(t,n,i,r)})).flip())}});var Yr=x.prototype;Yr[_]=!0,Yr[q]=Jr.entries,Yr.toJSON=Wr,Yr.__toStringMapper=function(e,t){return ot(t)+": "+ot(e)},kr(A,{toKeyedSeq:function(){return new Ne(this,!1)},filter:function(e,t){return ze(this,Be(this,e,t,!1))},findIndex:function(e,t){var r=this.findEntry(e,t);return r?r[0]:-1},indexOf:function(e){var t=this.keyOf(e);return void 0===t?-1:t},lastIndexOf:function(e){var t=this.lastKeyOf(e);return void 0===t?-1:t},reverse:function(){return ze(this,Fe(this,!1))},slice:function(e,t){return ze(this,Ue(this,e,t,!1))},splice:function(e,t){var r=arguments.length;if(t=Math.max(t||0,0),0===r||2===r&&!t)return this;e=f(e,e<0?this.count():this.size);var n=this.slice(0,e);return ze(this,1===r?n:n.concat(Ze(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var r=this.findLastEntry(e,t);return r?r[0]:-1},first:function(e){return this.get(0,e)},flatten:function(e){return ze(this,Ve(this,e,!1))},get:function(e,t){return(e=d(this,e))<0||this.size===1/0||void 0!==this.size&&e>this.size?t:this.find((function(t,r){return r===e}),void 0,t)},has:function(e){return(e=d(this,e))>=0&&(void 0!==this.size?this.size===1/0||et?-1:0}function un(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}en.has=Jr.includes,en.contains=en.includes,en.keys=en.values,kr(Y,Yr),kr(Z,Zr),kr(ee,en);var ln=function(e){function t(e){return null==e?fn():Mr(e)?e:fn().withMutations((function(t){var r=R(e);tt(r.size),r.forEach((function(e){return t.add(e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.fromKeys=function(e){return this(x(e).keySeq())},t.prototype.toString=function(){return this.__toString("OrderedSet {","}")},t}(Br);ln.isOrderedSet=Mr;var dn,hn=ln.prototype;function pn(e,t){var r=Object.create(hn);return r.size=e?e.size:0,r._map=e,r.__ownerID=t,r}function fn(){return dn||(dn=pn(Or()))}hn[C]=!0,hn.zip=Zr.zip,hn.zipWith=Zr.zipWith,hn.zipAll=Zr.zipAll,hn.__empty=fn,hn.__make=pn;var yn={LeftThenRight:-1,RightThenLeft:1},gn=function(e,t){var r;!function(e){if(N(e))throw new Error("Can not call `Record` with an immutable Record as default values. Use a plain javascript object instead.");if(j(e))throw new Error("Can not call `Record` with an immutable Collection as default values. Use a plain javascript object instead.");if(null===e||"object"!=typeof e)throw new Error("Can not call `Record` with a non-object as default values. Use a plain javascript object instead.")}(e);var n=function(a){var o=this;if(a instanceof n)return a;if(!(this instanceof n))return new n(a);if(!r){r=!0;var s=Object.keys(e),c=i._indices={};i._name=t,i._keys=s,i._defaultValues=e;for(var u=0;u2?[]:void 0,{"":e})}function En(e,t,r,n,i,a){if("string"!=typeof r&&!j(r)&&(W(r)||H(r)||it(r))){if(~e.indexOf(r))throw new TypeError("Cannot convert circular structure to Immutable");e.push(r),i&&""!==n&&i.push(n);var o=t.call(a,n,J(r).map((function(n,a){return En(e,t,n,a,i,r)})),i&&i.slice());return e.pop(),i&&i.pop(),o}return r}function xn(e,t){return S(t)?t.toList():w(t)?t.toMap():t.toSet()}var An="4.3.4",Rn=E;const In={version:An,Collection:E,Iterable:E,Seq:J,Map:Ft,OrderedMap:Tr,List:cr,Stack:Rr,Set:Br,OrderedSet:ln,PairSorting:yn,Record:gn,Range:Gr,Repeat:Sn,is:pe,fromJS:On,hash:me,isImmutable:j,isCollection:v,isKeyed:w,isIndexed:S,isAssociative:O,isOrdered:M,isValueObject:he,isPlainObject:it,isSeq:P,isList:sr,isMap:le,isOrderedMap:de,isStack:Ar,isSet:Cr,isOrderedSet:Mr,isRecord:N,get:ct,getIn:zr,has:st,hasIn:Xr,merge:Ot,mergeDeep:xt,mergeWith:Et,mergeDeepWith:At,remove:lt,removeIn:gt,set:dt,setIn:ft,update:bt,updateIn:ht}},91285:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},58607:e=>{"use strict";const t=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;t.writable=e=>t(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,t.readable=e=>t(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,t.duplex=e=>t.writable(e)&&t.readable(e),t.transform=e=>t.duplex(e)&&"function"==typeof e._transform,e.exports=t},1838:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36513),t),i(r(80512),t),i(r(36187),t),i(r(17066),t),i(r(51258),t),i(r(41337),t),i(r(56991),t)},36513:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultExpandOptions=t.ContextParser=void 0,r(70155);const n=r(84690),i=r(80512),a=r(36187),o=r(41337),s=r(56991),c=r(67026);class u{constructor(e){e=e||{},this.documentLoader=e.documentLoader||new a.FetchDocumentLoader,this.documentCache={},this.validateContext=!e.skipValidation,this.expandContentTypeToBase=!!e.expandContentTypeToBase,this.remoteContextsDepthLimit=e.remoteContextsDepthLimit||32,this.redirectSchemaOrgHttps=!("redirectSchemaOrgHttps"in e)||!!e.redirectSchemaOrgHttps}static validateLanguage(e,t,r){if("string"!=typeof e)throw new i.ErrorCoded(`The value of an '@language' must be a string, got '${JSON.stringify(e)}'`,r);if(!s.Util.REGEX_LANGUAGE_TAG.test(e)){if(t)throw new i.ErrorCoded(`The value of an '@language' must be a valid language tag, got '${JSON.stringify(e)}'`,r);return!1}return!0}static validateDirection(e,t){if("string"!=typeof e)throw new i.ErrorCoded(`The value of an '@direction' must be a string, got '${JSON.stringify(e)}'`,i.ERROR_CODES.INVALID_BASE_DIRECTION);if(!s.Util.REGEX_DIRECTION_TAG.test(e)){if(t)throw new i.ErrorCoded(`The value of an '@direction' must be 'ltr' or 'rtl', got '${JSON.stringify(e)}'`,i.ERROR_CODES.INVALID_BASE_DIRECTION);return!1}return!0}idifyReverseTerms(e){for(const t of Object.keys(e)){const r=e[t];if(r&&"object"==typeof r&&r["@reverse"]&&!r["@id"]){if("string"!=typeof r["@reverse"]||s.Util.isValidKeyword(r["@reverse"]))throw new i.ErrorCoded(`Invalid @reverse value, must be absolute IRI or blank node: '${r["@reverse"]}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);r["@id"]=r["@reverse"],s.Util.isPotentialKeyword(r["@reverse"])?delete r["@reverse"]:r["@reverse"]=!0}}return e}expandPrefixedTerms(e,t){const r=e.getContextRaw();for(const n of Object.keys(r))if(s.Util.EXPAND_KEYS_BLACKLIST.indexOf(n)<0&&!s.Util.isReservedInternalKeyword(n)){const a=r[n];if(s.Util.isPotentialKeyword(n)&&s.Util.ALIAS_DOMAIN_BLACKLIST.indexOf(n)>=0&&("@type"!==n||"object"==typeof r[n]&&!r[n]["@protected"]&&"@set"!==r[n]["@container"]))throw new i.ErrorCoded(`Keywords can not be aliased to something else.\nTried mapping ${n} to ${JSON.stringify(a)}`,i.ERROR_CODES.KEYWORD_REDEFINITION);if(s.Util.ALIAS_RANGE_BLACKLIST.indexOf(s.Util.getContextValueId(a))>=0)throw new i.ErrorCoded(`Aliasing to certain keywords is not allowed.\nTried mapping ${n} to ${JSON.stringify(a)}`,i.ERROR_CODES.INVALID_KEYWORD_ALIAS);if(a&&s.Util.isPotentialKeyword(s.Util.getContextValueId(a))&&!0===a["@prefix"])throw new i.ErrorCoded(`Tried to use keyword aliases as prefix: '${n}': '${JSON.stringify(a)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);for(;s.Util.isPrefixValue(r[n]);){const i=r[n];let a=!1;if("string"==typeof i)r[n]=e.expandTerm(i,!0),a=a||i!==r[n];else{const o=i["@id"],c=i["@type"],u=!("@prefix"in i)||s.Util.isValidIri(n);if("@id"in i)null!=o&&"string"==typeof o&&(r[n]["@id"]=e.expandTerm(o,!0),a=a||o!==r[n]["@id"]);else if(!s.Util.isPotentialKeyword(n)&&u){const t=e.expandTerm(n,!0);t!==n&&(r[n]["@id"]=t,a=!0)}!c||"string"!=typeof c||"@vocab"===c||i["@container"]&&i["@container"]["@type"]||!u||(r[n]["@type"]=e.expandTerm(c,!0),t&&c===r[n]["@type"]&&(r[n]["@type"]=e.expandTerm(c,!1)),a=a||c!==r[n]["@type"])}if(!a)break}}}normalize(e,{processingMode:t,normalizeLanguageTags:r}){if(r||1===t)for(const t of Object.keys(e))if("@language"===t&&"string"==typeof e[t])e[t]=e[t].toLowerCase();else{const r=e[t];r&&"object"==typeof r&&"string"==typeof r["@language"]&&(r["@language"]=r["@language"].toLowerCase())}}containersToHash(e){for(const t of Object.keys(e)){const r=e[t];if(r&&"object"==typeof r)if("string"==typeof r["@container"])r["@container"]={[r["@container"]]:!0};else if(Array.isArray(r["@container"])){const e={};for(const t of r["@container"])e[t]=!0;r["@container"]=e}}}applyScopedProtected(e,{processingMode:t}){if(t&&t>=1.1&&e["@protected"]){for(const t of Object.keys(e))if(!s.Util.isReservedInternalKeyword(t)&&!s.Util.isPotentialKeyword(t)&&!s.Util.isTermProtected(e,t)){const r=e[t];r&&"object"==typeof r?"@protected"in e[t]||(e[t]["@protected"]=!0):e[t]={"@id":r,"@protected":!0}}delete e["@protected"]}}validateKeywordRedefinitions(e,t,r){for(const n of Object.keys(t))if(s.Util.isTermProtected(e,n)){if("string"==typeof t[n]){const i=s.Util.isSimpleTermDefinitionPrefix(t[n],r);t[n]={"@id":t[n]},i&&(t[n]["@prefix"]=!0,e[n]["@prefix"]=!0)}const a=c(e[n]);if(t[n]["@protected"]=!0,a!==c(t[n]))throw new i.ErrorCoded(`Attempted to override the protected keyword ${n} from ${JSON.stringify(s.Util.getContextValueId(e[n]))} to ${JSON.stringify(s.Util.getContextValueId(t[n]))}`,i.ERROR_CODES.PROTECTED_TERM_REDEFINITION)}}validate(e,{processingMode:t}){for(const r of Object.keys(e)){if(s.Util.isReservedInternalKeyword(r))continue;if(""===r)throw new i.ErrorCoded(`The empty term is not allowed, got: '${r}': '${JSON.stringify(e[r])}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);const n=e[r],a=typeof n;if(s.Util.isPotentialKeyword(r)){switch(r.substr(1)){case"vocab":if(null!==n&&"string"!==a)throw new i.ErrorCoded(`Found an invalid @vocab IRI: ${n}`,i.ERROR_CODES.INVALID_VOCAB_MAPPING);break;case"base":if(null!==n&&"string"!==a)throw new i.ErrorCoded(`Found an invalid @base IRI: ${e[r]}`,i.ERROR_CODES.INVALID_BASE_IRI);break;case"language":null!==n&&u.validateLanguage(n,!0,i.ERROR_CODES.INVALID_DEFAULT_LANGUAGE);break;case"version":if(null!==n&&"number"!==a)throw new i.ErrorCoded(`Found an invalid @version number: ${n}`,i.ERROR_CODES.INVALID_VERSION_VALUE);break;case"direction":null!==n&&u.validateDirection(n,!0);break;case"propagate":if(1===t)throw new i.ErrorCoded(`Found an illegal @propagate keyword: ${n}`,i.ERROR_CODES.INVALID_CONTEXT_ENTRY);if(null!==n&&"boolean"!==a)throw new i.ErrorCoded(`Found an invalid @propagate value: ${n}`,i.ERROR_CODES.INVALID_PROPAGATE_VALUE)}if(s.Util.isValidKeyword(r)&&s.Util.isValidKeyword(s.Util.getContextValueId(n)))throw new i.ErrorCoded(`Illegal keyword alias in term value, found: '${r}': '${s.Util.getContextValueId(n)}'`,i.ERROR_CODES.KEYWORD_REDEFINITION)}else if(null!==n)switch(a){case"string":if(s.Util.getPrefix(n,e)===r)throw new i.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.CYCLIC_IRI_MAPPING);if(s.Util.isValidIriWeak(r)){if("@type"===n)throw new i.ErrorCoded(`IRIs can not be mapped to @type, found: '${r}': '${n}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIri(n)&&n!==new o.JsonLdContextNormalized(e).expandTerm(r))throw new i.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${r}': '${n}'`,i.ERROR_CODES.INVALID_IRI_MAPPING)}break;case"object":if(!(s.Util.isCompactIri(r)||"@id"in n||("@id"===n["@type"]?e["@base"]:e["@vocab"])))throw new i.ErrorCoded(`Missing @id in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);for(const c of Object.keys(n)){const l=n[c];if(l)switch(c){case"@id":if(s.Util.isValidKeyword(l)&&"@type"!==l&&"@id"!==l&&"@graph"!==l&&"@nest"!==l)throw new i.ErrorCoded(`Illegal keyword alias in term value, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIriWeak(r)){if("@type"===l)throw new i.ErrorCoded(`IRIs can not be mapped to @type, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIri(l)&&l!==new o.JsonLdContextNormalized(e).expandTerm(r))throw new i.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING)}if("string"!=typeof l)throw new i.ErrorCoded(`Detected non-string @id in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.getPrefix(l,e)===r)throw new i.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.CYCLIC_IRI_MAPPING);break;case"@type":if("@type"===n["@container"]&&"@id"!==l&&"@vocab"!==l)throw new i.ErrorCoded(`@container: @type only allows @type: @id or @vocab, but got: '${r}': '${l}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);if("string"!=typeof l)throw new i.ErrorCoded(`The value of an '@type' must be a string, got '${JSON.stringify(a)}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);if(!("@id"===l||"@vocab"===l||1!==t&&"@json"===l||1!==t&&"@none"===l||"_"!==l[0]&&s.Util.isValidIri(l)))throw new i.ErrorCoded(`A context @type must be an absolute IRI, found: '${r}': '${l}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);break;case"@reverse":if("string"==typeof l&&n["@id"]&&n["@id"]!==l)throw new i.ErrorCoded(`Found non-matching @id and @reverse term values in '${r}':'${l}' and '${n["@id"]}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);if("@nest"in n)throw new i.ErrorCoded(`@nest is not allowed in the reverse property '${r}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);break;case"@container":if(1===t&&(Object.keys(l).length>1||s.Util.CONTAINERS_1_0.indexOf(Object.keys(l)[0])<0))throw new i.ErrorCoded(`Invalid term @container for '${r}' ('${Object.keys(l)}') in 1.0, must be only one of ${s.Util.CONTAINERS_1_0.join(", ")}`,i.ERROR_CODES.INVALID_CONTAINER_MAPPING);for(const e of Object.keys(l)){if("@list"===e&&n["@reverse"])throw new i.ErrorCoded(`Term value can not be @container: @list and @reverse at the same time on '${r}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);if(s.Util.CONTAINERS.indexOf(e)<0)throw new i.ErrorCoded(`Invalid term @container for '${r}' ('${e}'), must be one of ${s.Util.CONTAINERS.join(", ")}`,i.ERROR_CODES.INVALID_CONTAINER_MAPPING)}break;case"@language":u.validateLanguage(l,!0,i.ERROR_CODES.INVALID_LANGUAGE_MAPPING);break;case"@direction":u.validateDirection(l,!0);break;case"@prefix":if(null!==l&&"boolean"!=typeof l)throw new i.ErrorCoded(`Found an invalid term @prefix boolean in: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_PREFIX_VALUE);if(!("@id"in n)&&!s.Util.isValidIri(r))throw new i.ErrorCoded(`Invalid @prefix definition for '${r}' ('${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);break;case"@index":if(1===t||!n["@container"]||!n["@container"]["@index"])throw new i.ErrorCoded(`Attempt to add illegal key to value object: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);break;case"@nest":if(s.Util.isPotentialKeyword(l)&&"@nest"!==l)throw new i.ErrorCoded(`Found an invalid term @nest value in: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_NEST_VALUE)}}break;default:throw new i.ErrorCoded(`Found an invalid term value: '${r}': '${n}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION)}}}applyBaseEntry(e,t,r){return"string"==typeof e||(r&&!("@base"in e)&&t.parentContext&&"object"==typeof t.parentContext&&"@base"in t.parentContext&&(e["@base"]=t.parentContext["@base"],t.parentContext["@__baseDocument"]&&(e["@__baseDocument"]=!0)),t.baseIRI&&!t.external&&("@base"in e?null===e["@base"]||"string"!=typeof e["@base"]||s.Util.isValidIri(e["@base"])||(e["@base"]=(0,n.resolve)(e["@base"],t.parentContext&&t.parentContext["@base"]||t.baseIRI)):(e["@base"]=t.baseIRI,e["@__baseDocument"]=!0))),e}normalizeContextIri(e,t){if(!s.Util.isValidIri(e))try{e=(0,n.resolve)(e,t)}catch(t){throw new Error(`Invalid context IRI: ${e}`)}return this.redirectSchemaOrgHttps&&e.startsWith("http://schema.org")&&(e="https://schema.org/"),e}async parseInnerContexts(e,t){for(const r of Object.keys(e)){const n=e[r];if(n&&"object"==typeof n&&"@context"in n&&null!==n["@context"]&&!t.ignoreScopedContexts){if(this.validateContext)try{const i=Object.assign({},e);i[r]=Object.assign({},i[r]),delete i[r]["@context"],await this.parse(n["@context"],Object.assign(Object.assign({},t),{external:!1,parentContext:i,ignoreProtection:!0,ignoreRemoteScopedContexts:!0,ignoreScopedContexts:!0}))}catch(e){throw new i.ErrorCoded(e.message,i.ERROR_CODES.INVALID_SCOPED_CONTEXT)}n["@context"]=(await this.parse(n["@context"],Object.assign(Object.assign({},t),{external:!1,minimalProcessing:!0,ignoreRemoteScopedContexts:!0,parentContext:e}))).getContextRaw()}}return e}async parse(e,r={}){const{baseIRI:n,parentContext:a,external:c,processingMode:l=u.DEFAULT_PROCESSING_MODE,normalizeLanguageTags:d,ignoreProtection:h,minimalProcessing:p}=r;let f=a;const y=r.remoteContexts||{};if(Object.keys(y).length>=this.remoteContextsDepthLimit)throw new i.ErrorCoded("Detected an overflow in remote context inclusions: "+Object.keys(y),i.ERROR_CODES.CONTEXT_OVERFLOW);if(null==e){if(!h&&f&&s.Util.hasProtectedTerms(f))throw new i.ErrorCoded("Illegal context nullification when terms are protected",i.ERROR_CODES.INVALID_CONTEXT_NULLIFICATION);return new o.JsonLdContextNormalized(this.applyBaseEntry({},r,!1))}if("string"==typeof e){const t=this.normalizeContextIri(e,n),i=this.getOverriddenLoad(t,r);if(i)return new o.JsonLdContextNormalized(i);const a=await this.parse(await this.load(t),Object.assign(Object.assign({},r),{baseIRI:t,external:!0,remoteContexts:Object.assign(Object.assign({},y),{[t]:!0})}));return this.applyBaseEntry(a.getContextRaw(),r,!0),a}if(Array.isArray(e)){const t=[],i=await Promise.all(e.map(((e,i)=>{if("string"==typeof e){const a=this.normalizeContextIri(e,n);t[i]=a;return this.getOverriddenLoad(a,r)||this.load(a)}return e})));if(p)return new o.JsonLdContextNormalized(i);const a=await i.reduce(((e,n,i)=>e.then((e=>this.parse(n,Object.assign(Object.assign({},r),{baseIRI:t[i]||r.baseIRI,external:!!t[i]||r.external,parentContext:e.getContextRaw(),remoteContexts:t[i]?Object.assign(Object.assign({},y),{[t[i]]:!0}):y}))))),Promise.resolve(new o.JsonLdContextNormalized(f||{})));return this.applyBaseEntry(a.getContextRaw(),r,!0),a}if("object"==typeof e){if("@context"in e)return await this.parse(e["@context"],r);e=JSON.parse(JSON.stringify(e)),f&&!p&&(f=JSON.parse(JSON.stringify(f)));let a={};if(c&&delete e["@base"],this.applyBaseEntry(e,r,!0),this.containersToHash(e),p)return new o.JsonLdContextNormalized(e);let y={};if("@import"in e){if(!(l>=1.1))throw new i.ErrorCoded("Context importing is not supported in JSON-LD 1.0",i.ERROR_CODES.INVALID_CONTEXT_ENTRY);if("string"!=typeof e["@import"])throw new i.ErrorCoded("An @import value must be a string, but got "+typeof e["@import"],i.ERROR_CODES.INVALID_IMPORT_VALUE);y=await this.loadImportContext(this.normalizeContextIri(e["@import"],n)),delete e["@import"]}a=Object.assign(Object.assign(Object.assign(Object.assign({},a),"object"==typeof f?f:{}),y),e);const g=new o.JsonLdContextNormalized(a);return await this.parseInnerContexts(a,r),(a&&a["@version"]||u.DEFAULT_PROCESSING_MODE)>=1.1&&(e["@vocab"]&&"string"==typeof e["@vocab"]||""===e["@vocab"])&&(f&&"@vocab"in f&&e["@vocab"].indexOf(":")<0?a["@vocab"]=f["@vocab"]+e["@vocab"]:(s.Util.isCompactIri(e["@vocab"])||e["@vocab"]in g.getContextRaw())&&(a["@vocab"]=g.expandTerm(e["@vocab"],!0))),this.idifyReverseTerms(a),this.expandPrefixedTerms(g,this.expandContentTypeToBase),!h&&f&&l>=1.1&&this.validateKeywordRedefinitions(f,a,t.defaultExpandOptions),this.normalize(a,{processingMode:l,normalizeLanguageTags:d}),this.applyScopedProtected(a,{processingMode:l}),this.validateContext&&this.validate(a,{processingMode:l}),g}throw new i.ErrorCoded(`Tried parsing a context that is not a string, array or object, but got ${e}`,i.ERROR_CODES.INVALID_LOCAL_CONTEXT)}async load(e){const t=this.documentCache[e];if(t)return"string"==typeof t?t:Array.isArray(t)?t.slice():Object.assign({},t);let r;try{r=await this.documentLoader.load(e)}catch(t){throw new i.ErrorCoded(`Failed to load remote context ${e}: ${t.message}`,i.ERROR_CODES.LOADING_REMOTE_CONTEXT_FAILED)}if(!("@context"in r))throw new i.ErrorCoded(`Missing @context in remote context at ${e}`,i.ERROR_CODES.INVALID_REMOTE_CONTEXT);return this.documentCache[e]=r["@context"]}getOverriddenLoad(e,t){if(e in(t.remoteContexts||{})){if(t.ignoreRemoteScopedContexts)return e;throw new i.ErrorCoded("Detected a cyclic context inclusion of "+e,i.ERROR_CODES.RECURSIVE_CONTEXT_INCLUSION)}return null}async loadImportContext(e){const t=await this.load(e);if("object"!=typeof t||Array.isArray(t))throw new i.ErrorCoded("An imported context must be a single object: "+e,i.ERROR_CODES.INVALID_REMOTE_CONTEXT);if("@import"in t)throw new i.ErrorCoded("An imported context can not import another context: "+e,i.ERROR_CODES.INVALID_CONTEXT_ENTRY);return this.containersToHash(t),t}}t.ContextParser=u,u.DEFAULT_PROCESSING_MODE=1.1,t.defaultExpandOptions={allowPrefixForcing:!0,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!0}},80512:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ERROR_CODES=t.ErrorCoded=void 0;class r extends Error{constructor(e,t){super(e),this.code=t}}var n;t.ErrorCoded=r,(n=t.ERROR_CODES||(t.ERROR_CODES={})).COLLIDING_KEYWORDS="colliding keywords",n.CONFLICTING_INDEXES="conflicting indexes",n.CYCLIC_IRI_MAPPING="cyclic IRI mapping",n.INVALID_ID_VALUE="invalid @id value",n.INVALID_INDEX_VALUE="invalid @index value",n.INVALID_NEST_VALUE="invalid @nest value",n.INVALID_PREFIX_VALUE="invalid @prefix value",n.INVALID_PROPAGATE_VALUE="invalid @propagate value",n.INVALID_REVERSE_VALUE="invalid @reverse value",n.INVALID_IMPORT_VALUE="invalid @import value",n.INVALID_VERSION_VALUE="invalid @version value",n.INVALID_BASE_IRI="invalid base IRI",n.INVALID_CONTAINER_MAPPING="invalid container mapping",n.INVALID_CONTEXT_ENTRY="invalid context entry",n.INVALID_CONTEXT_NULLIFICATION="invalid context nullification",n.INVALID_DEFAULT_LANGUAGE="invalid default language",n.INVALID_INCLUDED_VALUE="invalid @included value",n.INVALID_IRI_MAPPING="invalid IRI mapping",n.INVALID_JSON_LITERAL="invalid JSON literal",n.INVALID_KEYWORD_ALIAS="invalid keyword alias",n.INVALID_LANGUAGE_MAP_VALUE="invalid language map value",n.INVALID_LANGUAGE_MAPPING="invalid language mapping",n.INVALID_LANGUAGE_TAGGED_STRING="invalid language-tagged string",n.INVALID_LANGUAGE_TAGGED_VALUE="invalid language-tagged value",n.INVALID_LOCAL_CONTEXT="invalid local context",n.INVALID_REMOTE_CONTEXT="invalid remote context",n.INVALID_REVERSE_PROPERTY="invalid reverse property",n.INVALID_REVERSE_PROPERTY_MAP="invalid reverse property map",n.INVALID_REVERSE_PROPERTY_VALUE="invalid reverse property value",n.INVALID_SCOPED_CONTEXT="invalid scoped context",n.INVALID_SCRIPT_ELEMENT="invalid script element",n.INVALID_SET_OR_LIST_OBJECT="invalid set or list object",n.INVALID_TERM_DEFINITION="invalid term definition",n.INVALID_TYPE_MAPPING="invalid type mapping",n.INVALID_TYPE_VALUE="invalid type value",n.INVALID_TYPED_VALUE="invalid typed value",n.INVALID_VALUE_OBJECT="invalid value object",n.INVALID_VALUE_OBJECT_VALUE="invalid value object value",n.INVALID_VOCAB_MAPPING="invalid vocab mapping",n.IRI_CONFUSED_WITH_PREFIX="IRI confused with prefix",n.KEYWORD_REDEFINITION="keyword redefinition",n.LOADING_DOCUMENT_FAILED="loading document failed",n.LOADING_REMOTE_CONTEXT_FAILED="loading remote context failed",n.MULTIPLE_CONTEXT_LINK_HEADERS="multiple context link headers",n.PROCESSING_MODE_CONFLICT="processing mode conflict",n.PROTECTED_TERM_REDEFINITION="protected term redefinition",n.CONTEXT_OVERFLOW="context overflow",n.INVALID_BASE_DIRECTION="invalid base direction",n.RECURSIVE_CONTEXT_INCLUSION="recursive context inclusion",n.INVALID_STREAMING_KEY_ORDER="invalid streaming key order",n.INVALID_EMBEDDED_NODE="invalid embedded node",n.INVALID_ANNOTATION="invalid annotation"},36187:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchDocumentLoader=void 0,r(70155);const n=r(80512),i=r(95480),a=r(84690);t.FetchDocumentLoader=class{constructor(e){this.fetcher=e}async load(e){const t=await(this.fetcher||fetch)(e,{headers:new Headers({accept:"application/ld+json"})});if(t.ok&&t.headers){let r=t.headers.get("Content-Type");if(r){const e=r.indexOf(";");e>0&&(r=r.substr(0,e))}if("application/ld+json"===r)return await t.json();if(t.headers.has("Link")){let r;if(t.headers.forEach(((t,n)=>{if("link"===n){const n=(0,i.parse)(t);for(const t of n.get("type","application/ld+json"))if("alternate"===t.rel){if(r)throw new Error("Multiple JSON-LD alternate links were found on "+e);r=(0,a.resolve)(t.uri,e)}}})),r)return this.load(r)}throw new n.ErrorCoded(`Unsupported JSON-LD media type ${r}`,n.ERROR_CODES.LOADING_DOCUMENT_FAILED)}throw new Error(t.statusText||`Status code: ${t.status}`)}}},17066:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},51258:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},41337:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdContextNormalized=void 0;const n=r(84690),i=r(36513),a=r(80512),o=r(56991);t.JsonLdContextNormalized=class{constructor(e){this.contextRaw=e}getContextRaw(){return this.contextRaw}expandTerm(e,t,r=i.defaultExpandOptions){const s=this.contextRaw[e];if(null===s||s&&null===s["@id"])return null;let c=!0;if(s&&t){const t=o.Util.getContextValueId(s);if(t&&t!==e){if("string"==typeof t&&(o.Util.isValidIri(t)||o.Util.isValidKeyword(t)))return t;o.Util.isPotentialKeyword(t)||(c=!1)}}const u=o.Util.getPrefix(e,this.contextRaw),l=this.contextRaw["@vocab"],d=(!!l||""===l)&&l.indexOf(":")<0,h=this.contextRaw["@base"],p=o.Util.isPotentialKeyword(e);if(u){const t=this.contextRaw[u],n=o.Util.getContextValueId(t);if(n){if("string"!=typeof t&&r.allowPrefixForcing){if("_"!==n[0]&&!p&&!t["@prefix"]&&!(e in this.contextRaw))return e}else if(!o.Util.isSimpleTermDefinitionPrefix(n,r))return e;return n+e.substr(u.length+1)}}else{if(t&&(l||""===l||r.allowVocabRelativeToBase&&h&&d)&&!p&&!o.Util.isCompactIri(e)){if(d){if(r.allowVocabRelativeToBase)return(l||h?(0,n.resolve)(l,h):"")+e;throw new a.ErrorCoded(`Relative vocab expansion for term '${e}' with vocab '${l}' is not allowed.`,a.ERROR_CODES.INVALID_VOCAB_MAPPING)}return l+e}if(!t&&h&&!p&&!o.Util.isCompactIri(e))return(0,n.resolve)(e,h)}if(c)return e;throw new a.ErrorCoded(`Invalid IRI mapping found for context entry '${e}': '${JSON.stringify(s)}'`,a.ERROR_CODES.INVALID_IRI_MAPPING)}compactIri(e,t){if(t&&this.contextRaw["@vocab"]&&e.startsWith(this.contextRaw["@vocab"]))return e.substr(this.contextRaw["@vocab"].length);if(!t&&this.contextRaw["@base"]&&e.startsWith(this.contextRaw["@base"]))return e.substr(this.contextRaw["@base"].length);const r={prefix:"",suffix:e};for(const n in this.contextRaw){const i=this.contextRaw[n];if(i&&!o.Util.isPotentialKeyword(n)){const a=o.Util.getContextValueId(i);if(e.startsWith(a)){const i=e.substr(a.length);if(i)i.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;class r{static isCompactIri(e){return e.indexOf(":")>0&&!(e&&"#"===e[0])}static getPrefix(e,t){if(e&&"#"===e[0])return null;const r=e.indexOf(":");if(r>=0){if(e.length>r+1&&"/"===e.charAt(r+1)&&"/"===e.charAt(r+2))return null;const n=e.substr(0,r);if("_"===n)return null;if(t[n])return n}return null}static getContextValueId(e){if(null===e||"string"==typeof e)return e;return e["@id"]||null}static isSimpleTermDefinitionPrefix(e,t){return!r.isPotentialKeyword(e)&&("_"===e[0]||t.allowPrefixNonGenDelims||r.isPrefixIriEndingWithGenDelim(e))}static isPotentialKeyword(e){return"string"==typeof e&&r.KEYWORD_REGEX.test(e)}static isPrefixIriEndingWithGenDelim(e){return r.ENDS_WITH_GEN_DELIM.test(e)}static isPrefixValue(e){return e&&("string"==typeof e||e&&"object"==typeof e)}static isValidIri(e){return Boolean(e&&r.IRI_REGEX.test(e))}static isValidIriWeak(e){return!!e&&":"!==e[0]&&r.IRI_REGEX_WEAK.test(e)}static isValidKeyword(e){return r.VALID_KEYWORDS[e]}static isTermProtected(e,t){const r=e[t];return!("string"==typeof r)&&r&&r["@protected"]}static hasProtectedTerms(e){for(const t of Object.keys(e))if(r.isTermProtected(e,t))return!0;return!1}static isReservedInternalKeyword(e){return e.startsWith("@__")}}t.Util=r,r.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^ "<>{}|\\\[\]`#]*(#[^#]*)?$/,r.IRI_REGEX_WEAK=/(?::[^:])|\//,r.KEYWORD_REGEX=/^@[a-z]+$/i,r.ENDS_WITH_GEN_DELIM=/[:/?#\[\]@]$/,r.REGEX_LANGUAGE_TAG=/^[a-zA-Z]+(-[a-zA-Z0-9]+)*$/,r.REGEX_DIRECTION_TAG=/^(ltr)|(rtl)$/,r.VALID_KEYWORDS={"@annotation":!0,"@base":!0,"@container":!0,"@context":!0,"@direction":!0,"@graph":!0,"@id":!0,"@import":!0,"@included":!0,"@index":!0,"@json":!0,"@language":!0,"@list":!0,"@nest":!0,"@none":!0,"@prefix":!0,"@propagate":!0,"@protected":!0,"@reverse":!0,"@set":!0,"@type":!0,"@value":!0,"@version":!0,"@vocab":!0},r.EXPAND_KEYS_BLACKLIST=["@base","@vocab","@language","@version","@direction"],r.ALIAS_DOMAIN_BLACKLIST=["@container","@graph","@id","@index","@list","@nest","@none","@prefix","@reverse","@set","@type","@value","@version"],r.ALIAS_RANGE_BLACKLIST=["@context","@preserve"],r.CONTAINERS=["@list","@set","@index","@language","@graph","@id","@type"],r.CONTAINERS_1_0=["@list","@set","@index"]},70155:function(){!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}("undefined"!=typeof self?self:this)},72333:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(23303),t)},8724:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContextTree=void 0;class r{constructor(){this.subTrees={}}getContext(e){if(e.length>0){const[t,...r]=e,n=this.subTrees[t];if(n){const e=n.getContext(r);if(e)return e.then((({context:e,depth:t})=>({context:e,depth:t+1})))}}return this.context?this.context.then((e=>({context:e,depth:0}))):null}setContext(e,t){if(0===e.length)this.context=t;else{const[n,...i]=e;let a=this.subTrees[n];a||(a=this.subTrees[n]=new r),a.setContext(i,t)}}removeContext(e){this.setContext(e,null)}}t.ContextTree=r},23303:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdParser=void 0;const n=r(27609),i=r(1838),a=r(51887),o=r(72786),s=r(89238),c=r(5892),u=r(78593),l=r(16587),d=r(33119),h=r(73249),p=r(6210),f=r(80230),y=r(87044),g=r(44582),m=r(21997),b=r(30636),v=r(78826),_=r(95480),w=r(70254);class T extends a.Transform{constructor(e){super({readableObjectMode:!0}),e=e||{},this.options=e,this.parsingContext=new b.ParsingContext(Object.assign({parser:this},e)),this.util=new v.Util({dataFactory:e.dataFactory,parsingContext:this.parsingContext}),this.jsonParser=new n,this.contextJobs=[],this.typeJobs=[],this.contextAwaitingJobs=[],this.lastDepth=0,this.lastKeys=[],this.lastOnValueJob=Promise.resolve(),this.attachJsonParserListeners(),this.on("end",(()=>{void 0!==this.jsonParser.mode&&this.emit("error",new Error("Unclosed document"))}))}static fromHttpResponse(e,t,r,n){let a,o;if("application/ld+json"!==t){if("application/json"!==t&&!t.endsWith("+json"))throw new i.ErrorCoded(`Unsupported JSON-LD media type ${t}`,i.ERROR_CODES.LOADING_DOCUMENT_FAILED);if(r&&r.has("Link")&&r.forEach(((t,r)=>{if("link"===r){const r=(0,_.parse)(t);for(const t of r.get("rel","http://www.w3.org/ns/json-ld#context")){if(a)throw new i.ErrorCoded("Multiple JSON-LD context link headers were found on "+e,i.ERROR_CODES.MULTIPLE_CONTEXT_LINK_HEADERS);a=t.uri}}})),!a&&!(null==n?void 0:n.ignoreMissingContextLinkHeader))throw new i.ErrorCoded(`Missing context link header for media type ${t} on ${e}`,i.ERROR_CODES.LOADING_DOCUMENT_FAILED)}if(r&&r.has("Content-Type")){const e=r.get("Content-Type"),t=/; *profile=([^"]*)/.exec(e);t&&"http://www.w3.org/ns/json-ld#streaming"===t[1]&&(o=!0)}return new T(Object.assign({baseIRI:e,context:a,streamingProfile:o},n||{}))}import(e){if("pipe"in e){e.on("error",(e=>t.emit("error",e)));const t=e.pipe(new T(this.options));return t}{const t=new a.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new T(this.options));return r}}_transform(e,t,r){this.jsonParser.write(e),this.lastOnValueJob.then((()=>r()),(e=>r(e)))}async newOnValueJob(e,t,r,n){let a=!0;if(n&&r1&&(l=this.parsingContext.validationStack[this.parsingContext.validationStack.length-1].property);for(let t=Math.max(1,this.parsingContext.validationStack.length-1);t=0?this.parsingContext.idStack[e-r-1]:[await this.util.getGraphContainerValue(t,e)];if(a)for(const t of a){this.parsingContext.emittedStack[e]=!0;for(const r of n)this.util.emitQuadChecked(e,i,r.predicate,r.object,t,r.reverse,r.isEmbedded)}else{const r=this.parsingContext.getUnidentifiedGraphBufferSafe(e-await this.util.getDepthOffsetGraph(e,t)-1);for(const e of n)e.reverse?r.push({object:i,predicate:e.predicate,subject:e.object,isEmbedded:e.isEmbedded}):r.push({object:e.object,predicate:e.predicate,subject:i,isEmbedded:e.isEmbedded})}}this.parsingContext.unidentifiedValuesBuffer.splice(e,1),this.parsingContext.literalStack.splice(e,1),this.parsingContext.jsonLiteralStack.splice(e,1)}const a=this.parsingContext.unidentifiedGraphsBuffer[e];if(a){for(const t of r){const r=1!==e||"BlankNode"!==t.termType||this.parsingContext.topLevelProperties?t:this.util.getDefaultGraph();this.parsingContext.emittedStack[e]=!0;for(const t of a)this.parsingContext.emitQuad(e,this.util.dataFactory.quad(t.subject,t.predicate,t.object,r))}this.parsingContext.unidentifiedGraphsBuffer.splice(e,1)}const o=this.parsingContext.annotationsBuffer[e];if(o){o.length>0&&1===e&&this.parsingContext.emitError(new i.ErrorCoded("Annotations can not be made on top-level nodes",i.ERROR_CODES.INVALID_ANNOTATION));const t=this.parsingContext.getAnnotationsBufferSafe(e-1);for(const e of o)t.push(e);delete this.parsingContext.annotationsBuffer[e]}}async validateKey(e,t,r){for(const n of T.ENTRY_HANDLERS)if(await n.validate(this.parsingContext,this.util,e,t,r))return{valid:!0,property:r||n.isPropertyHandler()};return{valid:!1,property:!1}}attachJsonParserListeners(){this.jsonParser.onValue=e=>{const t=this.jsonParser.stack.length,r=new Array(t+1).fill(0).map(((e,r)=>r===t?this.jsonParser.key:this.jsonParser.stack[r].key));if(!this.isParsingContextInner(t)){const n=()=>this.newOnValueJob(r,e,t,!0);if(this.parsingContext.streamingProfile||this.parsingContext.contextTree.getContext(r.slice(0,-1)))this.lastOnValueJob=this.lastOnValueJob.then(n);else if("@context"===r[t]){let e=this.contextJobs[t];e||(e=this.contextJobs[t]=[]),e.push(n)}else"@type"===r[t]||"number"==typeof r[t]&&"@type"===r[t-1]?this.typeJobs.push({job:n,keys:r.slice(0,r.length-1)}):this.contextAwaitingJobs.push({job:n,keys:r});this.parsingContext.streamingProfile||0!==t||(this.lastOnValueJob=this.lastOnValueJob.then((()=>this.executeBufferedJobs())))}},this.jsonParser.onError=e=>{this.emit("error",e)}}isParsingContextInner(e){for(let t=e;t>0;t--)if("@context"===this.jsonParser.stack[t-1].key)return!0;return!1}async executeBufferedJobs(){for(const e of this.contextJobs)if(e)for(const t of e)await t();this.parsingContext.unaliasedKeywordCacheStack.splice(0);for(const e of this.contextAwaitingJobs){if(this.typeJobs.length>0){const t=[],r=[];for(let n=0;ne.keys.length-t.keys.length));for(const e of n)await e.job();const i=r.sort().reverse();for(const e of i)this.typeJobs.splice(e,1)}await e.job()}}}t.JsonLdParser=T,T.DEFAULT_PROCESSING_MODE="1.1",T.ENTRY_HANDLERS=[new o.EntryHandlerArrayValue,new l.EntryHandlerKeywordContext,new h.EntryHandlerKeywordId,new p.EntryHandlerKeywordIncluded,new d.EntryHandlerKeywordGraph,new f.EntryHandlerKeywordNest,new y.EntryHandlerKeywordType,new m.EntryHandlerKeywordValue,new w.EntryHandlerKeywordAnnotation,new s.EntryHandlerContainer,new g.EntryHandlerKeywordUnknownFallback,new u.EntryHandlerPredicate,new c.EntryHandlerInvalidFallback]},30636:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParsingContext=void 0;const n=r(1838),i=r(80512),a=r(8724),o=r(23303);class s{constructor(e){this.contextParser=new n.ContextParser({documentLoader:e.documentLoader,skipValidation:e.skipContextValidation}),this.streamingProfile=!!e.streamingProfile,this.baseIRI=e.baseIRI,this.produceGeneralizedRdf=!!e.produceGeneralizedRdf,this.allowSubjectList=!!e.allowSubjectList,this.processingMode=e.processingMode||o.JsonLdParser.DEFAULT_PROCESSING_MODE,this.strictValues=!!e.strictValues,this.validateValueIndexes=!!e.validateValueIndexes,this.defaultGraph=e.defaultGraph,this.rdfDirection=e.rdfDirection,this.normalizeLanguageTags=e.normalizeLanguageTags,this.streamingProfileAllowOutOfOrderPlainType=e.streamingProfileAllowOutOfOrderPlainType,this.rdfstar=!1!==e.rdfstar,this.rdfstarReverseInEmbedded=e.rdfstarReverseInEmbedded,this.topLevelProperties=!1,this.activeProcessingMode=parseFloat(this.processingMode),this.processingStack=[],this.processingType=[],this.emittedStack=[],this.idStack=[],this.graphStack=[],this.graphContainerTermStack=[],this.listPointerStack=[],this.contextTree=new a.ContextTree,this.literalStack=[],this.validationStack=[],this.unaliasedKeywordCacheStack=[],this.jsonLiteralStack=[],this.unidentifiedValuesBuffer=[],this.unidentifiedGraphsBuffer=[],this.annotationsBuffer=[],this.pendingContainerFlushBuffers=[],this.parser=e.parser,e.context?(this.rootContext=this.parseContext(e.context),this.rootContext.then((e=>this.validateContext(e)))):this.rootContext=Promise.resolve(new n.JsonLdContextNormalized(this.baseIRI?{"@base":this.baseIRI,"@__baseDocument":!0}:{}))}async parseContext(e,t,r){return this.contextParser.parse(e,{baseIRI:this.baseIRI,ignoreProtection:r,normalizeLanguageTags:this.normalizeLanguageTags,parentContext:t,processingMode:this.activeProcessingMode})}validateContext(e){const t=e.getContextRaw()["@version"];if(t){if(this.activeProcessingMode&&t>this.activeProcessingMode)throw new i.ErrorCoded(`Unsupported JSON-LD version '${t}' under active processing mode ${this.activeProcessingMode}.`,i.ERROR_CODES.PROCESSING_MODE_CONFLICT);if(this.activeProcessingMode&&t0&&!1===i.context.getContextRaw()["@propagate"]&&i.depth!==t&&!r);return 0===i.depth&&!1===i.context.getContextRaw()["@propagate"]&&i.depth!==t&&(i.context=new n.JsonLdContextNormalized({})),i}async newOnValueJob(e,t,r,n){await this.parser.newOnValueJob(e,t,r,n)}async handlePendingContainerFlushBuffers(){if(this.pendingContainerFlushBuffers.length>0){for(const e of this.pendingContainerFlushBuffers)await this.parser.flushBuffer(e.depth,e.keys),this.parser.flushStacks(e.depth);return this.pendingContainerFlushBuffers.splice(0,this.pendingContainerFlushBuffers.length),!0}return!1}emitQuad(e,t){1===e&&(this.topLevelProperties=!0),this.parser.push(t)}emitError(e){this.parser.emit("error",e)}emitContext(e){this.parser.emit("context",e)}getUnidentifiedValueBufferSafe(e){let t=this.unidentifiedValuesBuffer[e];return t||(t=[],this.unidentifiedValuesBuffer[e]=t),t}getUnidentifiedGraphBufferSafe(e){let t=this.unidentifiedGraphsBuffer[e];return t||(t=[],this.unidentifiedGraphsBuffer[e]=t),t}getAnnotationsBufferSafe(e){let t=this.annotationsBuffer[e];return t||(t=[],this.annotationsBuffer[e]=t),t}getExpandOptions(){return s.EXPAND_OPTIONS[this.activeProcessingMode]}shiftStack(e,t){const r=this.idStack[e+t];if(r&&(this.idStack[e]=r,this.emittedStack[e]=!0,delete this.idStack[e+t]),this.pendingContainerFlushBuffers.length)for(const r of this.pendingContainerFlushBuffers)r.depth>=e+t&&(r.depth-=t,r.keys.splice(e,t));this.unidentifiedValuesBuffer[e+t]&&(this.unidentifiedValuesBuffer[e]=this.unidentifiedValuesBuffer[e+t],delete this.unidentifiedValuesBuffer[e+t]),this.annotationsBuffer[e+t-1]&&(this.annotationsBuffer[e-1]||(this.annotationsBuffer[e-1]=[]),this.annotationsBuffer[e-1]=[...this.annotationsBuffer[e-1],...this.annotationsBuffer[e+t-1]],delete this.annotationsBuffer[e+t-1])}}t.ParsingContext=s,s.EXPAND_OPTIONS={1:{allowPrefixForcing:!1,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!1},1.1:{allowPrefixForcing:!0,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!0}}},78826:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(1838),i=r(91194),a=r(89238),o=r(67026);class s{constructor(e){this.parsingContext=e.parsingContext,this.dataFactory=e.dataFactory||new i.DataFactory,this.rdfFirst=this.dataFactory.namedNode(s.RDF+"first"),this.rdfRest=this.dataFactory.namedNode(s.RDF+"rest"),this.rdfNil=this.dataFactory.namedNode(s.RDF+"nil"),this.rdfType=this.dataFactory.namedNode(s.RDF+"type"),this.rdfJson=this.dataFactory.namedNode(s.RDF+"JSON")}static getContextValue(e,t,r,n){const i=e.getContextRaw()[r];if(!i)return n;const a=i[t];return void 0===a?n:a}static getContextValueContainer(e,t){return s.getContextValue(e,"@container",t,{"@set":!0})}static getContextValueType(e,t){const r=s.getContextValue(e,"@type",t,null);return"@none"===r?null:r}static getContextValueLanguage(e,t){return s.getContextValue(e,"@language",t,e.getContextRaw()["@language"]||null)}static getContextValueDirection(e,t){return s.getContextValue(e,"@direction",t,e.getContextRaw()["@direction"]||null)}static isContextValueReverse(e,t){return!!s.getContextValue(e,"@reverse",t,null)}static getContextValueIndex(e,t){return s.getContextValue(e,"@index",t,e.getContextRaw()["@index"]||null)}static isPropertyReverse(e,t,r){return"@reverse"===r!==s.isContextValueReverse(e,t)}static isPropertyInEmbeddedNode(e){return"@id"===e}static isPropertyInAnnotationObject(e){return"@annotation"===e}static isValidIri(e){return null!==e&&n.Util.isValidIri(e)}static isPrefixArray(e,t){if(e.length>t.length)return!1;for(let r=0;r1)throw new n.ErrorCoded(`Found illegal neighbouring entries next to @set for key: '${t}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);return[]}if("@list"in r){if(Object.keys(r).length>1)throw new n.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${t}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);const e=r["@list"];return Array.isArray(e)?0===e.length?[this.rdfNil]:this.parsingContext.idStack[i+1]||[]:await this.valueToTerm(await this.parsingContext.getContext(a),t,e,i-1,a.slice(0,-1))}if("@reverse"in r&&"boolean"==typeof r["@reverse"])return[];if("@graph"in s.getContextValueContainer(await this.parsingContext.getContext(a),t)){const e=this.parsingContext.graphContainerTermStack[i+1];return e?Object.values(e):[this.dataFactory.blankNode()]}if("@id"in r){if(Object.keys(r).length>1&&(e=await this.parsingContext.getContext(a,0)),"@context"in r&&(e=await this.parsingContext.parseContext(r["@context"],e.getContextRaw())),"@vocab"===r["@type"])return this.nullableTermToArray(this.createVocabOrBaseTerm(e,r["@id"]));{const t=r["@id"];let a;if("object"==typeof t){if(!this.parsingContext.rdfstar)throw new n.ErrorCoded(`Found illegal @id '${r}'`,n.ERROR_CODES.INVALID_ID_VALUE);a=this.parsingContext.idStack[i+1][0]}else a=this.resourceToTerm(e,t);return this.nullableTermToArray(a)}}return this.parsingContext.emittedStack[i+1]||r&&"object"==typeof r&&0===Object.keys(r).length?this.parsingContext.idStack[i+1]||(this.parsingContext.idStack[i+1]=[this.dataFactory.blankNode()]):[];case"string":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,r,null));case"boolean":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,Boolean(r).toString(),this.dataFactory.namedNode(s.XSD_BOOLEAN)));case"number":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,r,this.dataFactory.namedNode(r%1==0&&r<1e21?s.XSD_INTEGER:s.XSD_DOUBLE)));default:return this.parsingContext.emitError(new Error(`Could not determine the RDF type of a ${o}`)),[]}}async getContextSelfOrPropertyScoped(e,t){const r=e.getContextRaw()[t];return r&&"object"==typeof r&&"@context"in r&&(e=await this.parsingContext.parseContext(r,e.getContextRaw(),!0)),e}nullableTermToArray(e){return e?[e]:[]}predicateToTerm(e,t){const r=e.expandTerm(t,!0,this.parsingContext.getExpandOptions());return r?"_"===r[0]&&":"===r[1]?this.parsingContext.produceGeneralizedRdf?this.dataFactory.blankNode(r.substr(2)):null:s.isValidIri(r)?this.dataFactory.namedNode(r):r&&this.parsingContext.strictValues?(this.parsingContext.emitError(new n.ErrorCoded(`Invalid predicate IRI: ${r}`,n.ERROR_CODES.INVALID_IRI_MAPPING)),null):null:null}resourceToTerm(e,t){if(t.startsWith("_:"))return this.dataFactory.blankNode(t.substr(2));const r=e.expandTerm(t,!1,this.parsingContext.getExpandOptions());if(!s.isValidIri(r)){if(!r||!this.parsingContext.strictValues)return null;this.parsingContext.emitError(new Error(`Invalid resource IRI: ${r}`))}return this.dataFactory.namedNode(r)}createVocabOrBaseTerm(e,t){if(t.startsWith("_:"))return this.dataFactory.blankNode(t.substr(2));const r=this.parsingContext.getExpandOptions();let n=e.expandTerm(t,!0,r);if(n===t&&(n=e.expandTerm(t,!1,r)),!s.isValidIri(n)){if(!n||!this.parsingContext.strictValues||n.startsWith("@"))return null;this.parsingContext.emitError(new Error(`Invalid term IRI: ${n}`))}return this.dataFactory.namedNode(n)}intToString(e,t){return"number"==typeof e?Number.isFinite(e)?e%1!=0||t&&t.value===s.XSD_DOUBLE?e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"):Number(e).toString():e>0?"INF":"-INF":e}stringValueToTerm(e,t,r,n,i){const a=s.getContextValueType(t,r);if(a)if("@id"===a){if(!i)return this.resourceToTerm(t,this.intToString(n,i))}else if("@vocab"===a){if(!i)return this.createVocabOrBaseTerm(t,this.intToString(n,i))}else i=this.dataFactory.namedNode(a);if(!i){const a=s.getContextValueLanguage(t,r),o=s.getContextValueDirection(t,r);return o&&this.parsingContext.rdfDirection?this.createLanguageDirectionLiteral(e,this.intToString(n,i),a,o):this.dataFactory.literal(this.intToString(n,i),a)}return this.dataFactory.literal(this.intToString(n,i),i)}createLanguageDirectionLiteral(e,t,r,n){if("i18n-datatype"===this.parsingContext.rdfDirection)return r||(r=""),this.dataFactory.literal(t,this.dataFactory.namedNode(`https://www.w3.org/ns/i18n#${r}_${n}`));{const i=this.dataFactory.blankNode(),a=this.getDefaultGraph();return this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"value"),this.dataFactory.literal(t),a)),r&&this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"language"),this.dataFactory.literal(r),a)),this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"direction"),this.dataFactory.literal(n),a)),i}}valueToJsonString(e){return o(e)}async unaliasKeyword(e,t,r,i,a){if(Number.isInteger(e))return e;if(!i){const e=this.parsingContext.unaliasedKeywordCacheStack[r];if(e)return e}if(!n.Util.isPotentialKeyword(e)){let r=(a=a||await this.parsingContext.getContext(t)).getContextRaw()[e];r&&"object"==typeof r&&(r=r["@id"]),n.Util.isValidKeyword(r)&&(e=r)}return i?e:this.parsingContext.unaliasedKeywordCacheStack[r]=e}async unaliasKeywordParent(e,t){return await this.unaliasKeyword(t>0&&e[t-1],e,t-1)}async unaliasKeywords(e,t,r,n){const i={};for(const a in e)i[await this.unaliasKeyword(a,t,r+1,!0,n)]=e[a];return i}async isLiteral(e,t){for(let r=t;r>=0;r--){if("@annotation"===await this.unaliasKeyword(e[r],e,r))return!1;if(this.parsingContext.literalStack[r]||this.parsingContext.jsonLiteralStack[r])return!0}return!1}async getDepthOffsetGraph(e,t){for(let r=e-1;r>0;r--)if("@graph"===await this.unaliasKeyword(t[r],t,r)){const n=(await a.EntryHandlerContainer.getContainerHandler(this.parsingContext,t,r)).containers;return a.EntryHandlerContainer.isComplexGraphContainer(n)?-1:e-r-1}return-1}validateReverseSubject(e){if("Literal"===e.termType)throw new n.ErrorCoded(`Found illegal literal in subject position: ${e.value}`,n.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE)}getDefaultGraph(){return this.parsingContext.defaultGraph||this.dataFactory.defaultGraph()}async getGraphContainerValue(e,t){let r=this.getDefaultGraph();const{containers:n,depth:i}=await a.EntryHandlerContainer.getContainerHandler(this.parsingContext,e,t);if("@graph"in n){const t=a.EntryHandlerContainer.getContainerGraphIndex(n,i,e),o=this.parsingContext.graphContainerTermStack[i];if(r=o?o[t]:null,!r){let a=null;if("@id"in n){const t=await this.getContainerKey(e[i],e,i);null!==t&&(a=await this.resourceToTerm(await this.parsingContext.getContext(e),t))}a||(a=this.dataFactory.blankNode()),this.parsingContext.graphContainerTermStack[i]||(this.parsingContext.graphContainerTermStack[i]={}),r=this.parsingContext.graphContainerTermStack[i][t]=a}}return r}async getPropertiesDepth(e,t){let r=t;for(let n=t-1;n>0;n--)if("number"!=typeof e[n]){const t=await this.unaliasKeyword(e[n],e,n);if("@reverse"===t)return n;if("@nest"!==t)return r;r=n}return r}async getContainerKey(e,t,r){const n=await this.unaliasKeyword(e,t,r);return"@none"===n?null:n}validateReverseInEmbeddedNode(e,t,r){if(r&&t&&!this.parsingContext.rdfstarReverseInEmbedded)throw new n.ErrorCoded(`Illegal reverse property in embedded node in ${e}`,n.ERROR_CODES.INVALID_EMBEDDED_NODE)}emitQuadChecked(e,t,r,i,a,o,s){let c;if(o?(this.validateReverseSubject(i),c=this.dataFactory.quad(i,r,t,a)):c=this.dataFactory.quad(t,r,i,a),s){if("DefaultGraph"!==c.graph.termType&&(c=this.dataFactory.quad(c.subject,c.predicate,c.object)),this.parsingContext.idStack[e-1])throw new n.ErrorCoded("Illegal multiple properties in an embedded node",n.ERROR_CODES.INVALID_EMBEDDED_NODE);this.parsingContext.idStack[e-1]=[c]}else this.parsingContext.emitQuad(e,c);const u=this.parsingContext.annotationsBuffer[e];if(u){for(const t of u)this.emitAnnotation(e,c,t);delete this.parsingContext.annotationsBuffer[e]}}emitAnnotation(e,t,r){let n;r.reverse?(this.validateReverseSubject(r.object),n=this.dataFactory.quad(r.object,r.predicate,t)):n=this.dataFactory.quad(t,r.predicate,r.object),this.parsingContext.emitQuad(e,n);for(const t of r.nestedAnnotations)this.emitAnnotation(e,n,t)}}t.Util=s,s.XSD="http://www.w3.org/2001/XMLSchema#",s.XSD_BOOLEAN=s.XSD+"boolean",s.XSD_INTEGER=s.XSD+"integer",s.XSD_DOUBLE=s.XSD+"double",s.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"},61304:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerIdentifier=void 0,t.ContainerHandlerIdentifier=class{canCombineWithGraph(){return!0}async handle(e,t,r,n,i,a){let o;if(t.emittedStack[a+1]&&t.idStack[a+1])o=t.idStack[a+1][0];else{const e=null!==await r.getContainerKey(n[a],n,a)?await r.resourceToTerm(await t.getContext(n),n[a]):r.dataFactory.blankNode();if(!e)return void(t.emittedStack[a]=!1);o=e,t.idStack[a+1]=[o]}let s=t.idStack[a];s||(s=t.idStack[a]=[]),s.some((e=>e.equals(o)))||s.push(o),await t.handlePendingContainerFlushBuffers()||(t.emittedStack[a]=!1)}}},70569:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerIndex=void 0;const n=r(1838),i=r(78593),a=r(78826);t.ContainerHandlerIndex=class{canCombineWithGraph(){return!0}async handle(e,t,r,o,s,c){if(!Array.isArray(s)){const u="@graph"in e,l=await t.getContext(o),d=o[c-1],h=a.Util.getContextValueIndex(l,d);if(h){if(n.Util.isPotentialKeyword(h))throw new n.ErrorCoded(`Keywords can not be used as @index value, got: ${h}`,n.ERROR_CODES.INVALID_TERM_DEFINITION);if("string"!=typeof h)throw new n.ErrorCoded(`@index values must be strings, got: ${h}`,n.ERROR_CODES.INVALID_TERM_DEFINITION);if("object"!=typeof s){if("@id"!==a.Util.getContextValueType(l,d))throw new n.ErrorCoded(`Property-based index containers require nodes as values or strings with @type: @id, but got: ${s}`,n.ERROR_CODES.INVALID_VALUE_OBJECT);const e=r.resourceToTerm(l,s);e&&(t.idStack[c+1]=[e])}const e=r.createVocabOrBaseTerm(l,h);if(e){const n=await r.valueToTerm(l,h,await r.getContainerKey(o[c],o,c),c,o);if(u){const i=await r.getGraphContainerValue(o,c+1);for(const a of n)t.emitQuad(c,r.dataFactory.quad(i,e,a,r.getDefaultGraph()))}else for(const a of n)await i.EntryHandlerPredicate.handlePredicateObject(t,r,o,c+1,e,a,!1,!1,!1)}}const p=u?2:1;await t.newOnValueJob(o.slice(0,o.length-p),s,c-p,!0),await t.handlePendingContainerFlushBuffers()}t.emittedStack[c]=!1}}},82581:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerLanguage=void 0;const n=r(1838);t.ContainerHandlerLanguage=class{canCombineWithGraph(){return!1}async handle(e,t,r,i,a,o){const s=await r.getContainerKey(i[o],i,o);if(Array.isArray(a))a=a.map((e=>({"@value":e,"@language":s})));else{if("string"!=typeof a)throw new n.ErrorCoded(`Got invalid language map value, got '${JSON.stringify(a)}', but expected string`,n.ERROR_CODES.INVALID_LANGUAGE_MAP_VALUE);a={"@value":a,"@language":s}}await t.newOnValueJob(i.slice(0,i.length-1),a,o-1,!0),t.emittedStack[o]=!1}}},54848:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerType=void 0;const n=r(78593),i=r(78826);t.ContainerHandlerType=class{canCombineWithGraph(){return!1}async handle(e,t,r,a,o,s){if(!Array.isArray(o)){if("string"==typeof o){const e=await t.getContext(a),n="@vocab"===i.Util.getContextValueType(e,a[s-1])?await r.createVocabOrBaseTerm(e,o):await r.resourceToTerm(e,o);if(n){const e={"@id":"NamedNode"===n.termType?n.value:o};await t.newOnValueJob(a.slice(0,a.length-1),e,s-1,!0),t.idStack[s+1]=[n]}}else{const e=!!t.idStack[s+1];e||delete t.idStack[s],await t.newOnValueJob(a.slice(0,a.length-1),o,s-1,!0),e||(t.idStack[s+1]=t.idStack[s])}const e=await r.getContainerKey(a[s],a,s),c=null!==e?r.createVocabOrBaseTerm(await t.getContext(a),e):null;c&&await n.EntryHandlerPredicate.handlePredicateObject(t,r,a,s+1,r.rdfType,c,!1,!1,!1),await t.handlePendingContainerFlushBuffers()}t.emittedStack[s]=!1}}},72786:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerArrayValue=void 0;const n=r(78826),i=r(1838);t.EntryHandlerArrayValue=class{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return this.test(e,t,null,r,n)}async test(e,t,r,n,i){return"number"==typeof n[i]}async handle(e,t,r,i,a,o){let s=await t.unaliasKeywordParent(i,o);if("@list"===s){let r=null,n=0;for(let e=o-2;e>0;e--){const t=i[e];if("string"==typeof t||"number"==typeof t){n=e,r=t;break}}if(null!==r){const s=await t.valueToTerm(await e.getContext(i),r,a,o,i);for(const r of s)await this.handleListElement(e,t,r,a,o,i.slice(0,n),n);0===s.length&&await this.handleListElement(e,t,null,a,o,i.slice(0,n),n)}}else if("@set"===s)await e.newOnValueJob(i.slice(0,-2),a,o-2,!1);else if(void 0!==s&&"@type"!==s){for(let e=o-1;e>0;e--)if("number"!=typeof i[e]){s=await t.unaliasKeyword(i[e],i,e);break}const r=await e.getContext(i.slice(0,-1));if("@list"in n.Util.getContextValueContainer(r,s)){e.emittedStack[o+1]=!0;const r=await t.valueToTerm(await e.getContext(i),s,a,o,i);for(const n of r)await this.handleListElement(e,t,n,a,o,i.slice(0,-1),o-1);0===r.length&&await this.handleListElement(e,t,null,a,o,i.slice(0,-1),o-1)}else e.shiftStack(o,1),await e.newOnValueJob(i.slice(0,-1),a,o-1,!1),e.contextTree.removeContext(i.slice(0,-1))}}async handleListElement(e,t,r,n,a,o,s){let c=e.listPointerStack[a];if(null!==n&&null!==(await t.unaliasKeywords(n,o,a))["@value"]){if(c&&c.value){const r=t.dataFactory.blankNode();e.emitQuad(a,t.dataFactory.quad(c.value,t.rdfRest,r,t.getDefaultGraph())),c.value=r}else{const e=t.dataFactory.blankNode();c={value:e,listRootDepth:s,listId:e}}r&&e.emitQuad(a,t.dataFactory.quad(c.value,t.rdfFirst,r,t.getDefaultGraph()))}else c||(c={listRootDepth:s,listId:t.rdfNil});e.listPointerStack[a]=c,e.rdfstar&&e.annotationsBuffer[a]&&e.emitError(new i.ErrorCoded("Found an illegal annotation inside a list",i.ERROR_CODES.INVALID_ANNOTATION))}}},89238:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerContainer=void 0;const n=r(61304),i=r(70569),a=r(82581),o=r(54848),s=r(78826);class c{static isSimpleGraphContainer(e){return"@graph"in e&&("@set"in e&&2===Object.keys(e).length||1===Object.keys(e).length)}static isComplexGraphContainer(e){return"@graph"in e&&("@set"in e&&Object.keys(e).length>2||!("@set"in e)&&Object.keys(e).length>1)}static getContainerGraphIndex(e,t,r){let n=c.isSimpleGraphContainer(e),i="";for(let e=t;e=0;e--)if("number"!=typeof t[e]){const r=s.Util.getContextValue(a,"@container",t[e],!1);if(r&&c.isSimpleGraphContainer(r))return{containers:r,depth:e+1,fallback:!1};const o=s.Util.getContextValue(a,"@container",t[e-1],!1);if(o){const t="@graph"in o;for(const r in c.CONTAINER_HANDLERS)if(o[r])return t?c.CONTAINER_HANDLERS[r].canCombineWithGraph()?{containers:o,depth:e,fallback:!1}:n:i?n:{containers:o,depth:e,fallback:!1};return n}if(i)return n;i=!0}return n}static async isBufferableContainerHandler(e,t,r){const n=await c.getContainerHandler(e,t,r);return!n.fallback&&!("@graph"in n.containers)}isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!!await this.test(e,t,null,r,n)}async test(e,t,r,n,i){const a=s.Util.getContextValueContainer(await e.getContext(n,2),n[i-1]);for(const e in c.CONTAINER_HANDLERS)if(a[e])return{containers:a,handler:c.CONTAINER_HANDLERS[e]};return null}async handle(e,t,r,n,i,a,o){return o.handler.handle(o.containers,e,t,n,i,a)}}t.EntryHandlerContainer=c,c.CONTAINER_HANDLERS={"@id":new n.ContainerHandlerIdentifier,"@index":new i.ContainerHandlerIndex,"@language":new a.ContainerHandlerLanguage,"@type":new o.ContainerHandlerType}},5892:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerInvalidFallback=void 0,t.EntryHandlerInvalidFallback=class{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!1}async test(e,t,r,n,i){return!0}async handle(e,t,r,n,i,a){e.emittedStack[a]=!1}}},78593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerPredicate=void 0;const n=r(1838),i=r(78826);class a{static async handlePredicateObject(e,t,r,i,a,o,s,c,u){const l=await t.getPropertiesDepth(r,i),d=await t.getDepthOffsetGraph(i,r),h=i-d,p=e.idStack[l];if(p&&!u)for(const n of p)if(d>=0){const r=e.idStack[h-1];if(r)for(const e of r)t.emitQuadChecked(i,n,a,o,e,s,c);else s?(t.validateReverseSubject(o),e.getUnidentifiedGraphBufferSafe(h-1).push({subject:o,predicate:a,object:n,isEmbedded:c})):e.getUnidentifiedGraphBufferSafe(h-1).push({subject:n,predicate:a,object:o,isEmbedded:c})}else{const e=await t.getGraphContainerValue(r,l);t.emitQuadChecked(i,n,a,o,e,s,c)}else if(s&&t.validateReverseSubject(o),u){if(e.rdfstar){e.idStack[i]&&e.emitError(new n.ErrorCoded(`Found an illegal @id inside an annotation: ${e.idStack[i][0].value}`,n.ERROR_CODES.INVALID_ANNOTATION));for(let a=0;a=0;e--){const t=c[e];t.depth>l&&(u.nestedAnnotations.push(t),c.splice(e,1))}}}else e.getUnidentifiedValueBufferSafe(l).push({predicate:a,object:o,reverse:s,isEmbedded:c})}isPropertyHandler(){return!0}isStackProcessor(){return!0}async validate(e,t,r,n,a){const o=r[n];if(o){const a=await e.getContext(r);if(!e.jsonLiteralStack[n]&&await t.predicateToTerm(a,r[n]))return"@json"===i.Util.getContextValueType(a,o)&&(e.jsonLiteralStack[n+1]=!0),!0}return!1}async test(e,t,r,n,i){return n[i]}async handle(e,t,r,o,s,c,u){const l=o[c],d=await e.getContext(o),h=await t.predicateToTerm(d,r);if(h){const u=await t.valueToTerm(d,r,s,c,o);if(u.length)for(let p of u){let u=await t.unaliasKeywordParent(o,c);const f=i.Util.isPropertyReverse(d,l,u);let y=0;for(;"@reverse"===u||"number"==typeof u;)"number"==typeof u?y++:c--,u=await t.unaliasKeywordParent(o,c-y);const g=i.Util.isPropertyInEmbeddedNode(u);t.validateReverseInEmbeddedNode(r,f,g);const m=i.Util.isPropertyInAnnotationObject(u);if(s){const a="@list"in i.Util.getContextValueContainer(d,r);if(a||s["@list"]){if((a&&!Array.isArray(s)&&!s["@list"]||s["@list"]&&!Array.isArray(s["@list"]))&&p!==t.rdfNil){const r=t.dataFactory.blankNode();e.emitQuad(c,t.dataFactory.quad(r,t.rdfRest,t.rdfNil,t.getDefaultGraph())),e.emitQuad(c,t.dataFactory.quad(r,t.rdfFirst,p,t.getDefaultGraph())),p=r}if(f&&!e.allowSubjectList)throw new n.ErrorCoded(`Found illegal list value in subject position at ${r}`,n.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE)}}await a.handlePredicateObject(e,t,o,c,h,p,f,g,m)}}}}t.EntryHandlerPredicate=a},82149:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeyword=void 0,t.EntryHandlerKeyword=class{constructor(e){this.keyword=e}isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!1}async test(e,t,r,n,i){return r===this.keyword}}},70254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordAnnotation=void 0;const n=r(82149),i=r(1838);class a extends n.EntryHandlerKeyword{constructor(){super("@annotation")}async handle(e,t,r,n,a,o){("string"==typeof a||"object"==typeof a&&a["@value"])&&e.emitError(new i.ErrorCoded(`Found illegal annotation value: ${JSON.stringify(a)}`,i.ERROR_CODES.INVALID_ANNOTATION))}}t.EntryHandlerKeywordAnnotation=a},16587:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordContext=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@context")}isStackProcessor(){return!1}async handle(e,t,r,i,a,o){e.streamingProfile&&(e.processingStack[o]||e.processingType[o]||void 0!==e.idStack[o])&&e.emitError(new n.ErrorCoded("Found an out-of-order context, while streaming is enabled.(disable `streamingProfile`)",n.ERROR_CODES.INVALID_STREAMING_KEY_ORDER));const s=e.getContext(i),c=e.parseContext(a,(await s).getContextRaw());e.contextTree.setContext(i.slice(0,-1),c),e.emitContext(a),await e.validateContext(await c)}}t.EntryHandlerKeywordContext=a},33119:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordGraph=void 0;const n=r(82149);class i extends n.EntryHandlerKeyword{constructor(){super("@graph")}async handle(e,t,r,n,i,a){e.graphStack[a+1]=!0}}t.EntryHandlerKeywordGraph=i},73249:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordId=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@id")}isStackProcessor(){return!1}async handle(e,t,r,i,a,o){if("string"!=typeof a){if(e.rdfstar&&"object"==typeof a){const t=Object.keys(a);1===t.length&&"@id"===t[0]&&e.emitError(new n.ErrorCoded(`Invalid embedded node without property with @id ${a["@id"]}`,n.ERROR_CODES.INVALID_EMBEDDED_NODE))}else e.emitError(new n.ErrorCoded(`Found illegal @id '${a}'`,n.ERROR_CODES.INVALID_ID_VALUE));return}const s=await t.getPropertiesDepth(i,o);if(void 0!==e.idStack[s]&&(e.idStack[s][0].listHead?e.emitError(new n.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${i[o-1]}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT)):e.emitError(new n.ErrorCoded(`Found duplicate @ids '${e.idStack[s][0].value}' and '${a}'`,n.ERROR_CODES.COLLIDING_KEYWORDS))),e.rdfstar&&e.annotationsBuffer[o])for(const t of e.annotationsBuffer[o])t.depth===o&&e.emitError(new n.ErrorCoded(`Found an illegal @id inside an annotation: ${a}`,n.ERROR_CODES.INVALID_ANNOTATION));e.idStack[s]=t.nullableTermToArray(await t.resourceToTerm(await e.getContext(i),a))}}t.EntryHandlerKeywordId=a},6210:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordIncluded=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@included")}async handle(e,t,r,i,a,o){"object"!=typeof a&&e.emitError(new n.ErrorCoded(`Found illegal @included '${a}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE));const s=await t.unaliasKeywords(a,i,o,await e.getContext(i));"@value"in s&&e.emitError(new n.ErrorCoded(`Found an illegal @included @value node '${JSON.stringify(a)}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE)),"@list"in s&&e.emitError(new n.ErrorCoded(`Found an illegal @included @list node '${JSON.stringify(a)}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE)),e.emittedStack[o]=!1}}t.EntryHandlerKeywordIncluded=a},80230:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordNest=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@nest")}async handle(e,t,r,i,a,o){"object"!=typeof a&&e.emitError(new n.ErrorCoded(`Found invalid @nest entry for '${r}': '${a}'`,n.ERROR_CODES.INVALID_NEST_VALUE)),"@value"in await t.unaliasKeywords(a,i,o,await e.getContext(i))&&e.emitError(new n.ErrorCoded(`Found an invalid @value node for '${r}'`,n.ERROR_CODES.INVALID_NEST_VALUE)),e.emittedStack[o]=!1}}t.EntryHandlerKeywordNest=a},87044:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordType=void 0;const n=r(1838),i=r(78826),a=r(78593),o=r(82149);class s extends o.EntryHandlerKeyword{constructor(){super("@type")}isStackProcessor(){return!1}async handle(e,t,r,o,s,c){const u=o[c],l=await e.getContext(o),d=t.rdfType,h=await t.unaliasKeywordParent(o,c),p=i.Util.isPropertyReverse(l,u,h),f=i.Util.isPropertyInEmbeddedNode(h);t.validateReverseInEmbeddedNode(r,p,f);const y=i.Util.isPropertyInAnnotationObject(h),g=Array.isArray(s)?s:[s];for(const r of g){"string"!=typeof r&&e.emitError(new n.ErrorCoded(`Found illegal @type '${r}'`,n.ERROR_CODES.INVALID_TYPE_VALUE));const i=t.createVocabOrBaseTerm(l,r);i&&await a.EntryHandlerPredicate.handlePredicateObject(e,t,o,c,d,i,p,f,y)}let m=Promise.resolve(l),b=!1;for(const t of g.sort()){const r=i.Util.getContextValue(l,"@context",t,null);r&&(b=!0,m=m.then((t=>e.parseContext(r,t.getContextRaw()))))}!e.streamingProfile||!b&&e.streamingProfileAllowOutOfOrderPlainType||!e.processingStack[c]&&!e.idStack[c]||e.emitError(new n.ErrorCoded("Found an out-of-order type-scoped context, while streaming is enabled.(disable `streamingProfile`)",n.ERROR_CODES.INVALID_STREAMING_KEY_ORDER)),b&&(m=m.then((e=>("@propagate"in e.getContextRaw()||(e.getContextRaw()["@propagate"]=!1),!1===e.getContextRaw()["@propagate"]&&(e.getContextRaw()["@__propagateFallback"]=l.getContextRaw()),e))),e.contextTree.setContext(o.slice(0,o.length-1),m)),e.processingType[c]=!0}}t.EntryHandlerKeywordType=s},44582:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordUnknownFallback=void 0;const n=r(1838);class i{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,i,a){const o=await t.unaliasKeyword(r[i],r,i);return!(!n.Util.isPotentialKeyword(o)||!a&&"@list"===o)}async test(e,t,r,i,a){return n.Util.isPotentialKeyword(r)}async handle(e,t,r,a,o,s){const c=i.VALID_KEYWORDS_TYPES[r];void 0!==c?c&&typeof o!==c.type&&e.emitError(new n.ErrorCoded(`Invalid value type for '${r}' with value '${o}'`,c.errorCode)):e.strictValues&&e.emitError(new Error(`Unknown keyword '${r}' with value '${o}'`)),e.emittedStack[s]=!1}}t.EntryHandlerKeywordUnknownFallback=i,i.VALID_KEYWORDS_TYPES={"@index":{type:"string",errorCode:n.ERROR_CODES.INVALID_INDEX_VALUE},"@list":null,"@reverse":{type:"object",errorCode:n.ERROR_CODES.INVALID_REVERSE_VALUE},"@set":null,"@value":null}},21997:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordValue=void 0;const n=r(82149);class i extends n.EntryHandlerKeyword{constructor(){super("@value")}async validate(e,t,r,n,i){const a=r[n];return a&&!e.literalStack[n]&&await this.test(e,t,a,r,n)&&(e.literalStack[n]=!0),super.validate(e,t,r,n,i)}async test(e,t,r,n,i){return"@value"===await t.unaliasKeyword(n[i],n.slice(0,n.length-1),i-1,!0)}async handle(e,t,r,n,i,a){e.literalStack[a]=!0,delete e.unidentifiedValuesBuffer[a],delete e.unidentifiedGraphsBuffer[a],e.emittedStack[a]=!1}}t.EntryHandlerKeywordValue=i},82694:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(58158),t),i(r(37354),t)},58158:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdSerializer=void 0;const n=r(1838),i=r(46342),a=r(37354),o=r(51887);class s extends o.Transform{constructor(e={}){super({objectMode:!0}),this.indentation=0,this.options=e,this.options.baseIRI&&!this.options.context&&(this.options.context={"@base":this.options.baseIRI}),this.options.context?(this.originalContext=this.options.context,this.context=(new n.ContextParser).parse(this.options.context,{baseIRI:this.options.baseIRI})):this.context=Promise.resolve(new n.JsonLdContextNormalized({}))}import(e){const t=new o.PassThrough({objectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new s(this.options));return r}_transform(e,t,r){this.context.then((t=>{this.transformQuad(e,t),r()})).catch(r)}async list(e){const t=await this.context;return{"@list":e.map((e=>a.Util.termToValue(e,t,this.options)))}}_flush(e){return this.opened||this.pushDocumentStart(),this.lastPredicate&&this.endPredicate(),this.lastSubject&&this.endSubject(),this.lastGraph&&"DefaultGraph"!==this.lastGraph.termType&&this.endGraph(),this.endDocument(),e(null,null)}transformQuad(e,t){this.opened||this.pushDocumentStart();const r=this.lastGraph&&"DefaultGraph"!==this.lastGraph.termType&&this.lastGraph.equals(e.subject);if(!(r||this.lastGraph&&e.graph.equals(this.lastGraph))){let r="DefaultGraph"!==e.graph.termType&&this.lastSubject&&this.lastSubject.equals(e.graph);this.lastGraph&&("DefaultGraph"!==this.lastGraph.termType?(this.endPredicate(),this.endSubject(),this.endGraph(!0),r=!1):r?(this.endPredicate(!0),this.lastSubject=null):(this.endPredicate(),this.endSubject(!0))),"DefaultGraph"!==e.graph.termType&&(r||this.pushId(e.graph,!0,t),this.pushSeparator(this.options.space?i.SeparatorType.GRAPH_FIELD_NONCOMPACT:i.SeparatorType.GRAPH_FIELD_COMPACT),this.indentation++),this.lastGraph=e.graph}this.lastSubject&&e.subject.equals(this.lastSubject)||(r?(this.endPredicate(),this.endSubject(),this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END_COMMA),this.lastGraph=e.graph):(this.lastSubject&&(this.endPredicate(),this.endSubject(!0)),this.pushId(e.subject,!0,t)),this.lastSubject=e.subject),this.lastPredicate&&e.predicate.equals(this.lastPredicate)||(this.lastPredicate&&this.endPredicate(!0),this.pushPredicate(e.predicate,t)),this.pushObject(e.object,t)}pushDocumentStart(){this.opened=!0,this.originalContext&&!this.options.excludeContext?(this.pushSeparator(i.SeparatorType.OBJECT_START),this.indentation++,this.pushSeparator(i.SeparatorType.CONTEXT_FIELD),this.pushIndented(JSON.stringify(this.originalContext,null,this.options.space)+","),this.pushSeparator(this.options.space?i.SeparatorType.GRAPH_FIELD_NONCOMPACT:i.SeparatorType.GRAPH_FIELD_COMPACT),this.indentation++):(this.pushSeparator(i.SeparatorType.ARRAY_START),this.indentation++)}pushId(e,t,r){if("Quad"===e.termType)this.pushNestedQuad(e,!0,r);else{const n="BlankNode"===e.termType?"_:"+e.value:r.compactIri(e.value,!1);t?this.pushSeparator(i.SeparatorType.OBJECT_START):(this.push(i.SeparatorType.OBJECT_START.label),this.options.space&&this.push("\n")),this.indentation++,this.pushIndented(this.options.space?`"@id": "${n}",`:`"@id":"${n}",`)}}pushPredicate(e,t){let r=e.value;this.options.useRdfType||r!==a.Util.RDF_TYPE||(r="@type",this.objectOptions=Object.assign(Object.assign({},this.options),{compactIds:!0,vocab:!0}));const n=t.compactIri(r,!0);this.pushIndented(this.options.space?`"${n}": [`:`"${n}":[`),this.indentation++,this.lastPredicate=e}pushObject(e,t){if(this.hadObjectForPredicate?this.pushSeparator(i.SeparatorType.COMMA):this.hadObjectForPredicate=!0,"Quad"===e.termType){const r=this.lastSubject,n=this.lastPredicate;return this.hadObjectForPredicate=!1,this.pushNestedQuad(e,!1,t),this.endSubject(!1),this.hadObjectForPredicate=!0,this.lastPredicate=n,void(this.lastSubject=r)}let r;try{r=e["@list"]?e:a.Util.termToValue(e,t,this.objectOptions||this.options)}catch(e){return this.emit("error",e)}this.pushIndented(JSON.stringify(r,null,this.options.space))}pushNestedQuad(e,t,r){this.pushSeparator(i.SeparatorType.OBJECT_START),this.indentation++,this.pushIndented(this.options.space?'"@id": ':'"@id":',!1),"DefaultGraph"!==e.graph.termType&&this.emit("error",new Error(`Found a nested quad with the non-default graph: ${e.graph.value}`)),this.pushId(e.subject,!1,r),this.pushPredicate(e.predicate,r),this.pushObject(e.object,r),this.endPredicate(!1),this.endSubject(t)}endDocument(){this.opened=!1,this.originalContext&&!this.options.excludeContext?(this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END),this.indentation--,this.pushSeparator(i.SeparatorType.OBJECT_END)):(this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END))}endPredicate(e){this.indentation--,this.pushSeparator(e?i.SeparatorType.ARRAY_END_COMMA:i.SeparatorType.ARRAY_END),this.hadObjectForPredicate=!1,this.objectOptions=null,this.lastPredicate=null}endSubject(e){this.indentation--,this.pushSeparator(e?i.SeparatorType.OBJECT_END_COMMA:i.SeparatorType.OBJECT_END),this.lastSubject=null}endGraph(e){this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END),this.indentation--,this.pushSeparator(e?i.SeparatorType.OBJECT_END_COMMA:i.SeparatorType.OBJECT_END),this.lastGraph=null}pushSeparator(e){this.pushIndented(e.label)}pushIndented(e,t=!0){const r=this.getIndentPrefix(),n=e.split("\n").map((e=>r+e)).join("\n");this.push(n),this.options.space&&t&&this.push("\n")}getIndentPrefix(){return this.options.space?this.options.space.repeat(this.indentation):""}}t.JsonLdSerializer=s},46342:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeparatorType=void 0;class r{constructor(e){this.label=e}}t.SeparatorType=r,r.COMMA=new r(","),r.OBJECT_START=new r("{"),r.OBJECT_END=new r("}"),r.OBJECT_END_COMMA=new r("},"),r.ARRAY_START=new r("["),r.ARRAY_END=new r("]"),r.ARRAY_END_COMMA=new r("],"),r.GRAPH_FIELD_NONCOMPACT=new r('"@graph": ['),r.GRAPH_FIELD_COMPACT=new r('"@graph":['),r.CONTEXT_FIELD=new r('"@context":')},37354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(1838);class i{static termToValue(e,t,r={compactIds:!1,useNativeTypes:!1}){switch(e.termType){case"NamedNode":const a=t.compactIri(e.value,r.vocab);return r.compactIds?a:{"@id":a};case"DefaultGraph":return r.compactIds?e.value:{"@id":e.value};case"BlankNode":const o=`_:${e.value}`;return r.compactIds?o:{"@id":o};case"Literal":if(e.datatype.value===i.RDF_JSON){let t;try{t=JSON.parse(e.value)}catch(e){throw new n.ErrorCoded("Invalid JSON literal: "+e.message,n.ERROR_CODES.INVALID_JSON_LITERAL)}return{"@value":t,"@type":"@json"}}if("i18n-datatype"===r.rdfDirection&&e.datatype.value.startsWith(i.I18N)){const[t,r]=e.datatype.value.substr(i.I18N.length,e.datatype.value.length).split("_");return Object.assign(Object.assign({"@value":e.value},t?{"@language":t}:{}),r?{"@direction":r}:{})}const s=e.datatype.value===i.XSD_STRING,c={"@value":!s&&r.useNativeTypes?i.stringToNativeType(e.value,e.datatype.value):e.value};return e.language?Object.assign(Object.assign({},c),{"@language":e.language}):s||"string"!=typeof c["@value"]?c:Object.assign(Object.assign({},c),{"@type":e.datatype.value})}}static stringToNativeType(e,t){if(t.startsWith(i.XSD))switch(t.substr(i.XSD.length)){case"boolean":if("true"===e)return!0;if("false"===e)return!1;throw new Error(`Invalid xsd:boolean value '${e}'`);case"integer":case"number":case"int":case"byte":case"long":const t=parseInt(e,10);if(isNaN(t))throw new Error(`Invalid xsd:integer value '${e}'`);return t;case"float":case"double":const r=parseFloat(e);if(isNaN(r))throw new Error(`Invalid xsd:float value '${e}'`);return r}return e}}t.Util=i,i.XSD="http://www.w3.org/2001/XMLSchema#",i.XSD_STRING=i.XSD+"string",i.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",i.RDF_TYPE=i.RDF+"type",i.RDF_JSON=i.RDF+"JSON",i.I18N="https://www.w3.org/ns/i18n#"},47755:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(13807),t),i(r(24558),t),i(r(87565),t),i(r(68285),t),i(r(22865),t),i(r(60161),t),i(r(34625),t),i(r(48123),t),i(r(41822),t),i(r(40786),t)},60161:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},34625:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},48123:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},41822:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MicrodataRdfParser=void 0;const n=r(60883),i=r(51887),a=r(24558),o=r(87565),s=r(68285),c=r(22865),u=r(40786),l=r(3048);class d extends i.Transform{constructor(e){super({readableObjectMode:!0}),this.itemScopeStack=[],this.textBufferStack=[],this.isEmittingReferences=!1,this.pendingItemRefsDomain={},this.pendingItemRefsRangeFinalized={},this.pendingItemRefsRangeCollecting={},e=e||{},this.options=e,this.util=new u.Util(e.dataFactory,e.baseIRI),this.defaultGraph=e.defaultGraph||this.util.dataFactory.defaultGraph(),this.htmlParseListener=e.htmlParseListener,this.vocabRegistry=e.vocabRegistry||l,this.parser=this.initializeParser(!!e.xmlMode)}import(e){const t=new i.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new d(this.options));return r}_transform(e,t,r){this.parser.write(e.toString()),r()}_flush(e){this.parser.end(),e()}getItemScope(e){let t=this.itemScopeStack.length-(e?2:1);for(;t>0&&!this.itemScopeStack[t];)t--;return this.itemScopeStack[t]}getDepth(){return this.itemScopeStack.length}onTagOpen(e,t){if(!this.isEmittingReferences){if("id"in t){const e=t.id;this.pendingItemRefsRangeCollecting[e]={events:[],counter:0,ids:[]}}for(const r of Object.values(this.pendingItemRefsRangeCollecting))r.counter++,r.events.push({type:"open",name:e,attributes:t})}let r;if(this.textBufferStack.push(void 0),"itemscope"in t){let e;if(this.emittingReferencesItemScopeIdGenerator)e=this.emittingReferencesItemScopeIdGenerator();else{e="itemid"in t&&this.util.createSubject(t.itemid)||this.util.dataFactory.blankNode();for(const t of Object.values(this.pendingItemRefsRangeCollecting))t.ids.push(e)}r={subject:e},this.isEmittingReferences&&(r.blockEmission=!0);const n=this.getItemScope();n&&n.vocab&&(r.vocab=n.vocab),this.itemScopeStack.push(r)}else r=this.getItemScope(),this.itemScopeStack.push(void 0);if(r){if("itemtype"in t)for(const e of this.util.createVocabIris(t.itemtype,r,!1))r.vocab||(r.vocab=this.util.deriveVocab(e.value,this.vocabRegistry)),r.blockEmission||this.emitTriple(r.subject,this.util.dataFactory.namedNode(`${u.Util.RDF}type`),e);if("lang"in t&&(r.language=t.lang),"xml:lang"in t&&(r.language=t["xml:lang"]),"itemscope"in t&&!this.isEmittingReferences&&"itemref"in t)for(const e of t.itemref.split(/\s+/u))e in this.pendingItemRefsDomain||(this.pendingItemRefsDomain[e]=[]),this.pendingItemRefsDomain[e].push(r),this.tryToEmitReferences(e,r)}"itemprop"in t&&this.handleItemProperties(t.itemprop,!1,r,e,t),"itemprop-reverse"in t&&this.handleItemProperties(t["itemprop-reverse"],!0,r,e,t)}onText(e){if(!this.isEmittingReferences)for(const t of Object.values(this.pendingItemRefsRangeCollecting))t.events.push({type:"text",data:e});for(const t of this.textBufferStack)t&&t.push(e)}onTagClose(){if(!this.isEmittingReferences)for(const[e,t]of Object.entries(this.pendingItemRefsRangeCollecting))t.counter--,t.events.push({type:"close"}),0===t.counter&&(this.pendingItemRefsRangeFinalized[e]=t,delete this.pendingItemRefsRangeCollecting[e],this.tryToEmitReferences(e));const e=this.getItemScope(!0);if(e){const t=this.getDepth();if(e.predicates&&t in e.predicates)for(const[r,n]of Object.entries(e.predicates[t])){const i=this.util.createLiteral(this.textBufferStack[t].join(""),e);this.emitPredicateTriples(e,n,i,"reverse"===r),delete e.predicates[t][r]}}this.itemScopeStack.pop(),this.textBufferStack.pop()}onEnd(){}initializeParser(e){return new n.Parser({onclosetag:()=>{try{this.onTagClose(),this.htmlParseListener&&this.htmlParseListener.onTagClose()}catch(e){this.emit("error",e)}},onend:()=>{try{this.onEnd(),this.htmlParseListener&&this.htmlParseListener.onEnd()}catch(e){this.emit("error",e)}},onopentag:(e,t)=>{try{this.onTagOpen(e,t),this.htmlParseListener&&this.htmlParseListener.onTagOpen(e,t)}catch(e){this.emit("error",e)}},ontext:e=>{try{this.onText(e),this.htmlParseListener&&this.htmlParseListener.onText(e)}catch(e){this.emit("error",e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:e})}handleItemProperties(e,t,r,n,i){const a=this.getItemScope(!0);if(a){const o=this.getDepth(),s=this.util.createVocabIris(e,a,!0);a.predicates||(a.predicates={}),a.predicates[o]||(a.predicates[o]={});const c=t?"reverse":"forward";a.predicates[o][c]=s;for(const t of this.util.getVocabularyExpansionType(e,a,this.vocabRegistry))s.push(t);if(r&&"itemscope"in i)this.emitPredicateTriples(a,s,r.subject,t),delete a.predicates[o][c];else for(const e of d.ITEM_PROPERTY_HANDLERS)if(e.canHandle(n,i)){const r=e.getObject(i,this.util,a);this.emitPredicateTriples(a,s,r,t),delete a.predicates[o][c]}a.predicates[o][c]&&(this.textBufferStack[o]=[])}}emitPredicateTriples(e,t,r,n){if(!e.blockEmission)for(const i of t)n?"Literal"!==r.termType&&this.emitTriple(r,i,e.subject):this.emitTriple(e.subject,i,r)}emitTriple(e,t,r){this.push(this.util.dataFactory.quad(e,t,r,this.defaultGraph))}tryToEmitReferences(e,t){const r=this.pendingItemRefsRangeFinalized[e];if(r){let n;if(t){n=[t];const r=this.pendingItemRefsDomain[e].indexOf(t);this.pendingItemRefsDomain[e].splice(r,1)}else n=this.pendingItemRefsDomain[e],delete this.pendingItemRefsDomain[e];if(n){const e=this.itemScopeStack,t=this.textBufferStack;this.isEmittingReferences=!0;for(const e of n){this.itemScopeStack=[e],this.textBufferStack=[void 0];const t=[...r.ids];this.emittingReferencesItemScopeIdGenerator=()=>t.shift();for(const e of r.events)switch(e.type){case"open":this.onTagOpen(e.name,e.attributes);break;case"text":this.onText(e.data);break;case"close":this.onTagClose()}}this.emittingReferencesItemScopeIdGenerator=void 0,this.itemScopeStack=e,this.textBufferStack=t,this.isEmittingReferences=!1}}}}t.MicrodataRdfParser=d,d.ITEM_PROPERTY_HANDLERS=[new a.ItemPropertyHandlerContent,new c.ItemPropertyHandlerUrl("a","href"),new c.ItemPropertyHandlerUrl("area","href"),new c.ItemPropertyHandlerUrl("audio","src"),new c.ItemPropertyHandlerUrl("embed","src"),new c.ItemPropertyHandlerUrl("iframe","src"),new c.ItemPropertyHandlerUrl("img","src"),new c.ItemPropertyHandlerUrl("link","href"),new c.ItemPropertyHandlerUrl("object","data"),new c.ItemPropertyHandlerUrl("source","src"),new c.ItemPropertyHandlerUrl("track","src"),new c.ItemPropertyHandlerUrl("video","src"),new o.ItemPropertyHandlerNumber("data","value"),new o.ItemPropertyHandlerNumber("meter","value"),new s.ItemPropertyHandlerTime]},40786:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(91194),i=r(84690);class a{constructor(e,t){this.dataFactory=e||new n.DataFactory,this.baseIRI=t||""}static isValidIri(e){return a.IRI_REGEX.test(e)}createVocabIris(e,t,r){return e.split(/\s+/u).filter((e=>!!e)).map((e=>{if(!a.isValidIri(e)){if(!r)return;e=`${t.vocab||`${this.baseIRI}#`}${e}`}return this.dataFactory.namedNode(e)})).filter((e=>!!e))}getVocabularyExpansionType(e,t,r){const n=e.split(/\s+/u);if(n.includes("subPropertyOf")||n.includes("equivalentProperty"))return[this.dataFactory.namedNode(`${a.RDF}type`)];if(t.vocab&&t.vocab in r&&r[t.vocab].properties){let e=[];for(const[i,a]of Object.entries(r[t.vocab].properties))n.includes(i)&&(e=[...Object.values(a).map((e=>this.dataFactory.namedNode(e)))]);return e}return[]}createSubject(e){if(!a.isValidIri(e))try{e=(0,i.resolve)(e,this.baseIRI)}catch(e){return}return this.dataFactory.namedNode(e)}createLiteral(e,t){return this.dataFactory.literal(e,t.language)}deriveVocab(e,t){let r;for(const n in t)if(e.startsWith(n)){r=n,r.endsWith("/")||(r+="#");break}if(!r){const t=e.indexOf("#");r=t>0?e.slice(0,t+1):(0,i.resolve)(".",e)}return r}}t.Util=a,a.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",a.XSD="http://www.w3.org/2001/XMLSchema#",a.RDFA="http://www.w3.org/ns/rdfa#",a.IRI_REGEX=/^([A-Za-z][\d+-.A-Za-z]*|_):[^ "<>[\\\]`{|}]*$/u},13807:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},24558:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerContent=void 0,t.ItemPropertyHandlerContent=class{canHandle(e,t){return"content"in t}getObject(e,t,r){return t.createLiteral(e.content,r)}}},87565:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerNumber=void 0;const n=r(40786);t.ItemPropertyHandlerNumber=class{constructor(e,t){this.tagName=e,this.attributeName=t}canHandle(e,t){return this.tagName===e&&this.attributeName in t}getObject(e,t,r){const i=e[this.attributeName];let a;return Number.isNaN(Number.parseInt(i,10))||i.includes(".")?Number.isNaN(Number.parseFloat(i))||(a=`${n.Util.XSD}double`):a=`${n.Util.XSD}integer`,t.dataFactory.literal(i,a&&t.dataFactory.namedNode(a))}}},68285:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerTime=void 0;const n=r(40786);class i{canHandle(e,t){return"time"===e&&"datetime"in t}getObject(e,t,r){const a=e.datetime;let o;for(const e of i.TIME_REGEXES)if(e.regex.test(a)){o=t.dataFactory.namedNode(n.Util.XSD+e.type);break}return t.dataFactory.literal(a,o)}}t.ItemPropertyHandlerTime=i,i.TIME_REGEXES=[{regex:/^-?P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+(\.\d)?S)?)?$/u,type:"duration"},{regex:/^\d+-\d\d-\d\dT\d\d:\d\d:\d\d((Z?)|([+-]\d\d:\d\d))$/u,type:"dateTime"},{regex:/^\d+-\d\d-\d\dZ?$/u,type:"date"},{regex:/^\d\d:\d\d:\d\d((Z?)|([+-]\d\d:\d\d))$/u,type:"time"},{regex:/^\d+-\d\d$/u,type:"gYearMonth"},{regex:/^\d+$/u,type:"gYear"}]},22865:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerUrl=void 0;const n=r(84690);t.ItemPropertyHandlerUrl=class{constructor(e,t){this.tagName=e,this.attributeName=t}canHandle(e,t){return this.tagName===e&&this.attributeName in t}getObject(e,t,r){return t.dataFactory.namedNode((0,n.resolve)(e[this.attributeName],t.baseIRI))}}},79561:e=>{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},66641:(e,t,r)=>{"use strict";r.r(t),r.d(t,{BlankNode:()=>k,DataFactory:()=>j,DefaultGraph:()=>B,Lexer:()=>m,Literal:()=>L,NamedNode:()=>M,Parser:()=>z,Quad:()=>V,Store:()=>se,StreamParser:()=>le,StreamWriter:()=>de,Term:()=>C,Triple:()=>V,Util:()=>n,Variable:()=>F,Writer:()=>ne,default:()=>he,termFromId:()=>U,termToId:()=>q});var n={};r.r(n),r.d(n,{inDefaultGraph:()=>S,isBlankNode:()=>v,isDefaultGraph:()=>T,isLiteral:()=>_,isNamedNode:()=>b,isVariable:()=>w,prefix:()=>O,prefixes:()=>E});const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",a="http://www.w3.org/2001/XMLSchema#",o="http://www.w3.org/2000/10/swap/",s={xsd:{decimal:`${a}decimal`,boolean:`${a}boolean`,double:`${a}double`,integer:`${a}integer`,string:`${a}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${o}reify#forSome`,forAll:`${o}reify#forAll`},log:{implies:`${o}log#implies`}};var c=r(65089),u=r.n(c),l=r(48834).Buffer;const{xsd:d}=s,h=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,p={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},f=/[\x00-\x20<>\\"\{\}\|\^\`]/,y={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},g=/$0^/;class m{constructor(e){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,e=e||{},this._lineMode=!!e.lineMode){this._n3Mode=!1;for(const e in this)!(e in y)&&this[e]instanceof RegExp&&(this[e]=g)}else this._n3Mode=!1!==e.n3;this._comments=!!e.comments,this._literalClosingPos=0}_tokenizeToEnd(e,t){let r=this._input,n=r.length;for(;;){let e,o;for(;e=this._newline.exec(r);)this._comments&&(o=this._comment.exec(e[0]))&&i("comment",o[1],"",this._line,e[0].length),r=r.substr(e[0].length,r.length),n=r.length,this._line++;if(!e&&(e=this._whitespace.exec(r))&&(r=r.substr(e[0].length,r.length)),this._endOfFile.test(r))return t&&(this._comments&&(o=this._comment.exec(r))&&i("comment",o[1],"",this._line,r.length),r=null,i("eof","","",this._line,0)),this._input=r;const s=this._line,c=r[0];let u="",l="",h="",p=null,y=0,g=!1;switch(c){case"^":if(r.length<3)break;if("^"!==r[1]){this._n3Mode&&(y=1,u="^");break}if(this._previousMarker="^^",r=r.substr(2),"<"!==r[0]){g=!0;break}case"<":if(p=this._unescapedIri.exec(r))u="IRI",l=p[1];else if(p=this._iri.exec(r)){if(l=this._unescape(p[1]),null===l||f.test(l))return a(this);u="IRI"}else r.length>1&&"<"===r[1]?(u="<<",y=2):this._n3Mode&&r.length>1&&"="===r[1]&&(u="inverse",y=2,l=">");break;case">":r.length>1&&">"===r[1]&&(u=">>",y=2);break;case"_":((p=this._blank.exec(r))||t&&(p=this._blank.exec(`${r} `)))&&(u="blank",h="_",l=p[1]);break;case'"':if(p=this._simpleQuotedString.exec(r))l=p[1];else if(({value:l,matchLength:y}=this._parseLiteral(r)),null===l)return a(this);null===p&&0===y||(u="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(p=this._simpleApostropheString.exec(r))l=p[1];else if(({value:l,matchLength:y}=this._parseLiteral(r)),null===l)return a(this);null===p&&0===y||(u="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(p=this._variable.exec(r))&&(u="var",l=p[0]);break;case"@":"literal"===this._previousMarker&&(p=this._langcode.exec(r))?(u="langcode",l=p[1]):(p=this._keyword.exec(r))&&(u=p[0]);break;case".":if(1===r.length?t:r[1]<"0"||r[1]>"9"){u=".",y=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(p=this._number.exec(r)||t&&(p=this._number.exec(`${r} `)))&&(u="literal",l=p[0],h="string"==typeof p[1]?d.double:"string"==typeof p[2]?d.decimal:d.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(p=this._sparqlKeyword.exec(r))?u=p[0].toUpperCase():g=!0;break;case"f":case"t":(p=this._boolean.exec(r))?(u="literal",l=p[0],h=d.boolean):g=!0;break;case"a":(p=this._shortPredicates.exec(r))?(u="abbreviation",l="a"):g=!0;break;case"=":this._n3Mode&&r.length>1&&(u="abbreviation",">"!==r[1]?(y=1,l="="):(y=2,l=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"}":this._lineMode||(y=1,u=c);break;case"{":!this._lineMode&&r.length>=2&&("|"===r[1]?(u="{|",y=2):(u=c,y=1));break;case"|":r.length>=2&&"}"===r[1]&&(u="|}",y=2);break;default:g=!0}if(g&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(p=this._prefix.exec(r))?((p=this._prefixed.exec(r))||t&&(p=this._prefixed.exec(`${r} `)))&&(u="prefixed",h=p[1]||"",l=this._unescape(p[2])):(u="prefix",l=p[1]||"")),"^^"===this._previousMarker)switch(u){case"prefixed":u="type";break;case"IRI":u="typeIRI";break;default:u=""}if(!u)return t||!/^'''|^"""/.test(r)&&/\n|\r/.test(r)?a(this):this._input=r;const m=y||p[0].length,b=i(u,l,h,s,m);this.previousToken=b,this._previousMarker=u,r=r.substr(m,r.length)}function i(t,i,a,o,s){const c=r?n-r.length:n,u={type:t,value:i,prefix:a,line:o,start:c,end:c+s};return e(null,u),u}function a(t){e(t._syntaxError(/^\S*/.exec(r)[0]))}}_unescape(e){let t=!1;const r=e.replace(h,((e,r,n,i)=>{if("string"==typeof r)return String.fromCharCode(Number.parseInt(r,16));if("string"==typeof n){let e=Number.parseInt(n,16);return e<=65535?String.fromCharCode(Number.parseInt(n,16)):String.fromCharCode(55296+((e-=65536)>>10),56320+(1023&e))}return i in p?p[i]:(t=!0,"")}));return t?null:r}_parseLiteral(e){if(e.length>=3){const t=e.match(/^(?:"""|"|'''|'|)/)[0],r=t.length;let n=Math.max(this._literalClosingPos,r);for(;(n=e.indexOf(t,n))>0;){let t=0;for(;"\\"===e[n-t-1];)t++;if(t%2==0){const t=e.substring(r,n),i=t.split(/\r\n|\r|\n/).length-1,a=n+r;if(1===r&&0!==i||3===r&&this._lineMode)break;return this._line+=i,{value:this._unescape(t),matchLength:a}}n++}this._literalClosingPos=e.length-r+1}return{value:"",matchLength:0}}_syntaxError(e){this._input=null;const t=new Error(`Unexpected "${e}" on line ${this._line}.`);return t.context={token:void 0,line:this._line,previousToken:this.previousToken},t}_readStartingBom(e){return e.startsWith("\ufeff")?e.substr(1):e}tokenize(e,t){if(this._line=1,"string"==typeof e){if(this._input=this._readStartingBom(e),"function"!=typeof t){const e=[];let t;if(this._tokenizeToEnd(((r,n)=>r?t=r:e.push(n)),!0),t)throw t;return e}u()((()=>this._tokenizeToEnd(t,!0)))}else this._pendingBuffer=null,"function"==typeof e.setEncoding&&e.setEncoding("utf8"),e.on("data",(e=>{null!==this._input&&0!==e.length&&(this._pendingBuffer&&(e=l.concat([this._pendingBuffer,e]),this._pendingBuffer=null),128&e[e.length-1]?this._pendingBuffer=e:(void 0===this._input?this._input=this._readStartingBom("string"==typeof e?e:e.toString()):this._input+=e,this._tokenizeToEnd(t,!1)))})),e.on("end",(()=>{"string"==typeof this._input&&this._tokenizeToEnd(t,!0)})),e.on("error",t)}}function b(e){return!!e&&"NamedNode"===e.termType}function v(e){return!!e&&"BlankNode"===e.termType}function _(e){return!!e&&"Literal"===e.termType}function w(e){return!!e&&"Variable"===e.termType}function T(e){return!!e&&"DefaultGraph"===e.termType}function S(e){return T(e.graph)}function O(e,t){return E({"":e.value||e},t)("")}function E(e,t){const r=Object.create(null);for(const t in e)n(t,e[t]);function n(e,n){if("string"==typeof n){const i=Object.create(null);r[e]=e=>i[e]||(i[e]=t.namedNode(n+e))}else if(!(e in r))throw new Error(`Unknown prefix: ${e}`);return r[e]}return t=t||j,n}const{rdf:x,xsd:A}=s;let R,I=0;const P=/^"(.*".*)(?="[^"]*$)/,D=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,N={namedNode:function(e){return new M(e)},blankNode:function(e){return new k(e||"n3-"+I++)},variable:function(e){return new F(e)},literal:function(e,t){if("string"==typeof t)return new L(`"${e}"@${t.toLowerCase()}`);let r=t?t.value:"";return""===r&&("boolean"==typeof e?r=A.boolean:"number"==typeof e&&(Number.isFinite(e)?r=Number.isInteger(e)?A.integer:A.double:(r=A.double,Number.isNaN(e)||(e=e>0?"INF":"-INF")))),""===r||r===A.string?new L(`"${e}"`):new L(`"${e}"^^${r}`)},defaultGraph:function(){return R},quad:H,triple:H},j=N;class C{constructor(e){this.id=e}get value(){return this.id}equals(e){return e instanceof C?this.id===e.id:!!e&&this.termType===e.termType&&this.value===e.value}hashCode(){return 0}toJSON(){return{termType:this.termType,value:this.value}}}class M extends C{get termType(){return"NamedNode"}}class L extends C{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const e=this.id;let t=e.lastIndexOf('"')+1;return t>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}}R=new B;class V extends C{constructor(e,t,r,n){super(""),this._subject=e,this._predicate=t,this._object=r,this._graph=n||R}get termType(){return"Quad"}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}get graph(){return this._graph}toJSON(){return{termType:this.termType,subject:this._subject.toJSON(),predicate:this._predicate.toJSON(),object:this._object.toJSON(),graph:this._graph.toJSON()}}equals(e){return!!e&&this._subject.equals(e.subject)&&this._predicate.equals(e.predicate)&&this._object.equals(e.object)&&this._graph.equals(e.graph)}}function Q(e){return e.replace(P,((e,t)=>`"${t.replace(/"/g,'""')}`))}function $(e){return e.replace(P,((e,t)=>`"${t.replace(/""/g,'"')}`))}function H(e,t,r,n){return new V(e,t,r,n)}let G=0;class z{constructor(e){this._contextStack=[],this._graph=null,e=e||{},this._setBase(e.baseIRI),e.factory&&X(this,e.factory);const t="string"==typeof e.format?e.format.match(/\w*$/)[0].toLowerCase():"",r=/turtle/.test(t),n=/trig/.test(t),i=/triple/.test(t),a=/quad/.test(t),o=this._n3Mode=/n3/.test(t),s=i||a;(this._supportsNamedGraphs=!(r||o))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(r||n||i||o),this._supportsRDFStar=""===t||/star|\*$/.test(t),s&&(this._resolveRelativeIRI=e=>null),this._blankNodePrefix="string"!=typeof e.blankNodePrefix?"":e.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=e.lexer||new m({lineMode:s,n3:o}),this._explicitQuantifiers=!!e.explicitQuantifiers}static _resetBlankNodePrefix(){G=0}_setBase(e){if(e){const t=e.indexOf("#");t>=0&&(e=e.substr(0,t)),this._base=e,this._basePath=e.indexOf("/")<0?e:e.replace(/[^\/?]*(?:\?.*)?$/,""),e=e.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=e[0],this._baseScheme=e[1]}else this._base="",this._basePath=""}_saveContext(e,t,r,n,i){const a=this._n3Mode;this._contextStack.push({type:e,subject:r,predicate:n,object:i,graph:t,inverse:!!a&&this._inversePredicate,blankPrefix:a?this._prefixes._:"",quantified:a?this._quantified:null}),a&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.value}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(e,t){const r=this._contextStack.pop();if(!r||r.type!==e)return this._error(`Unexpected ${t.type}`,t);this._subject=r.subject,this._predicate=r.predicate,this._object=r.object,this._graph=r.graph,this._n3Mode&&(this._inversePredicate=r.inverse,this._prefixes._=r.blankPrefix,this._quantified=r.quantified)}_readInTopContext(e){switch(e.type){case"eof":return null!==this._graph?this._error("Unclosed graph",e):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(e)}}_readEntity(e,t){let r;switch(e.type){case"IRI":case"typeIRI":const t=this._resolveIRI(e.value);if(null===t)return this._error("Invalid IRI",e);r=this._namedNode(t);break;case"type":case"prefixed":const n=this._prefixes[e.prefix];if(void 0===n)return this._error(`Undefined prefix "${e.prefix}:"`,e);r=this._namedNode(n+e.value);break;case"blank":r=this._blankNode(this._prefixes[e.prefix]+e.value);break;case"var":r=this._variable(e.value.substr(1));break;default:return this._error(`Expected entity but got ${e.type}`,e)}return!t&&this._n3Mode&&r.id in this._quantified&&(r=this._quantified[r.id]),r}_readSubject(e){switch(this._predicate=null,e.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",e);case"}":return this._readPunctuation(e);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',e);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',e);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",e);if(0===e.prefix.length)return this._literalValue=e.value,this._completeSubjectLiteral;this._subject=this._literal(e.value,this._namedNode(e.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._subject=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(e){const t=e.type;switch(t){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[e.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${t}`,e):(this._subject=null,"]"===t?this._readBlankNodeTail(e):this._readPunctuation(e));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",e);case"[":if(this._n3Mode)return this._saveContext("blank",this._graph,this._subject,this._subject=this._blankNode(),null),this._readBlankNodeHead;case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",e);default:if(void 0===(this._predicate=this._readEntity(e)))return}return this._readObject}_readObject(e){switch(e.type){case"literal":if(0===e.prefix.length)return this._literalValue=e.value,this._readDataTypeOrLang;this._object=this._literal(e.value,this._namedNode(e.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._object=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(e){return"{"===e.type?this._readGraph(e):this._readPredicate(e)}_readGraph(e){return"{"!==e.type?this._error(`Expected graph but got ${e.type}`,e):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(e){return"]"===e.type?(this._subject=null,this._readBlankNodeTail(e)):(this._predicate=null,this._readPredicate(e))}_readBlankNodeTail(e){if("]"!==e.type)return this._readBlankNodePunctuation(e);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const t=null===this._predicate;return this._restoreContext("blank",e),null!==this._object?this._getContextEndReader():null!==this._predicate?this._readObject:t?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank}_readPredicateAfterBlank(e){switch(e.type){case".":case"}":return this._subject=null,this._readPunctuation(e);default:return this._readPredicate(e)}}_readListItem(e){let t=null,r=null,n=this._readListItem;const i=this._subject,a=this._contextStack,o=a[a.length-1];switch(e.type){case"[":this._saveContext("blank",this._graph,r=this._blankNode(),this.RDF_FIRST,this._subject=t=this._blankNode()),n=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,r=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext("list",e),0!==a.length&&"list"===a[a.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(n=this._readPredicate,this._subject===this.RDF_NIL)return n}else if(n=this._getContextEndReader(),this._object===this.RDF_NIL)return n;r=this.RDF_NIL;break;case"literal":0===e.prefix.length?(this._literalValue=e.value,n=this._readListItemDataTypeOrLang):(t=this._literal(e.value,this._namedNode(e.prefix)),n=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);default:if(void 0===(t=this._readEntity(e)))return}if(null===r&&(this._subject=r=this._blankNode()),null===i?null===o.predicate?o.subject=r:o.object=r:this._emit(i,this.RDF_REST,r,this._graph),null!==t){if(this._n3Mode&&("IRI"===e.type||"prefixed"===e.type))return this._saveContext("item",this._graph,r,this.RDF_FIRST,t),this._subject=t,this._predicate=null,this._getPathReader(this._readListItem);this._emit(r,this.RDF_FIRST,t,this._graph)}return n}_readDataTypeOrLang(e){return this._completeObjectLiteral(e,!1)}_readListItemDataTypeOrLang(e){return this._completeObjectLiteral(e,!0)}_completeLiteral(e){let t=this._literal(this._literalValue);switch(e.type){case"type":case"typeIRI":const r=this._readEntity(e);if(void 0===r)return;t=this._literal(this._literalValue,r),e=null;break;case"langcode":t=this._literal(this._literalValue,e.value),e=null}return{token:e,literal:t}}_completeSubjectLiteral(e){return this._subject=this._completeLiteral(e).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(e,t){const r=this._completeLiteral(e);if(r)return this._object=r.literal,t&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===r.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(r.token))}_readFormulaTail(e){return"}"!==e.type?this._readPunctuation(e):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext("formula",e),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(e){let t,r=this._graph;const n=this._subject,i=this._inversePredicate;switch(e.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",e);if(this._n3Mode)return this._readFormulaTail(e);this._graph=null;case".":this._subject=null,t=this._contextStack.length?this._readSubject:this._readInTopContext,i&&(this._inversePredicate=!1);break;case";":t=this._readPredicate;break;case",":t=this._readObject;break;case"{|":if(!this._supportsRDFStar)return this._error("Unexpected RDF* syntax",e);const a=this._predicate,o=this._object;this._subject=this._quad(n,a,o,this.DEFAULTGRAPH),t=this._readPredicate;break;case"|}":if("Quad"!==this._subject.termType)return this._error("Unexpected asserted triple closing",e);this._subject=null,t=this._readPunctuation;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(r=this._readEntity(e))){t=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,e)}if(null!==n){const e=this._predicate,t=this._object;i?this._emit(t,e,n,r):this._emit(n,e,t,r)}return t}_readBlankNodePunctuation(e){let t;switch(e.type){case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,e)}return this._emit(this._subject,this._predicate,this._object,this._graph),t}_readQuadPunctuation(e){return"."!==e.type?this._error("Expected dot to follow quad",e):this._readInTopContext}_readPrefix(e){return"prefix"!==e.type?this._error("Expected prefix to follow @prefix",e):(this._prefix=e.value,this._readPrefixIRI)}_readPrefixIRI(e){if("IRI"!==e.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,e);const t=this._readEntity(e);return this._prefixes[this._prefix]=t.value,this._prefixCallback(this._prefix,t),this._readDeclarationPunctuation}_readBaseIRI(e){const t="IRI"===e.type&&this._resolveIRI(e.value);return t?(this._setBase(t),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",e)}_readNamedGraphLabel(e){switch(e.type){case"IRI":case"blank":case"prefixed":return this._readSubject(e),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",e)}}_readNamedGraphBlankLabel(e){return"]"!==e.type?this._error("Invalid graph label",e):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(e){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(e)):"."!==e.type?this._error("Expected declaration to end with a dot",e):this._readInTopContext}_readQuantifierList(e){let t;switch(e.type){case"IRI":case"prefixed":if(void 0!==(t=this._readEntity(e,!0)))break;default:return this._error(`Unexpected ${e.type}`,e)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,t,this.QUANTIFIERS_GRAPH)):this._quantified[t.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(e){return","===e.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(e))}_getPathReader(e){return this._afterPath=e,this._readPath}_readPath(e){switch(e.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const t=this._contextStack,r=t.length&&t[t.length-1];if(r&&"item"===r.type){const t=this._subject;this._restoreContext("item",e),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(e)}}_readForwardPath(e){let t,r;const n=this._blankNode();if(void 0!==(r=this._readEntity(e)))return null===this._predicate?(t=this._subject,this._subject=n):(t=this._object,this._object=n),this._emit(t,r,n,this._graph),this._readPath}_readBackwardPath(e){const t=this._blankNode();let r,n;if(void 0!==(r=this._readEntity(e)))return null===this._predicate?(n=this._subject,this._subject=t):(n=this._object,this._object=t),this._emit(t,r,n,this._graph),this._readPath}_readRDFStarTailOrGraph(e){return">>"!==e.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(e))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,e):this._readRDFStarTail(e)}_readRDFStarTail(e){if(">>"!==e.type)return this._error(`Expected >> but got ${e.type}`,e);const t=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext("<<",e),null===this._subject?(this._subject=t,this._readPredicate):(this._object=t,this._getContextEndReader())}_getContextEndReader(){const e=this._contextStack;if(!e.length)return this._readPunctuation;switch(e[e.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(e,t,r,n){this._callback(null,this._quad(e,t,r,n||this.DEFAULTGRAPH))}_error(e,t){const r=new Error(`${e} on line ${t.line}.`);r.context={token:t,line:t.line,previousToken:this._lexer.previousToken},this._callback(r),this._callback=K}_resolveIRI(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)?e:this._resolveRelativeIRI(e)}_resolveRelativeIRI(e){if(!e.length)return this._base;switch(e[0]){case"#":return this._base+e;case"?":return this._base.replace(/(?:\?.*)?$/,e);case"/":return("/"===e[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(e);default:return/^[^/:]*:/.test(e)?null:this._removeDotSegments(this._basePath+e)}}_removeDotSegments(e){if(!/(^|\/)\.\.?($|[/#?])/.test(e))return e;const t=e.length;let r="",n=-1,i=-1,a=0,o="/";for(;n=i&&(r=r.substr(0,a)),"/"!==o)return`${r}/${e.substr(n+1)}`;a=n+1}}}o=e[++n]}return r+e.substring(a)}parse(e,t,r){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${G++}_`,this._prefixCallback=r||K,this._inversePredicate=!1,this._quantified=Object.create(null),!t){const t=[];let r;if(this._callback=(e,n)=>{e?r=e:n&&t.push(n)},this._lexer.tokenize(e).every((e=>this._readCallback=this._readCallback(e))),r)throw r;return t}this._callback=t,this._lexer.tokenize(e,((e,t)=>{null!==e?(this._callback(e),this._callback=K):this._readCallback&&(this._readCallback=this._readCallback(t))}))}}function K(){}function X(e,t){const r=t.namedNode;e._namedNode=r,e._blankNode=t.blankNode,e._literal=t.literal,e._variable=t.variable,e._quad=t.quad,e.DEFAULTGRAPH=t.defaultGraph(),e.RDF_FIRST=r(s.rdf.first),e.RDF_REST=r(s.rdf.rest),e.RDF_NIL=r(s.rdf.nil),e.N3_FORALL=r(s.r.forAll),e.N3_FORSOME=r(s.r.forSome),e.ABBREVIATIONS={a:r(s.rdf.type),"=":r(s.owl.sameAs),">":r(s.log.implies)},e.QUANTIFIERS_GRAPH=r("urn:n3:quantifiers")}X(z.prototype,j);const W=j.defaultGraph(),{rdf:J,xsd:Y}=s,Z=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,ee=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,te={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class re extends C{equals(e){return e===this}}class ne{constructor(e,t){if(this._prefixRegex=/$0^/,e&&"function"!=typeof e.write&&(t=e,e=null),t=t||{},this._lists=t.lists,e)this._outputStream=e,this._endStream=void 0===t.end||!!t.end;else{let e="";this._outputStream={write(t,r,n){e+=t,n&&n()},end:t=>{t&&t(null,e)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(t.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=W,this._prefixIRIs=Object.create(null),t.prefixes&&this.addPrefixes(t.prefixes),t.baseIRI&&(this._baseMatcher=new RegExp(`^${ae(t.baseIRI)}${t.baseIRI.endsWith("/")?"":"[#?]"}`),this._baseLength=t.baseIRI.length))}get _inDefaultGraph(){return W.equals(this._graph)}_write(e,t){this._outputStream.write(e,"utf8",t)}_writeQuad(e,t,r,n,i){try{n.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(W.equals(n)?"":`${this._encodeIriOrBlank(n)} {\n`)),this._graph=n,this._subject=null),e.equals(this._subject)?t.equals(this._predicate)?this._write(`, ${this._encodeObject(r)}`,i):this._write(`;\n ${this._encodePredicate(this._predicate=t)} ${this._encodeObject(r)}`,i):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=e)} ${this._encodePredicate(this._predicate=t)} ${this._encodeObject(r)}`,i)}catch(e){i&&i(e)}}_writeQuadLine(e,t,r,n,i){delete this._prefixMatch,this._write(this.quadToString(e,t,r,n),i)}quadToString(e,t,r,n){return`${this._encodeSubject(e)} ${this._encodeIriOrBlank(t)} ${this._encodeObject(r)}${n&&n.value?` ${this._encodeIriOrBlank(n)} .\n`:" .\n"}`}quadsToString(e){return e.map((e=>this.quadToString(e.subject,e.predicate,e.object,e.graph))).join("")}_encodeSubject(e){return"Quad"===e.termType?this._encodeQuad(e):this._encodeIriOrBlank(e)}_encodeIriOrBlank(e){if("NamedNode"!==e.termType)return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),"id"in e?e.id:`_:${e.value}`;let t=e.value;this._baseMatcher&&this._baseMatcher.test(t)&&(t=t.substr(this._baseLength)),Z.test(t)&&(t=t.replace(ee,ie));const r=this._prefixRegex.exec(t);return r?r[1]?this._prefixIRIs[r[1]]+r[2]:t:`<${t}>`}_encodeLiteral(e){let t=e.value;if(Z.test(t)&&(t=t.replace(ee,ie)),e.language)return`"${t}"@${e.language}`;if(this._lineMode){if(e.datatype.value===Y.string)return`"${t}"`}else switch(e.datatype.value){case Y.string:return`"${t}"`;case Y.boolean:if("true"===t||"false"===t)return t;break;case Y.integer:if(/^[+-]?\d+$/.test(t))return t;break;case Y.decimal:if(/^[+-]?\d*\.\d+$/.test(t))return t;break;case Y.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(t))return t}return`"${t}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){return e.value===J.type?"a":this._encodeIriOrBlank(e)}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:t,object:r,graph:n}){return`<<${this._encodeSubject(e)} ${this._encodePredicate(t)} ${this._encodeObject(r)}${T(n)?"":` ${this._encodeIriOrBlank(n)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,t,r,n,i){void 0===r?this._writeQuad(e.subject,e.predicate,e.object,e.graph,t):"function"==typeof n?this._writeQuad(e,t,r,W,n):this._writeQuad(e,t,r,n||W,i)}addQuads(e){for(let t=0;t.\n`)}if(r){let e="",t="";for(const r in this._prefixIRIs)e+=e?`|${r}`:r,t+=(t?"|":"")+this._prefixIRIs[r];e=ae(e),this._prefixRegex=new RegExp(`^(?:${t})[^/]*$|^(${e})([_a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(r?"\n":"",t)}blank(e,t){let r,n,i=e;switch(void 0===e?i=[]:e.termType?i=[{predicate:e,object:t}]:"length"in e||(i=[e]),n=i.length){case 0:return new re("[]");case 1:if(r=i[0],!(r.object instanceof re))return new re(`[ ${this._encodePredicate(r.predicate)} ${this._encodeObject(r.object)} ]`);default:let t="[";for(let a=0;a{t=null,e(r,n)});if(this._endStream)try{return this._outputStream.end(t)}catch(e){}t&&t()}}function ie(e){let t=te[e];return void 0===t&&(1===e.length?(t=e.charCodeAt(0).toString(16),t="\\u0000".substr(0,6-t.length)+t):(t=(1024*(e.charCodeAt(0)-55296)+e.charCodeAt(1)+9216).toString(16),t="\\U00000000".substr(0,10-t.length)+t)),t}function ae(e){return e.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&")}var oe=r(51887);class se{constructor(e,t){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,t||!e||e[0]||(t=e,e=null),t=t||{},this._factory=t.factory||j,e&&this.addQuads(e)}get size(){let e=this._size;if(null!==e)return e;e=0;const t=this._graphs;let r,n;for(const i in t)for(const a in r=t[i].subjects)for(const t in n=r[a])e+=Object.keys(n[t]).length;return this._size=e}_addToIndex(e,t,r,n){const i=e[t]||(e[t]={}),a=i[r]||(i[r]={}),o=n in a;return o||(a[n]=null),!o}_removeFromIndex(e,t,r,n){const i=e[t],a=i[r];delete a[n];for(const e in a)return;delete i[r];for(const e in i)return;delete e[t]}*_findInIndex(e,t,r,n,i,a,o,s){let c,u,l;const d=this._entities,h=U(s,this._factory),p={subject:null,predicate:null,object:null};t&&((c=e,e={})[t]=c[t]);for(const t in e)if(u=e[t]){p[i]=U(d[t],this._factory),r&&((c=u,u={})[r]=c[r]);for(const e in u)if(l=u[e]){p[a]=U(d[e],this._factory);const t=n?n in l?[n]:[]:Object.keys(l);for(let e=0;e{r in t||(t[r]=!0,e(U(this._entities[r],this._factory)))}}add(e){return this.addQuad(e),this}addQuad(e,t,r,n){t||(n=e.graph,r=e.object,t=e.predicate,e=e.subject),e=q(e),t=q(t),r=q(r),n=q(n);let i=this._graphs[n];i||(i=this._graphs[n]={subjects:{},predicates:{},objects:{}},Object.freeze(i));const a=this._ids,o=this._entities;e=a[e]||(a[o[++this._id]=e]=this._id),t=a[t]||(a[o[++this._id]=t]=this._id),r=a[r]||(a[o[++this._id]=r]=this._id);const s=this._addToIndex(i.subjects,e,t,r);return this._addToIndex(i.predicates,t,r,e),this._addToIndex(i.objects,r,e,t),this._size=null,s}addQuads(e){for(let t=0;t{this.addQuad(e)})),e}removeQuad(e,t,r,n){t||(n=e.graph,r=e.object,t=e.predicate,e=e.subject),e=q(e),t=q(t),r=q(r),n=q(n);const i=this._ids,a=this._graphs;let o,s,c;if(!((e=i[e])&&(t=i[t])&&(r=i[r])&&(o=a[n])&&(s=o.subjects[e])&&(c=s[t])&&r in c))return!1;for(e in this._removeFromIndex(o.subjects,e,t,r),this._removeFromIndex(o.predicates,t,r,e),this._removeFromIndex(o.objects,r,e,t),null!==this._size&&this._size--,o.subjects)return!0;return delete a[n],!0}removeQuads(e){for(let t=0;t{this.removeQuad(e)})),e}removeMatches(e,t,r,n){const i=new oe.Readable({objectMode:!0});return i._read=()=>{for(const a of this.readQuads(e,t,r,n))i.push(a);i.push(null)},this.remove(i)}deleteGraph(e){return this.removeMatches(null,null,null,e)}getQuads(e,t,r,n){return[...this.readQuads(e,t,r,n)]}*readQuads(e,t,r,n){e=e&&q(e),t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._getGraphs(n),a=this._ids;let o,s,c,u;if(!(ce(e)&&!(s=a[e])||ce(t)&&!(c=a[t])||ce(r)&&!(u=a[r])))for(const e in i)(o=i[e])&&(s?u?yield*this._findInIndex(o.objects,u,s,c,"object","subject","predicate",e):yield*this._findInIndex(o.subjects,s,c,null,"subject","predicate","object",e):c?yield*this._findInIndex(o.predicates,c,u,null,"predicate","object","subject",e):u?yield*this._findInIndex(o.objects,u,null,null,"object","subject","predicate",e):yield*this._findInIndex(o.subjects,null,null,null,"subject","predicate","object",e))}match(e,t,r,n){return new ue(this,e,t,r,n)}countQuads(e,t,r,n){e=e&&q(e),t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._getGraphs(n),a=this._ids;let o,s,c,u,l=0;if(ce(e)&&!(s=a[e])||ce(t)&&!(c=a[t])||ce(r)&&!(u=a[r]))return 0;for(const n in i)(o=i[n])&&(l+=e?r?this._countInIndex(o.objects,u,s,c):this._countInIndex(o.subjects,s,c,u):t?this._countInIndex(o.predicates,c,u,s):this._countInIndex(o.objects,u,s,c));return l}forEach(e,t,r,n,i){this.some((t=>(e(t),!1)),t,r,n,i)}every(e,t,r,n,i){let a=!1;const o=!this.some((t=>(a=!0,!e(t))),t,r,n,i);return a&&o}some(e,t,r,n,i){for(const a of this.readQuads(t,r,n,i))if(e(a))return!0;return!1}getSubjects(e,t,r){const n=[];return this.forSubjects((e=>{n.push(e)}),e,t,r),n}forSubjects(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.predicates,s,c,e):this._loopByKey1(o.subjects,s,e):c?this._loopByKey0(o.objects,c,e):this._loop(o.subjects,e))}getPredicates(e,t,r){const n=[];return this.forPredicates((e=>{n.push(e)}),e,t,r),n}forPredicates(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.objects,c,s,e):this._loopByKey0(o.subjects,s,e):c?this._loopByKey1(o.predicates,c,e):this._loop(o.predicates,e))}getObjects(e,t,r){const n=[];return this.forObjects((e=>{n.push(e)}),e,t,r),n}forObjects(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.subjects,s,c,e):this._loopByKey1(o.objects,s,e):c?this._loopByKey0(o.predicates,c,e):this._loop(o.objects,e))}getGraphs(e,t,r){const n=[];return this.forGraphs((e=>{n.push(e)}),e,t,r),n}forGraphs(e,t,r,n){for(const i in this._graphs)this.some((t=>(e(t.graph),!0)),t,r,n,i)}createBlankNode(e){let t,r;if(e)for(t=e=`_:${e}`,r=1;this._ids[t];)t=e+r++;else do{t="_:b"+this._blankNodeIndex++}while(this._ids[t]);return this._ids[t]=++this._id,this._entities[this._id]=t,this._factory.blankNode(t.substr(2))}extractLists({remove:e=!1,ignoreErrors:t=!1}={}){const r={},n=t?()=>!0:(e,t)=>{throw new Error(`${e.value} ${t}`)},i=this.getQuads(null,s.rdf.rest,s.rdf.nil,null),a=e?[...i]:[];return i.forEach((t=>{const i=[];let o,c,u=!1;const l=t.graph;let d=t.subject;for(;d&&!u;){const e=this.getQuads(null,null,d,null),t=this.getQuads(d,null,null,null);let r,h=null,p=null,f=null;for(let i=0;i{switch(e){case"data":t=n;break;case"end":r=n}}},((e,t)=>{e&&this.emit("error",e)||t&&this.push(t)}),((e,t)=>{this.emit("prefix",e,t)})),this._transform=(e,r,n)=>{t(e),n()},this._flush=e=>{r(),e()}}import(e){return e.on("data",(e=>{this.write(e)})),e.on("end",(()=>{this.end()})),e.on("error",(e=>{this.emit("error",e)})),this}}class de extends oe.Transform{constructor(e){super({encoding:"utf8",writableObjectMode:!0});const t=this._writer=new ne({write:(e,t,r)=>{this.push(e),r&&r()},end:e=>{this.push(null),e&&e()}},e);this._transform=(e,r,n)=>{t.addQuad(e,n)},this._flush=e=>{t.end(e)}}import(e){return e.on("data",(e=>{this.write(e)})),e.on("end",(()=>{this.end()})),e.on("error",(e=>{this.emit("error",e)})),e.on("prefix",((e,t)=>{this._writer.addPrefix(e,t)})),this}}const he={Lexer:m,Parser:z,Writer:ne,Store:se,StreamParser:le,StreamWriter:de,Util:n,DataFactory:j,Term:C,NamedNode:M,Literal:L,BlankNode:k,Variable:F,DefaultGraph:B,Quad:V,Triple:V,termFromId:U,termToId:q}},34406:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function o(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var s,c=[],u=!1,l=-1;function d(){u&&s&&(u=!1,s.length?c=s.concat(c):l=-1,c.length&&h())}function h(){if(!u){var e=o(d);u=!0;for(var t=c.length;t;){for(s=c,c=[];++l1)for(var r=1;r{!function(){var t;t="object"==typeof window&&window?window:r.g,e.exports?e.exports=t.Promise?t.Promise:o:t.Promise||(t.Promise=o);var n=t.setImmediate||function(e){setTimeout(e,1)};function i(e,t){return function(){e.apply(t,arguments)}}var a=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function o(e){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],h(e,i(c,this),i(u,this))}function s(e){var t=this;null!==this._state?n((function(){var r=t._state?e.onFulfilled:e.onRejected;if(null!==r){var n;try{n=r(t._value)}catch(t){return void e.reject(t)}e.resolve(n)}else(t._state?e.resolve:e.reject)(t._value)})):this._deferreds.push(e)}function c(e){try{if(e===this)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==typeof e||"function"==typeof e)){var t=e.then;if("function"==typeof t)return void h(i(t,e),i(c,this),i(u,this))}this._state=!0,this._value=e,l.call(this)}catch(e){u.call(this,e)}}function u(e){this._state=!1,this._value=e,l.call(this)}function l(){for(var e=0,t=this._deferreds.length;e{let n;e.exports="function"==typeof queueMicrotask?queueMicrotask.bind("undefined"!=typeof window?window:r.g):e=>(n||(n=Promise.resolve())).then(e).catch((e=>setTimeout((()=>{throw e}),0)))},91194:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(98279),t),i(r(30370),t),i(r(31261),t),i(r(38990),t),i(r(74938),t),i(r(95414),t),i(r(93910),t)},98279:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNode=void 0,t.BlankNode=class{constructor(e){this.termType="BlankNode",this.value=e}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},30370:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataFactory=void 0;const n=r(98279),i=r(31261),a=r(38990),o=r(74938),s=r(95414),c=r(93910);let u=0;t.DataFactory=class{constructor(e){this.blankNodeCounter=0,e=e||{},this.blankNodePrefix=e.blankNodePrefix||`df_${u++}_`}namedNode(e){return new o.NamedNode(e)}blankNode(e){return new n.BlankNode(e||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(e,t){return new a.Literal(e,t)}variable(e){return new c.Variable(e)}defaultGraph(){return i.DefaultGraph.INSTANCE}quad(e,t,r,n){return new s.Quad(e,t,r,n||this.defaultGraph())}fromTerm(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(a.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}fromQuad(e){return this.fromTerm(e)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},31261:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultGraph=void 0;class r{constructor(){this.termType="DefaultGraph",this.value=""}equals(e){return!!e&&"DefaultGraph"===e.termType}}t.DefaultGraph=r,r.INSTANCE=new r},38990:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Literal=void 0;const n=r(74938);class i{constructor(e,t){this.termType="Literal",this.value=e,"string"==typeof t?(this.language=t,this.datatype=i.RDF_LANGUAGE_STRING):t?(this.language="",this.datatype=t):(this.language="",this.datatype=i.XSD_STRING)}equals(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&this.datatype.equals(e.datatype)}}t.Literal=i,i.RDF_LANGUAGE_STRING=new n.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),i.XSD_STRING=new n.NamedNode("http://www.w3.org/2001/XMLSchema#string")},74938:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NamedNode=void 0,t.NamedNode=class{constructor(e){this.termType="NamedNode",this.value=e}equals(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}},95414:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Quad=void 0,t.Quad=class{constructor(e,t,r,n){this.termType="Quad",this.value="",this.subject=e,this.predicate=t,this.object=r,this.graph=n}equals(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}},93910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0,t.Variable=class{constructor(e){this.termType="Variable",this.value=e}equals(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}},16550:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90541),t)},90541:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTermGrounded=t.termToSignature=t.quadToSignature=t.sha1hex=t.hashTerm=t.hashTerms=t.getGraphBlankNodes=t.uniqGraph=t.deindexGraph=t.indexGraph=t.getQuadsWithoutBlankNodes=t.getQuadsWithBlankNodes=t.hasValue=t.hashValues=t.getBijectionInner=t.getBijection=t.isomorphic=void 0;const n=r(34485),i=r(6053),a=r(98086);function o(e,t){const r=p(h(e)),n=p(h(t));if(Object.keys(r).length!==Object.keys(n).length)return null;for(const e in r)if(r[e]!==n[e])return null;return s(y(d(e)),y(d(t)),g(e),g(t))}function s(e,t,r,n,a,o){a||(a={}),o||(o={});const[d,h]=m(e,r,a),[p,f]=m(t,n,o);if(Object.keys(d).length!==Object.keys(p).length)return null;for(const e in d)if(!l(p,d[e]))return null;let y={};for(const e of r){const t=i.termToString(e),r=h[t];for(const e in f)if(f[e]===r){y[t]=e,delete f[e];break}}if(!c(Object.keys(y).sort(),r.map(i.termToString).sort())||!c(u(y).sort(),n.map(i.termToString).sort())){y=null;for(const a of r){const o=i.termToString(a);if(!d[o])for(const a of n){const c=i.termToString(a);if(!p[c]&&h[o]===f[c]){const i=v(o);y=s(e,t,r,n,Object.assign(Object.assign({},d),{[o]:i}),Object.assign(Object.assign({},p),{[c]:i}))}}}}return y}function c(e,t){if(e.length!==t.length)return!1;for(let r=e.length;r--;)if(e[r]!==t[r])return!1;return!0}function u(e){const t=[];for(const r in e)t.push(e[r]);return t}function l(e,t){for(const r in e)if(e[r]===t)return!0;return!1}function d(e){return e.filter((e=>a.someTerms(e,(e=>"BlankNode"===e.termType||"Quad"===e.termType&&a.getTermsNested(e).some((e=>"BlankNode"===e.termType))))))}function h(e){return e.filter((e=>a.everyTerms(e,(e=>"BlankNode"!==e.termType&&!("Quad"===e.termType&&a.getTermsNested(e).some((e=>"BlankNode"===e.termType)))))))}function p(e){const t={};for(const r of e)t[JSON.stringify(i.quadToStringQuad(r))]=!0;return t}function f(e){return Object.keys(e).map((e=>i.stringQuadToQuad(JSON.parse(e))))}function y(e){return f(p(e))}function g(e){return a.uniqTerms(e.map((e=>a.getBlankNodes(a.getTermsNested(e)))).reduce(((e,t)=>e.concat(t)),[]))}function m(e,t,r){const n=Object.assign({},r),a={};let o=!0;for(;o;){const r=Object.keys(n).length;for(const r of t){const t=i.termToString(r);if(!n[t]){const[i,o]=b(r,e,n);i&&(n[t]=o),a[t]=o}}const s={};for(const e in a){const t=a[e];void 0===s[t]?s[t]=e:s[t]=!1}for(const e in s){const t=s[e];t&&(n[t]=e)}o=r!==Object.keys(n).length}return[n,a]}function b(e,t,r){const n=[];let i=!0;for(const o of t){const t=a.getTermsNested(o);if(t.some((t=>t.equals(e)))){n.push(_(o,r,e));for(const n of t)T(n,r)||n.equals(e)||(i=!1)}}return[i,v(n.sort().join(""))]}function v(e){return n.sha1().update(e).digest("hex")}function _(e,t,r){return a.getTerms(e).map((e=>w(e,t,r))).join("|")}function w(e,t,r){return e.equals(r)?"@self":"BlankNode"===e.termType?t[i.termToString(e)]||"@blank":"Quad"===e.termType?`<${_(e,t,r)}>`:i.termToString(e)}function T(e,t){return"BlankNode"!==e.termType&&!("Quad"===e.termType&&a.getTermsNested(e).some((e=>!T(e,t))))||!!t[i.termToString(e)]}t.isomorphic=function(e,t){return!!o(e,t)},t.getBijection=o,t.getBijectionInner=s,t.hashValues=u,t.hasValue=l,t.getQuadsWithBlankNodes=d,t.getQuadsWithoutBlankNodes=h,t.indexGraph=p,t.deindexGraph=f,t.uniqGraph=y,t.getGraphBlankNodes=g,t.hashTerms=m,t.hashTerm=b,t.sha1hex=v,t.quadToSignature=_,t.termToSignature=w,t.isTermGrounded=T},92126:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.getSupportedJavaScriptPrimitives=t.getSupportedRdfDatatypes=t.getTermRaw=t.toRdf=t.fromRdf=void 0;const a=r(91194),o=r(26190),s=r(72491);i(r(26190),t),i(r(51017),t),i(r(72491),t);const c=new a.DataFactory,u=new s.Translator;function l(e,t){return u.fromRdf(e,t)}u.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map((e=>c.namedNode(e))),["string"]),u.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map((e=>c.namedNode(e))),["boolean"]),u.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map((e=>c.namedNode(e))),["number"]),u.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map((e=>c.namedNode(e))),["number"]),u.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map((e=>c.namedNode(e))),["object"]),t.fromRdf=l,t.toRdf=function(e,t){return t&&"namedNode"in t&&(t={dataFactory:t}),(t=t||{})&&!t.dataFactory&&(t.dataFactory=c),u.toRdf(e,t)},t.getTermRaw=function(e,t){return"Literal"===e.termType?l(e,t):e.value},t.getSupportedRdfDatatypes=function(){return u.getSupportedRdfDatatypes()},t.getSupportedJavaScriptPrimitives=function(){return u.getSupportedJavaScriptPrimitives()}},51017:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},72491:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Translator=void 0,t.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(e){throw new Error(`Invalid RDF ${e.datatype.value} value: '${e.value}'`)}registerHandler(e,t,r){for(const r of t)this.supportedRdfDatatypes.push(r),this.fromRdfHandlers[r.value]=e;for(const t of r){let r=this.toRdfHandlers[t];r||(this.toRdfHandlers[t]=r=[]),r.push(e)}}fromRdf(e,t){const r=this.fromRdfHandlers[e.datatype.value];return r?r.fromRdf(e,t):e.value}toRdf(e,t){const r=this.toRdfHandlers[typeof e];if(r)for(const n of r){const r=n.toRdf(e,t);if(r)return r}throw new Error(`Invalid JavaScript value: '${e}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},90641:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerBoolean=void 0;const n=r(72491);class i{fromRdf(e,t){switch(e.value){case"true":case"1":return!0;case"false":case"0":return!1}return t&&n.Translator.incorrectRdfDataType(e),!1}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(e?"true":"false",t||r.namedNode(i.TYPE))}}t.TypeHandlerBoolean=i,i.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},51497:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerDate=void 0;const n=r(72491);class i{fromRdf(e,t){switch(t&&!e.value.match(i.VALIDATORS[e.datatype.value.substr(33,e.datatype.value.length)])&&n.Translator.incorrectRdfDataType(e),e.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(e.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const t=e.value.split("-");return new Date(0,parseInt(t[0],10)-1,parseInt(t[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(e.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(e.value+"-01");default:return new Date(e.value)}}toRdf(e,{datatype:t,dataFactory:r}){if(t=t||r.namedNode(i.TYPES[0]),!(e instanceof Date))return null;const n=e;let a;switch(t.value){case"http://www.w3.org/2001/XMLSchema#gDay":a=String(n.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":a=n.getUTCMonth()+1+"-"+n.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":a=String(n.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":a=n.getUTCFullYear()+"-"+(n.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":a=n.toISOString().replace(/T.*$/,"");break;default:a=n.toISOString()}return r.literal(a,t)}}t.TypeHandlerDate=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],i.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},23382:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberDouble=void 0;const n=r(72491);class i{fromRdf(e,t){const r=parseFloat(e.value);return t&&isNaN(r)&&n.Translator.incorrectRdfDataType(e),r}toRdf(e,{datatype:t,dataFactory:r}){return t=t||r.namedNode(i.TYPES[0]),isNaN(e)?r.literal("NaN",t):isFinite(e)?e%1==0?null:r.literal(e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),t):r.literal(e>0?"INF":"-INF",t)}}t.TypeHandlerNumberDouble=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},19410:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberInteger=void 0;const n=r(72491);class i{fromRdf(e,t){const r=parseInt(e.value,10);return t&&(isNaN(r)||e.value.indexOf(".")>=0)&&n.Translator.incorrectRdfDataType(e),r}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(String(e),t||(e<=i.MAX_INT&&e>=i.MIN_INT?r.namedNode(i.TYPES[0]):r.namedNode(i.TYPES[1])))}}t.TypeHandlerNumberInteger=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],i.MAX_INT=2147483647,i.MIN_INT=-2147483648},14220:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerString=void 0;class r{fromRdf(e){return e.value}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(e,t)}}t.TypeHandlerString=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},26190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90641),t),i(r(51497),t),i(r(23382),t),i(r(19410),t),i(r(14220),t)},92608:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.storeStream=void 0;const n=r(35489);t.storeStream=function(e){const t=n.RdfStore.createDefault();return new Promise(((r,n)=>t.import(e).on("error",n).once("end",(()=>r(t)))))}},35489:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85632),t),i(r(28428),t),i(r(98122),t),i(r(39917),t),i(r(82825),t),i(r(86955),t),i(r(75120),t),i(r(90387),t),i(r(27164),t),i(r(74322),t),i(r(42407),t),i(r(49028),t),i(r(41609),t),i(r(52787),t),i(r(52153),t),i(r(22204),t),i(r(98867),t),i(r(30218),t),i(r(67781),t),i(r(54194),t)},98867:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},30218:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arePatternsQuoted=t.quadHasVariables=t.quadToPattern=t.encodeOptionalTerms=t.orderQuadComponents=t.getComponentOrderScore=t.getBestIndex=t.QUAD_TERM_NAMES_INVERSE=void 0;const n=r(98086);function i(e,t){return e.map(((r,n)=>t.includes(r)?e.length-n:0)).reduce(((e,t)=>e+t),0)}function a(e){for(const t of n.QUAD_TERM_NAMES){const r=e[t];if("Variable"===r.termType||"Quad"===r.termType&&a(r))return!0}return!1}t.QUAD_TERM_NAMES_INVERSE=Object.fromEntries(n.QUAD_TERM_NAMES.map(((e,t)=>[e,t]))),t.getBestIndex=function(e,t){if(1===e.length||t.every((e=>void 0!==e)))return 0;const r=[];for(let e=0;e({score:i(e,r),index:t}))).sort(((e,t)=>t.score-e.score))[0].index},t.getComponentOrderScore=i,t.orderQuadComponents=function(e,r){return e.map((e=>{const n=t.QUAD_TERM_NAMES_INVERSE[e];return r[n]}))},t.encodeOptionalTerms=function(e,t){const r=e.map((e=>{if(e){if("Quad"===e.termType&&a(e))return;const r=t.encodeOptional(e);return void 0===r?"none":r}return e}));if(!r.includes("none"))return r},t.quadToPattern=function(e,t,r,n,i){let a=!1;return[[e||void 0,t||void 0,r||void 0,n||void 0].map((e=>{if(e){if("Variable"===e.termType)return;if("Quad"===e.termType)return i?e:void(a=!0)}return e})),a]},t.quadHasVariables=a,t.arePatternsQuoted=function(e){return e.map((e=>"Quad"===(null==e?void 0:e.termType)&&a(e)))}},67781:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},54194:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStore=void 0;const n=r(89227),i=r(91194),a=r(98086),o=r(85632),s=r(82825),c=r(75120),u=r(49028),l=r(30218);class d{constructor(e){this.features={quotedTripleFiltering:!0},this._size=0,this.options=e,this.dataFactory=e.dataFactory,this.dictionary=e.dictionary,this.indexesWrapped=d.constructIndexesWrapped(e),this.indexesWrappedComponentOrders=this.indexesWrapped.map((e=>e.componentOrder))}static createDefault(){return new d({indexCombinations:d.DEFAULT_INDEX_COMBINATIONS,indexConstructor:e=>new u.RdfStoreIndexNestedMapQuoted(e),dictionary:new c.TermDictionaryQuotedIndexed(new s.TermDictionaryNumberRecordFullTerms),dataFactory:new i.DataFactory})}static constructIndexesWrapped(e){const t=[];if(0===e.indexCombinations.length)throw new Error("At least one index combination is required");for(const r of e.indexCombinations){if(!d.isCombinationValid(r))throw new Error(`Invalid index combination: ${r}`);t.push({index:e.indexConstructor(e),componentOrder:r,componentOrderInverse:Object.fromEntries(r.map(((e,t)=>[e,t])))})}return t}static isCombinationValid(e){for(const t of a.QUAD_TERM_NAMES)if(!e.includes(t))return!1;return 4===e.length}get size(){return this._size}addQuad(e){const t=[this.dictionary.encode(e.subject),this.dictionary.encode(e.predicate),this.dictionary.encode(e.object),this.dictionary.encode(e.graph)];let r=!1;for(const e of this.indexesWrapped)r=e.index.set((0,l.orderQuadComponents)(e.componentOrder,t),!0);return!!r&&(this._size++,!0)}removeQuad(e){const t=[this.dictionary.encodeOptional(e.subject),this.dictionary.encodeOptional(e.predicate),this.dictionary.encodeOptional(e.object),this.dictionary.encodeOptional(e.graph)];if(t.includes(void 0))return!1;let r=!1;for(const e of this.indexesWrapped)if(r=e.index.remove((0,l.orderQuadComponents)(e.componentOrder,t)),!r)break;return!!r&&(this._size--,!0)}remove(e){return e.on("data",(e=>this.removeQuad(e))),e}removeMatches(e,t,r,n){return this.remove(this.match(e,t,r,n))}deleteGraph(e){return"string"==typeof e&&(e=this.dataFactory.namedNode(e)),this.removeMatches(void 0,void 0,void 0,e)}import(e){return e.on("data",(e=>this.addQuad(e))),e}*readQuads(e,t,r,n){const i=Boolean(this.dictionary.features.quotedTriples)&&Object.values(this.indexesWrapped).every((e=>e.index.features.quotedTripleFiltering)),[o,s]=(0,l.quadToPattern)(e,t,r,n,i),c=this.indexesWrapped[(0,l.getBestIndex)(this.indexesWrappedComponentOrders,o)],u=(0,l.orderQuadComponents)(c.componentOrder,o);for(const i of c.index.find(u)){const o=this.dataFactory.quad(i[c.componentOrderInverse.subject],i[c.componentOrderInverse.predicate],i[c.componentOrderInverse.object],i[c.componentOrderInverse.graph]);s?(0,a.matchPattern)(o,e,t,r,n)&&(yield o):yield o}}getQuads(e,t,r,n){return[...this.readQuads(e,t,r,n)]}match(e,t,r,i){return(0,n.wrap)(this.readQuads(e,t,r,i))}countQuads(e,t,r,n){const i=Boolean(this.dictionary.features.quotedTriples)&&Object.values(this.indexesWrapped).every((e=>e.index.features.quotedTripleFiltering)),[a]=(0,l.quadToPattern)(e,t,r,n,i);if(a.every((e=>void 0===e)))return this.size;const o=this.indexesWrapped[(0,l.getBestIndex)(this.indexesWrappedComponentOrders,a)],s=(0,l.orderQuadComponents)(o.componentOrder,a);return o.index.count(s)}asDataset(){return new o.DatasetCoreWrapper(this)}}d.DEFAULT_INDEX_COMBINATIONS=[["graph","subject","predicate","object"],["graph","predicate","object","subject"],["graph","object","subject","predicate"]],t.RdfStore=d},85632:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DatasetCoreWrapper=void 0;const n=r(54194);class i{constructor(e){this.store=e}get size(){return this.store.size}add(e){return this.store.addQuad(e),this}delete(e){return this.store.removeQuad(e),this}has(e){for(const t of this.store.readQuads(e.subject,e.predicate,e.object,e.graph))return!0;return!1}match(e,t,r,a){const o=new n.RdfStore(this.store.options);for(const n of this.store.readQuads(e,t,r,a))o.addQuad(n);return new i(o)}[Symbol.iterator](){return this.store.readQuads()}}t.DatasetCoreWrapper=i},28428:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},98122:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberMap=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberMap=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary=new Map,this.reverseDictionary=new Map,this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary.get(t);return void 0===r&&(r=this.lastId++,this.dictionary.set(t,r),this.reverseDictionary.set(r,t)),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary.get(t)}decode(e){const t=this.reverseDictionary.get(e);if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return(0,i.stringToTerm)(t,this.dataFactory)}encodings(){return this.reverseDictionary.keys()}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},39917:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberRecord=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberRecord=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary={},this.reverseDictionary={},this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary[t];return void 0===r&&(r=this.lastId++,this.dictionary[t]=r,this.reverseDictionary[r]=t),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary[t]}decode(e){const t=this.reverseDictionary[e];if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return(0,i.stringToTerm)(t,this.dataFactory)}*encodings(){for(const e of Object.keys(this.reverseDictionary))yield Number.parseInt(e,10)}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},82825:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberRecordFullTerms=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberRecordFullTerms=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary={},this.reverseDictionary={},this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary[t];return void 0===r&&(r=this.lastId++,this.dictionary[t]=r,this.reverseDictionary[r]=e),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary[t]}decode(e){const t=this.reverseDictionary[e];if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return t}*encodings(){for(const e of Object.keys(this.reverseDictionary))yield Number.parseInt(e,10)}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},86955:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuoted=void 0;const n=r(91194),i=r(98086);class a{constructor(e,t,r=new n.DataFactory){this.features={quotedTriples:!0},this.plainTermDictionary=e,this.quotedTriplesDictionary=t,this.dataFactory=r}encode(e){return"Quad"===e.termType?a.BITMASK|1+this.quotedTriplesDictionary.encode(e):this.plainTermDictionary.encode(e)}encodeOptional(e){if("Quad"===e.termType){const t=this.quotedTriplesDictionary.encodeOptional(e);return void 0===t?t:a.BITMASK|1+t}return this.plainTermDictionary.encodeOptional(e)}decode(e){if(a.BITMASK&e){const t=(~a.BITMASK&e)-1;return this.quotedTriplesDictionary.decode(t)}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.encodings())yield a.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){for(let t of this.quotedTriplesDictionary.encodings()){t=a.BITMASK|1+t;const r=this.decode(t);(0,i.matchPattern)(r,e.subject,e.predicate,e.object,e.graph)&&(yield t)}}}a.BITMASK=1<<31,t.TermDictionaryQuoted=a},75120:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuotedIndexed=void 0;const n=r(91194),i=r(42407),a=r(30218);class o{constructor(e,t=new n.DataFactory){this.quotedTriplesDictionary=[],this.features={quotedTriples:!0},this.plainTermDictionary=e;const r={indexCombinations:[],indexConstructor:void 0,dictionary:this,dataFactory:t};this.quotedTriplesReverseDictionaries=[new i.RdfStoreIndexNestedMap(r),new i.RdfStoreIndexNestedMap(r),new i.RdfStoreIndexNestedMap(r)],this.dataFactory=t}encode(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!1):this.plainTermDictionary.encode(e)}encodeQuotedTriple(e,t){if("DefaultGraph"!==e.graph.termType)throw new Error("Encoding of quoted quads outside of the default graph is not allowed");const r=(0,a.encodeOptionalTerms)([e.subject,e.predicate,e.object,e.graph],this),n=r&&r.every((e=>void 0!==e))?this.quotedTriplesReverseDictionaries[0].getEncoded(r):void 0;if(void 0!==n||t)return void 0===n?void 0:o.BITMASK|n;const i=[this.encode(e.subject),this.encode(e.predicate),this.encode(e.object)],s=this.quotedTriplesDictionary.length+1;this.quotedTriplesDictionary.push(i);const c=this.encode(this.dataFactory.defaultGraph());return this.quotedTriplesReverseDictionaries[0].set([i[0],i[1],i[2],c],s),this.quotedTriplesReverseDictionaries[1].set([i[1],i[2],i[0],c],s),this.quotedTriplesReverseDictionaries[2].set([i[2],i[0],i[1],c],s),o.BITMASK|s}encodeOptional(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!0):this.plainTermDictionary.encodeOptional(e)}decode(e){if(o.BITMASK&e){const t=(~o.BITMASK&e)-1;if(t>=this.quotedTriplesDictionary.length)throw new Error(`The value ${e} is not present in the quoted triples range of the dictionary`);const r=this.quotedTriplesDictionary[t];return this.dataFactory.quad(this.decode(r[0]),this.decode(r[1]),this.decode(r[2]))}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.keys())yield o.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){const[t,r]=(0,a.quadToPattern)(e.subject,e.predicate,e.object,e.graph,!0);for(const e of this.patternToIterable(t[0]))for(const r of this.patternToIterable(t[1]))for(const n of this.patternToIterable(t[2]))for(const i of this.patternToIterable(t[3]))if(e&&r||!r&&!n){const a=[e,r,n,i];for(const e of this.quotedTriplesReverseDictionaries[0].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[0].getEncoded(e)}else if(!e&&r){const a=[r,n,e,i];for(const e of this.quotedTriplesReverseDictionaries[1].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[1].getEncoded(e)}else{const a=[n,e,r,i];for(const e of this.quotedTriplesReverseDictionaries[2].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[2].getEncoded(e)}}*patternToIterable(e){if("Quad"===(null==e?void 0:e.termType))return void(yield*this.findQuotedTriplesEncoded(e));if(void 0===e)return void(yield);const t=this.encodeOptional(e);void 0!==t&&(yield t)}}o.BITMASK=1<<31,t.TermDictionaryQuotedIndexed=o},90387:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuotedReferential=void 0;const n=r(91194),i=r(98086),a=r(30218);class o{constructor(e,t=new n.DataFactory){this.quotedTriplesDictionary=[],this.quotedTriplesReverseDictionary={},this.features={quotedTriples:!0},this.plainTermDictionary=e,this.dataFactory=t}encode(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!1):this.plainTermDictionary.encode(e)}encodeQuotedTriple(e,t){var r;if("DefaultGraph"!==e.graph.termType)throw new Error("Encoding of quoted quads outside of the default graph is not allowed");const n=null===(r=(0,a.encodeOptionalTerms)([e.subject,e.predicate,e.object,void 0],this))||void 0===r?void 0:r.slice(0,3),i=n&&n.every((e=>void 0!==e))?this.quotedTriplesReverseDictionary[n.join(o.SEPARATOR)]:void 0;if(void 0!==i||t)return void 0===i?void 0:o.BITMASK|i;const s=[this.encode(e.subject),this.encode(e.predicate),this.encode(e.object)],c=this.quotedTriplesDictionary.length+1;return this.quotedTriplesDictionary.push(s),this.quotedTriplesReverseDictionary[s.join(o.SEPARATOR)]=c,o.BITMASK|c}encodeOptional(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!0):this.plainTermDictionary.encodeOptional(e)}decode(e){if(o.BITMASK&e){const t=(~o.BITMASK&e)-1;if(t>=this.quotedTriplesDictionary.length)throw new Error(`The value ${e} is not present in the quoted triples range of the dictionary`);const r=this.quotedTriplesDictionary[t];return this.dataFactory.quad(this.decode(r[0]),this.decode(r[1]),this.decode(r[2]))}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.keys())yield o.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){for(let t of this.quotedTriplesDictionary.keys()){t=o.BITMASK|1+t;const r=this.decode(t);(0,i.matchPattern)(r,e.subject,e.predicate,e.object,e.graph)&&(yield t)}}}o.BITMASK=1<<31,o.SEPARATOR="_",t.TermDictionaryQuotedReferential=o},27164:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionarySymbol=void 0;const n=r(91194),i=r(6053);t.TermDictionarySymbol=class{constructor(e=new n.DataFactory){this.features={quotedTriples:!1},this.dataFactory=e}encode(e){return Symbol.for(`rdf::${(0,i.termToString)(e)}`)}encodeOptional(e){return this.encode(e)}decode(e){const t=Symbol.keyFor(e);if(void 0===t)throw new Error(`The value ${String(e)} is not present in this dictionary`);return(0,i.stringToTerm)(t.slice(5),this.dataFactory)}encodings(){throw new Error("encodings is not supported")}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},74322:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},42407:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMap=void 0;const n=r(30218);t.RdfStoreIndexNestedMap=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedMap=new Map}set(e,t){const r=this.nestedMap;let n=r.get(e[0]);n||(n=new Map,r.set(e[0],n));let i=n.get(e[1]);i||(i=new Map,n.set(e[1],i));let a=i.get(e[2]);a||(a=new Map,i.set(e[2],a));const o=a.has(e[3]);return o||a.set(e[3],t),!o}remove(e){const t=this.nestedMap,r=t.get(e[0]);if(!r)return!1;const n=r.get(e[1]);if(!n)return!1;const i=n.get(e[2]);if(!i)return!1;const a=i.delete(e[3]);return a&&0===i.size&&(n.delete(e[2]),0===n.size&&(r.delete(e[1]),0===r.size&&t.delete(e[0]))),a}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){const t=this.nestedMap.get(e[0]);if(!t)return;const r=t.get(e[1]);if(!r)return;const n=r.get(e[2]);return n?n.get(e[3]):void 0}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e;let d,h,p,f,y,g,m;const b=this.nestedMap,v=void 0!==r?b.has(r)?[r]:[]:b.keys();for(const e of v){y=b.get(e),d=s||this.dictionary.decode(e);const t=void 0!==i?y.has(i)?[i]:[]:y.keys();for(const e of t){g=y.get(e),h=c||this.dictionary.decode(e);const t=void 0!==a?g.has(a)?[a]:[]:g.keys();for(const e of t){m=g.get(e),p=u||this.dictionary.decode(e);const t=void 0!==o?m.has(o)?[o]:[]:m.keys();for(const e of t)f=l||this.dictionary.decode(e),yield[d,h,p,f]}}}}*findEncoded(e,t){const[r,n,i,a]=e;let o,s,c;const u=this.nestedMap,l=void 0!==r?u.has(r)?[r]:[]:u.keys();for(const e of l){o=u.get(e);const t=void 0!==n?o.has(n)?[n]:[]:o.keys();for(const r of t){s=o.get(r);const t=void 0!==i?s.has(i)?[i]:[]:s.keys();for(const n of t){c=s.get(n);const t=void 0!==a?c.has(a)?[a]:[]:c.keys();for(const i of t)yield[e,r,n,i]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const i=r[0],a=r[1],o=r[2],s=r[3];let c,u,l;const d=this.nestedMap,h=void 0!==i?d.has(i)?[i]:[]:d.keys();for(const e of h){c=d.get(e);const r=void 0!==a?c.has(a)?[a]:[]:c.keys();for(const e of r){u=c.get(e);const r=void 0!==o?u.has(o)?[o]:[]:u.keys();for(const e of r)l=u.get(e),void 0!==s?l.has(s)&&t++:t+=l.size}}return t}}},49028:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapQuoted=void 0;const n=r(30218),i=r(42407);class a extends i.RdfStoreIndexNestedMap{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*getQuotedPatternKeys(e,t){for(const r of this.dictionary.findQuotedTriplesEncoded(t))e.has(r)&&(yield r)}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e,[d,h,p,f]=(0,n.arePatternsQuoted)(e);let y,g,m,b,v,_,w;const T=this.nestedMap,S=void 0!==s?d?this.getQuotedPatternKeys(T,s):T.has(r)?[r]:[]:T.keys();for(const e of S){v=T.get(e),y=!d&&s?s:this.dictionary.decode(e);const t=void 0!==c?h?this.getQuotedPatternKeys(v,c):v.has(i)?[i]:[]:v.keys();for(const e of t){_=v.get(e),g=!h&&c?c:this.dictionary.decode(e);const t=void 0!==u?p?this.getQuotedPatternKeys(_,u):_.has(a)?[a]:[]:_.keys();for(const e of t){w=_.get(e),m=!p&&u?u:this.dictionary.decode(e);const t=void 0!==l?f?this.getQuotedPatternKeys(w,l):w.has(o)?[o]:[]:w.keys();for(const e of t)b=!f&&l?l:this.dictionary.decode(e),yield[y,g,m,b]}}}}*findEncoded(e,t){const[r,i,a,o]=e,[s,c,u,l]=t,[d,h,p,f]=(0,n.arePatternsQuoted)(t);let y,g,m;const b=this.nestedMap,v=void 0!==s?d?this.getQuotedPatternKeys(b,s):b.has(r)?[r]:[]:b.keys();for(const e of v){y=b.get(e);const t=void 0!==c?h?this.getQuotedPatternKeys(y,c):y.has(i)?[i]:[]:y.keys();for(const r of t){g=y.get(r);const t=void 0!==u?p?this.getQuotedPatternKeys(g,u):g.has(a)?[a]:[]:g.keys();for(const n of t){m=g.get(n);const t=void 0!==l?f?this.getQuotedPatternKeys(m,l):m.has(o)?[o]:[]:m.keys();for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const[i,a,o,s]=r,[c,u,l,d]=e,[h,p,f,y]=(0,n.arePatternsQuoted)(e);let g,m,b;const v=this.nestedMap,_=void 0!==c?h?this.getQuotedPatternKeys(v,c):v.has(i)?[i]:[]:v.keys();for(const e of _){g=v.get(e);const r=void 0!==u?p?this.getQuotedPatternKeys(g,u):g.has(a)?[a]:[]:g.keys();for(const e of r){m=g.get(e);const r=void 0!==l?f?this.getQuotedPatternKeys(m,l):m.has(o)?[o]:[]:m.keys();for(const e of r)b=m.get(e),void 0!==d?y?t+=[...this.getQuotedPatternKeys(b,d)].length:b.has(s)&&t++:t+=b.size}}return t}}t.RdfStoreIndexNestedMapQuoted=a},41609:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapRecursive=void 0;const n=r(30218);t.RdfStoreIndexNestedMapRecursive=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedMap=new Map}set(e,t){let r=this.nestedMap,n=!1;for(const[i,a]of e.entries()){const o=r;let s=o.get(a);s?i===e.length-1&&(n=!0):(s=i===e.length-1?t:new Map,o.set(a,s)),r=s}return!n}remove(e){const t=this.nestedMap,r=t.get(e[0]);if(!r)return!1;const n=r.get(e[1]);if(!n)return!1;const i=n.get(e[2]);if(!i)return!1;const a=i.delete(e[3]);return a&&0===i.size&&(n.delete(e[2]),0===n.size&&(r.delete(e[1]),0===r.size&&t.delete(e[0]))),a}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){const t=this.nestedMap.get(e[0]);if(!t)return;const r=t.get(e[1]);if(!r)return;const n=r.get(e[2]);return n?n.get(e[3]):void 0}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t)for(const r of this.findEncoded(t,e))yield[void 0!==t[0]?e[0]:this.dictionary.decode(r[0]),void 0!==t[1]?e[1]:this.dictionary.decode(r[1]),void 0!==t[2]?e[2]:this.dictionary.decode(r[2]),void 0!==t[3]?e[3]:this.dictionary.decode(r[3])]}*findEncoded(e,t){return yield*this.findEncodedInner(0,e,t,this.nestedMap,[])}*findEncodedInner(e,t,r,n,i){if(e===t.length)yield[...i];else{const a=t[e];if(r[e]){const o=a;if(void 0!==o){const s=n.get(o);s&&(i[e]=a,yield*this.findEncodedInner(e+1,t,r,s,i))}}else for(const[a,o]of n.entries())i[e]=a,yield*this.findEncodedInner(e+1,t,r,o,i)}}count(e){return this.countInner(0,e,this.nestedMap)}countInner(e,t,r){const n=t[e];let i=0;if(n){const a=this.dictionary.encodeOptional(n);if(void 0!==a){if(e===t.length-1)return r.has(a)?1:0;const n=r.get(a);n&&(i+=this.countInner(e+1,t,n))}}else{if(e===t.length-1)return r.size;for(const n of r.values())i+=this.countInner(e+1,t,n)}return i}}},52787:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapRecursiveQuoted=void 0;const n=r(30218),i=r(41609);class a extends i.RdfStoreIndexNestedMapRecursive{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*findEncoded(e,t){return yield*this.findEncodedInnerQuoted(0,e,t,(0,n.arePatternsQuoted)(t),this.nestedMap,[])}*findEncodedInnerQuoted(e,t,r,n,i,a){if(e===t.length)yield[...a];else{const o=t[e],s=r[e];if(s)if(n[e]){const o=this.dictionary.findQuotedTriplesEncoded(s);for(const s of o){const o=i.get(s);o&&(a[e]=s,yield*this.findEncodedInnerQuoted(e+1,t,r,n,o,a))}}else{const s=o;if(void 0!==s){const c=i.get(s);c&&(a[e]=o,yield*this.findEncodedInnerQuoted(e+1,t,r,n,c,a))}}else for(const[o,s]of i.entries())a[e]=o,yield*this.findEncodedInnerQuoted(e+1,t,r,n,s,a)}}countInner(e,t,r){const i=t[e];let a=0;if(i)if("Quad"===i.termType&&(0,n.quadHasVariables)(i)){const n=this.dictionary.findQuotedTriplesEncoded(i);for(const i of n)if(e===t.length-1)r.has(i)&&a++;else{const n=r.get(i);n&&(a+=this.countInner(e+1,t,n))}}else{const n=this.dictionary.encodeOptional(i);if(void 0!==n){if(e===t.length-1)return r.has(n)?1:0;const i=r.get(n);i&&(a+=this.countInner(e+1,t,i))}}else{if(e===t.length-1)return r.size;for(const n of r.values())a+=this.countInner(e+1,t,n)}return a}}t.RdfStoreIndexNestedMapRecursiveQuoted=a},52153:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedRecord=void 0;const n=r(30218);t.RdfStoreIndexNestedRecord=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedRecords={}}set(e,t){const r=this.nestedRecords,n=r[e[0]]||(r[e[0]]={}),i=n[e[1]]||(n[e[1]]={}),a=i[e[2]]||(i[e[2]]={});return!a[e[3]]&&(a[e[3]]=t,!0)}remove(e){const t=this.nestedRecords,r=t[e[0]];if(!r)return!1;const n=r[e[1]];if(!n)return!1;const i=n[e[2]];return!!i&&!!i[e[3]]&&(delete i[e[3]],0===Object.keys(i).length&&(delete n[e[2]],0===Object.keys(n).length&&(delete r[e[1]],0===Object.keys(r).length&&delete t[e[0]])),!0)}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){var t,r,n;return null===(n=null===(r=null===(t=this.nestedRecords[e[0]])||void 0===t?void 0:t[e[1]])||void 0===r?void 0:r[e[2]])||void 0===n?void 0:n[e[3]]}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e;let d,h,p,f,y,g,m;const b=this.nestedRecords,v=void 0!==r?r in b?[r]:[]:Object.keys(b);for(const e of v){y=b[e],d=s||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==i?i in y?[i]:[]:Object.keys(y);for(const e of t){g=y[e],h=c||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==a?a in g?[a]:[]:Object.keys(g);for(const e of t){m=g[e],p=u||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==o?o in m?[o]:[]:Object.keys(m);for(const e of t)f=l||this.dictionary.decode(Number.parseInt(e,10)),yield[d,h,p,f]}}}}*findEncoded(e,t){const[r,n,i,a]=e;let o,s,c;const u=this.nestedRecords,l=void 0!==r?r in u?[r]:[]:Object.keys(u);for(const e of l){o=u[e];const t=void 0!==n?n in o?[n]:[]:Object.keys(o);for(const r of t){s=o[r];const t=void 0!==i?i in s?[i]:[]:Object.keys(s);for(const n of t){c=s[n];const t=void 0!==a?a in c?[a]:[]:Object.keys(c);for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const i=r[0],a=r[1],o=r[2],s=r[3];let c,u,l;const d=this.nestedRecords,h=void 0!==i?i in d?[i]:[]:Object.keys(d);for(const e of h){c=d[e];const r=void 0!==a?a in c?[a]:[]:Object.keys(c);for(const e of r){u=c[e];const r=void 0!==o?o in u?[o]:[]:Object.keys(u);for(const e of r)l=u[e],void 0!==s?s in l&&t++:t+=Object.keys(l).length}}return t}}},22204:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedRecordQuoted=void 0;const n=r(30218),i=r(52153);class a extends i.RdfStoreIndexNestedRecord{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*getQuotedPatternKeys(e,t){for(const r of this.dictionary.findQuotedTriplesEncoded(t))r in e&&(yield r)}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e,[d,h,p,f]=(0,n.arePatternsQuoted)(e);let y,g,m,b,v,_,w;const T=this.nestedRecords,S=void 0!==s?d?this.getQuotedPatternKeys(T,s):r in T?[r]:[]:Object.keys(T);for(const e of S){v=T[e],y=!d&&s?s:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==c?h?this.getQuotedPatternKeys(v,c):i in v?[i]:[]:Object.keys(v);for(const e of t){_=v[e],g=!h&&c?c:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==u?p?this.getQuotedPatternKeys(_,u):a in _?[a]:[]:Object.keys(_);for(const e of t){w=_[e],m=!p&&u?u:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==l?f?this.getQuotedPatternKeys(w,l):o in w?[o]:[]:Object.keys(w);for(const e of t)b=!f&&l?l:this.dictionary.decode(Number.parseInt(e,10)),yield[y,g,m,b]}}}}*findEncoded(e,t){const[r,i,a,o]=e,[s,c,u,l]=t,[d,h,p,f]=(0,n.arePatternsQuoted)(t);let y,g,m;const b=this.nestedRecords,v=void 0!==s?d?this.getQuotedPatternKeys(b,s):r in b?[r]:[]:Object.keys(b);for(const e of v){y=b[e];const t=void 0!==c?h?this.getQuotedPatternKeys(y,c):i in y?[i]:[]:Object.keys(y);for(const r of t){g=y[r];const t=void 0!==u?p?this.getQuotedPatternKeys(g,u):a in g?[a]:[]:Object.keys(g);for(const n of t){m=g[n];const t=void 0!==l?f?this.getQuotedPatternKeys(m,l):o in m?[o]:[]:Object.keys(m);for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const[i,a,o,s]=r,[c,u,l,d]=e,[h,p,f,y]=(0,n.arePatternsQuoted)(e);let g,m,b;const v=this.nestedRecords,_=void 0!==c?h?this.getQuotedPatternKeys(v,c):i in v?[i]:[]:Object.keys(v);for(const e of _){g=v[e];const r=void 0!==u?p?this.getQuotedPatternKeys(g,u):a in g?[a]:[]:Object.keys(g);for(const e of r){m=g[e];const r=void 0!==l?f?this.getQuotedPatternKeys(m,l):o in m?[o]:[]:Object.keys(m);for(const e of r)b=m[e],void 0!==d?y?t+=[...this.getQuotedPatternKeys(b,d)].length:s in b&&t++:t+=Object.keys(b).length}}return t}}t.RdfStoreIndexNestedRecordQuoted=a},47720:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52839),t),i(r(6745),t)},52839:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PendingStreamsIndex=void 0;const n=r(6053),i=r(98086);class a{constructor(){this.indexedStreams=new Map,this.allStreams=[]}termToString(e){return e&&"Variable"!==e.termType?(0,n.termToString)(e):a.ID_VARIABLE}addPatternListener(e,t,r,n,i){this.allStreams.push(e);const o=`${this.termToString(t)}${a.ID_SEPARATOR}${this.termToString(r)}${a.ID_SEPARATOR}${this.termToString(n)}${a.ID_SEPARATOR}${this.termToString(i)}`;let s=this.indexedStreams.get(o);s||(s=[],this.indexedStreams.set(o,s)),s.push(e)}getPendingStreamsForQuad(e){let t=[(0,i.getTerms)(e).map((e=>(0,n.termToString)(e)))];for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamingStore=void 0;const n=r(66641),i=r(51887),a=r(52839);t.StreamingStore=class{constructor(e=new n.Store){this.pendingStreams=new a.PendingStreamsIndex,this.ended=!1,this.store=e}end(){this.ended=!0;for(const e of this.pendingStreams.allStreams)e.push(null),e._pipeSource.unpipe()}importToListeners(e){e.on("data",(e=>{for(const t of this.pendingStreams.getPendingStreamsForQuad(e))this.ended||(t.push(e),t.emit("quad",e))}))}import(e){if(this.ended)throw new Error("Attempted to import into an ended StreamingStore");return this.importToListeners(e),this.store.import(e)}match(e,t,r,n){const a=this.store.match(e,t,r,n);let o=a;if(!this.ended){const s=new i.PassThrough({objectMode:!0});this.pendingStreams.addPatternListener(s,e,t,r,n),o=a.pipe(s,{end:!1}),o._pipeSource=a}return o}getStore(){return this.store}}},2122:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.termToString=t.stringToTerm=t.stringQuadToQuad=t.quadToStringQuad=t.getLiteralValue=t.getLiteralType=t.getLiteralLanguage=void 0;const n=r(68577);Object.defineProperty(t,"getLiteralLanguage",{enumerable:!0,get:function(){return n.getLiteralLanguage}}),Object.defineProperty(t,"getLiteralType",{enumerable:!0,get:function(){return n.getLiteralType}}),Object.defineProperty(t,"getLiteralValue",{enumerable:!0,get:function(){return n.getLiteralValue}}),Object.defineProperty(t,"quadToStringQuad",{enumerable:!0,get:function(){return n.quadToStringQuad}}),Object.defineProperty(t,"stringQuadToQuad",{enumerable:!0,get:function(){return n.stringQuadToQuad}}),Object.defineProperty(t,"stringToTerm",{enumerable:!0,get:function(){return n.stringToTerm}}),Object.defineProperty(t,"termToString",{enumerable:!0,get:function(){return n.termToString}})},68577:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringQuadToQuad=t.quadToStringQuad=t.stringToTerm=t.getLiteralLanguage=t.getLiteralType=t.getLiteralValue=t.termToString=void 0;const n=new(r(91194).DataFactory);function i(e){var t,r;if(e)switch(e.termType){case"NamedNode":return`<${t=e.value,t.replace(u,d)}>`;case"BlankNode":return`_:${e.value}`;case"Literal":{const t=e;return`"${r=t.value,u.test(r)&&(r=r.replace(u,d)),r}"${t.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==t.datatype.value&&"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"!==t.datatype.value?`^^<${t.datatype.value}>`:""}${t.language?`@${t.language}`:""}`}case"Quad":return`<<${i(e.subject)} ${i(e.predicate)} ${i(e.object)}${"DefaultGraph"===e.graph.termType?"":` ${i(e.graph)}`}>>`;case"Variable":return`?${e.value}`;case"DefaultGraph":return e.value}}function a(e){const t=/^"([^]*)"((\^\^.*)|(@.*))?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1].replace(/\\"/gu,'"')}function o(e){const t=/^"[^]*"(?:\^\^<([^"]+)>|(@)[^@"]+)?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1]||(t[2]?"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString":"http://www.w3.org/2001/XMLSchema#string")}function s(e){const t=/^"[^]*"(?:@([^@"]+)|\^\^[^"]+)?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1]?t[1].toLowerCase():""}function c(e,t){if(t=t||n,!e||0===e.length)return t.defaultGraph();switch(e[0]){case"_":return t.blankNode(e.slice(2));case"?":if(!t.variable)throw new Error("Missing 'variable()' method on the given DataFactory");return t.variable(e.slice(1));case'"':{const r=s(e),n=t.namedNode(o(e));return t.literal(a(e),r||n)}default:if(e.startsWith("<<")&&e.endsWith(">>")){const r=e.slice(2,-2),n=[];let i=0,a=0;for(let t=0;t"===o){if(0===i)throw new Error(`Found closing tag without opening tag in ${e}`);i--}" "===o&&0===i&&(n.push(r.slice(a,t)),a=t+1)}if(0!==i)throw new Error(`Found opening tag without closing tag in ${e}`);if(n.push(r.slice(a,r.length)),3!==n.length&&4!==n.length)throw new Error(`Nested quad syntax error ${e}`);return t.quad(c(n[0]),c(n[1]),c(n[2]),n[3]?c(n[3]):void 0)}if(!e.startsWith("<")||!e.endsWith(">"))throw new Error(`Detected invalid iri for named node (must be wrapped in <>): ${e}`);return t.namedNode(e.slice(1,-1))}}t.termToString=i,t.getLiteralValue=a,t.getLiteralType=o,t.getLiteralLanguage=s,t.stringToTerm=c,t.quadToStringQuad=function(e){return{subject:i(e.subject),predicate:i(e.predicate),object:i(e.object),graph:i(e.graph)}},t.stringQuadToQuad=function(e,t){return(t=t||n).quad(c(e.subject,t),c(e.predicate,t),c(e.object,t),c(e.graph,t))};const u=/["\\\t\n\r\b\f\u0000-\u0019]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,l=new Map([["\\","\\\\"],['"','\\"'],["\t","\\t"],["\n","\\n"],["\r","\\r"],["\b","\\b"],["\f","\\f"]]);function d(e){const t=l.get(e);if(!t){if(1===e.length){const t=e.charCodeAt(0).toString(16);return`${"\\u0000".slice(0,-t.length)}${t}`}const t=(1024*(e.charCodeAt(0)-55296)+e.charCodeAt(1)+9216).toString(16);return`${"\\U00000000".slice(0,-t.length)}${t}`}return t}},6053:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.termToString=t.stringToTerm=t.stringQuadToQuad=t.quadToStringQuad=t.getLiteralValue=t.getLiteralType=t.getLiteralLanguage=void 0;const n=r(65195);Object.defineProperty(t,"getLiteralLanguage",{enumerable:!0,get:function(){return n.getLiteralLanguage}}),Object.defineProperty(t,"getLiteralType",{enumerable:!0,get:function(){return n.getLiteralType}}),Object.defineProperty(t,"getLiteralValue",{enumerable:!0,get:function(){return n.getLiteralValue}}),Object.defineProperty(t,"quadToStringQuad",{enumerable:!0,get:function(){return n.quadToStringQuad}}),Object.defineProperty(t,"stringQuadToQuad",{enumerable:!0,get:function(){return n.stringQuadToQuad}}),Object.defineProperty(t,"stringToTerm",{enumerable:!0,get:function(){return n.stringToTerm}}),Object.defineProperty(t,"termToString",{enumerable:!0,get:function(){return n.termToString}})},65195:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringQuadToQuad=t.quadToStringQuad=t.stringToTerm=t.getLiteralLanguage=t.getLiteralType=t.getLiteralValue=t.termToString=void 0;const n=new(r(91194).DataFactory);function i(e){if(e)switch(e.termType){case"NamedNode":case"DefaultGraph":return e.value;case"BlankNode":return"_:"+e.value;case"Literal":const t=e;return'"'+t.value+'"'+(t.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==t.datatype.value&&"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"!==t.datatype.value?"^^"+t.datatype.value:"")+(t.language?"@"+t.language:"");case"Quad":return`<<${i(e.subject)} ${i(e.predicate)} ${i(e.object)}${"DefaultGraph"===e.graph.termType?"":" "+i(e.graph)}>>`;case"Variable":return"?"+e.value}}function a(e){const t=/^"([^]*)"/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]}function o(e){const t=/^"[^]*"(?:\^\^([^"]+)|(@)[^@"]+)?$/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]||(t[2]?"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString":"http://www.w3.org/2001/XMLSchema#string")}function s(e){const t=/^"[^]*"(?:@([^@"]+)|\^\^[^"]+)?$/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]?t[1].toLowerCase():""}function c(e,t){if(t=t||n,!e||!e.length)return t.defaultGraph();switch(e[0]){case"_":return t.blankNode(e.substr(2));case"?":if(!t.variable)throw new Error("Missing 'variable()' method on the given DataFactory");return t.variable(e.substr(1));case'"':const r=s(e),n=t.namedNode(o(e));return t.literal(a(e),r||n);default:if("<"===e[0]&&e.length>4&&"<"===e[1]&&">"===e[e.length-1]&&">"===e[e.length-2]){const r=e.slice(2,-2).trim();let n=[],i=0,a=0,o=!1;for(let t=0;t"===s){if(0===i)throw new Error("Found closing tag without opening tag in "+e);i--}if('"'===s){let e=!1,n=t;for(;n-- >0&&"\\"===r[n];)e=!e;e||(o=!o)}if(" "===s&&!o&&0===i){for(n.push(r.slice(a,t));" "===r[t+1];)t+=1;a=t+1}}if(0!==i)throw new Error("Found opening tag without closing tag in "+e);if(n.push(r.slice(a,r.length)),3!==n.length&&4!==n.length)throw new Error("Nested quad syntax error "+e);return n=n.map((e=>e.startsWith("<")&&!e.includes(" ")?e.slice(1,-1):e)),t.quad(c(n[0]),c(n[1]),c(n[2]),n[3]?c(n[3]):void 0)}return t.namedNode(e)}}t.termToString=i,t.getLiteralValue=a,t.getLiteralType=o,t.getLiteralLanguage=s,t.stringToTerm=c,t.quadToStringQuad=function(e){return{subject:i(e.subject),predicate:i(e.predicate),object:i(e.object),graph:i(e.graph)}},t.stringQuadToQuad=function(e,t){return(t=t||n).quad(c(e.subject,t),c(e.predicate,t),c(e.object,t),c(e.graph,t))}},98086:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76509),t),i(r(99552),t)},76509:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.matchPatternMappings=t.matchPatternComplete=t.matchPattern=t.matchTerm=t.getValueNestedPath=t.someTermsNested=t.someTerms=t.everyTermsNested=t.everyTerms=t.reduceTermsNested=t.reduceTerms=t.mapTermsNested=t.mapTerms=t.filterQuadTermNamesNested=t.filterQuadTermNames=t.filterTermsNested=t.filterTerms=t.forEachTermsNested=t.forEachTerms=t.collectNamedTerms=t.getNamedTerms=t.getTermsNested=t.getTerms=t.TRIPLE_TERM_NAMES=t.QUAD_TERM_NAMES=void 0;const n=new(r(91194).DataFactory);function i(e,t){return t&&"DefaultGraph"===e.graph.termType?[e.subject,e.predicate,e.object]:[e.subject,e.predicate,e.object,e.graph]}function a(e,t){return t(e.subject,"subject")&&t(e.predicate,"predicate")&&t(e.object,"object")&&t(e.graph,"graph")}function o(e,t){return!t||"Variable"===t.termType||"Quad"===t.termType&&"Quad"===e.termType&&c(e,t)||t.equals(e)}function s(e,t,r,n,i){return o(e.subject,t)&&o(e.predicate,r)&&o(e.object,n)&&o(e.graph,i)}function c(e,t){return s(e,t.subject,t.predicate,t.object,t.graph)}t.QUAD_TERM_NAMES=["subject","predicate","object","graph"],t.TRIPLE_TERM_NAMES=["subject","predicate","object"],t.getTerms=i,t.getTermsNested=function e(t,r){const n=[];for(const a of i(t,r))"Quad"===a.termType?e(a,r).forEach((e=>n.push(e))):n.push(a);return n},t.getNamedTerms=function(e){return[{key:"subject",value:e.subject},{key:"predicate",value:e.predicate},{key:"object",value:e.object},{key:"graph",value:e.graph}]},t.collectNamedTerms=function(e,t,r){const i={};return e.forEach((e=>i[e.key]=e.value)),t&&(i.subject=i.subject||t("subject"),i.predicate=i.predicate||t("predicate"),i.object=i.object||t("object"),i.graph=i.graph||t("graph")),(r||n).quad(i.subject,i.predicate,i.object,i.graph)},t.forEachTerms=function(e,t){t(e.subject,"subject"),t(e.predicate,"predicate"),t(e.object,"object"),t(e.graph,"graph")},t.forEachTermsNested=function e(t,r,n=[]){"Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]),"Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]),"Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]),"Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"])},t.filterTerms=function(e,t){const r=[];return t(e.subject,"subject")&&r.push(e.subject),t(e.predicate,"predicate")&&r.push(e.predicate),t(e.object,"object")&&r.push(e.object),t(e.graph,"graph")&&r.push(e.graph),r},t.filterTermsNested=function e(t,r,n=[]){let i=[];return"Quad"===t.subject.termType?i=[...i,...e(t.subject,r,[...n,"subject"])]:r(t.subject,[...n,"subject"])&&i.push(t.subject),"Quad"===t.predicate.termType?i=[...i,...e(t.predicate,r,[...n,"predicate"])]:r(t.predicate,[...n,"predicate"])&&i.push(t.predicate),"Quad"===t.object.termType?i=[...i,...e(t.object,r,[...n,"object"])]:r(t.object,[...n,"object"])&&i.push(t.object),"Quad"===t.graph.termType?i=[...i,...e(t.graph,r,[...n,"graph"])]:r(t.graph,[...n,"graph"])&&i.push(t.graph),i},t.filterQuadTermNames=function(e,t){const r=[];return t(e.subject,"subject")&&r.push("subject"),t(e.predicate,"predicate")&&r.push("predicate"),t(e.object,"object")&&r.push("object"),t(e.graph,"graph")&&r.push("graph"),r},t.filterQuadTermNamesNested=function e(t,r,n=[]){let i=[];const a=[...n,"subject"];"Quad"===t.subject.termType?i=[...i,...e(t.subject,r,a)]:r(t.subject,a)&&i.push(a);const o=[...n,"predicate"];"Quad"===t.predicate.termType?i=[...i,...e(t.predicate,r,o)]:r(t.predicate,o)&&i.push(o);const s=[...n,"object"];"Quad"===t.object.termType?i=[...i,...e(t.object,r,s)]:r(t.object,s)&&i.push(s);const c=[...n,"graph"];return"Quad"===t.graph.termType?i=[...i,...e(t.graph,r,c)]:r(t.graph,c)&&i.push(c),i},t.mapTerms=function(e,t,r){return(r||n).quad(t(e.subject,"subject"),t(e.predicate,"predicate"),t(e.object,"object"),t(e.graph,"graph"))},t.mapTermsNested=function e(t,r,i,a=[]){return(i||n).quad("Quad"===t.subject.termType?e(t.subject,r,i,[...a,"subject"]):r(t.subject,[...a,"subject"]),"Quad"===t.predicate.termType?e(t.predicate,r,i,[...a,"predicate"]):r(t.predicate,[...a,"predicate"]),"Quad"===t.object.termType?e(t.object,r,i,[...a,"object"]):r(t.object,[...a,"object"]),"Quad"===t.graph.termType?e(t.graph,r,i,[...a,"graph"]):r(t.graph,[...a,"graph"]))},t.reduceTerms=function(e,t,r){let n=r;return n=t(n,e.subject,"subject"),n=t(n,e.predicate,"predicate"),n=t(n,e.object,"object"),t(n,e.graph,"graph")},t.reduceTermsNested=function e(t,r,n,i=[]){let a=n;return a="Quad"===t.subject.termType?e(t.subject,r,a,[...i,"subject"]):r(a,t.subject,[...i,"subject"]),a="Quad"===t.predicate.termType?e(t.predicate,r,a,[...i,"predicate"]):r(a,t.predicate,[...i,"predicate"]),a="Quad"===t.object.termType?e(t.object,r,a,[...i,"object"]):r(a,t.object,[...i,"object"]),a="Quad"===t.graph.termType?e(t.graph,r,a,[...i,"graph"]):r(a,t.graph,[...i,"graph"]),a},t.everyTerms=a,t.everyTermsNested=function e(t,r,n=[]){return("Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]))&&("Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]))&&("Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]))&&("Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"]))},t.someTerms=function(e,t){return t(e.subject,"subject")||t(e.predicate,"predicate")||t(e.object,"object")||t(e.graph,"graph")},t.someTermsNested=function e(t,r,n=[]){return("Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]))||("Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]))||("Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]))||("Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"]))},t.getValueNestedPath=function e(t,r){if(0===r.length)return t;if("Quad"===t.termType)return e(t[r[0]],r.slice(1));throw new Error(`Tried to get ${r[0]} from term of type ${t.termType}`)},t.matchTerm=o,t.matchPattern=s,t.matchPatternComplete=c,t.matchPatternMappings=function(e,t,r={}){const n={};return function e(t,i){return a(t,((t,a)=>{var o,s;const c=i[a];switch(t.termType){case"Variable":return r.skipVarMapping&&"Variable"===c.termType||(null!==(s=null===(o=n[t.value])||void 0===o?void 0:o.equals(c))&&void 0!==s?s:(n[t.value]=c,!0));case"Quad":return"Quad"===c.termType&&e(t,c);default:return t.equals(c)}}))}(t,e)&&(!r.returnMappings||n)}},99552:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getQuads=t.getDefaultGraphs=t.getVariables=t.getLiterals=t.getBlankNodes=t.getNamedNodes=t.getTermsOfType=t.uniqTerms=t.TERM_TYPES=void 0;const n=r(6053);function i(e,t){return e.filter((e=>e.termType===t))}t.TERM_TYPES=["NamedNode","BlankNode","Literal","Variable","DefaultGraph","Quad"],t.uniqTerms=function(e){const t={};return e.filter((e=>{const r=(0,n.termToString)(e);return!(r in t)&&(t[r]=!0)}))},t.getTermsOfType=i,t.getNamedNodes=function(e){return i(e,"NamedNode")},t.getBlankNodes=function(e){return i(e,"BlankNode")},t.getLiterals=function(e){return i(e,"Literal")},t.getVariables=function(e){return i(e,"Variable")},t.getDefaultGraphs=function(e){return i(e,"DefaultGraph")},t.getQuads=function(e){return i(e,"Quad")}},1481:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(59740),t),i(r(19807),t),i(r(81675),t),i(r(6706),t),i(r(40043),t),i(r(78577),t)},59740:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},19807:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},81675:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},6706:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfaParser=void 0;const n=r(60883),i=r(51887),a=r(44299),o=r(59261),s=r(40043),c=r(78577);class u extends i.Transform{constructor(e){super({readableObjectMode:!0}),this.activeTagStack=[],e=e||{},this.options=e,this.util=new c.Util(e.dataFactory,e.baseIRI),this.defaultGraph=e.defaultGraph||this.util.dataFactory.defaultGraph();const t=e.contentType?c.Util.contentTypeToProfile(e.contentType):e.profile||"";this.features=e.features||s.RDFA_FEATURES[t],this.htmlParseListener=e.htmlParseListener,this.rdfaPatterns=this.features.copyRdfaPatterns?{}:null,this.pendingRdfaPatternCopies=this.features.copyRdfaPatterns?{}:null,this.parser=this.initializeParser("xml"===t),this.activeTagStack.push({incompleteTriples:[],inlist:!1,language:e.language,listMapping:{},listMappingLocal:{},name:"",prefixesAll:Object.assign(Object.assign({},o["@context"]),this.features.xhtmlInitialContext?a["@context"]:{}),prefixesCustom:{},skipElement:!1,vocab:e.vocab})}import(e){const t=new i.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new u(this.options));return r}_transform(e,t,r){this.parser.write(e.toString()),r()}_flush(e){this.parser.end(),e()}onTagOpen(e,t){let r=this.activeTagStack.length-1;for(;r>0&&this.activeTagStack[r].skipElement;)r--;let n=this.activeTagStack[r];r!==this.activeTagStack.length-1&&(n=Object.assign(Object.assign({},n),{language:this.activeTagStack[this.activeTagStack.length-1].language,prefixesAll:this.activeTagStack[this.activeTagStack.length-1].prefixesAll,prefixesCustom:this.activeTagStack[this.activeTagStack.length-1].prefixesCustom,vocab:this.activeTagStack[this.activeTagStack.length-1].vocab}));const i={collectChildTags:n.collectChildTags,incompleteTriples:[],inlist:"inlist"in t,listMapping:[],listMappingLocal:n.listMapping,localBaseIRI:n.localBaseIRI,name:e,prefixesAll:null,prefixesCustom:null,skipElement:!1};if(this.activeTagStack.push(i),i.collectChildTags){for(const e of Object.keys(n.prefixesCustom).sort()){const r=n.prefixesCustom[e],i=""===e?"xmlns":"xmlns:"+e;i in t||(t[i]=r)}const r=Object.keys(t).map((e=>`${e}="${t[e]}"`)).join(" ");if(i.text=[`<${e}${r?" "+r:""}>`],this.features.skipHandlingXmlLiteralChildren)return}let a,o,s,u=!0,l=!0;if(this.features.onlyAllowUriRelRevIfProperty&&("property"in t&&"rel"in t&&(u=!1,t.rel.indexOf(":")<0&&delete t.rel),"property"in t&&"rev"in t&&(l=!1,t.rev.indexOf(":")<0&&delete t.rev)),this.features.copyRdfaPatterns){if(n.collectedPatternTag){const r={attributes:t,children:[],name:e,referenced:!1,rootPattern:!1,text:[]};return n.collectedPatternTag.children.push(r),void(i.collectedPatternTag=r)}if("rdfa:Pattern"===t.typeof)return void(i.collectedPatternTag={attributes:t,children:[],name:e,parentTag:n,referenced:!1,rootPattern:!0,text:[]});if("rdfa:copy"===t.property){const e=t.resource||t.href||t.src;return void(this.rdfaPatterns[e]?this.emitPatternCopy(n,this.rdfaPatterns[e],e):(this.pendingRdfaPatternCopies[e]||(this.pendingRdfaPatternCopies[e]=[]),this.pendingRdfaPatternCopies[e].push(n)))}}if(this.features.baseTag&&"base"===e&&t.href&&(this.util.baseIRI=this.util.getBaseIRI(t.href)),this.features.xmlBase&&t["xml:base"]&&(i.localBaseIRI=this.util.getBaseIRI(t["xml:base"])),this.features.timeTag&&"time"===e&&!t.datatype&&(i.interpretObjectAsTime=!0),"vocab"in t?t.vocab?(i.vocab=t.vocab,this.emitTriple(this.util.getBaseIriTerm(i),this.util.dataFactory.namedNode(c.Util.RDFA+"usesVocabulary"),this.util.dataFactory.namedNode(i.vocab))):i.vocab=this.activeTagStack[0].vocab:i.vocab=n.vocab,i.prefixesCustom=c.Util.parsePrefixes(t,n.prefixesCustom,this.features.xmlnsPrefixMappings),i.prefixesAll=Object.keys(i.prefixesCustom).length>0?Object.assign(Object.assign({},n.prefixesAll),i.prefixesCustom):n.prefixesAll,this.features.roleAttribute&&t.role){const e=t.id?this.util.createIri("#"+t.id,i,!1,!1,!1):this.util.createBlankNode(),r=i.vocab;i.vocab="http://www.w3.org/1999/xhtml/vocab#";for(const r of this.util.createVocabIris(t.role,i,!0,!1))this.emitTriple(e,this.util.dataFactory.namedNode("http://www.w3.org/1999/xhtml/vocab#role"),r);i.vocab=r}"xml:lang"in t||this.features.langAttribute&&"lang"in t?i.language=t["xml:lang"]||t.lang:i.language=n.language;const d=2===this.activeTagStack.length;if("rel"in t||"rev"in t?("about"in t?(a=this.util.createIri(t.about,i,!1,!0,!0),i.explicitNewSubject=!!a,"typeof"in t&&(s=a)):d?a=!0:n.object&&(a=n.object),"resource"in t&&(o=this.util.createIri(t.resource,i,!1,!0,!0)),o||("href"in t||"src"in t?o=this.util.createIri(t.href||t.src,i,!1,!1,!0):!("typeof"in t)||"about"in t||this.isInheritSubjectInHeadBody(e)||(o=this.util.createBlankNode())),"typeof"in t&&!("about"in t)&&(s=this.isInheritSubjectInHeadBody(e)?a:o)):!("property"in t)||"content"in t||"datatype"in t?(("about"in t||"resource"in t)&&(a=this.util.createIri(t.about||t.resource,i,!1,!0,!0),i.explicitNewSubject=!!a),a||!("href"in t)&&!("src"in t)||(a=this.util.createIri(t.href||t.src,i,!1,!1,!0),i.explicitNewSubject=!!a),a||(d?a=!0:this.isInheritSubjectInHeadBody(e)?a=n.object:"typeof"in t?(a=this.util.createBlankNode(),i.explicitNewSubject=!0):n.object&&(a=n.object,"property"in t||(i.skipElement=!0))),"typeof"in t&&(s=a)):("about"in t?(a=this.util.createIri(t.about,i,!1,!0,!0),i.explicitNewSubject=!!a):d?a=!0:n.object&&(a=n.object),"typeof"in t&&("about"in t&&(s=this.util.createIri(t.about,i,!1,!0,!0)),!s&&d&&(s=!0),!s&&"resource"in t&&(s=this.util.createIri(t.resource,i,!1,!0,!0)),s||!("href"in t)&&!("src"in t)||(s=this.util.createIri(t.href||t.src,i,!1,!1,!0)),!s&&this.isInheritSubjectInHeadBody(e)&&(s=a),s||(s=this.util.createBlankNode()),o=s)),s)for(const e of this.util.createVocabIris(t.typeof,i,!0,!0))this.emitTriple(this.util.getResourceOrBaseIri(s,i),this.util.dataFactory.namedNode(c.Util.RDF+"type"),e);if(a&&(i.listMapping={}),o){if("rel"in t&&"inlist"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.addListMapping(i,a,e,o);if(!("rel"in t)||!("inlist"in t)){if("rel"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.emitTriple(this.util.getResourceOrBaseIri(a,i),e,this.util.getResourceOrBaseIri(o,i));if("rev"in t)for(const e of this.util.createVocabIris(t.rev,i,l,!1))this.emitTriple(this.util.getResourceOrBaseIri(o,i),e,this.util.getResourceOrBaseIri(a,i))}}if(!o){if("rel"in t)if("inlist"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.addListMapping(i,a,e,null),i.incompleteTriples.push({predicate:e,reverse:!1,list:!0});else for(const e of this.util.createVocabIris(t.rel,i,u,!1))i.incompleteTriples.push({predicate:e,reverse:!1});if("rev"in t)for(const e of this.util.createVocabIris(t.rev,i,l,!1))i.incompleteTriples.push({predicate:e,reverse:!0});i.incompleteTriples.length>0&&(o=this.util.createBlankNode())}if("property"in t){let e;if(i.predicates=this.util.createVocabIris(t.property,i,!0,!1),"datatype"in t?(i.datatype=this.util.createIri(t.datatype,i,!0,!0,!1),i.datatype&&(i.datatype.value===c.Util.RDF+"XMLLiteral"||this.features.htmlDatatype&&i.datatype.value===c.Util.RDF+"HTML")&&(i.collectChildTags=!0)):("rev"in t||"rel"in t||"content"in t||("resource"in t&&(e=this.util.createIri(t.resource,i,!1,!0,!0)),!e&&"href"in t&&(e=this.util.createIri(t.href,i,!1,!1,!0)),!e&&"src"in t&&(e=this.util.createIri(t.src,i,!1,!1,!0))),"typeof"in t&&!("about"in t)&&(e=s)),"content"in t){const e=this.util.createLiteral(t.content,i);if("inlist"in t)for(const t of i.predicates)this.addListMapping(i,a,t,e);else{const t=this.util.getResourceOrBaseIri(a,i);for(const r of i.predicates)this.emitTriple(t,r,e)}i.predicates=null}else if(this.features.datetimeAttribute&&"datetime"in t){i.interpretObjectAsTime=!0;const e=this.util.createLiteral(t.datetime,i);if("inlist"in t)for(const t of i.predicates)this.addListMapping(i,a,t,e);else{const t=this.util.getResourceOrBaseIri(a,i);for(const r of i.predicates)this.emitTriple(t,r,e)}i.predicates=null}else if(e){const r=this.util.getResourceOrBaseIri(e,i);if("inlist"in t)for(const e of i.predicates)this.addListMapping(i,a,e,r);else{const e=this.util.getResourceOrBaseIri(a,i);for(const t of i.predicates)this.emitTriple(e,t,r)}i.predicates=null}}let h=!1;if(!i.skipElement&&a&&n.incompleteTriples.length>0){h=!0;const e=this.util.getResourceOrBaseIri(n.subject,i),t=this.util.getResourceOrBaseIri(a,i);for(const r of n.incompleteTriples)if(r.reverse)this.emitTriple(t,r.predicate,e);else if(r.list){let e=null;for(let t=this.activeTagStack.length-1;t>=0;t--)if(this.activeTagStack[t].inlist){e=this.activeTagStack[t];break}this.addListMapping(e,a,r.predicate,t)}else this.emitTriple(e,r.predicate,t)}!h&&n.incompleteTriples.length>0&&(i.incompleteTriples=i.incompleteTriples.concat(n.incompleteTriples)),i.subject=a||n.subject,i.object=o||a}onText(e){const t=this.activeTagStack[this.activeTagStack.length-1];this.features.copyRdfaPatterns&&t.collectedPatternTag?t.collectedPatternTag.text.push(e):(t.text||(t.text=[]),t.text.push(e))}onTagClose(){const e=this.activeTagStack[this.activeTagStack.length-1],t=this.activeTagStack[this.activeTagStack.length-2];if(!(e.collectChildTags&&t.collectChildTags&&this.features.skipHandlingXmlLiteralChildren)){if(this.features.copyRdfaPatterns&&e.collectedPatternTag&&e.collectedPatternTag.rootPattern){const t=e.collectedPatternTag.attributes.resource;if(delete e.collectedPatternTag.attributes.resource,delete e.collectedPatternTag.attributes.typeof,this.rdfaPatterns[t]=e.collectedPatternTag,this.pendingRdfaPatternCopies[t]){for(const r of this.pendingRdfaPatternCopies[t])this.emitPatternCopy(r,e.collectedPatternTag,t);delete this.pendingRdfaPatternCopies[t]}return void this.activeTagStack.pop()}if(e.predicates){const r=this.util.getResourceOrBaseIri(e.subject,e);let n=e.text||[];e.collectChildTags&&t.collectChildTags&&(n=n.slice(1));const i=this.util.createLiteral(n.join(""),e);if(e.inlist)for(const t of e.predicates)this.addListMapping(e,r,t,i);else for(const t of e.predicates)this.emitTriple(r,t,i);t.predicates||(e.text=null)}if(e.object&&Object.keys(e.listMapping).length>0){const t=this.util.getResourceOrBaseIri(e.object,e);for(const r in e.listMapping){const n=this.util.dataFactory.namedNode(r),i=e.listMapping[r];if(i.length>0){const r=i.map((()=>this.util.createBlankNode()));for(let t=0;t`),e.text&&t&&(t.text?t.text=t.text.concat(e.text):t.text=e.text)}onEnd(){if(this.features.copyRdfaPatterns){this.features.copyRdfaPatterns=!1;for(const e in this.rdfaPatterns){const t=this.rdfaPatterns[e];t.referenced||(t.attributes.typeof="rdfa:Pattern",t.attributes.resource=e,this.emitPatternCopy(t.parentTag,t,e),t.referenced=!1,delete t.attributes.typeof,delete t.attributes.resource)}for(const e in this.pendingRdfaPatternCopies)for(const t of this.pendingRdfaPatternCopies[e])this.activeTagStack.push(t),this.onTagOpen("link",{property:"rdfa:copy",href:e}),this.onTagClose(),this.activeTagStack.pop();this.features.copyRdfaPatterns=!0}}isInheritSubjectInHeadBody(e){return this.features.inheritSubjectInHeadBody&&("head"===e||"body"===e)}addListMapping(e,t,r,n){if(e.explicitNewSubject){const i=this.util.createBlankNode();this.emitTriple(this.util.getResourceOrBaseIri(t,e),r,i),this.emitTriple(i,this.util.dataFactory.namedNode(c.Util.RDF+"first"),this.util.getResourceOrBaseIri(n,e)),this.emitTriple(i,this.util.dataFactory.namedNode(c.Util.RDF+"rest"),this.util.dataFactory.namedNode(c.Util.RDF+"nil"))}else{let t=e.listMappingLocal[r.value];t||(e.listMappingLocal[r.value]=t=[]),n&&t.push(n)}}emitTriple(e,t,r){"NamedNode"===e.termType&&e.value.indexOf(":")<0||"NamedNode"===t.termType&&t.value.indexOf(":")<0||"NamedNode"===r.termType&&r.value.indexOf(":")<0||this.push(this.util.dataFactory.quad(e,t,r,this.defaultGraph))}emitPatternCopy(e,t,r){if(this.activeTagStack.push(e),t.referenced=!0,t.constructedBlankNodes){let e=0;this.util.blankNodeFactory=()=>t.constructedBlankNodes[e++]}else t.constructedBlankNodes=[],this.util.blankNodeFactory=()=>{const e=this.util.dataFactory.blankNode();return t.constructedBlankNodes.push(e),e};this.emitPatternCopyAbsolute(t,!0,r),this.util.blankNodeFactory=null,this.activeTagStack.pop()}emitPatternCopyAbsolute(e,t,r){if(t||"rdfa:copy"!==e.attributes.property||e.attributes.href!==r){this.onTagOpen(e.name,e.attributes);for(const t of e.text)this.onText(t);for(const t of e.children)this.emitPatternCopyAbsolute(t,!1,r);this.onTagClose()}}initializeParser(e){return new n.Parser({onclosetag:()=>{try{this.onTagClose(),this.htmlParseListener&&this.htmlParseListener.onTagClose()}catch(e){this.emit("error",e)}},onend:()=>{try{this.onEnd(),this.htmlParseListener&&this.htmlParseListener.onEnd()}catch(e){this.emit("error",e)}},onopentag:(e,t)=>{try{this.onTagOpen(e,t),this.htmlParseListener&&this.htmlParseListener.onTagOpen(e,t)}catch(e){this.emit("error",e)}},ontext:e=>{try{this.onText(e),this.htmlParseListener&&this.htmlParseListener.onText(e)}catch(e){this.emit("error",e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:e})}}t.RdfaParser=u},40043:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RDFA_CONTENTTYPES=t.RDFA_FEATURES=void 0,t.RDFA_FEATURES={"":{baseTag:!0,xmlBase:!0,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!0,roleAttribute:!0},core:{baseTag:!1,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!1,datetimeAttribute:!1,timeTag:!1,htmlDatatype:!1,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!1},html:{baseTag:!0,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!0},xhtml:{baseTag:!0,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!0,roleAttribute:!0},xml:{baseTag:!1,xmlBase:!0,langAttribute:!0,onlyAllowUriRelRevIfProperty:!1,inheritSubjectInHeadBody:!1,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!1,copyRdfaPatterns:!1,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!0}},t.RDFA_CONTENTTYPES={"text/html":"html","application/xhtml+xml":"xhtml","application/xml":"xml","text/xml":"xml","image/svg+xml":"xml"}},78577:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(84690),i=r(40043),a=r(91194);class o{constructor(e,t){this.dataFactory=e||new a.DataFactory,this.baseIRI=this.dataFactory.namedNode(t||""),this.baseIRIDocument=this.baseIRI}static parsePrefixes(e,t,r){const n={};if(r)for(const t in e)t.startsWith("xmlns")&&(n[t.substr(6)]=e[t]);if(e.prefix||Object.keys(n).length>0){const r=Object.assign(Object.assign({},t),n);if(e.prefix){let t;for(;t=o.PREFIX_REGEX.exec(e.prefix);)r[t[1]]=t[2]}return r}return t}static expandPrefixedTerm(e,t){const r=e.indexOf(":");let n,i;if(r>=0&&(n=e.substr(0,r),i=e.substr(r+1)),""===n)return"http://www.w3.org/1999/xhtml/vocab#"+i;if(n){const e=t.prefixesAll[n];if(e)return e+i}if(e){const r=t.prefixesAll[e.toLocaleLowerCase()];if(r)return r}return e}static isValidIri(e){return o.IRI_REGEX.test(e)}static contentTypeToProfile(e){return i.RDFA_CONTENTTYPES[e]||""}getBaseIRI(e){let t=e;const r=t.indexOf("#");return r>=0&&(t=t.substr(0,r)),this.dataFactory.namedNode((0,n.resolve)(t,this.baseIRI.value))}getResourceOrBaseIri(e,t){return!0===e?this.getBaseIriTerm(t):e}getBaseIriTerm(e){return e.localBaseIRI||this.baseIRI}createVocabIris(e,t,r,n){return e.split(/\s+/).filter((e=>e&&(r||e.indexOf(":")>=0))).map((e=>this.createIri(e,t,!0,!0,n))).filter((e=>null!=e))}createLiteral(e,t){if(t.interpretObjectAsTime&&!t.datatype)for(const r of o.TIME_REGEXES)if(e.match(r.regex)){t.datatype=this.dataFactory.namedNode(o.XSD+r.type);break}return this.dataFactory.literal(e,t.datatype||t.language)}createBlankNode(){return this.blankNodeFactory?this.blankNodeFactory():this.dataFactory.blankNode()}createIri(e,t,r,i,a){if(e=e||"",!i)return r||(e=(0,n.resolve)(e,this.getBaseIriTerm(t).value)),o.isValidIri(e)?this.dataFactory.namedNode(e):null;if(e.length>0&&"["===e[0]&&"]"===e[e.length-1]&&(e=e.substr(1,e.length-2)).indexOf(":")<0)return null;if(e.startsWith("_:"))return a?this.dataFactory.blankNode(e.substr(2)||"b_identity"):null;if(r&&t.vocab&&e.indexOf(":")<0)return this.dataFactory.namedNode(t.vocab+e);let s=o.expandPrefixedTerm(e,t);return r?e!==s&&(s=(0,n.resolve)(s,this.baseIRIDocument.value)):s=(0,n.resolve)(s,this.getBaseIriTerm(t).value),o.isValidIri(s)?this.dataFactory.namedNode(s):null}}t.Util=o,o.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",o.XSD="http://www.w3.org/2001/XMLSchema#",o.RDFA="http://www.w3.org/ns/rdfa#",o.PREFIX_REGEX=/\s*([^:\s]*)*:\s*([^\s]*)*\s*/g,o.TIME_REGEXES=[{regex:/^-?P([0-9]+Y)?([0-9]+M)?([0-9]+D)?(T([0-9]+H)?([0-9]+M)?([0-9]+(\.[0-9])?S)?)?$/,type:"duration"},{regex:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9]((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,type:"dateTime"},{regex:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,type:"date"},{regex:/^[0-9][0-9]:[0-9][0-9]:[0-9][0-9]((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,type:"time"},{regex:/^[0-9]+-[0-9][0-9]$/,type:"gYearMonth"},{regex:/^[0-9]+$/,type:"gYear"}],o.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^ "<>{}|\\\[\]`]*$/},94607:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53033),t)},85430:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseError=void 0;class r extends Error{constructor(e,t){const r=e.saxParser;super(e.trackPosition?`Line ${r.line} column ${r.column+1}: ${t}`:t)}}t.ParseError=r},53033:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseType=t.RdfXmlParser=void 0;const n=r(84690),i=r(6928),a=r(51887),o=r(85430),s=r(91194),c=r(99650);class u extends a.Transform{constructor(e){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},e&&(Object.assign(this,e),this.options=e),this.dataFactory||(this.dataFactory=new s.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),!1!==this.validateUri&&(this.validateUri=!0),this.iriValidationStrategy||(this.iriValidationStrategy=this.validateUri?c.IriValidationStrategy.Pragmatic:c.IriValidationStrategy.None),this.saxParser=new i.SaxesParser({xmlns:!0,position:this.trackPosition}),this.attachSaxListeners()}import(e){const t=new a.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new u(this.options));return r}_transform(e,t,r){try{this.saxParser.write(e)}catch(e){return r(e)}r()}newParseError(e){return new o.ParseError(this,e)}valueToUri(e,t){return this.uriToNamedNode((0,n.resolve)(e,t.baseIRI))}uriToNamedNode(e){const t=(0,c.validateIri)(e,this.iriValidationStrategy);if(t instanceof Error)throw this.newParseError(t.message);return this.dataFactory.namedNode(e)}validateNcname(e){if(!u.NCNAME_MATCHER.test(e))throw this.newParseError(`Not a valid NCName: ${e}`)}attachSaxListeners(){this.saxParser.on("error",(e=>this.emit("error",e))),this.saxParser.on("opentag",this.onTag.bind(this)),this.saxParser.on("text",this.onText.bind(this)),this.saxParser.on("closetag",this.onCloseTag.bind(this)),this.saxParser.on("doctype",this.onDoctype.bind(this))}onTag(e){const t=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let r=l.RESOURCE;if(t&&(t.hadChildren=!0,r=t.childrenParseType),t&&t.childrenStringTags){const r=e.name;let n="";for(const t in e.attributes)n+=` ${t}="${e.attributes[t].value}"`;const i=`<${r}${n}>`;t.childrenStringTags.push(i);const a={childrenStringTags:t.childrenStringTags};return a.childrenStringEmitClosingTag=``,void this.activeTagStack.push(a)}const n={};t?(n.language=t.language,n.baseIRI=t.baseIRI):n.baseIRI=this.baseIRI,this.activeTagStack.push(n),r===l.RESOURCE?this.onTagResource(e,n,t,!t):this.onTagProperty(e,n,t)}onTagResource(e,t,r,i){t.childrenParseType=l.PROPERTY;let a=!0;if(e.uri===u.RDF){if(!i&&u.FORBIDDEN_NODE_ELEMENTS.indexOf(e.local)>=0)throw this.newParseError(`Illegal node element name: ${e.local}`);switch(e.local){case"RDF":t.childrenParseType=l.RESOURCE;case"Description":a=!1}}const o=[],s=[];let c=null,d=!1,h=!1,p=null;for(const i in e.attributes){const a=e.attributes[i];if(r&&a.uri===u.RDF)switch(a.local){case"about":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);c=a.value;continue;case"ID":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);this.validateNcname(a.value),c="#"+a.value,d=!0;continue;case"nodeID":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);this.validateNcname(a.value),c=a.value,h=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":p=a.value;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(a.uri===u.XML){if("lang"===a.local){t.language=""===a.value?null:a.value.toLowerCase();continue}if("base"===a.local){t.baseIRI=(0,n.resolve)(a.value,t.baseIRI);continue}}"xml"!==a.prefix&&a.uri&&(o.push(this.uriToNamedNode(a.uri+a.local)),s.push(a.value))}if(null!==c&&(t.subject=h?this.dataFactory.blankNode(c):this.valueToUri(c,t),d&&this.claimNodeId(t.subject)),t.subject||(t.subject=this.dataFactory.blankNode()),a){const n=this.uriToNamedNode(e.uri+e.local);this.emitTriple(t.subject,this.dataFactory.namedNode(u.RDF+"type"),n,r?r.reifiedStatementId:null)}if(r){if(r.predicate)if(r.childrenCollectionSubject){const e=this.dataFactory.blankNode();this.emitTriple(r.childrenCollectionSubject,r.childrenCollectionPredicate,e,r.reifiedStatementId),this.emitTriple(e,this.dataFactory.namedNode(u.RDF+"first"),t.subject,t.reifiedStatementId),r.childrenCollectionSubject=e,r.childrenCollectionPredicate=this.dataFactory.namedNode(u.RDF+"rest")}else{this.emitTriple(r.subject,r.predicate,t.subject,r.reifiedStatementId);for(let e=0;e=0)throw this.newParseError(`Illegal property element name: ${e.local}`);t.predicateSubPredicates=[],t.predicateSubObjects=[];let n=!1,i=!1,a=null,o=!0;const s=[],c=[];for(const r in e.attributes){const d=e.attributes[r];if(d.uri===u.RDF)switch(d.local){case"resource":if(a)throw this.newParseError(`Found both rdf:resource (${d.value}) and rdf:nodeID (${a}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${d.value})`);t.hadChildren=!0,a=d.value,o=!1;continue;case"datatype":if(i)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${d.value}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${d.value})`);t.datatype=this.valueToUri(d.value,t);continue;case"nodeID":if(i)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${d.value}).`);if(t.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${d.value}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${d.value})`);this.validateNcname(d.value),t.hadChildren=!0,a=d.value,o=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(i)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(t.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${t.datatype.value})`);if(a)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${a})`);if("Resource"===d.value){n=!0,t.childrenParseType=l.PROPERTY;const e=this.dataFactory.blankNode();this.emitTriple(t.subject,t.predicate,e,t.reifiedStatementId),t.subject=e,t.predicate=null}else"Collection"===d.value?(n=!0,t.hadChildren=!0,t.childrenCollectionSubject=t.subject,t.childrenCollectionPredicate=t.predicate,o=!1):"Literal"===d.value&&(n=!0,t.childrenTagsToString=!0,t.childrenStringTags=[]);continue;case"ID":this.validateNcname(d.value),t.reifiedStatementId=this.valueToUri("#"+d.value,t),this.claimNodeId(t.reifiedStatementId);continue}else if(d.uri===u.XML&&"lang"===d.local){t.language=""===d.value?null:d.value.toLowerCase();continue}if("xml"!==d.prefix&&"xmlns"!==d.prefix&&(""!==d.prefix||"xmlns"!==d.local)&&d.uri){if(n||t.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${d.value}`);t.hadChildren=!0,i=!0,s.push(this.uriToNamedNode(d.uri+d.local)),c.push(this.dataFactory.literal(d.value,t.datatype||t.language))}}if(null!==a){const e=t.subject;t.subject=o?this.dataFactory.blankNode(a):this.valueToUri(a,t),this.emitTriple(e,t.predicate,t.subject,t.reifiedStatementId);for(let e=0;e/g,((e,t,r)=>(this.saxParser.ENTITIES[t]=r,"")))}}var l;t.RdfXmlParser=u,u.MIME_TYPE="application/rdf+xml",u.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",u.XML="http://www.w3.org/XML/1998/namespace",u.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],u.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],u.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,function(e){e[e.RESOURCE=0]="RESOURCE",e[e.PROPERTY=1]="PROPERTY"}(l||(t.ParseType=l={}))},87809:e=>{e.exports=function(t){if(!e.exports.WEBSTREAM_SUPPORT)throw new Error("No web ReadableStream support");var r=!1,n={};return new ReadableStream({start:function(e){for(var i in n.data=a,n.end=a,n.end=o,n.close=o,n.error=o,n)t.on(i,n[i]);function a(n){r||(e.enqueue(n),t.pause())}function o(i){if(!r){for(var a in r=!0,n)t.removeListener(a,n[a]);i?e.error(i):e.close()}}t.pause()},pull:function(){r||t.resume()},cancel:function(){for(var e in r=!0,n)t.removeListener(e,n[e]);t.push(null),t.pause(),t.destroy?t.destroy():t.close&&t.close()}})},e.exports.WEBSTREAM_SUPPORT="undefined"!=typeof ReadableStream},53952:(e,t,r)=>{"use strict";const{AbortError:n,codes:i}=r(79865),{isNodeStream:a,isWebStream:o,kControllerErrorFunction:s}=r(82211),c=r(59885),{ERR_INVALID_ARG_TYPE:u}=i;e.exports.addAbortSignal=function(t,r){if(((e,t)=>{if("object"!=typeof e||!("aborted"in e))throw new u("signal","AbortSignal",e)})(t),!a(r)&&!o(r))throw new u("stream",["ReadableStream","WritableStream","Stream"],r);return e.exports.addAbortSignalNoValidate(t,r)},e.exports.addAbortSignalNoValidate=function(e,t){if("object"!=typeof e||!("aborted"in e))return t;const r=a(t)?()=>{t.destroy(new n(void 0,{cause:e.reason}))}:()=>{t[s](new n(void 0,{cause:e.reason}))};return e.aborted?r():(e.addEventListener("abort",r),c(t,(()=>e.removeEventListener("abort",r)))),t}},56637:(e,t,r)=>{"use strict";const{StringPrototypeSlice:n,SymbolIterator:i,TypedArrayPrototypeSet:a,Uint8Array:o}=r(11122),{Buffer:s}=r(48834),{inspect:c}=r(52092);e.exports=class{constructor(){this.head=null,this.tail=null,this.length=0}push(e){const t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}unshift(e){const t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}shift(){if(0===this.length)return;const e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}clear(){this.head=this.tail=null,this.length=0}join(e){if(0===this.length)return"";let t=this.head,r=""+t.data;for(;null!==(t=t.next);)r+=e+t.data;return r}concat(e){if(0===this.length)return s.alloc(0);const t=s.allocUnsafe(e>>>0);let r=this.head,n=0;for(;r;)a(t,r.data,n),n+=r.data.length,r=r.next;return t}consume(e,t){const r=this.head.data;if(ea.length)){e===a.length?(t+=a,++i,r.next?this.head=r.next:this.head=this.tail=null):(t+=n(a,0,e),this.head=r,r.data=n(a,e));break}t+=a,e-=a.length,++i}while(null!==(r=r.next));return this.length-=i,t}_getBuffer(e){const t=s.allocUnsafe(e),r=e;let n=this.head,i=0;do{const s=n.data;if(!(e>s.length)){e===s.length?(a(t,s,r-e),++i,n.next?this.head=n.next:this.head=this.tail=null):(a(t,new o(s.buffer,s.byteOffset,e),r-e),this.head=n,n.data=s.slice(e));break}a(t,s,r-e),e-=s.length,++i}while(null!==(n=n.next));return this.length-=i,t}[Symbol.for("nodejs.util.inspect.custom")](e,t){return c(this,{...t,depth:0,customInspect:!1})}}},9732:(e,t,r)=>{"use strict";const{pipeline:n}=r(63495),i=r(72852),{destroyer:a}=r(12262),{isNodeStream:o,isReadable:s,isWritable:c,isWebStream:u,isTransformStream:l,isWritableStream:d,isReadableStream:h}=r(82211),{AbortError:p,codes:{ERR_INVALID_ARG_VALUE:f,ERR_MISSING_ARGS:y}}=r(79865),g=r(59885);e.exports=function(...e){if(0===e.length)throw new y("streams");if(1===e.length)return i.from(e[0]);const t=[...e];if("function"==typeof e[0]&&(e[0]=i.from(e[0])),"function"==typeof e[e.length-1]){const t=e.length-1;e[t]=i.from(e[t])}for(let r=0;r0&&!(c(e[r])||d(e[r])||l(e[r])))throw new f(`streams[${r}]`,t[r],"must be writable")}let r,m,b,v,_;const w=e[0],T=n(e,(function(e){const t=v;v=null,t?t(e):e?_.destroy(e):O||S||_.destroy()})),S=!!(c(w)||d(w)||l(w)),O=!!(s(T)||h(T)||l(T));if(_=new i({writableObjectMode:!(null==w||!w.writableObjectMode),readableObjectMode:!(null==T||!T.writableObjectMode),writable:S,readable:O}),S){if(o(w))_._write=function(e,t,n){w.write(e,t)?n():r=n},_._final=function(e){w.end(),m=e},w.on("drain",(function(){if(r){const e=r;r=null,e()}}));else if(u(w)){const e=(l(w)?w.writable:w).getWriter();_._write=async function(t,r,n){try{await e.ready,e.write(t).catch((()=>{})),n()}catch(e){n(e)}},_._final=async function(t){try{await e.ready,e.close().catch((()=>{})),m=t}catch(e){t(e)}}}const e=l(T)?T.readable:T;g(e,(()=>{if(m){const e=m;m=null,e()}}))}if(O)if(o(T))T.on("readable",(function(){if(b){const e=b;b=null,e()}})),T.on("end",(function(){_.push(null)})),_._read=function(){for(;;){const e=T.read();if(null===e)return void(b=_._read);if(!_.push(e))return}};else if(u(T)){const e=(l(T)?T.readable:T).getReader();_._read=async function(){for(;;)try{const{value:t,done:r}=await e.read();if(!_.push(t))return;if(r)return void _.push(null)}catch{return}}}return _._destroy=function(e,t){e||null===v||(e=new p),b=null,r=null,m=null,null===v?t(e):(v=t,o(T)&&a(T,e))},_}},12262:(e,t,r)=>{"use strict";const n=r(34406),{aggregateTwoErrors:i,codes:{ERR_MULTIPLE_CALLBACK:a},AbortError:o}=r(79865),{Symbol:s}=r(11122),{kDestroyed:c,isDestroyed:u,isFinished:l,isServerRequest:d}=r(82211),h=s("kDestroy"),p=s("kConstruct");function f(e,t,r){e&&(e.stack,t&&!t.errored&&(t.errored=e),r&&!r.errored&&(r.errored=e))}function y(e,t,r){let i=!1;function a(t){if(i)return;i=!0;const a=e._readableState,o=e._writableState;f(t,o,a),o&&(o.closed=!0),a&&(a.closed=!0),"function"==typeof r&&r(t),t?n.nextTick(g,e,t):n.nextTick(m,e)}try{e._destroy(t||null,a)}catch(t){a(t)}}function g(e,t){b(e,t),m(e)}function m(e){const t=e._readableState,r=e._writableState;r&&(r.closeEmitted=!0),t&&(t.closeEmitted=!0),(null!=r&&r.emitClose||null!=t&&t.emitClose)&&e.emit("close")}function b(e,t){const r=e._readableState,n=e._writableState;null!=n&&n.errorEmitted||null!=r&&r.errorEmitted||(n&&(n.errorEmitted=!0),r&&(r.errorEmitted=!0),e.emit("error",t))}function v(e,t,r){const i=e._readableState,a=e._writableState;if(null!=a&&a.destroyed||null!=i&&i.destroyed)return this;null!=i&&i.autoDestroy||null!=a&&a.autoDestroy?e.destroy(t):t&&(t.stack,a&&!a.errored&&(a.errored=t),i&&!i.errored&&(i.errored=t),r?n.nextTick(b,e,t):b(e,t))}function _(e){let t=!1;function r(r){if(t)return void v(e,null!=r?r:new a);t=!0;const i=e._readableState,o=e._writableState,s=o||i;i&&(i.constructed=!0),o&&(o.constructed=!0),s.destroyed?e.emit(h,r):r?v(e,r,!0):n.nextTick(w,e)}try{e._construct((e=>{n.nextTick(r,e)}))}catch(e){n.nextTick(r,e)}}function w(e){e.emit(p)}function T(e){return(null==e?void 0:e.setHeader)&&"function"==typeof e.abort}function S(e){e.emit("close")}function O(e,t){e.emit("error",t),n.nextTick(S,e)}e.exports={construct:function(e,t){if("function"!=typeof e._construct)return;const r=e._readableState,i=e._writableState;r&&(r.constructed=!1),i&&(i.constructed=!1),e.once(p,t),e.listenerCount(p)>1||n.nextTick(_,e)},destroyer:function(e,t){e&&!u(e)&&(t||l(e)||(t=new o),d(e)?(e.socket=null,e.destroy(t)):T(e)?e.abort():T(e.req)?e.req.abort():"function"==typeof e.destroy?e.destroy(t):"function"==typeof e.close?e.close():t?n.nextTick(O,e,t):n.nextTick(S,e),e.destroyed||(e[c]=!0))},destroy:function(e,t){const r=this._readableState,n=this._writableState,a=n||r;return null!=n&&n.destroyed||null!=r&&r.destroyed?("function"==typeof t&&t(),this):(f(e,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),a.constructed?y(this,e,t):this.once(h,(function(r){y(this,i(r,e),t)})),this)},undestroy:function(){const e=this._readableState,t=this._writableState;e&&(e.constructed=!0,e.closed=!1,e.closeEmitted=!1,e.destroyed=!1,e.errored=null,e.errorEmitted=!1,e.reading=!1,e.ended=!1===e.readable,e.endEmitted=!1===e.readable),t&&(t.constructed=!0,t.destroyed=!1,t.closed=!1,t.closeEmitted=!1,t.errored=null,t.errorEmitted=!1,t.finalCalled=!1,t.prefinished=!1,t.ended=!1===t.writable,t.ending=!1===t.writable,t.finished=!1===t.writable)},errorOrDestroy:v}},72852:(e,t,r)=>{"use strict";const{ObjectDefineProperties:n,ObjectGetOwnPropertyDescriptor:i,ObjectKeys:a,ObjectSetPrototypeOf:o}=r(11122);e.exports=u;const s=r(20182),c=r(70080);o(u.prototype,s.prototype),o(u,s);{const e=a(c.prototype);for(let t=0;t{const n=r(34406),i=r(48834),{isReadable:a,isWritable:o,isIterable:s,isNodeStream:c,isReadableNodeStream:u,isWritableNodeStream:l,isDuplexNodeStream:d}=r(82211),h=r(59885),{AbortError:p,codes:{ERR_INVALID_ARG_TYPE:f,ERR_INVALID_RETURN_VALUE:y}}=r(79865),{destroyer:g}=r(12262),m=r(72852),b=r(20182),{createDeferredPromise:v}=r(52092),_=r(37549),w=globalThis.Blob||i.Blob,T=void 0!==w?function(e){return e instanceof w}:function(e){return!1},S=globalThis.AbortController||r(47948).AbortController,{FunctionPrototypeCall:O}=r(11122);class E extends m{constructor(e){super(e),!1===(null==e?void 0:e.readable)&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),!1===(null==e?void 0:e.writable)&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}}function x(e){const t=e.readable&&"function"!=typeof e.readable.read?b.wrap(e.readable):e.readable,r=e.writable;let n,i,s,c,u,l=!!a(t),d=!!o(r);function f(e){const t=c;c=null,t?t(e):e&&u.destroy(e)}return u=new E({readableObjectMode:!(null==t||!t.readableObjectMode),writableObjectMode:!(null==r||!r.writableObjectMode),readable:l,writable:d}),d&&(h(r,(e=>{d=!1,e&&g(t,e),f(e)})),u._write=function(e,t,i){r.write(e,t)?i():n=i},u._final=function(e){r.end(),i=e},r.on("drain",(function(){if(n){const e=n;n=null,e()}})),r.on("finish",(function(){if(i){const e=i;i=null,e()}}))),l&&(h(t,(e=>{l=!1,e&&g(t,e),f(e)})),t.on("readable",(function(){if(s){const e=s;s=null,e()}})),t.on("end",(function(){u.push(null)})),u._read=function(){for(;;){const e=t.read();if(null===e)return void(s=u._read);if(!u.push(e))return}}),u._destroy=function(e,a){e||null===c||(e=new p),s=null,n=null,i=null,null===c?a(e):(c=a,g(r,e),g(t,e))},u}e.exports=function e(t,r){if(d(t))return t;if(u(t))return x({readable:t});if(l(t))return x({writable:t});if(c(t))return x({writable:!1,readable:!1});if("function"==typeof t){const{value:e,write:i,final:a,destroy:o}=function(e){let{promise:t,resolve:r}=v();const i=new S,a=i.signal;return{value:e(async function*(){for(;;){const e=t;t=null;const{chunk:i,done:o,cb:s}=await e;if(n.nextTick(s),o)return;if(a.aborted)throw new p(void 0,{cause:a.reason});({promise:t,resolve:r}=v()),yield i}}(),{signal:a}),write(e,t,n){const i=r;r=null,i({chunk:e,done:!1,cb:n})},final(e){const t=r;r=null,t({done:!0,cb:e})},destroy(e,t){i.abort(),t(e)}}}(t);if(s(e))return _(E,e,{objectMode:!0,write:i,final:a,destroy:o});const c=null==e?void 0:e.then;if("function"==typeof c){let t;const r=O(c,e,(e=>{if(null!=e)throw new y("nully","body",e)}),(e=>{g(t,e)}));return t=new E({objectMode:!0,readable:!1,write:i,final(e){a((async()=>{try{await r,n.nextTick(e,null)}catch(t){n.nextTick(e,t)}}))},destroy:o})}throw new y("Iterable, AsyncIterable or AsyncFunction",r,e)}if(T(t))return e(t.arrayBuffer());if(s(t))return _(E,t,{objectMode:!0,writable:!1});if("object"==typeof(null==t?void 0:t.writable)||"object"==typeof(null==t?void 0:t.readable))return x({readable:null!=t&&t.readable?u(null==t?void 0:t.readable)?null==t?void 0:t.readable:e(t.readable):void 0,writable:null!=t&&t.writable?l(null==t?void 0:t.writable)?null==t?void 0:t.writable:e(t.writable):void 0});const i=null==t?void 0:t.then;if("function"==typeof i){let e;return O(i,t,(t=>{null!=t&&e.push(t),e.push(null)}),(t=>{g(e,t)})),e=new E({objectMode:!0,writable:!1,read(){}})}throw new f(r,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],t)}},59885:(e,t,r)=>{const n=r(34406),{AbortError:i,codes:a}=r(79865),{ERR_INVALID_ARG_TYPE:o,ERR_STREAM_PREMATURE_CLOSE:s}=a,{kEmptyObject:c,once:u}=r(52092),{validateAbortSignal:l,validateFunction:d,validateObject:h,validateBoolean:p}=r(52209),{Promise:f,PromisePrototypeThen:y}=r(11122),{isClosed:g,isReadable:m,isReadableNodeStream:b,isReadableStream:v,isReadableFinished:_,isReadableErrored:w,isWritable:T,isWritableNodeStream:S,isWritableStream:O,isWritableFinished:E,isWritableErrored:x,isNodeStream:A,willEmitClose:R,kIsClosedPromise:I}=r(82211),P=()=>{};function D(e,t,r){var a,p;if(2===arguments.length?(r=t,t=c):null==t?t=c:h(t,"options"),d(r,"callback"),l(t.signal,"options.signal"),r=u(r),v(e)||O(e))return function(e,t,r){let a=!1,o=P;if(t.signal)if(o=()=>{a=!0,r.call(e,new i(void 0,{cause:t.signal.reason}))},t.signal.aborted)n.nextTick(o);else{const n=r;r=u(((...r)=>{t.signal.removeEventListener("abort",o),n.apply(e,r)})),t.signal.addEventListener("abort",o)}const s=(...t)=>{a||n.nextTick((()=>r.apply(e,t)))};return y(e[I].promise,s,s),P}(e,t,r);if(!A(e))throw new o("stream",["ReadableStream","WritableStream","Stream"],e);const f=null!==(a=t.readable)&&void 0!==a?a:b(e),D=null!==(p=t.writable)&&void 0!==p?p:S(e),N=e._writableState,j=e._readableState,C=()=>{e.writable||k()};let M=R(e)&&b(e)===f&&S(e)===D,L=E(e,!1);const k=()=>{L=!0,e.destroyed&&(M=!1),(!M||e.readable&&!f)&&(f&&!F||r.call(e))};let F=_(e,!1);const B=()=>{F=!0,e.destroyed&&(M=!1),(!M||e.writable&&!D)&&(D&&!L||r.call(e))},U=t=>{r.call(e,t)};let q=g(e);const V=()=>{q=!0;const t=x(e)||w(e);return t&&"boolean"!=typeof t?r.call(e,t):f&&!F&&b(e,!0)&&!_(e,!1)?r.call(e,new s):!D||L||E(e,!1)?void r.call(e):r.call(e,new s)},Q=()=>{q=!0;const t=x(e)||w(e);if(t&&"boolean"!=typeof t)return r.call(e,t);r.call(e)},$=()=>{e.req.on("finish",k)};!function(e){return e.setHeader&&"function"==typeof e.abort}(e)?D&&!N&&(e.on("end",C),e.on("close",C)):(e.on("complete",k),M||e.on("abort",V),e.req?$():e.on("request",$)),M||"boolean"!=typeof e.aborted||e.on("aborted",V),e.on("end",B),e.on("finish",k),!1!==t.error&&e.on("error",U),e.on("close",V),q?n.nextTick(V):null!=N&&N.errorEmitted||null!=j&&j.errorEmitted?M||n.nextTick(Q):(f||M&&!m(e)||!L&&!1!==T(e))&&(D||M&&!T(e)||!F&&!1!==m(e))?j&&e.req&&e.aborted&&n.nextTick(Q):n.nextTick(Q);const H=()=>{r=P,e.removeListener("aborted",V),e.removeListener("complete",k),e.removeListener("abort",V),e.removeListener("request",$),e.req&&e.req.removeListener("finish",k),e.removeListener("end",C),e.removeListener("close",C),e.removeListener("finish",k),e.removeListener("end",B),e.removeListener("error",U),e.removeListener("close",V)};if(t.signal&&!q){const a=()=>{const n=r;H(),n.call(e,new i(void 0,{cause:t.signal.reason}))};if(t.signal.aborted)n.nextTick(a);else{const n=r;r=u(((...r)=>{t.signal.removeEventListener("abort",a),n.apply(e,r)})),t.signal.addEventListener("abort",a)}}return H}e.exports=D,e.exports.finished=function(e,t){var r;let n=!1;return null===t&&(t=c),null!==(r=t)&&void 0!==r&&r.cleanup&&(p(t.cleanup,"cleanup"),n=t.cleanup),new f(((r,i)=>{const a=D(e,t,(e=>{n&&a(),e?i(e):r()}))}))}},37549:(e,t,r)=>{"use strict";const n=r(34406),{PromisePrototypeThen:i,SymbolAsyncIterator:a,SymbolIterator:o}=r(11122),{Buffer:s}=r(48834),{ERR_INVALID_ARG_TYPE:c,ERR_STREAM_NULL_VALUES:u}=r(79865).codes;e.exports=function(e,t,r){let l,d;if("string"==typeof t||t instanceof s)return new e({objectMode:!0,...r,read(){this.push(t),this.push(null)}});if(t&&t[a])d=!0,l=t[a]();else{if(!t||!t[o])throw new c("iterable",["Iterable"],t);d=!1,l=t[o]()}const h=new e({objectMode:!0,highWaterMark:1,...r});let p=!1;return h._read=function(){p||(p=!0,async function(){for(;;){try{const{value:e,done:t}=d?await l.next():l.next();if(t)h.push(null);else{const t=e&&"function"==typeof e.then?await e:e;if(null===t)throw p=!1,new u;if(h.push(t))continue;p=!1}}catch(e){h.destroy(e)}break}}())},h._destroy=function(e,t){i(async function(e){const t=null!=e,r="function"==typeof l.throw;if(t&&r){const{value:t,done:r}=await l.throw(e);if(await t,r)return}if("function"==typeof l.return){const{value:e}=await l.return();await e}}(e),(()=>n.nextTick(t,e)),(r=>n.nextTick(t,r||e)))},h}},13798:(e,t,r)=>{"use strict";const{ArrayIsArray:n,ObjectSetPrototypeOf:i}=r(11122),{EventEmitter:a}=r(22699);function o(e){a.call(this,e)}function s(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?n(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}i(o.prototype,a.prototype),i(o,a),o.prototype.pipe=function(e,t){const r=this;function n(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function i(){r.readable&&r.resume&&r.resume()}r.on("data",n),e.on("drain",i),e._isStdio||t&&!1===t.end||(r.on("end",c),r.on("close",u));let o=!1;function c(){o||(o=!0,e.end())}function u(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){d(),0===a.listenerCount(this,"error")&&this.emit("error",e)}function d(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",c),r.removeListener("close",u),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",d),r.removeListener("close",d),e.removeListener("close",d)}return s(r,"error",l),s(e,"error",l),r.on("end",d),r.on("close",d),e.on("close",d),e.emit("pipe",r),e},e.exports={Stream:o,prependListener:s}},51273:(e,t,r)=>{"use strict";const n=globalThis.AbortController||r(47948).AbortController,{codes:{ERR_INVALID_ARG_VALUE:i,ERR_INVALID_ARG_TYPE:a,ERR_MISSING_ARGS:o,ERR_OUT_OF_RANGE:s},AbortError:c}=r(79865),{validateAbortSignal:u,validateInteger:l,validateObject:d}=r(52209),h=r(11122).Symbol("kWeak"),{finished:p}=r(59885),f=r(9732),{addAbortSignalNoValidate:y}=r(53952),{isWritable:g,isNodeStream:m}=r(82211),{ArrayPrototypePush:b,MathFloor:v,Number:_,NumberIsNaN:w,Promise:T,PromiseReject:S,PromisePrototypeThen:O,Symbol:E}=r(11122),x=E("kEmpty"),A=E("kEof");function R(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal");let r=1;return null!=(null==t?void 0:t.concurrency)&&(r=v(t.concurrency)),l(r,"concurrency",1),async function*(){var i,a;const o=new n,s=this,u=[],l=o.signal,d={signal:l},h=()=>o.abort();let p,f;null!=t&&null!==(i=t.signal)&&void 0!==i&&i.aborted&&h(),null==t||null===(a=t.signal)||void 0===a||a.addEventListener("abort",h);let y=!1;function g(){y=!0}!async function(){try{for await(let t of s){var n;if(y)return;if(l.aborted)throw new c;try{t=e(t,d)}catch(e){t=S(e)}t!==x&&("function"==typeof(null===(n=t)||void 0===n?void 0:n.catch)&&t.catch(g),u.push(t),p&&(p(),p=null),!y&&u.length&&u.length>=r&&await new T((e=>{f=e})))}u.push(A)}catch(e){const t=S(e);O(t,void 0,g),u.push(t)}finally{var i;y=!0,p&&(p(),p=null),null==t||null===(i=t.signal)||void 0===i||i.removeEventListener("abort",h)}}();try{for(;;){for(;u.length>0;){const e=await u[0];if(e===A)return;if(l.aborted)throw new c;e!==x&&(yield e),u.shift(),f&&(f(),f=null)}await new T((e=>{p=e}))}}finally{o.abort(),y=!0,f&&(f(),f=null)}}.call(this)}async function I(e,t=void 0){for await(const r of P.call(this,e,t))return!0;return!1}function P(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);return R.call(this,(async function(t,r){return await e(t,r)?t:x}),t)}class D extends o{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}}function N(e){if(e=_(e),w(e))return 0;if(e<0)throw new s("number",">= 0",e);return e}e.exports.streamReturningOperators={asIndexedPairs:function(e=void 0){return null!=e&&d(e,"options"),null!=(null==e?void 0:e.signal)&&u(e.signal,"options.signal"),async function*(){let t=0;for await(const n of this){var r;if(null!=e&&null!==(r=e.signal)&&void 0!==r&&r.aborted)throw new c({cause:e.signal.reason});yield[t++,n]}}.call(this)},drop:function(e,t=void 0){return null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),e=N(e),async function*(){var r;if(null!=t&&null!==(r=t.signal)&&void 0!==r&&r.aborted)throw new c;for await(const r of this){var n;if(null!=t&&null!==(n=t.signal)&&void 0!==n&&n.aborted)throw new c;e--<=0&&(yield r)}}.call(this)},filter:P,flatMap:function(e,t){const r=R.call(this,e,t);return async function*(){for await(const e of r)yield*e}.call(this)},map:R,take:function(e,t=void 0){return null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),e=N(e),async function*(){var r;if(null!=t&&null!==(r=t.signal)&&void 0!==r&&r.aborted)throw new c;for await(const r of this){var n;if(null!=t&&null!==(n=t.signal)&&void 0!==n&&n.aborted)throw new c;if(!(e-- >0))return;yield r}}.call(this)},compose:function(e,t){if(null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),m(e)&&!g(e))throw new i("stream",e,"must be writable");const r=f(this,e);return null!=t&&t.signal&&y(t.signal,r),r}},e.exports.promiseReturningOperators={every:async function(e,t=void 0){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);return!await I.call(this,(async(...t)=>!await e(...t)),t)},forEach:async function(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);for await(const r of R.call(this,(async function(t,r){return await e(t,r),x}),t));},reduce:async function(e,t,r){var i;if("function"!=typeof e)throw new a("reducer",["Function","AsyncFunction"],e);null!=r&&d(r,"options"),null!=(null==r?void 0:r.signal)&&u(r.signal,"options.signal");let o=arguments.length>1;if(null!=r&&null!==(i=r.signal)&&void 0!==i&&i.aborted){const e=new c(void 0,{cause:r.signal.reason});throw this.once("error",(()=>{})),await p(this.destroy(e)),e}const s=new n,l=s.signal;if(null!=r&&r.signal){const e={once:!0,[h]:this};r.signal.addEventListener("abort",(()=>s.abort()),e)}let f=!1;try{for await(const n of this){var y;if(f=!0,null!=r&&null!==(y=r.signal)&&void 0!==y&&y.aborted)throw new c;o?t=await e(t,n,{signal:l}):(t=n,o=!0)}if(!f&&!o)throw new D}finally{s.abort()}return t},toArray:async function(e){null!=e&&d(e,"options"),null!=(null==e?void 0:e.signal)&&u(e.signal,"options.signal");const t=[];for await(const n of this){var r;if(null!=e&&null!==(r=e.signal)&&void 0!==r&&r.aborted)throw new c(void 0,{cause:e.signal.reason});b(t,n)}return t},some:I,find:async function(e,t){for await(const r of P.call(this,e,t))return r}}},34584:(e,t,r)=>{"use strict";const{ObjectSetPrototypeOf:n}=r(11122);e.exports=a;const i=r(1112);function a(e){if(!(this instanceof a))return new a(e);i.call(this,e)}n(a.prototype,i.prototype),n(a,i),a.prototype._transform=function(e,t,r){r(null,e)}},63495:(e,t,r)=>{const n=r(34406),{ArrayIsArray:i,Promise:a,SymbolAsyncIterator:o}=r(11122),s=r(59885),{once:c}=r(52092),u=r(12262),l=r(72852),{aggregateTwoErrors:d,codes:{ERR_INVALID_ARG_TYPE:h,ERR_INVALID_RETURN_VALUE:p,ERR_MISSING_ARGS:f,ERR_STREAM_DESTROYED:y,ERR_STREAM_PREMATURE_CLOSE:g},AbortError:m}=r(79865),{validateFunction:b,validateAbortSignal:v}=r(52209),{isIterable:_,isReadable:w,isReadableNodeStream:T,isNodeStream:S,isTransformStream:O,isWebStream:E,isReadableStream:x,isReadableEnded:A}=r(82211),R=globalThis.AbortController||r(47948).AbortController;let I,P;function D(e,t,r){let n=!1;return e.on("close",(()=>{n=!0})),{destroy:t=>{n||(n=!0,u.destroyer(e,t||new y("pipe")))},cleanup:s(e,{readable:t,writable:r},(e=>{n=!e}))}}function N(e){if(_(e))return e;if(T(e))return async function*(e){P||(P=r(20182)),yield*P.prototype[o].call(e)}(e);throw new h("val",["Readable","Iterable","AsyncIterable"],e)}async function j(e,t,r,{end:n}){let i,o=null;const c=e=>{if(e&&(i=e),o){const e=o;o=null,e()}},u=()=>new a(((e,t)=>{i?t(i):o=()=>{i?t(i):e()}}));t.on("drain",c);const l=s(t,{readable:!1},c);try{t.writableNeedDrain&&await u();for await(const r of e)t.write(r)||await u();n&&t.end(),await u(),r()}catch(e){r(i!==e?d(i,e):e)}finally{l(),t.off("drain",c)}}async function C(e,t,r,{end:n}){O(t)&&(t=t.writable);const i=t.getWriter();try{for await(const t of e)await i.ready,i.write(t).catch((()=>{}));await i.ready,n&&await i.close(),r()}catch(e){try{await i.abort(e),r(e)}catch(e){r(e)}}}function M(e,t,a){if(1===e.length&&i(e[0])&&(e=e[0]),e.length<2)throw new f("streams");const o=new R,s=o.signal,c=null==a?void 0:a.signal,u=[];function d(){k(new m)}let y,g;v(c,"options.signal"),null==c||c.addEventListener("abort",d);const b=[];let A,P=0;function M(e){k(e,0==--P)}function k(e,r){if(!e||y&&"ERR_STREAM_PREMATURE_CLOSE"!==y.code||(y=e),y||r){for(;b.length;)b.shift()(y);null==c||c.removeEventListener("abort",d),o.abort(),r&&(y||u.forEach((e=>e())),n.nextTick(t,y,g))}}for(let q=0;q0,H=Q||!1!==(null==a?void 0:a.end),G=q===e.length-1;if(S(V)){if(H){const{destroy:z,cleanup:K}=D(V,Q,$);b.push(z),w(V)&&G&&u.push(K)}function F(e){e&&"AbortError"!==e.name&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code&&M(e)}V.on("error",F),w(V)&&G&&u.push((()=>{V.removeListener("error",F)}))}if(0===q)if("function"==typeof V){if(A=V({signal:s}),!_(A))throw new p("Iterable, AsyncIterable or Stream","source",A)}else A=_(V)||T(V)||O(V)?V:l.from(V);else if("function"==typeof V){var B;if(A=O(A)?N(null===(B=A)||void 0===B?void 0:B.readable):N(A),A=V(A,{signal:s}),Q){if(!_(A,!0))throw new p("AsyncIterable",`transform[${q-1}]`,A)}else{var U;I||(I=r(34584));const X=new I({objectMode:!0}),W=null===(U=A)||void 0===U?void 0:U.then;if("function"==typeof W)P++,W.call(A,(e=>{g=e,null!=e&&X.write(e),H&&X.end(),n.nextTick(M)}),(e=>{X.destroy(e),n.nextTick(M,e)}));else if(_(A,!0))P++,j(A,X,M,{end:H});else{if(!x(A)&&!O(A))throw new p("AsyncIterable or Promise","destination",A);{const Z=A.readable||A;P++,j(Z,X,M,{end:H})}}A=X;const{destroy:J,cleanup:Y}=D(A,!1,!0);b.push(J),G&&u.push(Y)}}else if(S(V)){if(T(A)){P+=2;const ee=L(A,V,M,{end:H});w(V)&&G&&u.push(ee)}else if(O(A)||x(A)){const te=A.readable||A;P++,j(te,V,M,{end:H})}else{if(!_(A))throw new h("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],A);P++,j(A,V,M,{end:H})}A=V}else if(E(V)){if(T(A))P++,C(N(A),V,M,{end:H});else if(x(A)||_(A))P++,C(A,V,M,{end:H});else{if(!O(A))throw new h("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],A);P++,C(A.readable,V,M,{end:H})}A=V}else A=l.from(V)}return(null!=s&&s.aborted||null!=c&&c.aborted)&&n.nextTick(d),A}function L(e,t,r,{end:i}){let a=!1;if(t.on("close",(()=>{a||r(new g)})),e.pipe(t,{end:!1}),i){function o(){a=!0,t.end()}A(e)?n.nextTick(o):e.once("end",o)}else r();return s(e,{readable:!0,writable:!1},(t=>{const n=e._readableState;t&&"ERR_STREAM_PREMATURE_CLOSE"===t.code&&n&&n.ended&&!n.errored&&!n.errorEmitted?e.once("end",r).once("error",r):r(t)})),s(t,{readable:!1,writable:!0},r)}e.exports={pipelineImpl:M,pipeline:function(...e){return M(e,c(function(e){return b(e[e.length-1],"streams[stream.length - 1]"),e.pop()}(e)))}}},20182:(e,t,r)=>{const n=r(34406),{ArrayPrototypeIndexOf:i,NumberIsInteger:a,NumberIsNaN:o,NumberParseInt:s,ObjectDefineProperties:c,ObjectKeys:u,ObjectSetPrototypeOf:l,Promise:d,SafeSet:h,SymbolAsyncIterator:p,Symbol:f}=r(11122);e.exports=B,B.ReadableState=F;const{EventEmitter:y}=r(22699),{Stream:g,prependListener:m}=r(13798),{Buffer:b}=r(48834),{addAbortSignal:v}=r(53952),_=r(59885);let w=r(52092).debuglog("stream",(e=>{w=e}));const T=r(56637),S=r(12262),{getHighWaterMark:O,getDefaultHighWaterMark:E}=r(87605),{aggregateTwoErrors:x,codes:{ERR_INVALID_ARG_TYPE:A,ERR_METHOD_NOT_IMPLEMENTED:R,ERR_OUT_OF_RANGE:I,ERR_STREAM_PUSH_AFTER_EOF:P,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:D}}=r(79865),{validateObject:N}=r(52209),j=f("kPaused"),{StringDecoder:C}=r(30214),M=r(37549);l(B.prototype,g.prototype),l(B,g);const L=()=>{},{errorOrDestroy:k}=S;function F(e,t,n){"boolean"!=typeof n&&(n=t instanceof r(72852)),this.objectMode=!(!e||!e.objectMode),n&&(this.objectMode=this.objectMode||!(!e||!e.readableObjectMode)),this.highWaterMark=e?O(this,e,"readableHighWaterMark",n):E(!1),this.buffer=new T,this.length=0,this.pipes=[],this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.constructed=!0,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this[j]=null,this.errorEmitted=!1,this.emitClose=!e||!1!==e.emitClose,this.autoDestroy=!e||!1!==e.autoDestroy,this.destroyed=!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this.defaultEncoding=e&&e.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.multiAwaitDrain=!1,this.readingMore=!1,this.dataEmitted=!1,this.decoder=null,this.encoding=null,e&&e.encoding&&(this.decoder=new C(e.encoding),this.encoding=e.encoding)}function B(e){if(!(this instanceof B))return new B(e);const t=this instanceof r(72852);this._readableState=new F(e,this,t),e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.construct&&(this._construct=e.construct),e.signal&&!t&&v(e.signal,this)),g.call(this,e),S.construct(this,(()=>{this._readableState.needReadable&&H(this,this._readableState)}))}function U(e,t,r,n){w("readableAddChunk",t);const i=e._readableState;let a;if(i.objectMode||("string"==typeof t?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?t=b.from(t,r).toString(i.encoding):(t=b.from(t,r),r=""))):t instanceof b?r="":g._isUint8Array(t)?(t=g._uint8ArrayToBuffer(t),r=""):null!=t&&(a=new A("chunk",["string","Buffer","Uint8Array"],t))),a)k(e,a);else if(null===t)i.reading=!1,function(e,t){if(w("onEofChunk"),!t.ended){if(t.decoder){const e=t.decoder.end();e&&e.length&&(t.buffer.push(e),t.length+=t.objectMode?1:e.length)}t.ended=!0,t.sync?Q(e):(t.needReadable=!1,t.emittedReadable=!0,$(e))}}(e,i);else if(i.objectMode||t&&t.length>0)if(n)if(i.endEmitted)k(e,new D);else{if(i.destroyed||i.errored)return!1;q(e,i,t,!0)}else if(i.ended)k(e,new P);else{if(i.destroyed||i.errored)return!1;i.reading=!1,i.decoder&&!r?(t=i.decoder.write(t),i.objectMode||0!==t.length?q(e,i,t,!1):H(e,i)):q(e,i,t,!1)}else n||(i.reading=!1,H(e,i));return!i.ended&&(i.length0?(t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null,t.dataEmitted=!0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&Q(e)),H(e,t)}function V(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:o(e)?t.flowing&&t.length?t.buffer.first().length:t.length:e<=t.length?e:t.ended?t.length:0}function Q(e){const t=e._readableState;w("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(w("emitReadable",t.flowing),t.emittedReadable=!0,n.nextTick($,e))}function $(e){const t=e._readableState;w("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||t.errored||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,W(e)}function H(e,t){!t.readingMore&&t.constructed&&(t.readingMore=!0,n.nextTick(G,e,t))}function G(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!1===t[j]?t.flowing=!0:e.listenerCount("data")>0?e.resume():t.readableListening||(t.flowing=null)}function K(e){w("readable nexttick read 0"),e.read(0)}function X(e,t){w("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),W(e),t.flowing&&!t.reading&&e.read(0)}function W(e){const t=e._readableState;for(w("flow",t.flowing);t.flowing&&null!==e.read(););}function J(e,t){"function"!=typeof e.read&&(e=B.wrap(e,{objectMode:!0}));const r=async function*(e,t){let r,n=L;function i(t){this===e?(n(),n=L):n=t}e.on("readable",i);const a=_(e,{writable:!1},(e=>{r=e?x(r,e):null,n(),n=L}));try{for(;;){const t=e.destroyed?null:e.read();if(null!==t)yield t;else{if(r)throw r;if(null===r)return;await new d(i)}}}catch(e){throw r=x(r,e),r}finally{!r&&!1===(null==t?void 0:t.destroyOnReturn)||void 0!==r&&!e._readableState.autoDestroy?(e.off("readable",i),a()):S.destroyer(e,null)}}(e,t);return r.stream=e,r}function Y(e,t){if(0===t.length)return null;let r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function Z(e){const t=e._readableState;w("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,n.nextTick(ee,t,e))}function ee(e,t){if(w("endReadableNT",e.endEmitted,e.length),!e.errored&&!e.closeEmitted&&!e.endEmitted&&0===e.length)if(e.endEmitted=!0,t.emit("end"),t.writable&&!1===t.allowHalfOpen)n.nextTick(te,t);else if(e.autoDestroy){const e=t._writableState;(!e||e.autoDestroy&&(e.finished||!1===e.writable))&&t.destroy()}}function te(e){e.writable&&!e.writableEnded&&!e.destroyed&&e.end()}let re;function ne(){return void 0===re&&(re={}),re}B.prototype.destroy=S.destroy,B.prototype._undestroy=S.undestroy,B.prototype._destroy=function(e,t){t(e)},B.prototype[y.captureRejectionSymbol]=function(e){this.destroy(e)},B.prototype.push=function(e,t){return U(this,e,t,!1)},B.prototype.unshift=function(e,t){return U(this,e,t,!0)},B.prototype.isPaused=function(){const e=this._readableState;return!0===e[j]||!1===e.flowing},B.prototype.setEncoding=function(e){const t=new C(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;const r=this._readableState.buffer;let n="";for(const e of r)n+=t.write(e);return r.clear(),""!==n&&r.push(n),this._readableState.length=n.length,this},B.prototype.read=function(e){w("read",e),void 0===e?e=NaN:a(e)||(e=s(e,10));const t=this._readableState,r=e;if(e>t.highWaterMark&&(t.highWaterMark=function(e){if(e>1073741824)throw new I("size","<= 1GiB",e);return e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,++e}(e)),0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return w("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?Z(this):Q(this),null;if(0===(e=V(e,t))&&t.ended)return 0===t.length&&Z(this),null;let n,i=t.needReadable;if(w("need readable",i),(0===t.length||t.length-e0?Y(e,t):null,null===n?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Z(this)),null===n||t.errorEmitted||t.closeEmitted||(t.dataEmitted=!0,this.emit("data",n)),n},B.prototype._read=function(e){throw new R("_read()")},B.prototype.pipe=function(e,t){const r=this,i=this._readableState;1===i.pipes.length&&(i.multiAwaitDrain||(i.multiAwaitDrain=!0,i.awaitDrainWriters=new h(i.awaitDrainWriters?[i.awaitDrainWriters]:[]))),i.pipes.push(e),w("pipe count=%d opts=%j",i.pipes.length,t);const a=t&&!1===t.end||e===n.stdout||e===n.stderr?y:o;function o(){w("onend"),e.end()}let s;i.endEmitted?n.nextTick(a):r.once("end",a),e.on("unpipe",(function t(n,a){w("onunpipe"),n===r&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,w("cleanup"),e.removeListener("close",p),e.removeListener("finish",f),s&&e.removeListener("drain",s),e.removeListener("error",d),e.removeListener("unpipe",t),r.removeListener("end",o),r.removeListener("end",y),r.removeListener("data",l),c=!0,s&&i.awaitDrainWriters&&(!e._writableState||e._writableState.needDrain)&&s())}));let c=!1;function u(){c||(1===i.pipes.length&&i.pipes[0]===e?(w("false write response, pause",0),i.awaitDrainWriters=e,i.multiAwaitDrain=!1):i.pipes.length>1&&i.pipes.includes(e)&&(w("false write response, pause",i.awaitDrainWriters.size),i.awaitDrainWriters.add(e)),r.pause()),s||(s=function(e,t){return function(){const r=e._readableState;r.awaitDrainWriters===t?(w("pipeOnDrain",1),r.awaitDrainWriters=null):r.multiAwaitDrain&&(w("pipeOnDrain",r.awaitDrainWriters.size),r.awaitDrainWriters.delete(t)),r.awaitDrainWriters&&0!==r.awaitDrainWriters.size||!e.listenerCount("data")||e.resume()}}(r,e),e.on("drain",s))}function l(t){w("ondata");const r=e.write(t);w("dest.write",r),!1===r&&u()}function d(t){if(w("onerror",t),y(),e.removeListener("error",d),0===e.listenerCount("error")){const r=e._writableState||e._readableState;r&&!r.errorEmitted?k(e,t):e.emit("error",t)}}function p(){e.removeListener("finish",f),y()}function f(){w("onfinish"),e.removeListener("close",p),y()}function y(){w("unpipe"),r.unpipe(e)}return r.on("data",l),m(e,"error",d),e.once("close",p),e.once("finish",f),e.emit("pipe",r),!0===e.writableNeedDrain?i.flowing&&u():i.flowing||(w("pipe resume"),r.resume()),e},B.prototype.unpipe=function(e){const t=this._readableState;if(0===t.pipes.length)return this;if(!e){const e=t.pipes;t.pipes=[],this.pause();for(let t=0;t0,!1!==i.flowing&&this.resume()):"readable"===e&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,w("on readable",i.length,i.reading),i.length?Q(this):i.reading||n.nextTick(K,this))),r},B.prototype.addListener=B.prototype.on,B.prototype.removeListener=function(e,t){const r=g.prototype.removeListener.call(this,e,t);return"readable"===e&&n.nextTick(z,this),r},B.prototype.off=B.prototype.removeListener,B.prototype.removeAllListeners=function(e){const t=g.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||n.nextTick(z,this),t},B.prototype.resume=function(){const e=this._readableState;return e.flowing||(w("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(X,e,t))}(this,e)),e[j]=!1,this},B.prototype.pause=function(){return w("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(w("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[j]=!0,this},B.prototype.wrap=function(e){let t=!1;e.on("data",(r=>{!this.push(r)&&e.pause&&(t=!0,e.pause())})),e.on("end",(()=>{this.push(null)})),e.on("error",(e=>{k(this,e)})),e.on("close",(()=>{this.destroy()})),e.on("destroy",(()=>{this.destroy()})),this._read=()=>{t&&e.resume&&(t=!1,e.resume())};const r=u(e);for(let t=1;t{"use strict";const{MathFloor:n,NumberIsInteger:i}=r(11122),{ERR_INVALID_ARG_VALUE:a}=r(79865).codes;function o(e){return e?16:16384}e.exports={getHighWaterMark:function(e,t,r,s){const c=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,s,r);if(null!=c){if(!i(c)||c<0)throw new a(s?`options.${r}`:"options.highWaterMark",c);return n(c)}return o(e.objectMode)},getDefaultHighWaterMark:o}},1112:(e,t,r)=>{"use strict";const{ObjectSetPrototypeOf:n,Symbol:i}=r(11122);e.exports=u;const{ERR_METHOD_NOT_IMPLEMENTED:a}=r(79865).codes,o=r(72852),{getHighWaterMark:s}=r(87605);n(u.prototype,o.prototype),n(u,o);const c=i("kCallback");function u(e){if(!(this instanceof u))return new u(e);const t=e?s(this,e,"readableHighWaterMark",!0):null;0===t&&(e={...e,highWaterMark:null,readableHighWaterMark:t,writableHighWaterMark:e.writableHighWaterMark||0}),o.call(this,e),this._readableState.sync=!1,this[c]=null,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function l(e){"function"!=typeof this._flush||this.destroyed?(this.push(null),e&&e()):this._flush(((t,r)=>{t?e?e(t):this.destroy(t):(null!=r&&this.push(r),this.push(null),e&&e())}))}function d(){this._final!==l&&l.call(this)}u.prototype._final=l,u.prototype._transform=function(e,t,r){throw new a("_transform()")},u.prototype._write=function(e,t,r){const n=this._readableState,i=this._writableState,a=n.length;this._transform(e,t,((e,t)=>{e?r(e):(null!=t&&this.push(t),i.ended||a===n.length||n.length{"use strict";const{Symbol:n,SymbolAsyncIterator:i,SymbolIterator:a,SymbolFor:o}=r(11122),s=n("kDestroyed"),c=n("kIsErrored"),u=n("kIsReadable"),l=n("kIsDisturbed"),d=o("nodejs.webstream.isClosedPromise"),h=o("nodejs.webstream.controllerErrorFunction");function p(e,t=!1){var r;return!(!e||"function"!=typeof e.pipe||"function"!=typeof e.on||t&&("function"!=typeof e.pause||"function"!=typeof e.resume)||e._writableState&&!1===(null===(r=e._readableState)||void 0===r?void 0:r.readable)||e._writableState&&!e._readableState)}function f(e){var t;return!(!e||"function"!=typeof e.write||"function"!=typeof e.on||e._readableState&&!1===(null===(t=e._writableState)||void 0===t?void 0:t.writable))}function y(e){return e&&(e._readableState||e._writableState||"function"==typeof e.write&&"function"==typeof e.on||"function"==typeof e.pipe&&"function"==typeof e.on)}function g(e){return!(!e||y(e)||"function"!=typeof e.pipeThrough||"function"!=typeof e.getReader||"function"!=typeof e.cancel)}function m(e){return!(!e||y(e)||"function"!=typeof e.getWriter||"function"!=typeof e.abort)}function b(e){return!(!e||y(e)||"object"!=typeof e.readable||"object"!=typeof e.writable)}function v(e){if(!y(e))return null;const t=e._writableState,r=e._readableState,n=t||r;return!!(e.destroyed||e[s]||null!=n&&n.destroyed)}function _(e){if(!f(e))return null;if(!0===e.writableEnded)return!0;const t=e._writableState;return(null==t||!t.errored)&&("boolean"!=typeof(null==t?void 0:t.ended)?null:t.ended)}function w(e,t){if(!p(e))return null;const r=e._readableState;return(null==r||!r.errored)&&("boolean"!=typeof(null==r?void 0:r.endEmitted)?null:!!(r.endEmitted||!1===t&&!0===r.ended&&0===r.length))}function T(e){return e&&null!=e[u]?e[u]:"boolean"!=typeof(null==e?void 0:e.readable)?null:!v(e)&&p(e)&&e.readable&&!w(e)}function S(e){return"boolean"!=typeof(null==e?void 0:e.writable)?null:!v(e)&&f(e)&&e.writable&&!_(e)}function O(e){return"boolean"==typeof e._closed&&"boolean"==typeof e._defaultKeepAlive&&"boolean"==typeof e._removedConnection&&"boolean"==typeof e._removedContLen}function E(e){return"boolean"==typeof e._sent100&&O(e)}e.exports={kDestroyed:s,isDisturbed:function(e){var t;return!(!e||!(null!==(t=e[l])&&void 0!==t?t:e.readableDidRead||e.readableAborted))},kIsDisturbed:l,isErrored:function(e){var t,r,n,i,a,o,s,u,l,d;return!(!e||!(null!==(t=null!==(r=null!==(n=null!==(i=null!==(a=null!==(o=e[c])&&void 0!==o?o:e.readableErrored)&&void 0!==a?a:e.writableErrored)&&void 0!==i?i:null===(s=e._readableState)||void 0===s?void 0:s.errorEmitted)&&void 0!==n?n:null===(u=e._writableState)||void 0===u?void 0:u.errorEmitted)&&void 0!==r?r:null===(l=e._readableState)||void 0===l?void 0:l.errored)&&void 0!==t?t:null===(d=e._writableState)||void 0===d?void 0:d.errored))},kIsErrored:c,isReadable:T,kIsReadable:u,kIsClosedPromise:d,kControllerErrorFunction:h,isClosed:function(e){if(!y(e))return null;if("boolean"==typeof e.closed)return e.closed;const t=e._writableState,r=e._readableState;return"boolean"==typeof(null==t?void 0:t.closed)||"boolean"==typeof(null==r?void 0:r.closed)?(null==t?void 0:t.closed)||(null==r?void 0:r.closed):"boolean"==typeof e._closed&&O(e)?e._closed:null},isDestroyed:v,isDuplexNodeStream:function(e){return!(!e||"function"!=typeof e.pipe||!e._readableState||"function"!=typeof e.on||"function"!=typeof e.write)},isFinished:function(e,t){return y(e)?!(!v(e)&&(!1!==(null==t?void 0:t.readable)&&T(e)||!1!==(null==t?void 0:t.writable)&&S(e))):null},isIterable:function(e,t){return null!=e&&(!0===t?"function"==typeof e[i]:!1===t?"function"==typeof e[a]:"function"==typeof e[i]||"function"==typeof e[a])},isReadableNodeStream:p,isReadableStream:g,isReadableEnded:function(e){if(!p(e))return null;if(!0===e.readableEnded)return!0;const t=e._readableState;return!(!t||t.errored)&&("boolean"!=typeof(null==t?void 0:t.ended)?null:t.ended)},isReadableFinished:w,isReadableErrored:function(e){var t,r;return y(e)?e.readableErrored?e.readableErrored:null!==(t=null===(r=e._readableState)||void 0===r?void 0:r.errored)&&void 0!==t?t:null:null},isNodeStream:y,isWebStream:function(e){return g(e)||m(e)||b(e)},isWritable:S,isWritableNodeStream:f,isWritableStream:m,isWritableEnded:_,isWritableFinished:function(e,t){if(!f(e))return null;if(!0===e.writableFinished)return!0;const r=e._writableState;return(null==r||!r.errored)&&("boolean"!=typeof(null==r?void 0:r.finished)?null:!!(r.finished||!1===t&&!0===r.ended&&0===r.length))},isWritableErrored:function(e){var t,r;return y(e)?e.writableErrored?e.writableErrored:null!==(t=null===(r=e._writableState)||void 0===r?void 0:r.errored)&&void 0!==t?t:null:null},isServerRequest:function(e){var t;return"boolean"==typeof e._consuming&&"boolean"==typeof e._dumped&&void 0===(null===(t=e.req)||void 0===t?void 0:t.upgradeOrConnect)},isServerResponse:E,willEmitClose:function(e){if(!y(e))return null;const t=e._writableState,r=e._readableState,n=t||r;return!n&&E(e)||!!(n&&n.autoDestroy&&n.emitClose&&!1===n.closed)},isTransformStream:b}},70080:(e,t,r)=>{const n=r(34406),{ArrayPrototypeSlice:i,Error:a,FunctionPrototypeSymbolHasInstance:o,ObjectDefineProperty:s,ObjectDefineProperties:c,ObjectSetPrototypeOf:u,StringPrototypeToLowerCase:l,Symbol:d,SymbolHasInstance:h}=r(11122);e.exports=C,C.WritableState=N;const{EventEmitter:p}=r(22699),f=r(13798).Stream,{Buffer:y}=r(48834),g=r(12262),{addAbortSignal:m}=r(53952),{getHighWaterMark:b,getDefaultHighWaterMark:v}=r(87605),{ERR_INVALID_ARG_TYPE:_,ERR_METHOD_NOT_IMPLEMENTED:w,ERR_MULTIPLE_CALLBACK:T,ERR_STREAM_CANNOT_PIPE:S,ERR_STREAM_DESTROYED:O,ERR_STREAM_ALREADY_FINISHED:E,ERR_STREAM_NULL_VALUES:x,ERR_STREAM_WRITE_AFTER_END:A,ERR_UNKNOWN_ENCODING:R}=r(79865).codes,{errorOrDestroy:I}=g;function P(){}u(C.prototype,f.prototype),u(C,f);const D=d("kOnFinished");function N(e,t,n){"boolean"!=typeof n&&(n=t instanceof r(72852)),this.objectMode=!(!e||!e.objectMode),n&&(this.objectMode=this.objectMode||!(!e||!e.writableObjectMode)),this.highWaterMark=e?b(this,e,"writableHighWaterMark",n):v(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;const i=!(!e||!1!==e.decodeStrings);this.decodeStrings=!i,this.defaultEncoding=e&&e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=F.bind(void 0,t),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,j(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!e||!1!==e.emitClose,this.autoDestroy=!e||!1!==e.autoDestroy,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[D]=[]}function j(e){e.buffered=[],e.bufferedIndex=0,e.allBuffers=!0,e.allNoop=!0}function C(e){const t=this instanceof r(72852);if(!t&&!o(C,this))return new C(e);this._writableState=new N(e,this,t),e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final),"function"==typeof e.construct&&(this._construct=e.construct),e.signal&&m(e.signal,this)),f.call(this,e),g.construct(this,(()=>{const e=this._writableState;e.writing||V(this,e),$(this,e)}))}function M(e,t,r,i){const a=e._writableState;if("function"==typeof r)i=r,r=a.defaultEncoding;else{if(r){if("buffer"!==r&&!y.isEncoding(r))throw new R(r)}else r=a.defaultEncoding;"function"!=typeof i&&(i=P)}if(null===t)throw new x;if(!a.objectMode)if("string"==typeof t)!1!==a.decodeStrings&&(t=y.from(t,r),r="buffer");else if(t instanceof y)r="buffer";else{if(!f._isUint8Array(t))throw new _("chunk",["string","Buffer","Uint8Array"],t);t=f._uint8ArrayToBuffer(t),r="buffer"}let o;return a.ending?o=new A:a.destroyed&&(o=new O("write")),o?(n.nextTick(i,o),I(e,o,!0),o):(a.pendingcb++,function(e,t,r,n,i){const a=t.objectMode?1:r.length;t.length+=a;const o=t.lengthr.bufferedIndex&&V(e,r),i?null!==r.afterWriteTickInfo&&r.afterWriteTickInfo.cb===a?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:a,stream:e,state:r},n.nextTick(B,r.afterWriteTickInfo)):U(e,r,1,a))):I(e,new T)}function B({stream:e,state:t,count:r,cb:n}){return t.afterWriteTickInfo=null,U(e,t,r,n)}function U(e,t,r,n){for(!t.ending&&!e.destroyed&&0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"));r-- >0;)t.pendingcb--,n();t.destroyed&&q(t),$(e,t)}function q(e){if(e.writing)return;for(let r=e.bufferedIndex;r1&&e._writev){t.pendingcb-=o-1;const n=t.allNoop?P:e=>{for(let t=s;t256?(r.splice(0,s),t.bufferedIndex=0):t.bufferedIndex=s}t.bufferProcessing=!1}function Q(e){return e.ending&&!e.destroyed&&e.constructed&&0===e.length&&!e.errored&&0===e.buffered.length&&!e.finished&&!e.writing&&!e.errorEmitted&&!e.closeEmitted}function $(e,t,r){Q(t)&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.finalCalled=!0,function(e,t){let r=!1;function i(i){if(r)I(e,null!=i?i:T());else if(r=!0,t.pendingcb--,i){const r=t[D].splice(0);for(let e=0;e{Q(t)?H(e,t):t.pendingcb--}),e,t)):Q(t)&&(t.pendingcb++,H(e,t))))}function H(e,t){t.pendingcb--,t.finished=!0;const r=t[D].splice(0);for(let e=0;e{"use strict";const{ArrayIsArray:n,ArrayPrototypeIncludes:i,ArrayPrototypeJoin:a,ArrayPrototypeMap:o,NumberIsInteger:s,NumberIsNaN:c,NumberMAX_SAFE_INTEGER:u,NumberMIN_SAFE_INTEGER:l,NumberParseInt:d,ObjectPrototypeHasOwnProperty:h,RegExpPrototypeExec:p,String:f,StringPrototypeToUpperCase:y,StringPrototypeTrim:g}=r(11122),{hideStackFrames:m,codes:{ERR_SOCKET_BAD_PORT:b,ERR_INVALID_ARG_TYPE:v,ERR_INVALID_ARG_VALUE:_,ERR_OUT_OF_RANGE:w,ERR_UNKNOWN_SIGNAL:T}}=r(79865),{normalizeEncoding:S}=r(52092),{isAsyncFunction:O,isArrayBufferView:E}=r(52092).types,x={},A=/^[0-7]+$/,R=m(((e,t,r=l,n=u)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);if(en)throw new w(t,`>= ${r} && <= ${n}`,e)})),I=m(((e,t,r=-2147483648,n=2147483647)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);if(en)throw new w(t,`>= ${r} && <= ${n}`,e)})),P=m(((e,t,r=!1)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);const n=r?1:0,i=4294967295;if(ei)throw new w(t,`>= ${n} && <= ${i}`,e)}));function D(e,t){if("string"!=typeof e)throw new v(t,"string",e)}const N=m(((e,t,r)=>{if(!i(r,e)){const n=a(o(r,(e=>"string"==typeof e?`'${e}'`:f(e))),", ");throw new _(t,e,"must be one of: "+n)}}));function j(e,t){if("boolean"!=typeof e)throw new v(t,"boolean",e)}function C(e,t,r){return null!=e&&h(e,t)?e[t]:r}const M=m(((e,t,r=null)=>{const i=C(r,"allowArray",!1),a=C(r,"allowFunction",!1);if(!C(r,"nullable",!1)&&null===e||!i&&n(e)||"object"!=typeof e&&(!a||"function"!=typeof e))throw new v(t,"Object",e)})),L=m(((e,t)=>{if(null!=e&&"object"!=typeof e&&"function"!=typeof e)throw new v(t,"a dictionary",e)})),k=m(((e,t,r=0)=>{if(!n(e))throw new v(t,"Array",e);if(e.length{if(!E(e))throw new v(t,["Buffer","TypedArray","DataView"],e)})),B=m(((e,t)=>{if(void 0!==e&&(null===e||"object"!=typeof e||!("aborted"in e)))throw new v(t,"AbortSignal",e)})),U=m(((e,t)=>{if("function"!=typeof e)throw new v(t,"Function",e)})),q=m(((e,t)=>{if("function"!=typeof e||O(e))throw new v(t,"Function",e)})),V=m(((e,t)=>{if(void 0!==e)throw new v(t,"undefined",e)})),Q=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function $(e,t){if(void 0===e||!p(Q,e))throw new _(t,e,'must be an array or string of format "; rel=preload; as=style"')}e.exports={isInt32:function(e){return e===(0|e)},isUint32:function(e){return e===e>>>0},parseFileMode:function(e,t,r){if(void 0===e&&(e=r),"string"==typeof e){if(null===p(A,e))throw new _(t,e,"must be a 32-bit unsigned integer or an octal string");e=d(e,8)}return P(e,t),e},validateArray:k,validateStringArray:function(e,t){k(e,t);for(let r=0;rn||(null!=r||null!=n)&&c(e))throw new w(t,`${null!=r?`>= ${r}`:""}${null!=r&&null!=n?" && ":""}${null!=n?`<= ${n}`:""}`,e)},validateObject:M,validateOneOf:N,validatePlainFunction:q,validatePort:function(e,t="Port",r=!0){if("number"!=typeof e&&"string"!=typeof e||"string"==typeof e&&0===g(e).length||+e!=+e>>>0||e>65535||0===e&&!r)throw new b(t,e,r);return 0|e},validateSignalName:function(e,t="signal"){if(D(e,t),void 0===x[e]){if(void 0!==x[y(e)])throw new T(e+" (signals must use all capital letters)");throw new T(e)}},validateString:D,validateUint32:P,validateUndefined:V,validateUnion:function(e,t,r){if(!i(r,e))throw new v(t,`('${a(r,"|")}')`,e)},validateAbortSignal:B,validateLinkHeaderValue:function(e){if("string"==typeof e)return $(e,"hints"),e;if(n(e)){const t=e.length;let r="";if(0===t)return r;for(let n=0;n; rel=preload; as=style"')}}},51887:(e,t,r)=>{"use strict";const n=r(62955),i=r(59419),a=n.Readable.destroy;e.exports=n.Readable,e.exports._uint8ArrayToBuffer=n._uint8ArrayToBuffer,e.exports._isUint8Array=n._isUint8Array,e.exports.isDisturbed=n.isDisturbed,e.exports.isErrored=n.isErrored,e.exports.isReadable=n.isReadable,e.exports.Readable=n.Readable,e.exports.Writable=n.Writable,e.exports.Duplex=n.Duplex,e.exports.Transform=n.Transform,e.exports.PassThrough=n.PassThrough,e.exports.addAbortSignal=n.addAbortSignal,e.exports.finished=n.finished,e.exports.destroy=n.destroy,e.exports.destroy=a,e.exports.pipeline=n.pipeline,e.exports.compose=n.compose,Object.defineProperty(n,"promises",{configurable:!0,enumerable:!0,get:()=>i}),e.exports.Stream=n.Stream,e.exports.default=e.exports},79865:(e,t,r)=>{"use strict";const{format:n,inspect:i,AggregateError:a}=r(52092),o=globalThis.AggregateError||a,s=Symbol("kIsNodeError"),c=["string","function","number","object","Function","Object","boolean","bigint","symbol"],u=/^([A-Z][a-z0-9]*)+$/,l={};function d(e,t){if(!e)throw new l.ERR_INTERNAL_ASSERTION(t)}function h(e){let t="",r=e.length;const n="-"===e[0]?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function p(e,t,r){r||(r=Error);class i extends r{constructor(...r){super(function(e,t,r){if("function"==typeof t)return d(t.length<=r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${t.length}).`),t(...r);const i=(t.match(/%[dfijoOs]/g)||[]).length;return d(i===r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${i}).`),0===r.length?t:n(t,...r)}(e,t,r))}toString(){return`${this.name} [${e}]: ${this.message}`}}Object.defineProperties(i.prototype,{name:{value:r.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${e}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),i.prototype.code=e,i.prototype[s]=!0,l[e]=i}function f(e){const t="__node_internal_"+e.name;return Object.defineProperty(e,"name",{value:t}),e}class y extends Error{constructor(e="The operation was aborted",t=void 0){if(void 0!==t&&"object"!=typeof t)throw new l.ERR_INVALID_ARG_TYPE("options","Object",t);super(e,t),this.code="ABORT_ERR",this.name="AbortError"}}p("ERR_ASSERTION","%s",Error),p("ERR_INVALID_ARG_TYPE",((e,t,r)=>{d("string"==typeof e,"'name' must be a string"),Array.isArray(t)||(t=[t]);let n="The ";e.endsWith(" argument")?n+=`${e} `:n+=`"${e}" ${e.includes(".")?"property":"argument"} `,n+="must be ";const a=[],o=[],s=[];for(const e of t)d("string"==typeof e,"All expected entries have to be of type string"),c.includes(e)?a.push(e.toLowerCase()):u.test(e)?o.push(e):(d("object"!==e,'The value "object" should be written as "Object"'),s.push(e));if(o.length>0){const e=a.indexOf("object");-1!==e&&(a.splice(a,e,1),o.push("Object"))}if(a.length>0){switch(a.length){case 1:n+=`of type ${a[0]}`;break;case 2:n+=`one of type ${a[0]} or ${a[1]}`;break;default:{const e=a.pop();n+=`one of type ${a.join(", ")}, or ${e}`}}(o.length>0||s.length>0)&&(n+=" or ")}if(o.length>0){switch(o.length){case 1:n+=`an instance of ${o[0]}`;break;case 2:n+=`an instance of ${o[0]} or ${o[1]}`;break;default:{const e=o.pop();n+=`an instance of ${o.join(", ")}, or ${e}`}}s.length>0&&(n+=" or ")}switch(s.length){case 0:break;case 1:s[0].toLowerCase()!==s[0]&&(n+="an "),n+=`${s[0]}`;break;case 2:n+=`one of ${s[0]} or ${s[1]}`;break;default:{const e=s.pop();n+=`one of ${s.join(", ")}, or ${e}`}}if(null==r)n+=`. Received ${r}`;else if("function"==typeof r&&r.name)n+=`. Received function ${r.name}`;else if("object"==typeof r){var l;null!==(l=r.constructor)&&void 0!==l&&l.name?n+=`. Received an instance of ${r.constructor.name}`:n+=`. Received ${i(r,{depth:-1})}`}else{let e=i(r,{colors:!1});e.length>25&&(e=`${e.slice(0,25)}...`),n+=`. Received type ${typeof r} (${e})`}return n}),TypeError),p("ERR_INVALID_ARG_VALUE",((e,t,r="is invalid")=>{let n=i(t);return n.length>128&&(n=n.slice(0,128)+"..."),`The ${e.includes(".")?"property":"argument"} '${e}' ${r}. Received ${n}`}),TypeError),p("ERR_INVALID_RETURN_VALUE",((e,t,r)=>{var n;return`Expected ${e} to be returned from the "${t}" function but got ${null!=r&&null!==(n=r.constructor)&&void 0!==n&&n.name?`instance of ${r.constructor.name}`:"type "+typeof r}.`}),TypeError),p("ERR_MISSING_ARGS",((...e)=>{let t;d(e.length>0,"At least one arg needs to be specified");const r=e.length;switch(e=(Array.isArray(e)?e:[e]).map((e=>`"${e}"`)).join(" or "),r){case 1:t+=`The ${e[0]} argument`;break;case 2:t+=`The ${e[0]} and ${e[1]} arguments`;break;default:{const r=e.pop();t+=`The ${e.join(", ")}, and ${r} arguments`}}return`${t} must be specified`}),TypeError),p("ERR_OUT_OF_RANGE",((e,t,r)=>{let n;return d(t,'Missing "range" argument'),Number.isInteger(r)&&Math.abs(r)>2**32?n=h(String(r)):"bigint"==typeof r?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=h(n)),n+="n"):n=i(r),`The value of "${e}" is out of range. It must be ${t}. Received ${n}`}),RangeError),p("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error),p("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error),p("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error),p("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error),p("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error),p("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),p("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error),p("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error),p("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error),p("ERR_STREAM_WRITE_AFTER_END","write after end",Error),p("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError),e.exports={AbortError:y,aggregateTwoErrors:f((function(e,t){if(e&&t&&e!==t){if(Array.isArray(t.errors))return t.errors.push(e),t;const r=new o([t,e],t.message);return r.code=t.code,r}return e||t})),hideStackFrames:f,codes:l}},11122:e=>{"use strict";e.exports={ArrayIsArray:e=>Array.isArray(e),ArrayPrototypeIncludes:(e,t)=>e.includes(t),ArrayPrototypeIndexOf:(e,t)=>e.indexOf(t),ArrayPrototypeJoin:(e,t)=>e.join(t),ArrayPrototypeMap:(e,t)=>e.map(t),ArrayPrototypePop:(e,t)=>e.pop(t),ArrayPrototypePush:(e,t)=>e.push(t),ArrayPrototypeSlice:(e,t,r)=>e.slice(t,r),Error,FunctionPrototypeCall:(e,t,...r)=>e.call(t,...r),FunctionPrototypeSymbolHasInstance:(e,t)=>Function.prototype[Symbol.hasInstance].call(e,t),MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER,NumberMIN_SAFE_INTEGER:Number.MIN_SAFE_INTEGER,NumberParseInt:Number.parseInt,ObjectDefineProperties:(e,t)=>Object.defineProperties(e,t),ObjectDefineProperty:(e,t,r)=>Object.defineProperty(e,t,r),ObjectGetOwnPropertyDescriptor:(e,t)=>Object.getOwnPropertyDescriptor(e,t),ObjectKeys:e=>Object.keys(e),ObjectSetPrototypeOf:(e,t)=>Object.setPrototypeOf(e,t),Promise,PromisePrototypeCatch:(e,t)=>e.catch(t),PromisePrototypeThen:(e,t,r)=>e.then(t,r),PromiseReject:e=>Promise.reject(e),ReflectApply:Reflect.apply,RegExpPrototypeTest:(e,t)=>e.test(t),SafeSet:Set,String,StringPrototypeSlice:(e,t,r)=>e.slice(t,r),StringPrototypeToLowerCase:e=>e.toLowerCase(),StringPrototypeToUpperCase:e=>e.toUpperCase(),StringPrototypeTrim:e=>e.trim(),Symbol,SymbolFor:Symbol.for,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,TypedArrayPrototypeSet:(e,t,r)=>e.set(t,r),Uint8Array}},52092:(e,t,r)=>{"use strict";const n=r(48834),i=Object.getPrototypeOf((async function(){})).constructor,a=globalThis.Blob||n.Blob,o=void 0!==a?function(e){return e instanceof a}:function(e){return!1};class s extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError("Expected input to be an Array, got "+typeof e);let t="";for(let r=0;r{e=r,t=n})),resolve:e,reject:t}},promisify:e=>new Promise(((t,r)=>{e(((e,...n)=>e?r(e):t(...n)))})),debuglog:()=>function(){},format:(e,...t)=>e.replace(/%([sdifj])/g,(function(...[e,r]){const n=t.shift();return"f"===r?n.toFixed(6):"j"===r?JSON.stringify(n):"s"===r&&"object"==typeof n?`${n.constructor!==Object?n.constructor.name:""} {}`.trim():n.toString()})),inspect(e){switch(typeof e){case"string":if(e.includes("'")){if(!e.includes('"'))return`"${e}"`;if(!e.includes("`")&&!e.includes("${"))return`\`${e}\``}return`'${e}'`;case"number":return isNaN(e)?"NaN":Object.is(e,-0)?String(e):e;case"bigint":return`${String(e)}n`;case"boolean":case"undefined":return String(e);case"object":return"{}"}},types:{isAsyncFunction:e=>e instanceof i,isArrayBufferView:e=>ArrayBuffer.isView(e)},isBlob:o},e.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")},62955:(e,t,r)=>{const{Buffer:n}=r(48834),{ObjectDefineProperty:i,ObjectKeys:a,ReflectApply:o}=r(11122),{promisify:{custom:s}}=r(52092),{streamReturningOperators:c,promiseReturningOperators:u}=r(51273),{codes:{ERR_ILLEGAL_CONSTRUCTOR:l}}=r(79865),d=r(9732),{pipeline:h}=r(63495),{destroyer:p}=r(12262),f=r(59885),y=r(59419),g=r(82211),m=e.exports=r(13798).Stream;m.isDisturbed=g.isDisturbed,m.isErrored=g.isErrored,m.isReadable=g.isReadable,m.Readable=r(20182);for(const _ of a(c)){const w=c[_];function b(...e){if(new.target)throw l();return m.Readable.from(o(w,this,e))}i(b,"name",{__proto__:null,value:w.name}),i(b,"length",{__proto__:null,value:w.length}),i(m.Readable.prototype,_,{__proto__:null,value:b,enumerable:!1,configurable:!0,writable:!0})}for(const T of a(u)){const S=u[T];function b(...e){if(new.target)throw l();return o(S,this,e)}i(b,"name",{__proto__:null,value:S.name}),i(b,"length",{__proto__:null,value:S.length}),i(m.Readable.prototype,T,{__proto__:null,value:b,enumerable:!1,configurable:!0,writable:!0})}m.Writable=r(70080),m.Duplex=r(72852),m.Transform=r(1112),m.PassThrough=r(34584),m.pipeline=h;const{addAbortSignal:v}=r(53952);m.addAbortSignal=v,m.finished=f,m.destroy=p,m.compose=d,i(m,"promises",{__proto__:null,configurable:!0,enumerable:!0,get:()=>y}),i(h,s,{__proto__:null,enumerable:!0,get:()=>y.pipeline}),i(f,s,{__proto__:null,enumerable:!0,get:()=>y.finished}),m.Stream=m,m._isUint8Array=function(e){return e instanceof Uint8Array},m._uint8ArrayToBuffer=function(e){return n.from(e.buffer,e.byteOffset,e.byteLength)}},59419:(e,t,r)=>{"use strict";const{ArrayPrototypePop:n,Promise:i}=r(11122),{isIterable:a,isNodeStream:o,isWebStream:s}=r(82211),{pipelineImpl:c}=r(63495),{finished:u}=r(59885);r(62955),e.exports={finished:u,pipeline:function(...e){return new i(((t,r)=>{let i,u;const l=e[e.length-1];if(l&&"object"==typeof l&&!o(l)&&!a(l)&&!s(l)){const t=n(e);i=t.signal,u=t.end}c(e,((e,n)=>{e?r(e):t(n)}),{signal:i,end:u})}))}}},88146:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReadableWebToNodeStream=void 0;const n=r(73635);class i extends n.Readable{constructor(e){super(),this.bytesRead=0,this.released=!1,this.reader=e.getReader()}async _read(){if(this.released)return void this.push(null);this.pendingRead=this.reader.read();const e=await this.pendingRead;delete this.pendingRead,e.done||this.released?this.push(null):(this.bytesRead+=e.value.length,this.push(e.value))}async waitForReadToComplete(){this.pendingRead&&await this.pendingRead}async close(){await this.syncAndRelease()}async syncAndRelease(){this.released=!0,await this.waitForReadToComplete(),await this.reader.releaseLock()}}t.ReadableWebToNodeStream=i},14703:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"==typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,a,o,s,c;if("string"==typeof t&&(a="not ",t.substr(0,4)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-9,r)===t}(e," argument"))o="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var u=("number"!=typeof c&&(c=0),c+1>(s=e).length||-1===s.indexOf(".",c)?"argument":"property");o='The "'.concat(e,'" ').concat(u," ").concat(i," ").concat(n(t,"type"))}return o+". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},60752:(e,t,r)=>{"use strict";var n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var i=r(18418),a=r(92835);r(91285)(u,i);for(var o=n(a.prototype),s=0;s{"use strict";e.exports=i;var n=r(56625);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(91285)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},18418:(e,t,r)=>{"use strict";var n;e.exports=O,O.ReadableState=S,r(22699).EventEmitter;var i,a=function(e,t){return e.listeners(t).length},o=r(56547),s=r(48834).Buffer,c=(void 0!==r.g?r.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},u=r(72056);i=u&&u.debuglog?u.debuglog("stream"):function(){};var l,d,h,p=r(33207),f=r(46425),y=r(7602).getHighWaterMark,g=r(14703).q,m=g.ERR_INVALID_ARG_TYPE,b=g.ERR_STREAM_PUSH_AFTER_EOF,v=g.ERR_METHOD_NOT_IMPLEMENTED,_=g.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(91285)(O,o);var w=f.errorOrDestroy,T=["error","close","destroy","pause","resume"];function S(e,t,i){n=n||r(60752),e=e||{},"boolean"!=typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=y(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(l||(l=r(30214).StringDecoder),this.decoder=new l(e.encoding),this.encoding=e.encoding)}function O(e){if(n=n||r(60752),!(this instanceof O))return new O(e);var t=this instanceof n;this._readableState=new S(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),o.call(this)}function E(e,t,r,n,a){i("readableAddChunk",t);var o,u=e._readableState;if(null===t)u.reading=!1,function(e,t){if(i("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?I(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,P(e)))}}(e,u);else if(a||(o=function(e,t){var r,n;return n=t,s.isBuffer(n)||n instanceof c||"string"==typeof t||void 0===t||e.objectMode||(r=new m("chunk",["string","Buffer","Uint8Array"],t)),r}(u,t)),o)w(e,o);else if(u.objectMode||t&&t.length>0)if("string"==typeof t||u.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)u.endEmitted?w(e,new _):x(e,u,t,!0);else if(u.ended)w(e,new b);else{if(u.destroyed)return!1;u.reading=!1,u.decoder&&!r?(t=u.decoder.write(t),u.objectMode||0!==t.length?x(e,u,t,!1):D(e,u)):x(e,u,t,!1)}else n||(u.reading=!1,D(e,u));return!u.ended&&(u.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=A?e=A:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function I(e){var t=e._readableState;i("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(i("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(P,e))}function P(e){var t=e._readableState;i("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,L(e)}function D(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(N,e,t))}function N(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function C(e){i("readable nexttick read 0"),e.read(0)}function M(e,t){i("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),L(e),t.flowing&&!t.reading&&e.read(0)}function L(e){var t=e._readableState;for(i("flow",t.flowing);t.flowing&&null!==e.read(););}function k(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function F(e){var t=e._readableState;i("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(B,t,e))}function B(e,t){if(i("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function U(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return i("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):I(this),null;if(0===(e=R(e,t))&&t.ended)return 0===t.length&&F(this),null;var n,a=t.needReadable;return i("need readable",a),(0===t.length||t.length-e0?k(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&F(this)),null!==n&&this.emit("data",n),n},O.prototype._read=function(e){w(this,new v("_read()"))},O.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,i("pipe count=%d opts=%j",n.pipesCount,t);var o=t&&!1===t.end||e===process.stdout||e===process.stderr?f:s;function s(){i("onend"),e.end()}n.endEmitted?process.nextTick(o):r.once("end",o),e.on("unpipe",(function t(a,o){i("onunpipe"),a===r&&o&&!1===o.hasUnpiped&&(o.hasUnpiped=!0,i("cleanup"),e.removeListener("close",h),e.removeListener("finish",p),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",t),r.removeListener("end",s),r.removeListener("end",f),r.removeListener("data",l),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||c())}));var c=function(e){return function(){var t=e._readableState;i("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,L(e))}}(r);e.on("drain",c);var u=!1;function l(t){i("ondata");var a=e.write(t);i("dest.write",a),!1===a&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==U(n.pipes,e))&&!u&&(i("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function d(t){i("onerror",t),f(),e.removeListener("error",d),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",p),f()}function p(){i("onfinish"),e.removeListener("close",h),f()}function f(){i("unpipe"),r.unpipe(e)}return r.on("data",l),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",d),e.once("close",h),e.once("finish",p),e.emit("pipe",r),n.flowing||(i("pipe resume"),r.resume()),e},O.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,i("on readable",n.length,n.reading),n.length?I(this):n.reading||process.nextTick(C,this))),r},O.prototype.addListener=O.prototype.on,O.prototype.removeListener=function(e,t){var r=o.prototype.removeListener.call(this,e,t);return"readable"===e&&process.nextTick(j,this),r},O.prototype.removeAllListeners=function(e){var t=o.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||process.nextTick(j,this),t},O.prototype.resume=function(){var e=this._readableState;return e.flowing||(i("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(M,e,t))}(this,e)),e.paused=!1,this},O.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},O.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var a in e.on("end",(function(){if(i("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(a){i("wrapped data"),r.decoder&&(a=r.decoder.write(a)),r.objectMode&&null==a||(r.objectMode||a&&a.length)&&(t.push(a)||(n=!0,e.pause()))})),e)void 0===this[a]&&"function"==typeof e[a]&&(this[a]=function(t){return function(){return e[t].apply(e,arguments)}}(a));for(var o=0;o{"use strict";e.exports=l;var n=r(14703).q,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(60752);function u(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new a);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;for(e.entry=null;n;){var i=n.callback;t.pendingcb--,i(undefined),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}var i;e.exports=O,O.WritableState=S;var a,o={deprecate:r(5803)},s=r(56547),c=r(48834).Buffer,u=(void 0!==r.g?r.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},l=r(46425),d=r(7602).getHighWaterMark,h=r(14703).q,p=h.ERR_INVALID_ARG_TYPE,f=h.ERR_METHOD_NOT_IMPLEMENTED,y=h.ERR_MULTIPLE_CALLBACK,g=h.ERR_STREAM_CANNOT_PIPE,m=h.ERR_STREAM_DESTROYED,b=h.ERR_STREAM_NULL_VALUES,v=h.ERR_STREAM_WRITE_AFTER_END,_=h.ERR_UNKNOWN_ENCODING,w=l.errorOrDestroy;function T(){}function S(e,t,a){i=i||r(60752),e=e||{},"boolean"!=typeof a&&(a=t instanceof i),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=d(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new y;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(P,e,t),e._writableState.errorEmitted=!0,w(e,n)):(i(n),e._writableState.errorEmitted=!0,w(e,n),P(e,t))}(e,r,n,t,i);else{var a=R(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||A(e,r),n?process.nextTick(x,e,r,a,i):x(e,r,a,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function O(e){var t=this instanceof(i=i||r(60752));if(!t&&!a.call(O,this))return new O(e);this._writableState=new S(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),s.call(this)}function E(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new m("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function x(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),P(e,t)}function A(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,a=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,E(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new n(t),t.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,l=r.encoding,d=r.callback;if(E(e,t,!1,t.objectMode?1:u.length,u,l,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function R(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function I(e,t){e._final((function(r){t.pendingcb--,r&&w(e,r),t.prefinished=!0,e.emit("prefinish"),P(e,t)}))}function P(e,t){var r=R(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,process.nextTick(I,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(91285)(O,s),S.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(S.prototype,"buffer",{get:o.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(a=Function.prototype[Symbol.hasInstance],Object.defineProperty(O,Symbol.hasInstance,{value:function(e){return!!a.call(this,e)||this===O&&e&&e._writableState instanceof S}})):a=function(e){return e instanceof this},O.prototype.pipe=function(){w(this,new g)},O.prototype.write=function(e,t,r){var n,i=this._writableState,a=!1,o=!i.objectMode&&(n=e,c.isBuffer(n)||n instanceof u);return o&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"==typeof t&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=T),i.ending?function(e,t){var r=new v;w(e,r),process.nextTick(t,r)}(this,r):(o||function(e,t,r,n){var i;return null===r?i=new b:"string"==typeof r||t.objectMode||(i=new p("chunk",["string","Buffer"],r)),!i||(w(e,i),process.nextTick(n,i),!1)}(this,i,e,r))&&(i.pendingcb++,a=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=c.from(t,r)),t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var u=t.length-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(O.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(O.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),O.prototype._write=function(e,t,r){r(new f("_write()"))},O.prototype._writev=null,O.prototype.end=function(e,t,r){var n=this._writableState;return"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,P(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(O.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(O.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),O.prototype.destroy=l.destroy,O.prototype._undestroy=l.undestroy,O.prototype._destroy=function(e,t){t(e)}},73944:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(26389),o=Symbol("lastResolve"),s=Symbol("lastReject"),c=Symbol("error"),u=Symbol("ended"),l=Symbol("lastPromise"),d=Symbol("handlePromise"),h=Symbol("stream");function p(e,t){return{value:e,done:t}}function f(e){var t=e[o];if(null!==t){var r=e[h].read();null!==r&&(e[l]=null,e[o]=null,e[s]=null,t(p(r,!1)))}}function y(e){process.nextTick(f,e)}var g=Object.getPrototypeOf((function(){})),m=Object.setPrototypeOf((i(n={get stream(){return this[h]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[h].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[c]?r(e[c]):t(p(void 0,!0))}))}));var r,n=this[l];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var i=this[h].read();if(null!==i)return Promise.resolve(p(i,!1));r=new Promise(this[d])}return this[l]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[h].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),g);e.exports=function(e){var t,r=Object.create(m,(i(t={},h,{value:e,writable:!0}),i(t,o,{value:null,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,c,{value:null,writable:!0}),i(t,u,{value:e._readableState.endEmitted,writable:!0}),i(t,d,{value:function(e,t){var n=r[h].read();n?(r[l]=null,r[o]=null,r[s]=null,e(p(n,!1))):(r[o]=e,r[s]=t)},writable:!0}),t));return r[l]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[s];return null!==t&&(r[l]=null,r[o]=null,r[s]=null,t(e)),void(r[c]=e)}var n=r[o];null!==n&&(r[l]=null,r[o]=null,r[s]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",y.bind(null,r)),r}},33207:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=a.data,r=i,n=o,c.prototype.copy.call(t,r,n),o+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0==(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0==(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:l,value:function(e,t){return u(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&o(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}()},46425:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,i){var a=this,o=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return o||s?(i?i(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!i&&e?a._writableState?a._writableState.errorEmitted?process.nextTick(r,a):(a._writableState.errorEmitted=!0,process.nextTick(t,a,e)):process.nextTick(t,a,e):i?(process.nextTick(r,a),i(e)):process.nextTick(r,a)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},26389:(e,t,r)=>{"use strict";var n=r(14703).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,a){if("function"==typeof r)return e(t,null,r);r||(r={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},94065:(e,t,r)=>{"use strict";var n,i=r(14703).q,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function u(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){l||(l=e),e&&h.forEach(c),a||(h.forEach(c),d(l))}))}));return t.reduce(u)}},7602:(e,t,r)=>{"use strict";var n=r(14703).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},56547:(e,t,r)=>{e.exports=r(22699).EventEmitter},73635:(e,t,r)=>{(t=e.exports=r(18418)).Stream=t,t.Readable=t,t.Writable=r(92835),t.Duplex=r(60752),t.Transform=r(56625),t.PassThrough=r(33019),t.finished=r(26389),t.pipeline=r(94065)},84690:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(45186),t)},45186:(e,t)=>{"use strict";function r(e){const t=[];let r=0;for(;re.join(""))).join("/")}function n(e,t){let n=t+1;t>=0?"/"===e[t+1]&&"/"===e[t+2]&&(n=t+3):"/"===e[0]&&"/"===e[1]&&(n=2);const i=e.indexOf("/",n);return i<0?e:e.substr(0,i)+r(e.substr(i))}function i(e){return!e||"#"===e||"?"===e||"/"===e}Object.defineProperty(t,"__esModule",{value:!0}),t.removeDotSegmentsOfPath=t.removeDotSegments=t.resolve=void 0,t.resolve=function(e,t){const i=(t=t||"").indexOf("#");if(i>0&&(t=t.substr(0,i)),!e.length){if(t.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${t}' for value '${e}'`);return t}if(e.startsWith("?")){const r=t.indexOf("?");return r>0&&(t=t.substr(0,r)),t+e}if(e.startsWith("#"))return t+e;if(!t.length){const t=e.indexOf(":");if(t<0)throw new Error(`Found invalid relative IRI '${e}' for a missing baseIRI`);return n(e,t)}const a=e.indexOf(":");if(a>=0)return n(e,a);const o=t.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${t}' for value '${e}'`);const s=t.substr(0,o+1);if(0===e.indexOf("//"))return s+n(e,a);let c;if(t.indexOf("//",o)===o+1){if(c=t.indexOf("/",o+3),c<0)return t.length>o+3?t+"/"+n(e,a):s+n(e,a)}else if(c=t.indexOf("/",o+1),c<0)return s+n(e,a);if(0===e.indexOf("/"))return t.substr(0,c)+r(e);let u=t.substr(c);const l=u.lastIndexOf("/");return l>=0&&l{var n=r(48834),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),o.prototype=Object.create(i.prototype),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},76481:e=>{var t=function(){var e=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},t=[7,12,13,14,15,16,20,25,115,130],r=[7,13,16,20,25,115,130],n=[7,13,16,115,130],i=[1,25],a=[1,29],o=[1,27],s=[1,28],c=[13,16,115,130],u=[13,16,28,38,40,42,44,46,48,53,56,61,67,85,87,92,93,95,96,102,110,111,115,119,120,126,128,129,130,131,132,133,134,135,136],l=[28,56],d=[1,42],h=[46,48,53,56],p=[1,54],f=[1,60],y=[1,56],g=[1,57],m=[1,58],b=[1,63],v=[1,64],_=[1,65],w=[1,66],T=[1,67],S=[1,68],O=[1,75],E=[28,46,48,53,56],x=[28,42,46,48,53,56],A=[13,16,28,38,40,42,44,46,48,53,56,92,115,119,120,130,131,132,133,134,135,136],R=[13,16,28,38,40,42,44,46,48,53,56,67,85,87,92,95,96,115,119,120,126,128,129,130,131,132,133,134,135,136],I=[13,16,38,40,44,92,115,119,120,130,131,132,133,134,135,136],P=[13,16,28,38,40,42,44,46,48,53,56,67,85,87,92,95,96,115,117,118,119,120,126,128,129,130,131,132,133,134,135,136],D=[13,16,28,56,115,130],N=[13,16,38,58,87,96,109,115,126,130],j=[1,116],C=[1,112],M=[1,108],L=[1,114],k=[1,111],F=[7,13,16,20,25,44,48,53,56,67,85,87,95,96,115,128,129,130],B=[48,53],U=[48,53,87,96,126],q=[13,16,44,48,53,56,85,87,95,96,115,128,129,130],V=[1,126],Q=[13,16,40,44,48,53,56,85,87,95,96,115,128,129,130],$=[1,129],H=[48,53,67,87,96,126],G=[13,16,40,44,48,53,56,67,85,87,95,96,115,128,129,130],z=[1,133],K=[13,16,40,44,48,53,56,67,85,87,95,96,102,115,128,129,130],X=[13,16,40,44,48,53,56,67,85,87,93,95,96,102,110,111,115,128,129,130],W=[1,151],J=[1,153],Y=[1,156],Z=[1,157],ee=[1,158],te=[1,167],re=[1,175],ne=[13,16,44,48,53,56,67,85,87,95,96,115,128,129,130],ie=[13,16,44,48,53,56,67,85,87,95,96,115,126,128,129,130],ae=[13,16,46,92,115,119,120,130,131,132,133,134,135,136],oe={trace:function(){},yy:{},symbols_:{error:2,shaclDoc:3,shaclDoc_repetition0:4,shaclDoc_repetition1:5,ttlSection:6,EOF:7,directive:8,baseDecl:9,importsDecl:10,prefixDecl:11,KW_BASE:12,IRIREF:13,KW_IMPORTS:14,KW_PREFIX:15,PNAME_NS:16,nodeShapeIri:17,iri:18,nodeShape:19,KW_SHAPE:20,nodeShape_option0:21,nodeShape_option1:22,nodeShapeBody:23,shapeClass:24,KW_SHAPE_CLASS:25,shapeClass_option0:26,turtleAnnotation:27,";":28,turtleAnnotation2:29,predicate:30,turtleAnnotation2_option0:31,objectList:32,object:33,objectList_repetition0:34,iriOrLiteral:35,blankNodeSection:36,list:37,"(":38,list_repetition0:39,")":40,objectTail:41,",":42,LB:43,"[":44,RB:45,"]":46,LP:47,"%":48,RP:49,pcSection:50,iriHead:51,ttlStatement:52,".":53,ttlSection_repetition0:54,startNodeShape:55,"{":56,endNodeShape:57,"}":58,nodeShapeBody_repetition0:59,targetClass:60,"->":61,targetClass_repetition_plus0:62,constraint:63,constraint_group0:64,constraint_option0:65,orNotComponent:66,"|":67,nodeNot:68,nodeOrEmit:69,nodeOr:70,nodeOr_repetition_plus0:71,nodeValue:72,negation:73,nodeValue_group0:74,"=":75,iriOrLiteralOrArray:76,propertyShape:77,path:78,propertyShape_repetition0:79,propertyOrComponent:80,propertyNot:81,propertyOr:82,propertyOr_repetition_plus0:83,propertyAtom:84,NODEKIND:85,shapeRef:86,PARAM:87,propertyCount:88,propertyMinCount:89,"..":90,propertyMaxCount:91,INTEGER:92,"*":93,shapeRef_group0:94,"@":95,"!":96,pathAlternative:97,additionalAlternative:98,pathSequence:99,pathAlternative_repetition_plus0:100,additionalSequence:101,"/":102,pathEltOrInverse:103,pathSequence_repetition_plus0:104,pathElt:105,pathPrimary:106,pathMod:107,pathInverse:108,"^":109,"?":110,"+":111,iriOrLiteralOrArray_repetition0:112,literal:113,iri_group0:114,a:115,string:116,LANGTAG:117,"^^":118,DECIMAL:119,DOUBLE:120,literal_group0:121,string_group0:122,string_group1:123,shaclDoc_repetition1_group0:124,constraint_group0_repetition_plus0:125,TARGET:126,propertyShape_repetition0_group0:127,ATPNAME_LN:128,ATPNAME_NS:129,PNAME_LN:130,KW_TRUE:131,KW_FALSE:132,STRING_LITERAL1:133,STRING_LITERAL2:134,STRING_LITERAL_LONG1:135,STRING_LITERAL_LONG2:136,$accept:0,$end:1},terminals_:{2:"error",7:"EOF",12:"KW_BASE",13:"IRIREF",14:"KW_IMPORTS",15:"KW_PREFIX",16:"PNAME_NS",20:"KW_SHAPE",25:"KW_SHAPE_CLASS",28:";",38:"(",40:")",42:",",44:"[",46:"]",48:"%",53:".",56:"{",58:"}",61:"->",67:"|",75:"=",85:"NODEKIND",87:"PARAM",90:"..",92:"INTEGER",93:"*",95:"@",96:"!",102:"/",109:"^",110:"?",111:"+",115:"a",117:"LANGTAG",118:"^^",119:"DECIMAL",120:"DOUBLE",126:"TARGET",128:"ATPNAME_LN",129:"ATPNAME_NS",130:"PNAME_LN",131:"KW_TRUE",132:"KW_FALSE",133:"STRING_LITERAL1",134:"STRING_LITERAL2",135:"STRING_LITERAL_LONG1",136:"STRING_LITERAL_LONG2"},productions_:[0,[3,4],[8,1],[8,1],[8,1],[9,2],[10,2],[11,3],[17,1],[19,5],[24,4],[27,2],[29,2],[30,2],[32,2],[33,1],[33,1],[33,1],[37,3],[41,2],[43,1],[45,1],[36,3],[47,1],[49,1],[50,3],[51,1],[52,3],[6,1],[55,1],[57,1],[23,3],[60,2],[63,3],[66,2],[69,1],[70,1],[70,2],[68,1],[68,2],[72,3],[77,2],[80,2],[82,1],[82,2],[81,1],[81,2],[84,1],[84,1],[84,1],[84,3],[84,1],[88,5],[89,1],[91,1],[91,1],[86,1],[86,2],[73,1],[78,1],[98,2],[97,1],[97,2],[101,2],[99,1],[99,2],[105,1],[105,2],[103,1],[103,2],[108,1],[107,1],[107,1],[107,1],[106,1],[106,3],[76,1],[76,3],[35,1],[35,1],[18,1],[18,1],[18,1],[113,1],[113,2],[113,3],[113,1],[113,1],[113,1],[113,1],[116,1],[116,1],[4,0],[4,2],[124,1],[124,1],[5,0],[5,2],[21,0],[21,1],[22,0],[22,1],[26,0],[26,1],[31,0],[31,1],[34,0],[34,2],[39,0],[39,2],[54,0],[54,2],[59,0],[59,2],[62,1],[62,2],[125,1],[125,2],[64,1],[64,1],[65,0],[65,1],[71,1],[71,2],[74,1],[74,1],[127,1],[127,1],[79,0],[79,2],[83,1],[83,2],[94,1],[94,1],[100,1],[100,2],[104,1],[104,2],[112,0],[112,2],[114,1],[114,1],[121,1],[121,1],[122,1],[122,1],[123,1],[123,1]],performAction:function(e,t,r,n,i,a,o){var s,c,u=a.length-1;switch(i){case 1:this.$=Re(Ne.factory.namedNode(Te("")),Ne.factory.namedNode(ce),Ne.factory.namedNode(be+"Ontology"));break;case 5:Ne.base=Ne.factory.namedNode(a[u].slice(1,-1)),Ne.n3Parser._setBase(Ne.base.value);break;case 6:this.$=Re(Ne.base,Ne.factory.namedNode(be+"imports"),Ne.factory.namedNode(a[u].slice(1,-1)));break;case 7:this.$=Ne.prefixes[a[u-1].substr(0,a[u-1].length-1)]=Te(a[u]);break;case 8:Ne.nodeShapeStack=!1,Re(Ne.currentNodeShape=a[u],Ne.factory.namedNode(ce),Ne.factory.namedNode(me+"NodeShape"));break;case 10:this.$=Re(Ne.currentNodeShape,Ne.factory.namedNode(ce),Ne.factory.namedNode(ve+"Class"));break;case 11:this.$=Pe();break;case 13:this.$=a[u].forEach((e=>Re(Ne.currentNodeShape,a[u-1],e)));break;case 14:this.$=[a[u-1],...a[u]];break;case 18:this.$=we(a[u-1],!0);break;case 19:case 34:case 42:case 60:case 63:this.$=a[u];break;case 20:Ne.tempCurrentNodeShape=Ne.currentNodeShape,this.$=Ne.currentNodeShape=Ee();break;case 21:case 24:Ne.currentNodeShape=Ne.tempCurrentNodeShape;break;case 22:case 31:this.$=a[u-2];break;case 23:Ne.tempCurrentNodeShape=Ne.currentNodeShape,Ne.currentNodeShape=Ne.currentPropertyNode;break;case 26:Ne.currentNodeShape=a[u];break;case 29:Ne.nodeShapeStack?(Ne.nodeShapeStack.push(Ne.currentNodeShape),Re(Ne.currentPropertyNode,Ne.factory.namedNode(me+"node"),Ne.currentNodeShape=Ee())):Ne.nodeShapeStack=[],this.$=Ne.currentNodeShape;break;case 30:Ne.nodeShapeStack.length>0&&(Ne.currentNodeShape=Ne.nodeShapeStack.pop());break;case 32:this.$=a[u].forEach((e=>{Re(Ne.currentNodeShape,Ne.factory.namedNode(me+"targetClass"),e)}));break;case 35:this.$=Re(Ne.currentNodeShape,Ne.factory.namedNode(me+a[u][0]),a[u][1]);break;case 36:break;case 37:const e=we([a[u-1],...a[u]].map((e=>{const t=Ee();return Re(t,Ne.factory.namedNode(me+e[0]),e[1]),t})));this.$=["or",e];break;case 39:case 46:this.$=function(e,t,r){const n=Ee();return Re(n,Ne.factory.namedNode(me+t),r),[e,n]}("not",...a[u]);break;case 40:case 50:this.$=[a[u-2],a[u]];break;case 43:this.$=a[u]&&Ie(...a[u]);break;case 44:this.$=Ie("or",we([a[u-1],...a[u]].map((e=>{const t=Ee();return Re(t,Ne.factory.namedNode(me+e[0]),e[1]),t}))));break;case 47:this.$=[_e[a[u].value]?"datatype":"class",a[u]];break;case 48:this.$=["nodeKind",Ne.factory.namedNode(me+a[u])];break;case 49:this.$=["node",Ne.factory.namedNode(a[u])];break;case 51:this.$=void 0;break;case 53:this.$=a[u]>0&&Ie("minCount",Oe(a[u],pe));break;case 54:this.$=Ie("maxCount",Oe(a[u],pe));break;case 56:this.$=Se(a[u].slice(1));break;case 57:this.$=Te(a[u]);break;case 59:Re(Ne.currentNodeShape,Ne.factory.namedNode(me+"property"),Ne.currentPropertyNode=Ee()),Ie("path",a[u]);break;case 62:const t=Ee();Re(t,Ne.factory.namedNode(me+"alternativePath"),we([a[u-1],...a[u]])),this.$=t;break;case 65:this.$=we([a[u-1],...a[u]]);break;case 67:Re(this.$=Ee(),Ne.factory.namedNode(me+a[u]),a[u-1]);break;case 69:Re(this.$=Ee(),Ne.factory.namedNode(me+"inversePath"),a[u]);break;case 71:this.$="zeroOrOnePath";break;case 72:this.$="zeroOrMorePath";break;case 73:this.$="oneOrMorePath";break;case 75:this.$=a[u-1];break;case 77:this.$=we(a[u-1]);break;case 80:this.$=Ne.factory.namedNode(Te(a[u]));break;case 81:this.$=Ne.factory.namedNode(Se(a[u]));break;case 82:this.$=Pe(Ne.factory.namedNode(ce));break;case 83:this.$=Oe(a[u]);break;case 84:this.$=(s=a[u-1],c=lowercase(a[u].substr(1)),Ne.factory.literal(s,c));break;case 85:this.$=Oe(a[u-2],a[u]);break;case 86:this.$=Oe(a[u],pe);break;case 87:this.$=Oe(a[u],fe);break;case 88:this.$=Oe(a[u].toLowerCase(),ye);break;case 89:this.$=Oe(a[u].toLowerCase(),ge);break;case 90:this.$=Ae(a[u],1);break;case 91:this.$=Ae(a[u],3);break;case 92:case 96:case 106:case 108:case 110:case 112:case 128:case 138:this.$=[];break;case 93:case 97:case 107:case 109:case 111:case 113:case 115:case 117:case 123:case 129:case 131:case 135:case 137:case 139:a[u-1].push(a[u]);break;case 114:case 116:case 122:case 130:case 134:case 136:this.$=[a[u]]}},table:[e(t,[2,92],{3:1,4:2}),{1:[3]},e(r,[2,96],{5:3,8:4,9:5,10:6,11:7,12:[1,8],14:[1,9],15:[1,10]}),e(n,[2,110],{6:11,124:12,54:13,19:14,24:15,20:[1,16],25:[1,17]}),e(t,[2,93]),e(t,[2,2]),e(t,[2,3]),e(t,[2,4]),{13:[1,18]},{13:[1,19]},{16:[1,20]},{7:[1,21]},e(r,[2,97]),{7:[2,28],13:i,16:a,18:24,51:23,52:22,114:26,115:o,130:s},e(r,[2,94]),e(r,[2,95]),{13:i,16:a,17:30,18:31,114:26,115:o,130:s},{13:i,16:a,17:32,18:31,114:26,115:o,130:s},e(t,[2,5]),e(t,[2,6]),{13:[1,33]},{1:[2,1]},e(n,[2,111]),{13:i,16:a,18:36,29:34,30:35,114:26,115:o,130:s},e(c,[2,26]),e(u,[2,80]),e(u,[2,81]),e(u,[2,82]),e(u,[2,140]),e(u,[2,141]),e(l,[2,98],{21:37,60:38,61:[1,39]}),e([28,56,61],[2,8]),{26:40,27:41,28:d,56:[2,102]},e(t,[2,7]),{53:[1,43]},e(h,[2,104],{31:44,27:45,28:d}),{13:i,16:a,18:51,32:46,33:47,35:48,36:49,37:50,38:p,43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},{22:69,27:70,28:d,56:[2,100]},e(l,[2,99]),{13:i,16:a,18:72,62:71,114:26,115:o,130:s},{23:73,55:74,56:O},{56:[2,103]},{13:i,16:a,18:36,29:76,30:35,114:26,115:o,130:s},e(n,[2,27]),e(h,[2,12]),e(h,[2,105]),e(E,[2,13]),e(x,[2,106],{34:77}),e(A,[2,15]),e(A,[2,16]),e(A,[2,17]),e(R,[2,78]),e(R,[2,79]),{13:i,16:a,18:36,29:78,30:35,114:26,115:o,130:s},e(I,[2,108],{39:79}),e(R,[2,83],{117:[1,80],118:[1,81]}),e(R,[2,86]),e(R,[2,87]),e(R,[2,88]),e(R,[2,89]),e(c,[2,20]),e(P,[2,90]),e(P,[2,91]),e(R,[2,142]),e(R,[2,143]),e(P,[2,144]),e(P,[2,145]),e(P,[2,146]),e(P,[2,147]),{23:82,55:74,56:O},{56:[2,101]},e(l,[2,32],{114:26,18:83,13:i,16:a,115:o,130:s}),e(D,[2,114]),e(r,[2,10]),e(N,[2,112],{59:84}),e(N,[2,29]),e(h,[2,11]),e(E,[2,14],{41:85,42:[1,86]}),{45:87,46:[1,88]},{13:i,16:a,18:51,33:90,35:48,36:49,37:50,38:p,40:[1,89],43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(R,[2,84]),{13:i,16:a,18:91,114:26,115:o,130:s},e(r,[2,9]),e(D,[2,115]),{13:i,16:a,18:115,38:j,57:92,58:[1,94],63:93,64:95,68:102,69:98,70:100,72:104,73:105,74:107,77:97,78:99,87:C,96:M,97:101,99:103,103:106,105:109,106:113,108:110,109:L,114:26,115:o,125:96,126:k,130:s},e(x,[2,107]),{13:i,16:a,18:51,33:117,35:48,36:49,37:50,38:p,43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(A,[2,22]),e(A,[2,21]),e(A,[2,18]),e(I,[2,109]),e(R,[2,85]),e(F,[2,31]),e(N,[2,113]),e(F,[2,30]),{47:120,48:[1,121],50:119,53:[2,120],65:118},e(B,[2,118],{70:100,68:102,72:104,73:105,74:107,69:122,87:C,96:M,126:k}),e(B,[2,119]),e(U,[2,116]),e(q,[2,128],{79:123}),e(U,[2,35]),e(q,[2,59]),e(U,[2,36],{71:124,66:125,67:V}),e(Q,[2,61],{100:127,98:128,67:$}),e(H,[2,38]),{72:130,74:107,87:C,126:k},e(G,[2,64],{104:131,101:132,102:z}),{75:[1,134]},e([13,16,56,85,87,95,115,126,128,129,130],[2,58]),e(K,[2,68]),{13:i,16:a,18:115,38:j,105:135,106:113,114:26,115:o,130:s},{75:[2,124]},{75:[2,125]},e(K,[2,66],{107:136,93:[1,138],110:[1,137],111:[1,139]}),e([13,16,38,115,130],[2,70]),e(X,[2,74]),{13:i,16:a,18:115,38:j,97:140,99:103,103:106,105:109,106:113,108:110,109:L,114:26,115:o,130:s},e(x,[2,19]),{53:[1,141]},{53:[2,121]},{13:i,16:a,18:36,29:142,30:35,114:26,115:o,130:s},e(c,[2,23]),e(U,[2,117]),e(B,[2,41],{114:26,55:74,127:143,88:144,82:145,81:147,84:148,73:149,18:150,86:152,23:154,94:155,13:i,16:a,44:[1,146],56:O,85:W,87:J,95:Y,96:M,115:o,128:Z,129:ee,130:s}),e(U,[2,37],{66:159,67:V}),e(H,[2,122]),{68:160,72:104,73:105,74:107,87:C,96:M,126:k},e(Q,[2,62],{98:161,67:$}),e(G,[2,134]),{13:i,16:a,18:115,38:j,99:162,103:106,105:109,106:113,108:110,109:L,114:26,115:o,130:s},e(H,[2,39]),e(G,[2,65],{101:163,102:z}),e(K,[2,136]),{13:i,16:a,18:115,38:j,103:164,105:109,106:113,108:110,109:L,114:26,115:o,130:s},{13:i,16:a,18:51,35:166,44:te,76:165,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(K,[2,69]),e(K,[2,67]),e(K,[2,71]),e(K,[2,72]),e(K,[2,73]),{40:[1,168]},e(N,[2,33]),{48:[1,170],49:169},e(q,[2,129]),e(q,[2,126]),e(q,[2,127]),{89:171,92:[1,172]},e(q,[2,43],{83:173,80:174,67:re}),e(ne,[2,45]),{13:i,16:a,18:150,23:154,55:74,56:O,84:176,85:W,86:152,87:J,94:155,95:Y,114:26,115:o,128:Z,129:ee,130:s},e(ne,[2,47]),e(ne,[2,48]),e(ne,[2,49]),{75:[1,177]},e(ne,[2,51]),e(ne,[2,56]),{13:[1,178]},e(ne,[2,132]),e(ne,[2,133]),e(H,[2,123]),e(H,[2,34]),e(G,[2,135]),e(G,[2,60]),e(K,[2,137]),e(K,[2,63]),e(H,[2,40]),e(ie,[2,76]),e(ae,[2,138],{112:179}),e(X,[2,75]),{53:[2,25]},{53:[2,24]},{90:[1,180]},{90:[2,53]},e(q,[2,44],{80:181,67:re}),e(ne,[2,130]),{13:i,16:a,18:150,23:154,55:74,56:O,73:149,81:182,84:148,85:W,86:152,87:J,94:155,95:Y,96:M,114:26,115:o,128:Z,129:ee,130:s},e(ne,[2,46]),{13:i,16:a,18:51,35:166,44:te,76:183,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(ne,[2,57]),{13:i,16:a,18:51,35:185,46:[1,184],92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},{91:186,92:[1,187],93:[1,188]},e(ne,[2,131]),e(ne,[2,42]),e(ne,[2,50]),e(ie,[2,77]),e(ae,[2,139]),{46:[1,189]},{46:[2,54]},{46:[2,55]},e(q,[2,52])],defaultActions:{21:[2,1],41:[2,103],70:[2,101],111:[2,124],112:[2,125],119:[2,121],169:[2,25],170:[2,24],172:[2,53],187:[2,54],188:[2,55]},parseError:function(e,t){if(!t.recoverable){var r=new Error(e);throw r.hash=t,r}this.trace(e)},parse:function(e){var t=this,r=[0],n=[null],i=[],a=this.table,o="",s=0,c=0,u=0,l=i.slice.call(arguments,1),d=Object.create(this.lexer),h={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(h.yy[p]=this.yy[p]);d.setInput(e,h.yy),h.yy.lexer=d,h.yy.parser=this,void 0===d.yylloc&&(d.yylloc={});var f=d.yylloc;i.push(f);var y,g=d.options&&d.options.ranges;"function"==typeof h.yy.parseError?this.parseError=h.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var m,b,v,_,w,T,S,O,E,x={};;){if(v=r[r.length-1],this.defaultActions[v]?_=this.defaultActions[v]:(null==m&&(y=void 0,"number"!=typeof(y=d.lex()||1)&&(y=t.symbols_[y]||y),m=y),_=a[v]&&a[v][m]),void 0===_||!_.length||!_[0]){var A;for(T in E=[],a[v])this.terminals_[T]&&T>2&&E.push("'"+this.terminals_[T]+"'");A=d.showPosition?"Parse error on line "+(s+1)+":\n"+d.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(s+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:d.match,token:this.terminals_[m]||m,line:d.yylineno,loc:f,expected:E})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+m);switch(_[0]){case 1:r.push(m),n.push(d.yytext),i.push(d.yylloc),r.push(_[1]),m=null,b?(m=b,b=null):(c=d.yyleng,o=d.yytext,s=d.yylineno,f=d.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[_[1]][1],x.$=n[n.length-S],x._$={first_line:i[i.length-(S||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(S||1)].first_column,last_column:i[i.length-1].last_column},g&&(x._$.range=[i[i.length-(S||1)].range[0],i[i.length-1].range[1]]),void 0!==(w=this.performAction.apply(x,[o,c,s,h.yy,_[1],n,i].concat(l))))return w;S&&(r=r.slice(0,-1*S*2),n=n.slice(0,-1*S),i=i.slice(0,-1*S)),r.push(this.productions_[_[1]][0]),n.push(x.$),i.push(x._$),O=a[r[r.length-2]][r[r.length-1]],r.push(O);break;case 3:return!0}}return!0}};const se="http://www.w3.org/1999/02/22-rdf-syntax-ns#",ce=se+"type",ue=se+"first",le=se+"rest",de=se+"nil",he="http://www.w3.org/2001/XMLSchema#",pe=he+"integer",fe=he+"decimal",ye=he+"double",ge=he+"boolean",me="http://www.w3.org/ns/shacl#",be="http://www.w3.org/2002/07/owl#",ve="http://www.w3.org/2000/01/rdf-schema#",_e={[pe]:!0,[fe]:!0,[he+"float"]:!0,[ye]:!0,[he+"string"]:!0,[ge]:!0,[he+"dateTime"]:!0,[he+"nonPositiveInteger"]:!0,[he+"negativeInteger"]:!0,[he+"long"]:!0,[he+"int"]:!0,[he+"short"]:!0,[he+"byte"]:!0,[he+"nonNegativeInteger"]:!0,[he+"unsignedLong"]:!0,[he+"unsignedShort"]:!0,[he+"unsignedByte"]:!0,[he+"positiveInteger"]:!0,[se+"langString"]:!0};function we(e,t=!1){let r=0,n=e.length;if(t&&0===n)return Ne.factory.namedNode(de);const i=head=Ee();return 0===n&&Re(head,Ne.factory.namedNode(le),Ne.factory.namedNode(de)),e.forEach((e=>{if(void 0===e)throw new Error("b");Re(head,Ne.factory.namedNode(ue),e),Re(head,Ne.factory.namedNode(le),head=++r20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var e,t,r,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(r,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{flex:!0,"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){case 0:break;case 1:return 12;case 2:return 14;case 3:return 15;case 4:return 25;case 5:return 20;case 6:return 131;case 7:return 132;case 8:return 85;case 9:return 126;case 10:return 87;case 11:return"PASS";case 12:return"COMMENT";case 13:return 13;case 14:return 16;case 15:return 130;case 16:return 129;case 17:return 128;case 18:return 117;case 19:return 92;case 20:return 119;case 21:return 120;case 22:return"EXPONENT";case 23:return 133;case 24:return 134;case 25:return 135;case 26:return 136;case 27:return 61;case 28:return 90;case 29:return 58;case 30:return 56;case 31:return 38;case 32:return 40;case 33:return 44;case 34:return 46;case 35:return 110;case 36:return 93;case 37:return 111;case 38:return 67;case 39:return 118;case 40:return 53;case 41:return 96;case 42:return 102;case 43:return 75;case 44:return 95;case 45:return 109;case 46:return 28;case 47:return 42;case 48:return 48;case 49:return 115;case 50:return 7;case 51:console.log(t.yytext)}},rules:[/^(?:\s+|#[^\n\r]*)/i,/^(?:BASE)/i,/^(?:IMPORTS)/i,/^(?:PREFIX)/i,/^(?:shapeClass)/i,/^(?:shape)/i,/^(?:true)/i,/^(?:false)/i,/^(?:(BlankNode|IRI|Literal|BlankNodeOrIRI|BlankNodeOrLiteral|IRIOrLiteral\b))/i,/^(?:(targetNode|targetObjectsOf|targetSubjectsOf\b))/i,/^(?:(deactivated|severity|message|class|datatype|nodeKind|minExclusive|minInclusive|maxExclusive|maxInclusive|minLength|maxLength|pattern|flags|languageIn|uniqueLang|equals|disjoint|lessThan|lessThanOrEquals|qualifiedValueShape|qualifiedMinCount|qualifiedMaxCount|qualifiedValueShapesDisjoint|closed|ignoredProperties|hasValue|in))/i,/^(?:([ \t\r\n]+))/i,/^(?:(#[\r\n]*))/i,/^(?:(<([^=<>\"\{\}\|\^`\\\u0000-\u0020]|(\\u([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])|\\U([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])))*>))/i,/^(?:((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:))/i,/^(?:(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:)(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|:|[0-9]|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(@(([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:))/i,/^(?:(@((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:)(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|:|[0-9]|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(@[a-zA-Z]+(-[a-zA-Z0-9]+)*))/i,/^(?:([+-]?[0-9]+))/i,/^(?:([+-]?[0-9]*\.[0-9]+))/i,/^(?:([+-]?([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.?[0-9]+([eE][+-]?[0-9]+))))/i,/^(?:([eE][+-]?[0-9]+))/i,/^(?:('(?:(?:[^\u0027\u005C\u000A\u000D])|(\\[tbnrf\\\"\']))*'))/i,/^(?:("(?:(?:[^\u0022\u005C\u000A\u000D])|(\\[tbnrf\\\"\']))*"))/i,/^(?:('''(?:(?:'|'')?(?:[^'\\]|(\\[tbnrf\\\"\'])))*'''))/i,/^(?:("""(?:(?:"|"")?(?:[^\"\\]|(\\[tbnrf\\\"\'])))*"""))/i,/^(?:->)/i,/^(?:\.\.)/i,/^(?:\})/i,/^(?:\{)/i,/^(?:\()/i,/^(?:\))/i,/^(?:\[)/i,/^(?:\])/i,/^(?:\?)/i,/^(?:\*)/i,/^(?:\+)/i,/^(?:\|)/i,/^(?:\^\^)/i,/^(?:\.)/i,/^(?:!)/i,/^(?:\/)/i,/^(?:=)/i,/^(?:@)/i,/^(?:\^)/i,/^(?:;)/i,/^(?:,)/i,/^(?:%)/i,/^(?:a)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};function Ne(){this.yy={}}return oe.lexer=De,Ne.prototype=oe,oe.Parser=Ne,new Ne}();e.exports=t},13411:(e,t,r)=>{const n=r(76481).Parser,i=r(66641);class a{constructor(){}parse(e,{extendedSyntax:t,baseIRI:r}={}){this._parser=new n,this._parser.Parser.factory=i.DataFactory,this._parser.Parser.base=i.DataFactory.namedNode(r||"urn:x-base:default"),this._parser.Parser.extended=!0===t,this._parser.Parser.prefixes={rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"},this._parser.Parser.currentNodeShape=void 0,this._parser.Parser.currentPropertyNode=void 0,this._parser.Parser.nodeShapeStack=[],this._parser.Parser.tempCurrentNodeShape=void 0,this._parser.Parser.n3Parser=new i.Parser({baseIRI:r||"urn:x-base:default"});const a=[];return this._parser.Parser.onQuad=e=>{a.push(e)},this._parser.parse(e),a.prefixes=this._parser.Parser.prefixes,a}}e.exports.Parser=a,e.exports.parse=function(e,t){return(new a).parse(e,t)}},48586:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(66641),o=r(20098),s=r(2122),c=r(83179),u=i(r(60113)),l=i(r(66776)),d=i(r(40350));function h(e){var t;return null===(t=/^[^]*[#/]/.exec(e))||void 0===t?void 0:t[0]}const p={"http://www.w3.org/1999/02/22-rdf-syntax-ns#":"rdf","http://www.w3.org/2000/01/rdf-schema#":"rdfs","http://www.w3.org/ns/shacl#":"sh","http://www.w3.org/2001/XMLSchema#":"xsd"},f={rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"};t.default=class{constructor(e,t,r={},n=void 0,i=!0,a=!1,o,s=!1){this.store=e,this.base=n,this.errorOnExtraQuads=i,this.mintUnspecifiedPrefixes=a,this.fetch=o,this.extendedSyntax=s,this.prefixes={},this.prefixRev={};for(const e of Object.keys(r)){const t=r[e],n="string"==typeof t?t:t.value;n in p||e in f||(this.prefixRev[n]=e,this.prefixes[e]=n)}this.writer=t}write(){return n(this,void 0,void 0,(function*(){const e=this.store.getQuads(null,"http://www.w3.org/1999/02/22-rdf-syntax-ns#type","http://www.w3.org/2002/07/owl#Ontology",null);if(1!==e.length||"NamedNode"!==e[0].subject.termType)throw new Error("Base expected");{const t=e[0].subject;this.store.removeQuads(e),t.equals(new a.NamedNode("urn:x-base:default"))||this.writer.add(`BASE ${(0,s.termToString)(t)}`),yield this.writeImports(t)}if(this.mintUnspecifiedPrefixes){const e=new Set;for(const t of[...this.store.getSubjects(null,null,null),...this.store.getPredicates(null,null,null),...this.store.getObjects(null,null,null)])if("NamedNode"===t.termType){const r=h(t.value);!r||r in this.prefixRev||r in p||e.add(r)}const t=Object.assign(Object.assign({},this.prefixes),f);yield Promise.all([...e].map((e=>(0,o.uriToPrefix)(e,{fetch:this.fetch,mintOnUnknown:!0,existingPrefixes:t}).then((r=>{this.prefixes[r]=e,t[r]=e,this.prefixRev[e]=r})))))}const t=new Set([...this.store.getSubjects(null,null,null),...this.store.getPredicates(null,null,null),...this.store.getObjects(null,null,null)].filter((e=>"NamedNode"===e.termType)).map((e=>h(e.value))).filter((e=>"string"==typeof e)));for(const e in this.prefixRev)t.has(e)||(delete this.prefixes[this.prefixRev[e]],delete this.prefixRev[e]);if(yield this.writePrefixes(),this.prefixes=Object.assign(Object.assign({},this.prefixes),f),this.prefixRev=Object.assign(Object.assign({},this.prefixRev),p),this.writer.newLine(),yield this.writeShapes(),this.extendedSyntax){const e=this.store.getSubjects(null,null,null);e.length>0&&this.writer.newLine(1);for(const t of e)this.writer.add(yield this.termToString(t,!0,!0)),this.writer.add(" "),this.writer.indent(),yield this.writeTurtlePredicates(t),this.writer.deindent();e.length>0&&(this.writer.add(" ."),this.writer.newLine())}if(this.errorOnExtraQuads&&this.store.size>0)throw new Error("Dataset contains quads that cannot be written in SHACLC");this.writer.end()}))}writeImports(e){return n(this,void 0,void 0,(function*(){const t=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/2002/07/owl#imports"),null);if(t.length>0)for(const e of t)this.writer.add(`IMPORTS <${e.value}>`,!0)}))}writePrefixes(){return n(this,void 0,void 0,(function*(){const e=Object.keys(this.prefixes).filter((e=>!(e in l.default))).sort();if(e.length>0)for(const t of e)this.writer.add(`PREFIX ${t}: <${this.prefixes[t]}>`,!0)}))}termToString(e,t=!1,r=!1){return n(this,void 0,void 0,(function*(){try{if(t)throw new Error("Shacl name disabled");return(0,c.getShaclName)(e)}catch(e){}if("NamedNode"===e.termType){const t=h(e.value);return t&&t in this.prefixRev&&t in this.prefixRev?`${this.prefixRev[t]}:${e.value.slice(t.length)}`:(0,s.termToString)(e)}if("Literal"===e.termType)return"http://www.w3.org/2001/XMLSchema#integer"===e.datatypeString||"http://www.w3.org/2001/XMLSchema#boolean"===e.datatypeString?e.value:(0,s.termToString)(e);throw"BlankNode"===e.termType&&r&&(0,s.termToString)(e),new Error(`Invalid term type for extra statement ${e.value} (${e.termType})`)}))}writeShapes(){return n(this,void 0,void 0,(function*(){for(const e of this.store.getSubjectsOnce(new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),new a.NamedNode("http://www.w3.org/ns/shacl#NodeShape"),null)){this.store.getQuadsOnce(e,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),new a.NamedNode("http://www.w3.org/2000/01/rdf-schema#Class"),null).length>0?this.writer.add("shapeClass "):this.writer.add("shape "),this.writer.add(yield this.termToString(e)),this.writer.add(" ");const t=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#targetClass"),null);if(t.length>0){this.writer.add("-> ");for(const e of t)"NamedNode"===e.termType?this.writer.add(yield this.termToString(e)):(this.writer.add("!"),this.writer.add(yield this.termToString(this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#not"),!0)))),this.writer.add(" ")}const r=this.store.getPredicates(e,null,null).filter((e=>[new a.NamedNode("http://www.w3.org/ns/shacl#targetClass"),new a.NamedNode("http://www.w3.org/ns/shacl#property"),new a.NamedNode("http://www.w3.org/ns/shacl#or"),...Object.keys(d.default).map((e=>new a.NamedNode("http://www.w3.org/ns/shacl#"+e)))].every((t=>!e.equals(t)))));r.length>0&&(this.writer.add(";"),this.writer.indent(),this.writer.newLine(1)),this.extendedSyntax&&(yield this.writeGivenTurtlePredicates(e,r)),r.length>0&&(this.writer.add(" "),this.writer.deindent()),yield this.writeShapeBody(e,!1)}}))}getSingleProperty(e,t){let r=[e];try{let n=(0,c.getShaclName)(e.predicate),i="pred";if("not"===n){const t=this.store.getQuadsOnce(e.object,null,null,null);if(r=r.concat(t),1!==t.length)throw new Error("Can only handle having one predicate of 'not'");[e]=t,n=(0,c.getShaclName)(e.predicate),i="not"}if(!(n in t))throw new Error(`${n} is not allowed`);return{name:n,type:i,object:e.object}}catch(e){this.store.addQuads(r)}}singleLayerPropertiesList(e,t){const r=[];for(const n of this.store.getQuadsOnce(e,null,null,null)){const e=this.getSingleProperty(n,t);e&&r.push(e)}return r}expectOneProperty(e,t){const r=this.store.getQuadsOnce(e,null,null,null);if(1===r.length){const e=this.getSingleProperty(r[0],t);if(e)return e}this.store.addQuads(r)}orProperties(e,t){const r=[];for(const n of this.store.getQuadsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#or"),null,null)){const e=[];for(const r of this.getList(n.object)){const i=this.expectOneProperty(r,t);if(!i)throw this.store.addQuad(n),new Error("Each entry of the 'or' statement must declare exactly one property");e.push(i)}r.push(e)}return r}getList(e){let t=e;const r=[];for(;!t.equals(new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"));)r.push(this.singleObject(t,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),!0)),t=this.singleObject(t,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),!0);return r}writeIriLiteralOrArray(e){return n(this,void 0,void 0,(function*(){if("BlankNode"===e.termType){this.writer.add("[");let t=!0;for(const r of this.getList(e))t?t=!1:this.writer.add(" "),this.writer.add(yield this.termToString(r));this.writer.add("]")}else this.writer.add(yield this.termToString(e))}))}singleObject(e,t,r){var n;return null===(n=this.singleQuad(e,t,r))||void 0===n?void 0:n.object}singleQuad(e,t,r=!1){const n=this.store.getQuadsOnce(e,t,null,null);if(r&&1!==n.length)throw this.store.addQuads(n),new Error(`The subject and predicate ${null==e?void 0:e.value} ${null==t?void 0:t.value} must have exactly one object. Instead has ${n.length}`);if(n.length>1)throw this.store.addQuads(n),new Error(`The subject and predicate ${null==e?void 0:e.value} ${null==t?void 0:t.value} can have at most one object. Instead has ${n.length}`);return 1===n.length?n[0]:void 0}writeAssigment({name:e,type:t,object:r}){return n(this,void 0,void 0,(function*(){"not"===t&&this.writer.add("!"),this.writer.add(e),this.writer.add("="),yield this.writeIriLiteralOrArray(r)}))}writeAtom({name:e,type:t,object:r}){return n(this,void 0,void 0,(function*(){switch("not"===t&&this.writer.add("!"),e){case"node":if("NamedNode"===r.termType)this.writer.add(`@${yield this.termToString(r)}`);else{if("BlankNode"!==r.termType)throw new Error("Invalid nested shape, must be blank node or IRI");yield this.writeShapeBody(r)}return;case"nodeKind":return void this.writer.add((0,c.getShaclName)(r));case"class":case"datatype":return void this.writer.add(yield this.termToString(r));default:this.writer.add(e),this.writer.add("="),yield this.writeIriLiteralOrArray(r)}}))}writeAssigments(e,t=" ",r=!0,i){return n(this,void 0,void 0,(function*(){for(const n of e)r?r=!1:this.writer.add(t),i?yield this.writeAtom(n):yield this.writeAssigment(n)}))}writeParams(e,t=!0,r,i=!1,a=!1){return n(this,void 0,void 0,(function*(){const n=this.orProperties(e,r),o=this.singleLayerPropertiesList(e,r);a&&(n.length>0||o.length>0)&&this.writer.newLine(1);for(const e of n)t?t=!1:this.writer.add(" "),yield this.writeAssigments(e,"|",!0,i);yield this.writeAssigments(o," ",t,i),a&&(n.length>0||o.length>0)&&this.writer.add(" .")}))}writeShapeBody(e,t=!0){return n(this,void 0,void 0,(function*(){this.writer.add("{").indent();const r=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#property"),null);yield this.writeParams(e,!0,d.default,!1,!0);for(const e of r)this.writer.newLine(1),yield this.writeProperty(e);this.writer.deindent().newLine(1),t?this.writer.add("} ."):this.writer.add("}").newLine(1)}))}writeProperty(e){return n(this,void 0,void 0,(function*(){yield this.writePath(this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#path"),!0));const t=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#minCount")),r=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#maxCount")),n=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#nodeKind")),i=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#class")),o=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#datatype")),s=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#node"),null);if(n&&(this.writer.add(" "),this.writer.add((0,c.getShaclName)(n))),i&&(this.writer.add(" "),this.writer.add(yield this.termToString(i))),o&&(this.writer.add(" "),this.writer.add(yield this.termToString(o))),void 0!==t||void 0!==r){if(this.writer.add(" ["),t){if("Literal"!==t.termType||"http://www.w3.org/2001/XMLSchema#integer"!==t.datatypeString)throw new Error("Invalid min value, must me an integer literal");this.writer.add(t.value)}else this.writer.add("0");if(this.writer.add(".."),r){if("Literal"!==r.termType||"http://www.w3.org/2001/XMLSchema#integer"!==r.datatypeString)throw new Error("Invalid max value, must me an integer literal");this.store.removeMatches(e,new a.NamedNode("http://www.w3.org/ns/shacl#maxCount"),void 0,void 0),this.writer.add(r.value)}else this.writer.add("*");this.writer.add("]")}yield this.writeParams(e,!1,u.default,!0);const l=[];for(const e of s)if("NamedNode"===e.termType)this.writer.add(" "),this.writer.add(`@${yield this.termToString(e)}`);else{if("BlankNode"!==e.termType)throw new Error("Invalid nested shape, must be blank node or IRI");l.push(e)}for(const e of l)this.writer.add(" "),yield this.writeShapeBody(e);this.extendedSyntax&&this.store.getQuads(e,null,null,null).length>0&&(this.writer.add(" %"),this.writer.indent(),this.writer.newLine(1),yield this.writeTurtlePredicates(e),this.writer.deindent(),this.writer.newLine(1),this.writer.add("%")),0===l.length&&this.writer.add(" .")}))}writeTurtlePredicates(e){return n(this,void 0,void 0,(function*(){return this.writeGivenTurtlePredicates(e,this.store.getPredicates(e,null,null))}))}writeGivenTurtlePredicates(e,t){return n(this,void 0,void 0,(function*(){let r=!1;if(t.some((e=>e.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))))){const t=this.store.getObjectsOnce(e,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),null);t.length>0&&(r=!0,this.writer.add("a "),yield this.writeTurtleObjects(t))}for(const n of t)n.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))||(r?(this.writer.add(" ;"),this.writer.newLine(1)):r=!0,this.writer.add(yield this.termToString(n,!0)),this.writer.add(" "),yield this.writeTurtleObjects(this.store.getObjectsOnce(e,n,null)))}))}writeTurtleObjects(e){return n(this,void 0,void 0,(function*(){const t=[],r=[];for(const n of e)"BlankNode"===n.termType&&0===[...this.store.match(null,null,n),...this.store.match(null,n,null)].length?t.push(n):r.push(n);this.writer.add((yield Promise.all(r.map((e=>this.termToString(e,!0,!0))))).join(", "));let n=r.length>0;if(t.length>0)for(const e of t)n?this.writer.add(", "):n=!0,(yield this.writeList(e))||(this.writer.add("["),this.writer.indent(),this.writer.newLine(1),yield this.writeTurtlePredicates(e),this.writer.deindent(),this.writer.newLine(1),this.writer.add("]"))}))}writeList(e){return n(this,void 0,void 0,(function*(){let t=e;const r=[],n=[];for(;!t.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"));){const e=this.store.getQuadsOnce(t,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),null,null),i=this.store.getQuadsOnce(t,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),null,null);if(n.push(...e,...i),1!==e.length||1!==i.length||0!==this.store.getQuads(t,null,null,null).length)return this.store.addQuads(n),!1;r.push(e[0].object),t=i[0].object}let i=!1;this.writer.add("(");for(const e of r)i?this.writer.add(" "):i=!0,yield this.writeTurtleObjects([e]);return this.writer.add(")"),!0}))}writePath(e,t=!1){return n(this,void 0,void 0,(function*(){if("NamedNode"===e.termType)this.writer.add(yield this.termToString(e));else{if("BlankNode"!==e.termType)throw new Error("Path should be named node or blank node");{const r=this.store.getQuadsOnce(e,null,null,null);if(1===r.length){const{predicate:n,object:i}=r[0];switch(n.value){case"http://www.w3.org/ns/shacl#inversePath":return this.writer.add("^"),void(yield this.writePath(i,!0));case"http://www.w3.org/ns/shacl#alternativePath":{const e=this.getList(i);if(0===e.length)throw new Error("Invalid Alternative Path - no options");if(1===e.length)yield this.writePath(e[0]);else{t&&this.writer.add("(");let r=!0;for(const t of e)r?r=!1:this.writer.add("|"),yield this.writePath(t,!0);t&&this.writer.add(")")}return}case"http://www.w3.org/ns/shacl#zeroOrMorePath":return yield this.writePath(i,!0),void this.writer.add("*");case"http://www.w3.org/ns/shacl#oneOrMorePath":return yield this.writePath(i,!0),void this.writer.add("+");case"http://www.w3.org/ns/shacl#zeroOrOnePath":return yield this.writePath(i,!0),void this.writer.add("?");default:throw new Error(`Invalid path type ${e.value}`)}}else{this.store.addQuads(r);const n=this.getList(e);if(0===n.length)throw new Error("Invalid Path");{t&&this.writer.add("(");let e=!0;for(const t of n)e?e=!1:this.writer.add("/"),yield this.writePath(t,!0);t&&this.writer.add(")")}}}}}))}}},66776:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={owl:"http://www.w3.org/2002/07/owl#",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"}},30890:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.write=void 0;const a=r(66641),o=i(r(48586)),s=i(r(59480)),c=i(r(918));t.write=function(e,t){return n(this,void 0,void 0,(function*(){return new Promise(((r,i)=>n(this,void 0,void 0,(function*(){try{let n="";const i=new c.default(e),u=i.getGraphs(null,null,null);if(u.length>1)throw new Error("More than one graph found - can serialize in the default graph");if(1===u.length&&!u[0].equals(a.DataFactory.defaultGraph()))throw new Error(`Expected all triples to be in the default graph, instead triples were in ${u[0].value}`);const l=new s.default({write:e=>{n+=e},end:()=>{let e=i.getQuads(null,null,null,null);0===e.length&&(e=void 0),r({text:n,extraQuads:e})}}),d=new o.default(i,l,null==t?void 0:t.prefixes,void 0,!1!==(null==t?void 0:t.errorOnUnused),null==t?void 0:t.mintPrefixes,null==t?void 0:t.fetch,null==t?void 0:t.extendedSyntax);yield d.write()}catch(e){i(e)}}))))}))}},40350:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={targetNode:!0,targetObjectsOf:!0,targetSubjectsOf:!0,deactivated:!0,severity:!0,message:!0,class:!0,datatype:!0,nodeKind:!0,minExclusive:!0,minInclusive:!0,maxExclusive:!0,maxInclusive:!0,minLength:!0,maxLength:!0,pattern:!0,flags:!0,languageIn:!0,equals:!0,disjoint:!0,closed:!0,ignoredProperties:!0,hasValue:!0,in:!0}},60113:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={deactivated:!0,severity:!0,message:!0,class:!0,datatype:!0,nodeKind:!0,minExclusive:!0,minInclusive:!0,maxExclusive:!0,maxInclusive:!0,minLength:!0,maxLength:!0,pattern:!0,flags:!0,languageIn:!0,uniqueLang:!0,equals:!0,disjoint:!0,lessThan:!0,lessThanOrEquals:!0,qualifiedValueShape:!0,qualifiedMinCount:!0,qualifiedMaxCount:!0,qualifiedValueShapesDisjoint:!0,closed:!0,ignoredProperties:!0,hasValue:!0,in:!0,node:!0}},83179:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getShaclName=void 0,t.getShaclName=function(e){if("NamedNode"!==e.termType||!e.value.startsWith("http://www.w3.org/ns/shacl#"))throw new Error(`Term ${e.value} is not part of the SHACL namespace`);return e.value.slice(27)}},918:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(66641);class i extends n.Store{getQuadsOnce(e,t,r,n){const i=this.getQuads(e,t,r,n);return this.removeQuads(i),i}getSubjectsOnce(e,t,r){return this.getQuadsOnce(null,e,t,r).map((e=>e.subject))}getObjectsOnce(e,t,r){return this.getQuadsOnce(e,t,null,r).map((e=>e.object))}}t.default=i},59480:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e){this.indents=0,this.write=e.write,this.end=e.end}indent(){return this.indents+=1,this}deindent(){if(this.indents<1)throw new Error(`Trying to deindent when indent is only ${this.indents}`);return this.indents-=1,this}add(e,t=!1){return this.write(t?`\n${"\t".repeat(this.indents)}${e}`:e,"utf-8"),this}newLine(e=2){return this.write("\n".repeat(e)+"\t".repeat(this.indents),"utf-8"),this}}},84791:e=>{e.exports=function(e){"use strict";var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function r(e,t){var r=e[0],n=e[1],i=e[2],a=e[3];n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[0]-680876936|0)<<7|r>>>25)+n|0)&n|~r&i)+t[1]-389564586|0)<<12|a>>>20)+r|0)&r|~a&n)+t[2]+606105819|0)<<17|i>>>15)+a|0)&a|~i&r)+t[3]-1044525330|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[4]-176418897|0)<<7|r>>>25)+n|0)&n|~r&i)+t[5]+1200080426|0)<<12|a>>>20)+r|0)&r|~a&n)+t[6]-1473231341|0)<<17|i>>>15)+a|0)&a|~i&r)+t[7]-45705983|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[8]+1770035416|0)<<7|r>>>25)+n|0)&n|~r&i)+t[9]-1958414417|0)<<12|a>>>20)+r|0)&r|~a&n)+t[10]-42063|0)<<17|i>>>15)+a|0)&a|~i&r)+t[11]-1990404162|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[12]+1804603682|0)<<7|r>>>25)+n|0)&n|~r&i)+t[13]-40341101|0)<<12|a>>>20)+r|0)&r|~a&n)+t[14]-1502002290|0)<<17|i>>>15)+a|0)&a|~i&r)+t[15]+1236535329|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[1]-165796510|0)<<5|r>>>27)+n|0)&i|n&~i)+t[6]-1069501632|0)<<9|a>>>23)+r|0)&n|r&~n)+t[11]+643717713|0)<<14|i>>>18)+a|0)&r|a&~r)+t[0]-373897302|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[5]-701558691|0)<<5|r>>>27)+n|0)&i|n&~i)+t[10]+38016083|0)<<9|a>>>23)+r|0)&n|r&~n)+t[15]-660478335|0)<<14|i>>>18)+a|0)&r|a&~r)+t[4]-405537848|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[9]+568446438|0)<<5|r>>>27)+n|0)&i|n&~i)+t[14]-1019803690|0)<<9|a>>>23)+r|0)&n|r&~n)+t[3]-187363961|0)<<14|i>>>18)+a|0)&r|a&~r)+t[8]+1163531501|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[13]-1444681467|0)<<5|r>>>27)+n|0)&i|n&~i)+t[2]-51403784|0)<<9|a>>>23)+r|0)&n|r&~n)+t[7]+1735328473|0)<<14|i>>>18)+a|0)&r|a&~r)+t[12]-1926607734|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[5]-378558|0)<<4|r>>>28)+n|0)^n^i)+t[8]-2022574463|0)<<11|a>>>21)+r|0)^r^n)+t[11]+1839030562|0)<<16|i>>>16)+a|0)^a^r)+t[14]-35309556|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[1]-1530992060|0)<<4|r>>>28)+n|0)^n^i)+t[4]+1272893353|0)<<11|a>>>21)+r|0)^r^n)+t[7]-155497632|0)<<16|i>>>16)+a|0)^a^r)+t[10]-1094730640|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[13]+681279174|0)<<4|r>>>28)+n|0)^n^i)+t[0]-358537222|0)<<11|a>>>21)+r|0)^r^n)+t[3]-722521979|0)<<16|i>>>16)+a|0)^a^r)+t[6]+76029189|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[9]-640364487|0)<<4|r>>>28)+n|0)^n^i)+t[12]-421815835|0)<<11|a>>>21)+r|0)^r^n)+t[15]+530742520|0)<<16|i>>>16)+a|0)^a^r)+t[2]-995338651|0)<<23|n>>>9)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[0]-198630844|0)<<6|r>>>26)+n|0)|~i))+t[7]+1126891415|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[14]-1416354905|0)<<15|i>>>17)+a|0)|~r))+t[5]-57434055|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[12]+1700485571|0)<<6|r>>>26)+n|0)|~i))+t[3]-1894986606|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[10]-1051523|0)<<15|i>>>17)+a|0)|~r))+t[1]-2054922799|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[8]+1873313359|0)<<6|r>>>26)+n|0)|~i))+t[15]-30611744|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[6]-1560198380|0)<<15|i>>>17)+a|0)|~r))+t[13]+1309151649|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[4]-145523070|0)<<6|r>>>26)+n|0)|~i))+t[11]-1120210379|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[2]+718787259|0)<<15|i>>>17)+a|0)|~r))+t[9]-343485551|0)<<21|n>>>11)+i|0,e[0]=r+e[0]|0,e[1]=n+e[1]|0,e[2]=i+e[2]|0,e[3]=a+e[3]|0}function n(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return r}function i(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return r}function a(e){var t,i,a,o,s,c,u=e.length,l=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=u;t+=64)r(l,n(e.substring(t-64,t)));for(i=(e=e.substring(t-64)).length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t>2]|=e.charCodeAt(t)<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(l,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*u).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(o[2],16),c=parseInt(o[1],16)||0,a[14]=s,a[15]=c,r(l,a),l}function o(e){var r,n="";for(r=0;r<4;r+=1)n+=t[e>>8*r+4&15]+t[e>>8*r&15];return n}function s(e){var t;for(t=0;tu?new ArrayBuffer(0):(n=u-c,i=new ArrayBuffer(n),a=new Uint8Array(i),o=new Uint8Array(this,c,n),a.set(o),i)}}(),l.prototype.append=function(e){return this.appendBinary(c(e)),this},l.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,i=this._buff.length;for(t=64;t<=i;t+=64)r(this._hash,n(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},l.prototype.end=function(e){var t,r,n=this._buff,i=n.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t>2]|=n.charCodeAt(t)<<(t%4<<3);return this._finish(a,i),r=s(this._hash),e&&(r=u(r)),this.reset(),r},l.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},l.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash.slice()}},l.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},l.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},l.prototype._finish=function(e,t){var n,i,a,o=t;if(e[o>>2]|=128<<(o%4<<3),o>55)for(r(this._hash,e),o=0;o<16;o+=1)e[o]=0;n=(n=8*this._length).toString(16).match(/(.*?)(.{0,8})$/),i=parseInt(n[2],16),a=parseInt(n[1],16)||0,e[14]=i,e[15]=a,r(this._hash,e)},l.hash=function(e,t){return l.hashBinary(c(e),t)},l.hashBinary=function(e,t){var r=s(a(e));return t?u(r):r},l.ArrayBuffer=function(){this.reset()},l.ArrayBuffer.prototype.append=function(e){var t,n,a,o,s,c=(n=this._buff.buffer,a=e,o=!0,(s=new Uint8Array(n.byteLength+a.byteLength)).set(new Uint8Array(n)),s.set(new Uint8Array(a),n.byteLength),o?s:s.buffer),u=c.length;for(this._length+=e.byteLength,t=64;t<=u;t+=64)r(this._hash,i(c.subarray(t-64,t)));return this._buff=t-64>2]|=n[t]<<(t%4<<3);return this._finish(a,i),r=s(this._hash),e&&(r=u(r)),this.reset(),r},l.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},l.ArrayBuffer.prototype.getState=function(){var e,t=l.prototype.getState.call(this);return t.buff=(e=t.buff,String.fromCharCode.apply(null,new Uint8Array(e))),t},l.ArrayBuffer.prototype.setState=function(e){return e.buff=function(e,t){var r,n=e.length,i=new ArrayBuffer(n),a=new Uint8Array(i);for(r=0;r>2]|=e[t]<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(l,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*u).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(o[2],16),c=parseInt(o[1],16)||0,a[14]=s,a[15]=c,r(l,a),l}(new Uint8Array(e)));return t?u(n):n},l}()},6789:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Util=t.toSparqlJs=t.toSparql=t.Factory=t.Algebra=t.translate=void 0;const s=o(r(2647));t.translate=s.default;const c=a(r(31928));t.Algebra=c;const u=o(r(51444));t.Factory=u.default;const l=r(55026);Object.defineProperty(t,"toSparql",{enumerable:!0,get:function(){return l.toSparql}}),Object.defineProperty(t,"toSparqlJs",{enumerable:!0,get:function(){return l.toSparqlJs}});const d=o(r(63138));t.Util=d.default},31928:(e,t)=>{"use strict";var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.expressionTypes=t.types=void 0,(n=t.types||(t.types={})).ALT="alt",n.ASK="ask",n.BGP="bgp",n.CONSTRUCT="construct",n.DESCRIBE="describe",n.DISTINCT="distinct",n.EXPRESSION="expression",n.EXTEND="extend",n.FILTER="filter",n.FROM="from",n.GRAPH="graph",n.GROUP="group",n.INV="inv",n.JOIN="join",n.LEFT_JOIN="leftjoin",n.LINK="link",n.MINUS="minus",n.NOP="nop",n.NPS="nps",n.ONE_OR_MORE_PATH="OneOrMorePath",n.ORDER_BY="orderby",n.PATH="path",n.PATTERN="pattern",n.PROJECT="project",n.REDUCED="reduced",n.SEQ="seq",n.SERVICE="service",n.SLICE="slice",n.UNION="union",n.VALUES="values",n.ZERO_OR_MORE_PATH="ZeroOrMorePath",n.ZERO_OR_ONE_PATH="ZeroOrOnePath",n.COMPOSITE_UPDATE="compositeupdate",n.DELETE_INSERT="deleteinsert",n.LOAD="load",n.CLEAR="clear",n.CREATE="create",n.DROP="drop",n.ADD="add",n.MOVE="move",n.COPY="copy",(r=t.expressionTypes||(t.expressionTypes={})).AGGREGATE="aggregate",r.EXISTENCE="existence",r.NAMED="named",r.OPERATOR="operator",r.TERM="term",r.WILDCARD="wildcard"},51444:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const o=a(r(31928)),s=r(91194),c=r(6053),u=r(2085);t.default=class{constructor(e){this.dataFactory=e||new s.DataFactory,this.stringType=this.createTerm("http://www.w3.org/2001/XMLSchema#string")}createAlt(e,t=!0){return this.flattenMulti({type:o.types.ALT,input:e},t)}createAsk(e){return{type:o.types.ASK,input:e}}createBoundAggregate(e,t,r,n,i){const a=this.createAggregateExpression(t,r,n,i);return a.variable=e,a}createBgp(e){return{type:o.types.BGP,patterns:e}}createConstruct(e,t){return{type:o.types.CONSTRUCT,input:e,template:t}}createDescribe(e,t){return{type:o.types.DESCRIBE,input:e,terms:t}}createDistinct(e){return{type:o.types.DISTINCT,input:e}}createExtend(e,t,r){return{type:o.types.EXTEND,input:e,variable:t,expression:r}}createFrom(e,t,r){return{type:o.types.FROM,input:e,default:t,named:r}}createFilter(e,t){return{type:o.types.FILTER,input:e,expression:t}}createGraph(e,t){return{type:o.types.GRAPH,input:e,name:t}}createGroup(e,t,r){return{type:o.types.GROUP,input:e,variables:t,aggregates:r}}createInv(e){return{type:o.types.INV,path:e}}createJoin(e,t=!0){return this.flattenMulti({type:o.types.JOIN,input:e},t)}createLeftJoin(e,t,r){return r?{type:o.types.LEFT_JOIN,input:[e,t],expression:r}:{type:o.types.LEFT_JOIN,input:[e,t]}}createLink(e){return{type:o.types.LINK,iri:e}}createMinus(e,t){return{type:o.types.MINUS,input:[e,t]}}createNop(){return{type:o.types.NOP}}createNps(e){return{type:o.types.NPS,iris:e}}createOneOrMorePath(e){return{type:o.types.ONE_OR_MORE_PATH,path:e}}createOrderBy(e,t){return{type:o.types.ORDER_BY,input:e,expressions:t}}createPath(e,t,r,n){return n?{type:o.types.PATH,subject:e,predicate:t,object:r,graph:n}:{type:o.types.PATH,subject:e,predicate:t,object:r,graph:this.dataFactory.defaultGraph()}}createPattern(e,t,r,n){const i=this.dataFactory.quad(e,t,r,n);return i.type=o.types.PATTERN,i}createProject(e,t){return{type:o.types.PROJECT,input:e,variables:t}}createReduced(e){return{type:o.types.REDUCED,input:e}}createSeq(e,t=!0){return this.flattenMulti({type:o.types.SEQ,input:e},t)}createService(e,t,r){return{type:o.types.SERVICE,input:e,name:t,silent:Boolean(r)}}createSlice(e,t,r){return t=t||0,void 0!==r?{type:o.types.SLICE,input:e,start:t,length:r}:{type:o.types.SLICE,input:e,start:t}}createUnion(e,t=!0){return this.flattenMulti({type:o.types.UNION,input:e},t)}createValues(e,t){return{type:o.types.VALUES,variables:e,bindings:t}}createZeroOrMorePath(e){return{type:o.types.ZERO_OR_MORE_PATH,path:e}}createZeroOrOnePath(e){return{type:o.types.ZERO_OR_ONE_PATH,path:e}}createAggregateExpression(e,t,r,n){return n?{type:o.types.EXPRESSION,expressionType:o.expressionTypes.AGGREGATE,aggregator:e,expression:t,separator:n,distinct:r}:{type:o.types.EXPRESSION,expressionType:o.expressionTypes.AGGREGATE,aggregator:e,expression:t,distinct:r}}createExistenceExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.EXISTENCE,not:e,input:t}}createNamedExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.NAMED,name:e,args:t}}createOperatorExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.OPERATOR,operator:e,args:t}}createTermExpression(e){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.TERM,term:e}}createWildcardExpression(){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.WILDCARD,wildcard:new u.Wildcard}}createTerm(e){return(0,c.stringToTerm)(e,this.dataFactory)}createCompositeUpdate(e){return{type:o.types.COMPOSITE_UPDATE,updates:e}}createDeleteInsert(e,t,r){const n={type:o.types.DELETE_INSERT};return e&&(n.delete=e),t&&(n.insert=t),r&&(n.where=r),n}createLoad(e,t,r){const n={type:o.types.LOAD,source:e};return t&&(n.destination=t),this.addSilent(n,Boolean(r))}createClear(e,t){return this.addSilent({type:o.types.CLEAR,source:e},Boolean(t))}createCreate(e,t){return this.addSilent({type:o.types.CREATE,source:e},Boolean(t))}createDrop(e,t){return this.addSilent({type:o.types.DROP,source:e},Boolean(t))}createAdd(e,t,r){return this.addSilent({type:o.types.ADD,source:e,destination:t},Boolean(r))}createMove(e,t,r){return this.addSilent({type:o.types.MOVE,source:e,destination:t},Boolean(r))}createCopy(e,t,r){return this.addSilent({type:o.types.COPY,source:e,destination:t},Boolean(r))}addSilent(e,t){return t&&(e.silent=t),e}flattenMulti(e,t){if(!t)return e;const r=e.type,n=e.input;let i=[];for(const e of n)e.type===r?i.push(...e.input):i.push(e);return e.input=i,e}}},55026:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toSparqlJs=t.toSparql=void 0;const s=r(16550),c=r(6053),u=r(2085),l=a(r(31928)),d=o(r(51444)),h=o(r(63138)),p=l.types,f=l.expressionTypes;let y;const g=new d.default;function m(e){b();let t=v(e=function(e){return D(e,{})}(e));return"group"===t.type?t.patterns[0]:t}function b(){y={project:!1,extend:[],group:[],aggregates:[],order:[]}}function v(e){switch(e.type!==p.EXTEND&&e.type!==p.ORDER_BY&&e.type!==p.GRAPH&&(y.project=!1),e.type){case p.EXPRESSION:return _(e);case p.ASK:return x(e,p.ASK);case p.BGP:return function(e){let t=e.patterns.map(O);return 0===t.length?null:{type:"bgp",triples:t}}(e);case p.CONSTRUCT:return function(e){return{type:"query",prefixes:{},queryType:"CONSTRUCT",template:e.template.map(O),where:h.default.flatten([v(e.input)])}}(e);case p.DESCRIBE:return x(e,p.DESCRIBE);case p.DISTINCT:return function(e){let t=v(e.input);return t.patterns[0].distinct=!0,t}(e);case p.EXTEND:return function(e){return y.project?(y.extend.push(e),v(e.input)):h.default.flatten([v(e.input),{type:"bind",variable:e.variable,expression:_(e.expression)}])}(e);case p.FROM:return function(e){const t=v(e.input);return t.patterns[0].from={default:e.default,named:e.named},t}(e);case p.FILTER:return function(e){return{type:"group",patterns:h.default.flatten([v(e.input),{type:"filter",expression:_(e.expression)}])}}(e);case p.GRAPH:return function(e){return{type:"graph",patterns:h.default.flatten([v(e.input)]),name:e.name}}(e);case p.GROUP:return function(e){const t=v(e.input),r=e.aggregates.map(S);return y.aggregates.push(...r),y.group.push(...e.variables),t}(e);case p.JOIN:return function(e){return h.default.flatten(e.input.map(v)).reduce(((e,t)=>("bgp"!==t.type||0==e.length||"bgp"!==e[e.length-1].type?e.push(t):e[e.length-1].triples.push(...t.triples),e)),[])}(e);case p.LEFT_JOIN:return function(e){const t={type:"optional",patterns:[v(e.input[1])]};return e.expression&&t.patterns.push({type:"filter",expression:_(e.expression)}),t.patterns=h.default.flatten(t.patterns),h.default.flatten([v(e.input[0]),t])}(e);case p.MINUS:return function(e){let t=v(e.input[1]);return"group"===t.type&&(t=t.patterns),Array.isArray(t)||(t=[t]),h.default.flatten([v(e.input[0]),{type:"minus",patterns:t}])}(e);case p.NOP:return{};case p.ORDER_BY:return function(e){return y.order.push(...e.expressions),v(e.input)}(e);case p.PATH:return function(e){return{type:"bgp",triples:[{subject:e.subject,predicate:w(e.predicate),object:e.object}]}}(e);case p.PATTERN:return O(e);case p.PROJECT:return x(e,p.PROJECT);case p.REDUCED:return function(e){let t=v(e.input);return t.patterns[0].reduced=!0,t}(e);case p.SERVICE:return function(e){let t=v(e.input);return"group"===t.type&&(t=t.patterns),Array.isArray(t)||(t=[t]),{type:"service",name:e.name,silent:e.silent,patterns:t}}(e);case p.SLICE:return function(e){let t=v(e.input),r=t;return t.type&&"group"===t.type&&(r=t.patterns[0]),0!==e.start&&(r.offset=e.start),void 0!==e.length&&(r.limit=e.length),t}(e);case p.UNION:return function(e){return{type:"union",patterns:h.default.flatten(e.input.map(v))}}(e);case p.VALUES:return function(e){return{type:"values",values:e.bindings.map((t=>{let r={};for(let n of e.variables){let e=`?${n.value}`;t[e]?r[e]=t[e]:r[e]=void 0}return r}))}}(e);case p.COMPOSITE_UPDATE:return function(e){return{prefixes:{},type:"update",updates:e.updates.map((e=>v(e).updates[0]))}}(e);case p.DELETE_INSERT:return function(e){var t;let r,n=e.where;if(n&&n.type===p.FROM){let e=n;n=e.input,r={default:e.default,named:e.named}}const i=[{updateType:"insertdelete",delete:P(e.delete||[]),insert:P(e.insert||[])}];if(r&&(i[0].using=r),!n||n.type===p.BGP&&0===n.patterns.length)i[0].where=[];else{const e={};let r=v(D(n,e));"group"===r.type?i[0].where=r.patterns:i[0].where=[r];const a=Object.keys(e);if(a.length>0){if(1!==a.length)throw new Error("This is unexpected and might indicate an error in graph handling for updates.");const r=null===(t=e[a[0]])||void 0===t?void 0:t.graph;r&&""!==r.value&&(i[0].where=[{type:"graph",patterns:i[0].where,name:r}])}}return e.delete||e.where?e.insert||e.where?!e.insert&&e.where&&"bgp"===e.where.type&&(0,s.isomorphic)(e.delete,e.where.patterns)&&(delete i[0].where,i[0].updateType="deletewhere"):(delete i[0].insert,delete i[0].where,e.delete.some((e=>"Variable"===e.subject.termType||"Variable"===e.predicate.termType||"Variable"===e.object.termType))?i[0].updateType="deletewhere":i[0].updateType="delete"):(i[0].updateType="insert",delete i[0].delete,delete i[0].where),{prefixes:{},type:"update",updates:i}}(e);case p.LOAD:return function(e){const t=[{type:"load",silent:Boolean(e.silent),source:e.source}];return e.destination&&(t[0].destination=e.destination),{prefixes:{},type:"update",updates:t}}(e);case p.CLEAR:return function(e){return R(e,"clear")}(e);case p.CREATE:return function(e){return R(e,"create")}(e);case p.DROP:return function(e){return R(e,"drop")}(e);case p.ADD:return function(e){return I(e,"add")}(e);case p.MOVE:return function(e){return I(e,"move")}(e);case p.COPY:return function(e){return I(e,"copy")}(e)}throw new Error(`Unknown Operation type ${e.type}`)}function _(e){switch(e.expressionType){case f.AGGREGATE:return function(e){const t={expression:_(e.expression),type:"aggregate",aggregation:e.aggregator,distinct:e.distinct};return e.separator&&(t.separator=e.separator),t}(e);case f.EXISTENCE:return function(e){return{type:"operation",operator:e.not?"notexists":"exists",args:h.default.flatten([v(e.input)])}}(e);case f.NAMED:return function(e){return{type:"functionCall",function:e.name,args:e.args.map(_)}}(e);case f.OPERATOR:return function(e){if("desc"===e.operator){return{expression:_(e.args[0]),descending:!0}}const t={type:"operation",operator:e.operator,args:e.args.map(_)};return"in"!==t.operator&&"notin"!==t.operator||(t.args=[t.args[0]].concat([t.args.slice(1)])),t}(e);case f.TERM:return function(e){return e.term}(e);case f.WILDCARD:return function(e){return e.wildcard}(e)}throw new Error(`Unknown Expression Operation type ${e.expressionType}`)}function w(e){switch(e.type){case p.ALT:return function(e){const t=e.input.map(w);return t.every((e=>"pathType"in e&&"!"===e.pathType))?{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:h.default.flatten(t.map((e=>e.items)))}]}:{type:"path",pathType:"|",items:t}}(e);case p.INV:return function(e){if(e.path.type===p.NPS){const t=e.path.iris.map((e=>({type:"path",pathType:"^",items:[e]})));return t.length<=1?{type:"path",pathType:"!",items:t}:{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:t}]}}return{type:"path",pathType:"^",items:[w(e.path)]}}(e);case p.LINK:return function(e){return e.iri}(e);case p.NPS:return function(e){return e.iris.length<=1?{type:"path",pathType:"!",items:e.iris}:{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:e.iris}]}}(e);case p.ONE_OR_MORE_PATH:return function(e){return{type:"path",pathType:"+",items:[w(e.path)]}}(e);case p.SEQ:return function(e){return{type:"path",pathType:"/",items:e.input.map(w)}}(e);case p.ZERO_OR_MORE_PATH:return function(e){return{type:"path",pathType:"*",items:[w(e.path)]}}(e);case p.ZERO_OR_ONE_PATH:return function(e){return{type:"path",pathType:"?",items:[w(e.path)]}}(e)}throw new Error(`Unknown Path type ${e.type}`)}function T(e){return(0,c.termToString)(e)}function S(e){return e}function O(e){return{subject:e.subject,predicate:e.predicate,object:e.object}}function E(e,t){let r=h.default.isSimpleTerm(e)?T(e):e;if("string"==typeof r){if(t[r])return t[r]}else if(Array.isArray(e))e=e.map((e=>E(e,t)));else for(let r of Object.keys(e))e[r]=E(e[r],t);return e}function x(e,t){const r={type:"query",prefixes:{}},n=r;let i;t===p.PROJECT?(r.queryType="SELECT",i=e.variables):t===p.ASK?r.queryType="ASK":t===p.DESCRIBE&&(r.queryType="DESCRIBE",i=e.terms);const a=y.extend,o=y.group,s=y.aggregates,c=y.order;b(),y.project=!0;let l=h.default.flatten([v(e.input)]);1===l.length&&"group"===l[0].type&&(l=l[0].patterns),r.where=l;let d={};for(let e of y.aggregates)d[T(e.variable)]=_(e);let f={};for(let e=y.extend.length-1;e>=0;--e){let t=y.extend[e];f[T(t.variable)]=E(_(t.expression),d)}if(y.group.length>0&&(n.group=y.group.map((e=>{let t=T(e);if(f[t]){let r=f[t];return delete f[t],{variable:e,expression:r}}return{expression:e}}))),y.order.length>0&&(n.order=y.order.map(v).map((e=>e.descending?e:{expression:e}))),i&&(n.variables=i.map((e=>{let t=T(e);return f[t]?{variable:e,expression:f[t]}:e})),0===n.variables.length&&(n.variables=[new u.Wildcard])),r.where.length>0&&"filter"===r.where[r.where.length-1].type){const e=r.where[r.where.length-1];A(e,Object.keys(d))&&(n.having=h.default.flatten([E(e.expression,d)]),r.where.splice(-1))}return y.extend=a,y.group=o,y.aggregates=s,y.order=c,{type:"group",patterns:[n]}}function A(e,t){return h.default.isSimpleTerm(e)?t.indexOf(T(e))>=0:Array.isArray(e)?e.some((e=>A(e,t))):e===Object(e)?Object.keys(e).some((r=>A(e[r],t))):t.indexOf(e)>=0}function R(e,t){const r=[{type:t,silent:Boolean(e.silent)}];return"DEFAULT"===e.source?r[0].graph={default:!0}:"NAMED"===e.source?r[0].graph={named:!0}:"ALL"===e.source?r[0].graph={all:!0}:r[0].graph={type:"graph",name:e.source},{prefixes:{},type:"update",updates:r}}function I(e,t){const r=[{type:t,silent:Boolean(e.silent)}];return r[0].source="DEFAULT"===e.source?{type:"graph",default:!0}:{type:"graph",name:e.source},r[0].destination="DEFAULT"===e.destination?{type:"graph",default:!0}:{type:"graph",name:e.destination},{prefixes:{},type:"update",updates:r}}function P(e){if(!e)return[];const t={};return e.forEach((e=>{const r=e.graph.value;t[r]||(t[r]=[]),t[r].push(e)})),Object.keys(t).map((e=>""===e?{type:"bgp",triples:t[e].map(O)}:{type:"graph",triples:t[e].map(O),name:t[e][0].graph}))}function D(e,t){if(Array.isArray(e))return e.map((e=>D(e,t)));if(!e.type)return e;if(e.type===p.DELETE_INSERT)return e;if((e.type===p.PATTERN||e.type===p.PATH)&&e.graph)return t[e.graph.value]||(t[e.graph.value]={graph:e.graph,values:[]}),t[e.graph.value].values.push(e),e;const r={},n={},i={};for(let t of Object.keys(e)){const a={};r[t]=D(e[t],a);const o=Object.keys(a);if(o.length>1){let e=N(a[o[0]].values);for(let t=1;tdelete a[e])),e}if(1===o.length){const e=a[o[0]].graph;n[t]=e,i[e.value]=e}}const a=Object.keys(i);if(a.length>0)if(1===a.length&&e.type!==p.PROJECT)t[a[0]]={graph:i[a[0]],values:[r]};else for(let e of Object.keys(n))n[e].value.length>0&&(r[e]=g.createGraph(r[e],n[e]));return r}function N(e){const t=g.createBgp(e),r=e[0].graph;return 0===r.value.length?t:g.createGraph(t,r)}t.toSparql=function(e,t={}){return new u.Generator(t).stringify(m(e))},t.toSparqlJs=m},2647:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(42598),c=r(6053),u=a(r(31928)),l=o(r(51444)),d=o(r(63138)),h=r(2085).Parser,p=u.types;let f,y=new Set,g=0,m=!1;function b(e,t,r){if(y=new Set,g=0,m=Boolean(t),!e.type)return f.createNop();if("query"!==e.type&&"update"!==e.type)throw new Error("Translate only works on complete query or update objects.");let n;var i;return w(e),"query"===e.type?(n=S({type:"group",patterns:e.where||[]}),n=function(e,t){const r=e,n=[],i={};if(r.variables=r.variables&&r.variables.map((e=>C(e,i))),r.having=r.having&&r.having.map((e=>C(e,i))),r.order=r.order&&r.order.map((e=>C(e,i))),r.group||Object.keys(i).length>0){const e=Object.keys(i).map((e=>function(e,t){if("aggregate"!==e.type||!e.aggregation)throw new Error(`Unexpected input: ${JSON.stringify(e)}`);const r=O(e);return r.variable=t,r}(i[e],f.createTerm(e)))),n=[];if(r.group)for(const e of r.group)if(d.default.isSimpleTerm(e.expression))n.push(e.expression);else{const r="variable"in e?e.variable:A();t=f.createExtend(t,r,O(e.expression)),n.push(r)}t=f.createGroup(t,n,e)}if(r.having)for(let e of r.having)t=f.createFilter(t,O(e));e.values&&(t=f.createJoin([t,j(e)]));let a=[];if("SELECT"===e.queryType||"DESCRIBE"===e.queryType)if(e.variables.some((e=>e&&d.default.isWildcard(e))))a=Object.values(T(e)).sort(((e,t)=>e.value.localeCompare(t.value)));else for(let t of e.variables)_(t)||!("variable"in t)?a.push(t):t.variable&&(a.push(t.variable),n.push(t));for(let e of n)t=f.createExtend(t,e.variable,O(e.expression));return r.order&&(t=f.createOrderBy(t,r.order.map((e=>{let t=O(e.expression);return e.descending&&(t=f.createOperatorExpression("desc",[t])),t})))),"SELECT"===e.queryType&&(t=f.createProject(t,a)),r.distinct&&(t=f.createDistinct(t)),r.reduced&&(t=f.createReduced(t)),"CONSTRUCT"===e.queryType?t=f.createConstruct(t,(e.template||[]).map(R)):"ASK"===e.queryType?t=f.createAsk(t):"DESCRIBE"===e.queryType&&(t=f.createDescribe(t,a)),(r.offset||r.limit)&&(t=f.createSlice(t,r.offset||0,r.limit)),r.from&&(t=f.createFrom(t,r.from.default,r.from.named)),t}(e,n)):"update"===e.type&&(n=1===(i=e).updates.length?M(i.updates[0]):f.createCompositeUpdate(i.updates.map(M))),r&&(n=k(n)),n}function v(e){return Boolean(null==e?void 0:e.termType)}function _(e){return"Variable"===(null==e?void 0:e.termType)}function w(e){if(v(e))_(e)&&y.add(`?${e.value}`);else if(Array.isArray(e))for(const t of e)w(t);else if(e&&"object"==typeof e)for(let t of Object.keys(e))t.startsWith("?")&&y.add(t),w(e[t])}function T(e){let t={};if((r=e).subject&&r.predicate&&r.object){const r=[T(e.subject),T(e.predicate),T(e.object),e.graph?T(e.graph):{}];Object.assign(t,...r)}else if(v(e))_(e)&&(t[e.value]=e);else if("bgp"===e.type){const r=e.triples;Object.assign(t,...r.map(T))}else if("path"===e.type)Object.assign(t,...e.items.map(T));else if("group"===e.type||"union"===e.type||"optional"===e.type)Object.assign(t,...e.patterns.map(T));else if("service"===e.type||"graph"===e.type)Object.assign(t,T(e.name)),Object.assign(t,...e.patterns.map(T));else if("bind"===e.type)Object.assign(t,T(e.variable));else if("values"===e.type){if(e.values.length>0){const r=Object.keys(e.values[0]).map((e=>f.createTerm(e)));Object.assign(t,...r.map(T))}}else if("query"===e.type&&("SELECT"===e.queryType||"DESCRIBE"===e.queryType)){e.where&&e.variables.some(d.default.isWildcard)&&Object.assign(t,...e.where.map(T));for(const r of e.variables)_(r)?Object.assign(t,T(r)):r.variable&&Object.assign(t,T(r.variable));if("SELECT"===e.queryType){if(e.group)for(const r of e.group)r.variable&&Object.assign(t,T(r.variable));if(e.values){const r={type:"values",values:e.values};Object.assign(t,T(r))}}}var r;return t}function S(e){let t,r=[],n=[];if("patterns"in e)for(let t of e.patterns)("filter"===t.type?r:n).push(t);if("bgp"===e.type)return function(e){let t=[],r=[];for(let i of e.triples)if("pathType"in i.predicate){let e=x((n=i).subject,E(n.predicate),n.object);for(let n of e)n.type===p.PATH?(t.length>0&&r.push(f.createBgp(t)),t=[],r.push(n)):t.push(n)}else t.push(R(i));var n;return t.length>0&&r.push(f.createBgp(t)),1===r.length?r[0]:f.createJoin(r)}(e);if("union"===e.type)t=f.createUnion(n.map((e=>("group"!==e.type&&(e={type:"group",patterns:[e]}),S(e)))));else{if("graph"===e.type)return function(e){let t=S({type:"group",patterns:e.patterns});return t=m?P(t,e.name):f.createGraph(t,e.name),t}(e);if("group"===e.type)t=n.reduce(D,f.createBgp([]));else if("values"===e.type)t=j(e);else{if("query"!==e.type)throw new Error(`Unexpected type: ${e.type}`);t=b(e,m,!1)}}if(r.length>0){let e=r.map((e=>O(e.expression)));e.length>0&&(t=f.createFilter(t,e.reduce(((e,t)=>f.createOperatorExpression("&&",[e,t])))))}return t}function O(e){if(d.default.isSimpleTerm(e))return f.createTermExpression(e);if(d.default.isQuad(e))return d.default.hasQuadVariables(e)?f.createOperatorExpression("triple",[O(e.subject),O(e.predicate),O(e.object)]):f.createTermExpression(e);if(d.default.isWildcard(e))return f.createWildcardExpression();if("aggregation"in e)return f.createAggregateExpression(e.aggregation,O(e.expression),Boolean(e.distinct),e.separator);if("function"in e)return f.createNamedExpression(e.function,e.args.map(O));if("operator"in e)return"exists"===e.operator||"notexists"===e.operator?f.createExistenceExpression("notexists"===e.operator,S(e.args[0])):("in"!==e.operator&&"notin"!==e.operator||(e.args=[e.args[0]].concat(e.args[1])),f.createOperatorExpression(e.operator,e.args.map(O)));throw new Error(`Unknown expression: ${JSON.stringify(e)}`)}function E(e){if(d.default.isSimpleTerm(e)){if("NamedNode"===e.termType)return f.createLink(e);throw new Error(`Path predicate should be a NamedNode, got ${JSON.stringify(e)}`)}if("^"===e.pathType)return f.createInv(E(e.items[0]));if("!"===e.pathType){let t,r=[],n=[];t="pathType"in e.items[0]&&"|"===e.items[0].pathType?e.items[0].items:e.items;for(let e of t)if(d.default.isSimpleTerm(e))r.push(e);else{if("^"!==e.pathType)throw new Error(`Unexpected item: ${JSON.stringify(e)}`);n.push(e.items[0])}let i=f.createNps(r),a=f.createInv(f.createNps(n));return 0===n.length?i:0===r.length?a:f.createAlt([i,a])}if("/"===e.pathType)return f.createSeq(e.items.map(E));if("|"===e.pathType)return f.createAlt(e.items.map(E));if("*"===e.pathType)return f.createZeroOrMorePath(E(e.items[0]));if("+"===e.pathType)return f.createOneOrMorePath(E(e.items[0]));if("?"===e.pathType)return f.createZeroOrOnePath(E(e.items[0]));throw new Error(`Unable to translate path expression ${JSON.stringify(e)}`)}function x(e,t,r){if(t.type===p.LINK)return[f.createPattern(e,t.iri,r)];if(t.type===p.INV)return x(r,t.path,e);if(t.type===p.SEQ){let n=e;return d.default.flatten(t.input.map(((e,i)=>{const a=i===t.input.length-1?r:A(),o=x(n,e,a);return"Variable"===a.termType&&(n=a),o})))}return[f.createPath(e,t,r)]}function A(){let e="?var"+g++;return y.has(e)?A():(y.add(e),f.createTerm(e))}function R(e){if("pathType"in e.predicate)throw new Error("Trying to translate property path to quad.");return f.createPattern(e.subject,e.predicate,e.object,e.graph)}t.default=function(e,t){let r;if(t=t||{},f=new l.default(t.dataFactory),"string"==typeof e){let n=new h(t);n._resetBlanks(),r=n.parse(e)}else r=e;return b(r,t.quads,t.blankToVariable)};let I=Object.values(p);function P(e,t,r){if(e.type===p.GRAPH){if(r)throw new Error("Recursing through nested GRAPH statements with a replacement is impossible.");e=P(e.input,e.name)}else if(e.type===p.BGP)e.patterns=e.patterns.map((e=>(r&&(e.subject.equals(t)&&(e.subject=r),e.predicate.equals(t)&&(e.predicate=r),e.object.equals(t)&&(e.object=r)),"DefaultGraph"===e.graph.termType&&(e.graph=t),e)));else if(e.type===p.PATH)r&&(e.subject.equals(t)&&(e.subject=r),e.object.equals(t)&&(e.object=r)),"DefaultGraph"===e.graph.termType&&(e.graph=t);else if(e.type!==p.PROJECT||r)if(e.type!==p.EXTEND||r)for(let n of Object.keys(e))Array.isArray(e[n])?e[n]=e[n].map((e=>P(e,t,r))):I.indexOf(e[n].type)>=0?e[n]=P(e[n],t,r):r&&_(e[n])&&e[n].equals(t)&&(e[n]=r);else e.variable.equals(t)&&(r=A()),e.input=P(e.input,t,r);else e.variables.some((e=>e.equals(t)))||(r=A()),e.input=P(e.input,t,r);return e}function D(e,t){if("optional"===t.type){const r=S({type:"group",patterns:t.patterns});e=r.type===p.FILTER?f.createLeftJoin(e,r.input,r.expression):f.createLeftJoin(e,r)}else if("minus"===t.type){const r=S({type:"group",patterns:t.patterns});e=f.createMinus(e,r)}else if("bind"===t.type)e=f.createExtend(e,t.variable,O(t.expression));else if("service"===t.type){const r={type:"group",patterns:t.patterns};e=N(e,f.createService(S(r),t.name,t.silent))}else e=N(e,S(t));return e}function N(e,t){return e.type===p.BGP&&t.type===p.BGP?e=f.createBgp([...e.patterns,...t.patterns]):e.type===p.BGP&&0===e.patterns.length?e=t:t.type===p.BGP&&0===t.patterns.length||(e=f.createJoin([e,t])),e}function j(e){let t=(0===e.values.length?[]:Object.keys(e.values[0])).map(f.createTerm.bind(f)),r=e.values.map((e=>{let t=Object.keys(e);t=t.filter((t=>void 0!==e[t]));let r={};for(let n of t)r[n]=e[n];return r}));return f.createValues(t,r)}function C(e,t){if("type"in e&&"aggregate"===e.type){let r,n=!1;for(let i of Object.keys(t))if(s(t[i],e)){r=f.createTerm(i),n=!0;break}return n||(r=A(),t[(0,c.termToString)(r)]=e),r}return"expression"in e&&e.expression?{...e,expression:C(e.expression,t)}:"args"in e&&e.args?{...e,args:e.args.map((e=>C(e,t)))}:e}function M(e){if("type"in e){if("load"===e.type)return function(e){return f.createLoad(e.source,e.destination,e.silent)}(e);if("clear"===e.type||"create"===e.type||"drop"===e.type)return function(e){let t;switch(t=d.default.isSimpleTerm(e.graph)?e.graph:e.graph.all?"ALL":e.graph.default?"DEFAULT":e.graph.named?"NAMED":e.graph.name,e.type){case"clear":return f.createClear(t,e.silent);case"create":return f.createCreate(t,e.silent);case"drop":return f.createDrop(t,e.silent)}}(e);if("add"===e.type||"copy"===e.type||"move"===e.type)return function(e){const t=e.source.default?"DEFAULT":e.source.name,r=e.destination.default?"DEFAULT":e.destination.name;switch(e.type){case"copy":return f.createCopy(t,r,e.silent);case"move":return f.createMove(t,r,e.silent);case"add":return f.createAdd(t,r,e.silent)}}(e)}else if("insertdelete"===e.updateType||"deletewhere"===e.updateType||"delete"===e.updateType||"insert"===e.updateType)return function(e){if(!m)throw new Error("INSERT/DELETE operations are only supported with quads option enabled");let t,r=[],n=[];if(e.delete&&(r=d.default.flatten(e.delete.map((t=>L(t,e.graph))))),e.insert&&(n=d.default.flatten(e.insert.map((t=>L(t,e.graph))))),e.where&&e.where.length>0){t=S({type:"group",patterns:e.where});const r=e.using;r?t=f.createFrom(t,r.default,r.named):e.graph&&(t=P(t,e.graph))}else"deletewhere"===e.updateType&&r.length>0&&(t=f.createBgp(r));return f.createDeleteInsert(r.length>0?r:void 0,n.length>0?n:void 0,t)}(e);throw new Error(`Unknown update type ${JSON.stringify(e)}`)}function L(e,t){let r=t;"graph"===e.type&&(r=e.name);let n=e.triples;return r&&(n=n.map((e=>Object.assign(e,{graph:r})))),n.map(R)}function k(e){const t={},r=Array.from(y).reduce(((e,t)=>(e[t]=!0,e)),{});return d.default.mapOperation(e,{[u.types.DELETE_INSERT]:e=>({result:e,recurse:!1}),[u.types.PATH]:(e,t)=>({result:t.createPath(n(e.subject),e.predicate,n(e.object),n(e.graph)),recurse:!1}),[u.types.PATTERN]:(e,t)=>({result:t.createPattern(n(e.subject),n(e.predicate),n(e.object),n(e.graph)),recurse:!1}),[u.types.CONSTRUCT]:e=>({result:f.createConstruct(k(e.input),e.template),recurse:!1})});function n(e){if("BlankNode"===e.termType){let n=t[e.value];return n||(n=d.default.createUniqueVariable(e.value,r,f.dataFactory),r[n.value]=!0,t[e.value]=n),n}return e}}},63138:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(31928),a=n(r(51444)),o=r(98086);class s{static flatten(e){return Array.prototype.concat(...e).filter((e=>e))}static objectify(e){if(e.termType){if("Quad"===e.termType)return{type:"pattern",termType:"Quad",subject:s.objectify(e.subject),predicate:s.objectify(e.predicate),object:s.objectify(e.object),graph:s.objectify(e.graph)};{let t={termType:e.termType,value:e.value};return e.language&&(t.language=e.language),e.datatype&&(t.datatype=s.objectify(e.datatype)),t}}if(Array.isArray(e))return e.map((e=>s.objectify(e)));if(e===Object(e)){let t={};for(let r of Object.keys(e))t[r]=s.objectify(e[r]);return t}return e}static inScopeVariables(e){const t=[];function r(e){t.find((t=>e.value===t.value))||t.push(e)}function n(e){"Variable"===e.subject.termType&&r(e.subject),"Variable"===e.predicate.termType&&r(e.predicate),"Variable"===e.object.termType&&r(e.object),"Variable"===e.graph.termType&&r(e.graph),"Quad"===e.subject.termType&&n(e.subject),"Quad"===e.predicate.termType&&n(e.predicate),"Quad"===e.object.termType&&n(e.object),"Quad"===e.graph.termType&&n(e.graph)}return s.recurseOperation(e,{[i.types.EXPRESSION]:e=>(e.expressionType===i.expressionTypes.AGGREGATE&&e.variable&&r(e.variable),!0),[i.types.EXTEND]:e=>(r(e.variable),!0),[i.types.GRAPH]:e=>("Variable"===e.name.termType&&r(e.name),!0),[i.types.GROUP]:e=>(e.variables.forEach(r),!0),[i.types.PATH]:e=>("Variable"===e.subject.termType&&r(e.subject),"Variable"===e.object.termType&&r(e.object),"Variable"===e.graph.termType&&r(e.graph),"Quad"===e.subject.termType&&n(e.subject),"Quad"===e.object.termType&&n(e.object),"Quad"===e.graph.termType&&n(e.graph),!0),[i.types.PATTERN]:e=>(n(e),!0),[i.types.PROJECT]:e=>(e.variables.forEach(r),!1),[i.types.SERVICE]:e=>("Variable"===e.name.termType&&r(e.name),!0),[i.types.VALUES]:e=>(e.variables.forEach(r),!0)}),t}static recurseOperation(e,t){let r=e,n=!0;const a=t[e.type];if(a&&(n=a(e)),!n)return;let o=e=>s.recurseOperation(e,t);switch(r.type){case i.types.ALT:r.input.map(o);break;case i.types.ASK:o(r.input);break;case i.types.BGP:r.patterns.forEach(o);break;case i.types.CONSTRUCT:o(r.input),r.template.map(o);break;case i.types.DESCRIBE:case i.types.DISTINCT:o(r.input);break;case i.types.EXPRESSION:r.expressionType===i.expressionTypes.EXISTENCE&&o(r.input);break;case i.types.EXTEND:case i.types.FILTER:o(r.input),o(r.expression);break;case i.types.FROM:case i.types.GRAPH:o(r.input);break;case i.types.GROUP:o(r.input),r.aggregates.forEach(o);break;case i.types.INV:o(r.path);break;case i.types.JOIN:r.input.map(o);break;case i.types.LEFT_JOIN:r.input.map(o),r.expression&&o(r.expression);break;case i.types.LINK:break;case i.types.MINUS:r.input.map(o);break;case i.types.NOP:case i.types.NPS:break;case i.types.ONE_OR_MORE_PATH:o(r.path);break;case i.types.ORDER_BY:o(r.input),r.expressions.forEach(o);break;case i.types.PATH:o(r.predicate);break;case i.types.PATTERN:break;case i.types.PROJECT:case i.types.REDUCED:o(r.input);break;case i.types.SEQ:r.input.map(o);break;case i.types.SERVICE:case i.types.SLICE:o(r.input);break;case i.types.UNION:r.input.map(o);break;case i.types.VALUES:break;case i.types.ZERO_OR_MORE_PATH:case i.types.ZERO_OR_ONE_PATH:o(r.path);break;case i.types.COMPOSITE_UPDATE:r.updates.forEach((e=>o(e)));break;case i.types.DELETE_INSERT:r.delete&&r.delete.forEach((e=>o(e))),r.insert&&r.insert.forEach((e=>o(e))),r.where&&o(r.where);break;case i.types.LOAD:case i.types.CLEAR:case i.types.CREATE:case i.types.DROP:case i.types.ADD:case i.types.MOVE:case i.types.COPY:break;default:throw new Error(`Unknown Operation type ${r.type}`)}}static mapOperation(e,t,r){let n=e,o=!0;r=r||new a.default;const c=t[e.type];if(c&&({result:n,recurse:o}=c(e,r)),!o)return n;let u=e=>s.mapOperation(e,t,r);switch(n.type){case i.types.ALT:return r.createAlt(n.input.map(u));case i.types.ASK:return r.createAsk(u(n.input));case i.types.BGP:return r.createBgp(n.patterns.map(u));case i.types.CONSTRUCT:return r.createConstruct(u(n.input),n.template.map(u));case i.types.DESCRIBE:return r.createDescribe(u(n.input),n.terms);case i.types.DISTINCT:return r.createDistinct(u(n.input));case i.types.EXPRESSION:return s.mapExpression(n,t,r);case i.types.EXTEND:return r.createExtend(u(n.input),n.variable,u(n.expression));case i.types.FILTER:return r.createFilter(u(n.input),u(n.expression));case i.types.FROM:return r.createFrom(u(n.input),[...n.default],[...n.named]);case i.types.GRAPH:return r.createGraph(u(n.input),n.name);case i.types.GROUP:return r.createGroup(u(n.input),[].concat(n.variables),n.aggregates.map(u));case i.types.INV:return r.createInv(u(n.path));case i.types.JOIN:return r.createJoin(n.input.map(u));case i.types.LEFT_JOIN:return r.createLeftJoin(u(n.input[0]),u(n.input[1]),n.expression?u(n.expression):void 0);case i.types.LINK:return r.createLink(n.iri);case i.types.MINUS:return r.createMinus(u(n.input[0]),u(n.input[1]));case i.types.NOP:return r.createNop();case i.types.NPS:return r.createNps([].concat(n.iris));case i.types.ONE_OR_MORE_PATH:return r.createOneOrMorePath(u(n.path));case i.types.ORDER_BY:return r.createOrderBy(u(n.input),n.expressions.map(u));case i.types.PATH:return r.createPath(n.subject,u(n.predicate),n.object,n.graph);case i.types.PATTERN:return r.createPattern(n.subject,n.predicate,n.object,n.graph);case i.types.PROJECT:return r.createProject(u(n.input),[...n.variables]);case i.types.REDUCED:return r.createReduced(u(n.input));case i.types.SEQ:return r.createSeq(n.input.map(u));case i.types.SERVICE:return r.createService(u(n.input),n.name,n.silent);case i.types.SLICE:return r.createSlice(u(n.input),n.start,n.length);case i.types.UNION:return r.createUnion(n.input.map(u));case i.types.VALUES:return r.createValues([].concat(n.variables),n.bindings.map((e=>Object.assign({},e))));case i.types.ZERO_OR_MORE_PATH:return r.createZeroOrMorePath(u(n.path));case i.types.ZERO_OR_ONE_PATH:return r.createZeroOrOnePath(u(n.path));case i.types.COMPOSITE_UPDATE:return r.createCompositeUpdate(n.updates.map(u));case i.types.DELETE_INSERT:return r.createDeleteInsert(n.delete?n.delete.map(u):void 0,n.insert?n.insert.map(u):void 0,n.where?u(n.where):void 0);case i.types.LOAD:return r.createLoad(n.source,n.destination,n.silent);case i.types.CLEAR:return r.createClear(n.source,n.silent);case i.types.CREATE:return r.createCreate(n.source,n.silent);case i.types.DROP:return r.createDrop(n.source,n.silent);case i.types.ADD:return r.createAdd(n.source,n.destination);case i.types.MOVE:return r.createMove(n.source,n.destination);case i.types.COPY:return r.createCopy(n.source,n.destination);default:throw new Error(`Unknown Operation type ${n.type}`)}}static mapExpression(e,t,r){let n=e,o=!0;r=r||new a.default;const c=t[e.expressionType];if(c&&({result:n,recurse:o}=c(e,r)),!o)return n;let u=e=>s.mapOperation(e,t,r);switch(e.expressionType){case i.expressionTypes.AGGREGATE:return e.variable?r.createBoundAggregate(e.variable,e.aggregator,u(e.expression),e.distinct,e.separator):r.createAggregateExpression(e.aggregator,u(e.expression),e.distinct,e.separator);case i.expressionTypes.EXISTENCE:return r.createExistenceExpression(e.not,u(e.input));case i.expressionTypes.NAMED:return r.createNamedExpression(e.name,e.args.map(u));case i.expressionTypes.OPERATOR:return r.createOperatorExpression(e.operator,e.args.map(u));case i.expressionTypes.TERM:return r.createTermExpression(e.term);case i.expressionTypes.WILDCARD:return r.createWildcardExpression();default:throw new Error(`Unknown Expression type ${e.expressionType}`)}}static cloneOperation(e){return s.mapOperation(e,{})}static cloneExpression(e){return s.mapExpression(e,{})}static createUniqueVariable(e,t,r){let n=0,i=e;for(;t[i];)i=`${e}${n++}`;return r.variable(i)}static isSimpleTerm(e){return void 0!==e.termType&&"Quad"!==e.termType&&"Wildcard"!==e.termType}static isQuad(e){return"Quad"===e.termType}static hasQuadVariables(e){return(0,o.someTermsNested)(e,(e=>"Variable"===e.termType))}static isWildcard(e){return"Wildcard"===e.termType}}t.default=s},24411:e=>{function t(e){this._options=e=e||{};var t=e.prefixes||{};this._prefixByIri={};var r=[];for(var n in t){var i=t[n];o(i)&&(this._prefixByIri[i]=n,r.push(i))}var a=r.join("|").replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&");this._prefixRegex=new RegExp("^("+a+")([a-zA-Z][\\-_a-zA-Z0-9]*)$"),this._usedPrefixes={},this._sparqlStar=e.sparqlStar,this._indent=o(e.indent)?e.indent:" ",this._newline=o(e.newline)?e.newline:"\n",this._explicitDatatype=Boolean(e.explicitDatatype)}t.prototype.toQuery=function(e){var t="";return e.queryType&&(t+=e.queryType.toUpperCase()+" "),e.reduced&&(t+="REDUCED "),e.distinct&&(t+="DISTINCT "),e.variables?t+=u(e.variables,void 0,(function(e){return s(e)?this.toEntity(e):"("+this.toExpression(e.expression)+" AS "+a(e.variable)+")"}),this)+" ":e.template&&(t+=this.group(e.template,!0)+this._newline),e.from&&(t+=this.graphs("FROM ",e.from.default)+this.graphs("FROM NAMED ",e.from.named)),e.where&&(t+="WHERE "+this.group(e.where,!0)+this._newline),e.updates&&(t+=u(e.updates,";"+this._newline,this.toUpdate,this)),e.group&&(t+="GROUP BY "+u(e.group,void 0,(function(e){var t=s(e.expression)?this.toEntity(e.expression):"("+this.toExpression(e.expression)+")";return e.variable?"("+t+" AS "+a(e.variable)+")":t}),this)+this._newline),e.having&&(t+="HAVING ("+u(e.having,void 0,this.toExpression,this)+")"+this._newline),e.order&&(t+="ORDER BY "+u(e.order,void 0,(function(e){var t="("+this.toExpression(e.expression)+")";return e.descending?"DESC "+t:t}),this)+this._newline),e.offset&&(t+="OFFSET "+e.offset+this._newline),e.limit&&(t+="LIMIT "+e.limit+this._newline),e.values&&(t+=this.values(e)),(t=this.baseAndPrefixes(e)+t).trim()},t.prototype.baseAndPrefixes=function(e){var t=e.base?"BASE <"+e.base+">"+this._newline:"",r="";for(var n in e.prefixes)(this._options.allPrefixes||this._usedPrefixes[n])&&(r+="PREFIX "+n+": <"+e.prefixes[n]+">"+this._newline);return t+r},t.prototype.toPattern=function(e){var t=e.type||e instanceof Array&&"array"||(e.subject&&e.predicate&&e.object?"triple":"");if(!(t in this))throw new Error("Unknown entry type: "+t);return this[t](e)},t.prototype.triple=function(e){return this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+"."},t.prototype.array=function(e){return u(e,this._newline,this.toPattern,this)},t.prototype.bgp=function(e){return this.encodeTriples(e.triples)},t.prototype.encodeTriples=function(e){if(!e.length)return"";for(var t=[],r=void 0,n=void 0,i=0;i":case">=":case"<=":case"&&":case"||":case"=":case"!=":case"+":case"-":case"*":case"/":return(s(i[0])?this.toEntity(i[0]):"("+this.toExpression(i[0])+")")+" "+t+" "+(s(i[1])?this.toEntity(i[1]):"("+this.toExpression(i[1])+")");case"!":return"!("+this.toExpression(i[0])+")";case"uplus":return"+("+this.toExpression(i[0])+")";case"uminus":return"-("+this.toExpression(i[0])+")";case"notin":t="NOT IN";case"in":return this.toExpression(i[0])+" "+t+"("+(o(i[1])?i[1]:u(i[1],", ",this.toExpression,this))+")";case"notexists":t="NOT EXISTS";case"exists":return t+" "+this.group(i[0],!0);default:return t+"("+u(i,", ",this.toExpression,this)+")"}default:throw new Error("Unknown expression type: "+e.type)}},t.prototype.toEntity=function(e){if(s(e))switch(e.termType){case"Wildcard":return"*";case"Variable":return a(e);case"BlankNode":return"_:"+e.value;case"Literal":var t=e.value||"",i=e.language||"",o=e.datatype;if(e='"'+t.replace(r,n)+'"',i)e+="@"+i;else if(o){if(!this._explicitDatatype)switch(o.value){case"http://www.w3.org/2001/XMLSchema#string":return e;case"http://www.w3.org/2001/XMLSchema#integer":if(/^\d+$/.test(t))return t+" "}e+="^^"+this.encodeIRI(o.value)}return e;case"Quad":if(!this._sparqlStar)throw new Error("SPARQL* support is not enabled");return e.graph&&"DefaultGraph"!==e.graph.termType?"<< GRAPH "+this.toEntity(e.graph)+" { "+this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+" } >>":"<< "+this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+" >>";default:return this.encodeIRI(e.value)}else{var c=e.items.map(this.toEntity,this),u=e.pathType;switch(u){case"^":case"!":return u+c[0];case"*":case"+":case"?":return"("+c[0]+u+")";default:return"("+c.join(u)+")"}}};var r=/["\\\t\n\r\b\f]/g,n=function(e){return i[e]},i={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};function a(e){return"?"+e.value}function o(e){return"string"==typeof e}function s(e){return"string"==typeof e.termType}function c(e,t){if(!e||!s(e))return!1;if(!t||!s(t))return!1;if(e.termType!==t.termType)return!1;switch(e.termType){case"Literal":return e.value===t.value&&e.language===t.language&&c(e.datatype,t.datatype);case"Quad":return c(e.subject,t.subject)&&c(e.predicate,t.predicate)&&c(e.object,t.object)&&c(e.graph,t.graph);default:return e.value===t.value}}function u(e,t,r,n){return e.map(r,n).join(o(t)?t:" ")}t.prototype.encodeIRI=function(e){var t=this._prefixRegex.exec(e);if(t){var r=this._prefixByIri[t[1]];return this._usedPrefixes[r]=!0,r+":"+t[2]}return"<"+e+">"},t.prototype.toUpdate=function(e){switch(e.type||e.updateType){case"load":return"LOAD"+(e.source?" "+this.toEntity(e.source):"")+(e.destination?" INTO GRAPH "+this.toEntity(e.destination):"");case"insert":return"INSERT DATA "+this.group(e.insert,!0);case"delete":return"DELETE DATA "+this.group(e.delete,!0);case"deletewhere":return"DELETE WHERE "+this.group(e.delete,!0);case"insertdelete":return(e.graph?"WITH "+this.toEntity(e.graph)+this._newline:"")+(e.delete.length?"DELETE "+this.group(e.delete,!0)+this._newline:"")+(e.insert.length?"INSERT "+this.group(e.insert,!0)+this._newline:"")+(e.using?this.graphs("USING ",e.using.default):"")+(e.using?this.graphs("USING NAMED ",e.using.named):"")+"WHERE "+this.group(e.where,!0);case"add":case"copy":case"move":return e.type.toUpperCase()+" "+(e.silent?"SILENT ":"")+(e.source.default?"DEFAULT":this.toEntity(e.source.name))+" TO "+this.toEntity(e.destination.name);case"create":case"clear":case"drop":return e.type.toUpperCase()+(e.silent?" SILENT ":" ")+(e.graph.default?"DEFAULT":e.graph.named?"NAMED":e.graph.all?"ALL":"GRAPH "+this.toEntity(e.graph.name));default:throw new Error("Unknown update query type: "+e.type)}},t.prototype.indent=function(e){return e.replace(/^/gm,this._indent)},e.exports=function(e={}){return{stringify:function(r){var n=Object.create(e);return n.prefixes=r.prefixes,new t(n).toQuery(r)},createGenerator:function(){return new t(e)}}}},57474:(e,t,r)=>{var n=function(){var e=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},t=[6,12,13,15,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],n=[2,247],i=[100,110,113,115,116,123,126,131,329,330,331,332,333],a=[2,409],o=[1,18],s=[1,27],c=[13,16,45,197,224,229,308],u=[28,29,53],l=[28,53],d=[1,42],h=[1,45],p=[1,41],f=[1,44],y=[123,126],g=[1,67],m=[39,45,87],b=[13,16,45,197,224,308],v=[1,87],_=[2,281],w=[1,86],T=[13,16,45,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],S=[6,28,29,53,63,70,73,81,83,85],O=[6,13,16,28,29,53,63,70,73,81,83,85,87,308],E=[6,13,16,28,29,45,53,63,70,73,81,82,83,85,87,89,197,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314],x=[6,13,16,28,29,31,39,45,47,48,53,63,70,73,81,82,83,85,87,89,109,112,121,123,126,128,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,337,338,340,341,342,343,344,345,346],A=[13,16,308],R=[112,132,327,334],I=[13,16,112,132,308],P=[1,111],D=[1,117],N=[112,132,327,328,334],j=[13,16,112,132,308,328],C=[28,29,45,53,87],M=[1,138],L=[1,151],k=[1,128],F=[1,127],B=[1,129],U=[1,140],q=[1,141],V=[1,142],Q=[1,143],$=[1,144],H=[1,145],G=[1,147],z=[1,148],K=[2,457],X=[1,158],W=[1,159],J=[1,160],Y=[1,152],Z=[1,153],ee=[1,156],te=[1,171],re=[1,172],ne=[1,173],ie=[1,174],ae=[1,175],oe=[1,176],se=[1,167],ce=[1,168],ue=[1,169],le=[1,170],de=[1,157],he=[1,166],pe=[1,161],fe=[1,162],ye=[1,163],ge=[1,164],me=[1,165],be=[6,13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],ve=[1,195],_e=[6,31,73,81,83,85],we=[2,285],Te=[1,199],Se=[1,201],Oe=[6,31,70,73,81,83,85],Ee=[2,283],xe=[1,207],Ae=[1,218],Re=[1,223],Ie=[1,219],Pe=[1,225],De=[1,226],Ne=[1,224],je=[6,63,70,73,81,83,85],Ce=[1,236],Me=[2,334],Le=[1,243],ke=[1,241],Fe=[6,193],Be=[2,349],Ue=[2,339],qe=[28,128],Ve=[47,48,193,272],Qe=[47,48,193,242,272],$e=[47,48,193,242,246,272],He=[47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,341,342,343,344,345,346],Ge=[39,47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,338,341,342,343,344,345,346],ze=[1,271],Ke=[1,270],Xe=[6,13,16,29,31,39,45,47,48,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],We=[1,281],Je=[1,280],Ye=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],Ze=[45,89],et=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],tt=[13,16,31,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],rt=[31,89],nt=[48,87],it=[6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338],at=[6,13,16,39,45,48,82,87,89,231,263,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338,340],ot=[1,313],st=[6,85],ct=[6,31,81,83,85],ut=[2,361],lt=[2,353],dt=[1,343],ht=[31,112,335],pt=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],ft=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335],yt=[6,109,193],gt=[31,112],mt=[13,16,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],bt=[1,390],vt=[1,391],_t=[13,16,87,197,308,314],wt=[13,16,39,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Tt=[1,417],St=[1,418],Ot=[13,16,48,197,229,308],Et=[6,31,85],xt=[6,13,16,31,45,73,81,83,85,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],At=[6,13,16,29,31,45,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,231,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,346,347,348,349,350,351],Rt=[29,31,85,112,159,160,161,163,164],It=[1,443],Pt=[1,444],Dt=[1,449],Nt=[31,112,193,232,318,335],jt=[13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Ct=[13,16,31,45,48,82,87,89,112,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Mt=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Lt=[13,16,31,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],kt=[31,45],Ft=[1,507],Bt=[1,508],Ut=[6,13,16,29,31,39,45,47,48,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,336,338,341,342,343,344,345,346,347,348,349,350,351],qt=[29,31,85,112,159,160,161,163,164,335],Vt=[6,13,16,31,45,70,73,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],Qt=[13,16,31,45,48,82,87,89,112,193,197,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],$t=[2,352],Ht=[13,16,197,308,314],Gt=[1,565],zt=[6,13,16,31,45,76,78,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],Kt=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Xt=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],Wt=[13,16,87,308],Jt=[2,364],Yt=[29,31,85,112,159,160,161,163,164,193,232,318,335],Zt=[31,112,193,232,272,318,335],er=[2,359],tr=[13,16,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],rr=[29,31,85,112,159,160,161,163,164,193,232,272,318,335],nr=[13,16,31,45,82,87,89,112,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],ir=[2,347],ar={trace:function(){},yy:{},symbols_:{error:2,QueryOrUpdate:3,Prologue:4,QueryOrUpdate_group0:5,EOF:6,Query:7,Qry:8,Query_option0:9,Prologue_repetition0:10,BaseDecl:11,BASE:12,IRIREF:13,PrefixDecl:14,PREFIX:15,PNAME_NS:16,SelectClauseWildcard:17,Qry_repetition0:18,WhereClause:19,SolutionModifierNoGroup:20,SelectClauseVars:21,Qry_repetition1:22,SolutionModifier:23,CONSTRUCT:24,ConstructTemplate:25,Qry_repetition2:26,Qry_repetition3:27,WHERE:28,"{":29,Qry_option0:30,"}":31,DESCRIBE:32,Qry_group0:33,Qry_repetition4:34,Qry_option1:35,ASK:36,Qry_repetition5:37,SelectClauseBase:38,"*":39,SelectClauseVars_repetition_plus0:40,SELECT:41,SelectClauseBase_option0:42,SelectClauseItem:43,Var:44,"(":45,Expression:46,AS:47,")":48,SubSelect:49,SubSelect_option0:50,SubSelect_option1:51,DatasetClause:52,FROM:53,DatasetClause_option0:54,iri:55,WhereClause_option0:56,GroupGraphPattern:57,SolutionModifier_option0:58,SolutionModifierNoGroup_option0:59,SolutionModifierNoGroup_option1:60,SolutionModifierNoGroup_option2:61,GroupClause:62,GROUP:63,BY:64,GroupClause_repetition_plus0:65,GroupCondition:66,BuiltInCall:67,FunctionCall:68,HavingClause:69,HAVING:70,HavingClause_repetition_plus0:71,OrderClause:72,ORDER:73,OrderClause_repetition_plus0:74,OrderCondition:75,ASC:76,BrackettedExpression:77,DESC:78,Constraint:79,LimitOffsetClauses:80,LIMIT:81,INTEGER:82,OFFSET:83,ValuesClause:84,VALUES:85,InlineData:86,VAR:87,InlineData_repetition0:88,NIL:89,InlineData_repetition1:90,InlineData_repetition_plus2:91,InlineData_repetition3:92,DataBlock:93,DataBlockValueList:94,DataBlockValueList_repetition_plus0:95,Update:96,Update_repetition0:97,Update1:98,Update_option0:99,LOAD:100,Update1_option0:101,Update1_option1:102,Update1_group0:103,Update1_option2:104,GraphRefAll:105,Update1_group1:106,Update1_option3:107,GraphOrDefault:108,TO:109,CREATE:110,Update1_option4:111,GRAPH:112,INSERTDATA:113,QuadPattern:114,DELETEDATA:115,DELETEWHERE:116,Update1_option5:117,InsertDeleteClause:118,Update1_repetition0:119,IntoGraphClause:120,INTO:121,GraphRef:122,DELETE:123,InsertDeleteClause_option0:124,InsertClause:125,INSERT:126,UsingClause:127,USING:128,UsingClause_option0:129,WithClause:130,WITH:131,DEFAULT:132,GraphOrDefault_option0:133,GraphRefAll_group0:134,Quads:135,Quads_option0:136,Quads_repetition0:137,QuadsNotTriples:138,VarOrIri:139,QuadsNotTriples_option0:140,QuadsNotTriples_option1:141,QuadsNotTriples_option2:142,TriplesTemplate:143,TriplesTemplate_repetition0:144,TriplesSameSubject:145,TriplesTemplate_option0:146,GroupGraphPatternSub:147,GroupGraphPatternSub_option0:148,GroupGraphPatternSub_repetition0:149,GroupGraphPatternSubTail:150,GraphPatternNotTriples:151,GroupGraphPatternSubTail_option0:152,GroupGraphPatternSubTail_option1:153,TriplesBlock:154,TriplesBlock_repetition0:155,TriplesSameSubjectPath:156,TriplesBlock_option0:157,GroupOrUnionGraphPattern:158,OPTIONAL:159,MINUS:160,SERVICE:161,GraphPatternNotTriples_option0:162,FILTER:163,BIND:164,InlineDataOneVar:165,InlineDataFull:166,InlineDataOneVar_repetition0:167,InlineDataFull_repetition0:168,InlineDataFull_repetition_plus1:169,InlineDataFull_repetition2:170,DataBlockValue:171,Literal:172,QuotedTriple:173,UNDEF:174,GroupOrUnionGraphPattern_repetition0:175,ArgList:176,ArgList_option0:177,ArgList_repetition0:178,ExpressionList:179,ExpressionList_repetition0:180,ConstructTemplate_option0:181,ConstructTriples:182,ConstructTriples_repetition0:183,ConstructTriples_option0:184,VarOrTermOrQuotedTP:185,PropertyListNotEmpty:186,TriplesNode:187,PropertyList:188,PropertyList_option0:189,VerbObjectList:190,PropertyListNotEmpty_repetition0:191,SemiOptionalVerbObjectList:192,";":193,SemiOptionalVerbObjectList_option0:194,Verb:195,ObjectList:196,a:197,ObjectList_repetition0:198,Object:199,GraphNode:200,Object_option0:201,PropertyListPathNotEmpty:202,TriplesNodePath:203,TriplesSameSubjectPath_option0:204,O:205,PropertyListPathNotEmpty_repetition0:206,PropertyListPathNotEmptyTail:207,O_group0:208,ObjectListPath:209,ObjectListPath_repetition0:210,ObjectPath:211,GraphNodePath:212,ObjectPath_option0:213,Path:214,Path_repetition0:215,PathSequence:216,PathSequence_repetition0:217,PathEltOrInverse:218,PathElt:219,PathPrimary:220,PathElt_option0:221,PathEltOrInverse_option0:222,IriOrA:223,"!":224,PathNegatedPropertySet:225,PathOneInPropertySet:226,PathNegatedPropertySet_repetition0:227,PathNegatedPropertySet_option0:228,"^":229,TriplesNode_repetition_plus0:230,"[":231,"]":232,TriplesNodePath_repetition_plus0:233,VarOrTermOrQuotedTPExpr:234,VarOrTerm:235,GraphTerm:236,BlankNode:237,ConditionalOrExpression:238,ConditionalAndExpression:239,ConditionalOrExpression_repetition0:240,ConditionalOrExpressionTail:241,"||":242,RelationalExpression:243,ConditionalAndExpression_repetition0:244,ConditionalAndExpressionTail:245,"&&":246,NumericExpression:247,RelationalExpression_group0:248,RelationalExpression_option0:249,IN:250,MultiplicativeExpression:251,NumericExpression_repetition0:252,AdditiveExpressionTail:253,AdditiveExpressionTail_group0:254,NumericLiteralPositive:255,AdditiveExpressionTail_repetition0:256,NumericLiteralNegative:257,AdditiveExpressionTail_repetition1:258,UnaryExpression:259,MultiplicativeExpression_repetition0:260,MultiplicativeExpressionTail:261,MultiplicativeExpressionTail_group0:262,"+":263,PrimaryExpression:264,"-":265,ExprQuotedTP:266,Aggregate:267,FUNC_ARITY0:268,FUNC_ARITY1:269,FUNC_ARITY1_SPARQL_STAR:270,FUNC_ARITY2:271,",":272,FUNC_ARITY3:273,FUNC_ARITY3_SPARQL_STAR:274,BuiltInCall_group0:275,BOUND:276,BNODE:277,BuiltInCall_option0:278,EXISTS:279,COUNT:280,Aggregate_option0:281,Aggregate_group0:282,FUNC_AGGREGATE:283,Aggregate_option1:284,GROUP_CONCAT:285,Aggregate_option2:286,Aggregate_option3:287,GroupConcatSeparator:288,SEPARATOR:289,"=":290,String:291,LANGTAG:292,"^^":293,DECIMAL:294,DOUBLE:295,BOOLEAN:296,INTEGER_POSITIVE:297,DECIMAL_POSITIVE:298,DOUBLE_POSITIVE:299,INTEGER_NEGATIVE:300,DECIMAL_NEGATIVE:301,DOUBLE_NEGATIVE:302,STRING_LITERAL1:303,STRING_LITERAL2:304,STRING_LITERAL_LONG1:305,STRING_LITERAL_LONG2:306,PrefixedName:307,PNAME_LN:308,BLANK_NODE_LABEL:309,ANON:310,QuotedTP:311,"<<":312,qtSubjectOrObject:313,">>":314,DataValueTerm:315,AnnotationPattern:316,"{|":317,"|}":318,AnnotationPatternPath:319,ExprVarOrTerm:320,QueryOrUpdate_group0_option0:321,Prologue_repetition0_group0:322,Qry_group0_repetition_plus0:323,SelectClauseBase_option0_group0:324,DISTINCT:325,REDUCED:326,NAMED:327,SILENT:328,CLEAR:329,DROP:330,ADD:331,MOVE:332,COPY:333,ALL:334,".":335,UNION:336,"|":337,"/":338,PathElt_option0_group0:339,"?":340,"!=":341,"<":342,">":343,"<=":344,">=":345,NOT:346,CONCAT:347,COALESCE:348,SUBSTR:349,REGEX:350,REPLACE:351,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",12:"BASE",13:"IRIREF",15:"PREFIX",16:"PNAME_NS",24:"CONSTRUCT",28:"WHERE",29:"{",31:"}",32:"DESCRIBE",36:"ASK",39:"*",41:"SELECT",45:"(",47:"AS",48:")",53:"FROM",63:"GROUP",64:"BY",70:"HAVING",73:"ORDER",76:"ASC",78:"DESC",81:"LIMIT",82:"INTEGER",83:"OFFSET",85:"VALUES",87:"VAR",89:"NIL",100:"LOAD",109:"TO",110:"CREATE",112:"GRAPH",113:"INSERTDATA",115:"DELETEDATA",116:"DELETEWHERE",121:"INTO",123:"DELETE",126:"INSERT",128:"USING",131:"WITH",132:"DEFAULT",159:"OPTIONAL",160:"MINUS",161:"SERVICE",163:"FILTER",164:"BIND",174:"UNDEF",193:";",197:"a",224:"!",229:"^",231:"[",232:"]",242:"||",246:"&&",250:"IN",263:"+",265:"-",268:"FUNC_ARITY0",269:"FUNC_ARITY1",270:"FUNC_ARITY1_SPARQL_STAR",271:"FUNC_ARITY2",272:",",273:"FUNC_ARITY3",274:"FUNC_ARITY3_SPARQL_STAR",276:"BOUND",277:"BNODE",279:"EXISTS",280:"COUNT",283:"FUNC_AGGREGATE",285:"GROUP_CONCAT",289:"SEPARATOR",290:"=",292:"LANGTAG",293:"^^",294:"DECIMAL",295:"DOUBLE",296:"BOOLEAN",297:"INTEGER_POSITIVE",298:"DECIMAL_POSITIVE",299:"DOUBLE_POSITIVE",300:"INTEGER_NEGATIVE",301:"DECIMAL_NEGATIVE",302:"DOUBLE_NEGATIVE",303:"STRING_LITERAL1",304:"STRING_LITERAL2",305:"STRING_LITERAL_LONG1",306:"STRING_LITERAL_LONG2",308:"PNAME_LN",309:"BLANK_NODE_LABEL",310:"ANON",312:"<<",314:">>",317:"{|",318:"|}",325:"DISTINCT",326:"REDUCED",327:"NAMED",328:"SILENT",329:"CLEAR",330:"DROP",331:"ADD",332:"MOVE",333:"COPY",334:"ALL",335:".",336:"UNION",337:"|",338:"/",340:"?",341:"!=",342:"<",343:">",344:"<=",345:">=",346:"NOT",347:"CONCAT",348:"COALESCE",349:"SUBSTR",350:"REGEX",351:"REPLACE"},productions_:[0,[3,3],[7,2],[4,1],[11,2],[14,3],[8,4],[8,4],[8,5],[8,7],[8,5],[8,4],[17,2],[21,2],[38,2],[43,1],[43,5],[49,4],[49,4],[52,3],[19,2],[23,2],[20,3],[62,3],[66,1],[66,1],[66,3],[66,5],[66,1],[69,2],[72,3],[75,2],[75,2],[75,1],[75,1],[80,2],[80,2],[80,4],[80,4],[84,2],[86,4],[86,4],[86,6],[86,2],[94,3],[96,3],[98,4],[98,3],[98,5],[98,4],[98,2],[98,2],[98,2],[98,5],[120,2],[118,3],[118,1],[125,2],[127,3],[130,2],[108,1],[108,2],[122,2],[105,1],[105,1],[114,3],[135,2],[138,7],[143,3],[57,3],[57,3],[147,2],[150,3],[154,3],[151,1],[151,2],[151,2],[151,3],[151,4],[151,2],[151,6],[151,1],[93,1],[93,1],[165,4],[166,4],[166,6],[171,1],[171,1],[171,1],[171,1],[158,2],[79,1],[79,1],[79,1],[68,2],[176,1],[176,5],[179,1],[179,4],[25,3],[182,3],[145,2],[145,2],[188,1],[186,2],[192,2],[190,2],[195,1],[195,1],[196,2],[199,2],[156,2],[156,2],[202,2],[207,1],[207,2],[205,2],[209,2],[211,2],[214,2],[216,2],[219,2],[218,2],[220,1],[220,2],[220,3],[225,1],[225,1],[225,4],[226,1],[226,2],[187,3],[187,3],[203,3],[203,3],[200,1],[200,1],[212,1],[212,1],[234,1],[235,1],[235,1],[139,1],[139,1],[44,1],[236,1],[236,1],[236,1],[236,1],[46,1],[238,2],[241,2],[239,2],[245,2],[243,1],[243,3],[243,4],[247,2],[253,2],[253,2],[253,2],[251,2],[261,2],[259,2],[259,2],[259,2],[259,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[77,3],[67,1],[67,2],[67,4],[67,4],[67,6],[67,8],[67,8],[67,2],[67,4],[67,2],[67,4],[67,3],[267,5],[267,5],[267,6],[288,4],[172,1],[172,2],[172,3],[172,1],[172,1],[172,1],[172,1],[172,1],[172,1],[255,1],[255,1],[255,1],[257,1],[257,1],[257,1],[291,1],[291,1],[291,1],[291,1],[55,1],[55,1],[307,1],[307,1],[237,1],[237,1],[311,5],[173,5],[313,1],[313,1],[313,1],[313,1],[313,1],[315,1],[315,1],[315,1],[185,1],[185,1],[185,1],[316,3],[319,3],[266,5],[320,1],[320,1],[320,1],[223,1],[223,1],[321,0],[321,1],[5,1],[5,1],[5,1],[9,0],[9,1],[322,1],[322,1],[10,0],[10,2],[18,0],[18,2],[22,0],[22,2],[26,0],[26,2],[27,0],[27,2],[30,0],[30,1],[323,1],[323,2],[33,1],[33,1],[34,0],[34,2],[35,0],[35,1],[37,0],[37,2],[40,1],[40,2],[324,1],[324,1],[42,0],[42,1],[50,0],[50,1],[51,0],[51,1],[54,0],[54,1],[56,0],[56,1],[58,0],[58,1],[59,0],[59,1],[60,0],[60,1],[61,0],[61,1],[65,1],[65,2],[71,1],[71,2],[74,1],[74,2],[88,0],[88,2],[90,0],[90,2],[91,1],[91,2],[92,0],[92,2],[95,1],[95,2],[97,0],[97,4],[99,0],[99,2],[101,0],[101,1],[102,0],[102,1],[103,1],[103,1],[104,0],[104,1],[106,1],[106,1],[106,1],[107,0],[107,1],[111,0],[111,1],[117,0],[117,1],[119,0],[119,2],[124,0],[124,1],[129,0],[129,1],[133,0],[133,1],[134,1],[134,1],[134,1],[136,0],[136,1],[137,0],[137,2],[140,0],[140,1],[141,0],[141,1],[142,0],[142,1],[144,0],[144,3],[146,0],[146,1],[148,0],[148,1],[149,0],[149,2],[152,0],[152,1],[153,0],[153,1],[155,0],[155,3],[157,0],[157,1],[162,0],[162,1],[167,0],[167,2],[168,0],[168,2],[169,1],[169,2],[170,0],[170,2],[175,0],[175,3],[177,0],[177,1],[178,0],[178,3],[180,0],[180,3],[181,0],[181,1],[183,0],[183,3],[184,0],[184,1],[189,0],[189,1],[191,0],[191,2],[194,0],[194,1],[198,0],[198,3],[201,0],[201,1],[204,0],[204,1],[206,0],[206,2],[208,1],[208,1],[210,0],[210,3],[213,0],[213,1],[215,0],[215,3],[217,0],[217,3],[339,1],[339,1],[339,1],[221,0],[221,1],[222,0],[222,1],[227,0],[227,3],[228,0],[228,1],[230,1],[230,2],[233,1],[233,2],[240,0],[240,2],[244,0],[244,2],[248,1],[248,1],[248,1],[248,1],[248,1],[248,1],[249,0],[249,1],[252,0],[252,2],[254,1],[254,1],[256,0],[256,2],[258,0],[258,2],[260,0],[260,2],[262,1],[262,1],[275,1],[275,1],[275,1],[275,1],[275,1],[278,0],[278,1],[281,0],[281,1],[282,1],[282,1],[284,0],[284,1],[286,0],[286,1],[287,0],[287,1]],performAction:function(e,t,r,n,i,a,o){var s,c,u,l,d=a.length-1;switch(i){case 1:if(a[d-1]=a[d-1]||{},nn.base&&(a[d-1].base=nn.base),nn.base="",a[d-1].prefixes=nn.prefixes,nn.prefixes=null,nn.pathOnly){if("path"===a[d-1].type||"termType"in a[d-1])return a[d-1];throw new Error("Received full SPARQL query in path only mode")}if("path"===a[d-1].type||"termType"in a[d-1])throw new Error("Received only path in full SPARQL mode");if("update"===a[d-1].type){const e={};for(const t of a[d-1].updates)if("insert"===t.updateType){const r={};for(const e of t.insert)if("bgp"===e.type||"graph"===e.type)for(const t of e.triples)"BlankNode"===t.subject.termType&&(r[t.subject.value]=!0),"BlankNode"===t.predicate.termType&&(r[t.predicate.value]=!0),"BlankNode"===t.object.termType&&(r[t.object.value]=!0);for(const t of Object.keys(r)){if(e[t])throw new Error("Detected reuse blank node across different INSERT DATA clauses");e[t]=!0}}}return a[d-1];case 2:this.$={...a[d-1],...a[d],type:"query"};break;case 4:nn.base=Er(a[d]);break;case 5:nn.prefixes||(nn.prefixes={}),a[d-1]=a[d-1].substr(0,a[d-1].length-1),a[d]=Er(a[d]),nn.prefixes[a[d-1]]=a[d];break;case 6:this.$={...a[d-3],...Dr(a[d-2]),...a[d-1],...a[d]};break;case 7:if(!nn.skipValidation&&(Kr(a[d-3].variables.map((e=>Gr(e.expression)))).some((e=>"count"===e.aggregation&&!(e.expression instanceof or)))||a[d].group))for(const e of a[d-3].variables)if("Variable"===e.termType){if(!a[d].group||!a[d].group.map((e=>Hr(e))).includes(Hr(e)))throw Error("Projection of ungrouped variable (?"+Hr(e)+")")}else if(0===Gr(e.expression).length){const t=zr(e.expression);for(const e of t)if(!a[d].group||!a[d].group.map||!a[d].group.map((e=>Hr(e))).includes(Hr(e)))throw Error("Use of ungrouped variable in projection of operation (?"+Hr(e)+")")}const e=a[d-1].where.filter((e=>"query"===e.type));if(e.length>0){const t=a[d-3].variables.filter((e=>e.variable&&e.variable.value)).map((e=>e.variable.value)),r=Kr(e.map((e=>e.variables))).map((e=>e.value||e.variable.value));for(const e of t)if(r.indexOf(e)>=0)throw Error("Target id of 'AS' (?"+e+") already used in subquery")}this.$=Sr(a[d-3],Dr(a[d-2]),a[d-1],a[d]);break;case 8:this.$=Sr({queryType:"CONSTRUCT",template:a[d-3]},Dr(a[d-2]),a[d-1],a[d]);break;case 9:this.$=Sr({queryType:"CONSTRUCT",template:a[d-2]=a[d-2]?a[d-2].triples:[]},Dr(a[d-5]),{where:[{type:"bgp",triples:Tr([],a[d-2])}]},a[d]);break;case 10:this.$=Sr({queryType:"DESCRIBE",variables:"*"===a[d-3]?[new or]:a[d-3]},Dr(a[d-2]),a[d-1],a[d]);break;case 11:this.$=Sr({queryType:"ASK"},Dr(a[d-2]),a[d-1],a[d]);break;case 12:this.$=Sr(a[d-1],{variables:[new or]});break;case 13:const t=function(e){const t=e.slice().sort(),r=[];for(let e=0;ee.value||e.variable.value)));if(t.length>0)throw Error("Two or more of the resulting columns have the same name (?"+t[0]+")");this.$=Sr(a[d-1],{variables:a[d]});break;case 14:this.$=Sr({queryType:"SELECT"},a[d]&&(a[d-1]=_r(a[d]),a[d]={},a[d][a[d-1]]=!0,a[d]));break;case 16:case 27:this.$=Rr(a[d-3],{variable:a[d-1]});break;case 17:case 18:this.$=Sr(a[d-3],a[d-2],a[d-1],a[d],{type:"query"});break;case 19:case 58:this.$={iri:a[d],named:!!a[d-1]};break;case 20:this.$={where:a[d].patterns};break;case 21:this.$=Sr(a[d-1],a[d]);break;case 22:this.$=Sr(a[d-2],a[d-1],a[d]);break;case 23:this.$={group:a[d]};break;case 24:case 25:case 28:case 31:case 33:case 34:this.$=Rr(a[d]);break;case 26:this.$=Rr(a[d-1]);break;case 29:this.$={having:a[d]};break;case 30:this.$={order:a[d]};break;case 32:this.$=Rr(a[d],{descending:!0});break;case 35:this.$={limit:Nr(a[d])};break;case 36:this.$={offset:Nr(a[d])};break;case 37:this.$={limit:Nr(a[d-2]),offset:Nr(a[d])};break;case 38:this.$={limit:Nr(a[d]),offset:Nr(a[d-2])};break;case 39:case 43:this.$={type:"values",values:a[d]};break;case 40:case 84:this.$=a[d-1].map((e=>({[a[d-3]]:e})));break;case 41:case 85:this.$=a[d-1].map((()=>({})));break;case 42:case 86:var h=a[d-4].length;a[d-4]=a[d-4].map(xr),this.$=a[d-1].map((function(e){if(e.length!==h)throw Error("Inconsistent VALUES length");for(var t={},r=0;r"bind"===e.type))){const t=a[d-1].indexOf(e),r=new Set;for(const e of a[d-1].slice(0,t))"group"!==e.type&&"bgp"!==e.type||Wr(e).forEach((e=>r.add(e)));if(r.has(e.variable.value))throw Error("Variable used to bind is already bound (?"+e.variable.value+")")}this.$={type:"group",patterns:a[d-1]};break;case 71:this.$=a[d-1]?Or([a[d-1]],a[d]):Or(a[d]);break;case 72:this.$=a[d]?[a[d-2],a[d]]:a[d-2];break;case 75:this.$=Sr(a[d],{type:"optional"});break;case 76:this.$=Sr(a[d],{type:"minus"});break;case 77:this.$=Sr(a[d],{type:"graph",name:a[d-1]});break;case 78:this.$=Sr(a[d],{type:"service",name:a[d-1],silent:!!a[d-2]});break;case 79:this.$={type:"filter",expression:a[d]};break;case 80:this.$={type:"bind",variable:a[d-1],expression:a[d-3]};break;case 89:this.$=Jr(a[d]);break;case 90:this.$=void 0;break;case 91:this.$=a[d-1].length?{type:"union",patterns:Or(a[d-1].map(jr),[jr(a[d])])}:a[d];break;case 95:this.$={...a[d],function:a[d-1]};break;case 96:this.$={type:"functionCall",args:[]};break;case 97:this.$={type:"functionCall",args:wr(a[d-2],a[d-1]),distinct:!!a[d-3]};break;case 98:case 115:case 128:case 247:case 249:case 251:case 253:case 255:case 263:case 267:case 297:case 299:case 303:case 307:case 328:case 341:case 349:case 355:case 361:case 367:case 369:case 373:case 375:case 379:case 381:case 385:case 391:case 395:case 401:case 405:case 409:case 411:case 420:case 428:case 430:case 440:case 444:case 446:case 448:this.$=[];break;case 99:this.$=wr(a[d-2],a[d-1]);break;case 101:this.$=Or(a[d-2],[a[d-1]]);break;case 102:case 112:this.$=Zr(a[d].map((e=>Sr(Lr(a[d-1]),e))));break;case 103:this.$=Zr(Tr(a[d].map((e=>Sr(Lr(a[d-1].entity),e))),a[d-1].triples));break;case 105:this.$=Or([a[d-1]],a[d]);break;case 106:this.$=Or(a[d]);break;case 107:this.$=$r(a[d-1],a[d]);break;case 109:case 237:this.$=nn.factory.namedNode(cr);break;case 110:case 118:this.$=wr(a[d-1],a[d]);break;case 111:this.$=a[d]?{annotation:a[d],object:a[d-1]}:a[d-1];break;case 113:this.$=a[d]?Zr(Tr(a[d].map((e=>Sr(Lr(a[d-1].entity),e))),a[d-1].triples)):a[d-1].triples;break;case 114:this.$=$r(...a[d-1],a[d]);break;case 116:this.$=$r(...a[d]);break;case 117:case 159:case 163:this.$=[a[d-1],a[d]];break;case 119:this.$=a[d]?{object:a[d-1],annotation:a[d]}:a[d-1];break;case 120:this.$=a[d-1].length?Ir("|",wr(a[d-1],a[d])):a[d];break;case 121:this.$=a[d-1].length?Ir("/",wr(a[d-1],a[d])):a[d];break;case 122:this.$=a[d]?Ir(a[d],[a[d-1]]):a[d-1];break;case 123:this.$=a[d-1]?Ir(a[d-1],[a[d]]):a[d];break;case 125:case 131:this.$=Ir(a[d-1],[a[d]]);break;case 129:this.$=Ir("|",wr(a[d-2],a[d-1]));break;case 132:case 134:this.$=function(e){var t=kr(),r=t,n=[],i=[];e.forEach((function(e){n.push(e.entity),Tr(i,e.triples)}));for(var a=0,o=0,s=n.length,c=Array(2*s);a2&&E.push("'"+this.terminals_[T]+"'");A=d.showPosition?"Parse error on line "+(s+1)+":\n"+d.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(s+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:d.match,token:this.terminals_[m]||m,line:d.yylineno,loc:f,expected:E})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+m);switch(_[0]){case 1:r.push(m),n.push(d.yytext),i.push(d.yylloc),r.push(_[1]),m=null,b?(m=b,b=null):(c=d.yyleng,o=d.yytext,s=d.yylineno,f=d.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[_[1]][1],x.$=n[n.length-S],x._$={first_line:i[i.length-(S||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(S||1)].first_column,last_column:i[i.length-1].last_column},g&&(x._$.range=[i[i.length-(S||1)].range[0],i[i.length-1].range[1]]),void 0!==(w=this.performAction.apply(x,[o,c,s,h.yy,_[1],n,i].concat(l))))return w;S&&(r=r.slice(0,-1*S*2),n=n.slice(0,-1*S),i=i.slice(0,-1*S)),r.push(this.productions_[_[1]][0]),n.push(x.$),i.push(x._$),O=a[r[r.length-2]][r[r.length-1]],r.push(O);break;case 3:return!0}}return!0}},or=r(58617).R,sr="http://www.w3.org/1999/02/22-rdf-syntax-ns#",cr=sr+"type",ur=sr+"first",lr=sr+"rest",dr=sr+"nil",hr="http://www.w3.org/2001/XMLSchema#",pr=hr+"integer",fr=hr+"decimal",yr=hr+"double",gr=hr+"boolean",mr="",br="",vr="";function _r(e){return e.toLowerCase()}function wr(e,t){return e.push(t),e}function Tr(e,t){return e.push.apply(e,t),e}function Sr(e){e||(e={});for(var t,r=1,n=arguments.length;r>10),56320+(1023&i))}var a=Ur[n];if(!a)throw new Error;return a}))}catch(e){return""}if(qr.exec(e))throw new Error("Invalid unicode codepoint of surrogate pair without corresponding codepoint in "+e);return e}function $r(e,t,r){var n=[],i=[];return t.forEach((function(t){let r=null;t.annotation&&(r=t.annotation,t=t.object),n.push(Lr(null,e,t.entity,r)),Tr(i,t.triples)})),Or(n,r||[],i)}function Hr(e){return e.variable?e.variable.value:e.value||e.expression.value}function Gr(e){if(!e)return[];if("aggregate"===e.type)return[e];if("operation"===e.type){const t=[];for(const r of e.args)t.push(...Gr(r));return t}return[]}function zr(e){const t=new Set,r=function(e){e&&("Variable"===e.termType?t.add(e):"operation"===e.type&&e.args.forEach(r))};return r(e),t}function Kr(e,t=1,r=[]){for(const n of e)t>0&&n instanceof Array?Kr(n,t-1,r):r.push(n);return r}function Xr(e){return"Variable"===e.termType}function Wr(e){if(e.triples){const t=[];for(const r of e.triples)Xr(r.subject)&&t.push(r.subject.value),Xr(r.predicate)&&t.push(r.predicate.value),Xr(r.object)&&t.push(r.object.value);return t}if(e.patterns){const t=[];for(const r of e.patterns)t.push(...Wr(r));return t}return[]}function Jr(e){if(!nn.sparqlStar)throw new Error("SPARQL-star support is not enabled");return e}function Yr(e,t,r){for(const n of t){const t=Lr("subject"in n?n.subject:e,n.predicate,n.object);r.push(t),n.annotations&&Yr(Mr(e,n.predicate,n.object),n.annotations,r)}}function Zr(e){if(nn.sparqlStar){const t=[];return e.forEach((e=>{const r=Lr(e.subject,e.predicate,e.object);t.push(r),e.annotations&&Yr(Mr(e.subject,e.predicate,e.object),e.annotations,t)})),t}return e}function en(e){for(const t of e){if("graph"===t.type&&"Variable"===t.name.termType)throw new Error("Detected illegal variable in GRAPH");if("bgp"===t.type||"graph"===t.type)for(const e of t.triples)if("Variable"===e.subject.termType||"Variable"===e.predicate.termType||"Variable"===e.object.termType)throw new Error("Detected illegal variable in BGP")}return e}function tn(e){for(const t of e)if("bgp"===t.type)for(const e of t.triples)if("BlankNode"===e.subject.termType||"BlankNode"===e.predicate.termType||"BlankNode"===e.object.termType)throw new Error("Detected illegal blank node in BGP");return e}var rn={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var e,t,r,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(r,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{flex:!0,"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){case 0:break;case 1:return 12;case 2:return 15;case 3:return 41;case 4:return 325;case 5:return 326;case 6:return 45;case 7:return 47;case 8:return 48;case 9:return 39;case 10:return 24;case 11:return 28;case 12:return 29;case 13:return 31;case 14:return 32;case 15:return 36;case 16:return 53;case 17:return 327;case 18:return 63;case 19:return 64;case 20:return 70;case 21:return 73;case 22:return 76;case 23:return 78;case 24:return 81;case 25:return 83;case 26:return 85;case 27:return 193;case 28:return 100;case 29:return 328;case 30:return 121;case 31:return 329;case 32:return 330;case 33:return 110;case 34:return 331;case 35:return 109;case 36:return 332;case 37:return 333;case 38:return 113;case 39:return 115;case 40:return 116;case 41:return 131;case 42:return 123;case 43:return 126;case 44:return 128;case 45:return 132;case 46:return 112;case 47:return 334;case 48:return 335;case 49:return 159;case 50:return 161;case 51:return 164;case 52:return 174;case 53:return 160;case 54:return 336;case 55:return 163;case 56:return 312;case 57:return 314;case 58:return 317;case 59:return 318;case 60:return 272;case 61:return 197;case 62:return 337;case 63:return 338;case 64:return 229;case 65:return 340;case 66:return 263;case 67:return 224;case 68:return 231;case 69:return 232;case 70:return 242;case 71:return 246;case 72:return 290;case 73:return 341;case 74:return 342;case 75:return 343;case 76:return 344;case 77:return 345;case 78:return 250;case 79:return 346;case 80:return 265;case 81:return 276;case 82:return 277;case 83:return 268;case 84:return 269;case 85:return 270;case 86:return 271;case 87:return 347;case 88:return 348;case 89:return 273;case 90:return 274;case 91:return 350;case 92:return 349;case 93:return 351;case 94:return 279;case 95:return 280;case 96:return 283;case 97:return 285;case 98:return 289;case 99:return 293;case 100:return 296;case 101:return 13;case 102:return 16;case 103:return 308;case 104:return 309;case 105:return 87;case 106:return 292;case 107:return 82;case 108:return 294;case 109:return 295;case 110:return 297;case 111:return 298;case 112:return 299;case 113:return 300;case 114:return 301;case 115:return 302;case 116:return"EXPONENT";case 117:return 303;case 118:return 304;case 119:return 305;case 120:return 306;case 121:return 89;case 122:return 310;case 123:return 6;case 124:return"INVALID";case 125:console.log(t.yytext)}},rules:[/^(?:\s+|(#[^\n\r]*))/i,/^(?:BASE)/i,/^(?:PREFIX)/i,/^(?:SELECT)/i,/^(?:DISTINCT)/i,/^(?:REDUCED)/i,/^(?:\()/i,/^(?:AS)/i,/^(?:\))/i,/^(?:\*)/i,/^(?:CONSTRUCT)/i,/^(?:WHERE)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:DESCRIBE)/i,/^(?:ASK)/i,/^(?:FROM)/i,/^(?:NAMED)/i,/^(?:GROUP)/i,/^(?:BY)/i,/^(?:HAVING)/i,/^(?:ORDER)/i,/^(?:ASC)/i,/^(?:DESC)/i,/^(?:LIMIT)/i,/^(?:OFFSET)/i,/^(?:VALUES)/i,/^(?:;)/i,/^(?:LOAD)/i,/^(?:SILENT)/i,/^(?:INTO)/i,/^(?:CLEAR)/i,/^(?:DROP)/i,/^(?:CREATE)/i,/^(?:ADD)/i,/^(?:TO)/i,/^(?:MOVE)/i,/^(?:COPY)/i,/^(?:INSERT((\s+|(#[^\n\r]*)\n\r?)+)DATA)/i,/^(?:DELETE((\s+|(#[^\n\r]*)\n\r?)+)DATA)/i,/^(?:DELETE((\s+|(#[^\n\r]*)\n\r?)+)WHERE)/i,/^(?:WITH)/i,/^(?:DELETE)/i,/^(?:INSERT)/i,/^(?:USING)/i,/^(?:DEFAULT)/i,/^(?:GRAPH)/i,/^(?:ALL)/i,/^(?:\.)/i,/^(?:OPTIONAL)/i,/^(?:SERVICE)/i,/^(?:BIND)/i,/^(?:UNDEF)/i,/^(?:MINUS)/i,/^(?:UNION)/i,/^(?:FILTER)/i,/^(?:<<)/i,/^(?:>>)/i,/^(?:\{\|)/i,/^(?:\|\})/i,/^(?:,)/i,/^(?:a)/i,/^(?:\|)/i,/^(?:\/)/i,/^(?:\^)/i,/^(?:\?)/i,/^(?:\+)/i,/^(?:!)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:<)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:>=)/i,/^(?:IN)/i,/^(?:NOT)/i,/^(?:-)/i,/^(?:BOUND)/i,/^(?:BNODE)/i,/^(?:(RAND|NOW|UUID|STRUUID))/i,/^(?:(LANG|DATATYPE|IRI|URI|ABS|CEIL|FLOOR|ROUND|STRLEN|STR|UCASE|LCASE|ENCODE_FOR_URI|YEAR|MONTH|DAY|HOURS|MINUTES|SECONDS|TIMEZONE|TZ|MD5|SHA1|SHA256|SHA384|SHA512|isIRI|isURI|isBLANK|isLITERAL|isNUMERIC))/i,/^(?:(SUBJECT|PREDICATE|OBJECT|isTRIPLE))/i,/^(?:(LANGMATCHES|CONTAINS|STRSTARTS|STRENDS|STRBEFORE|STRAFTER|STRLANG|STRDT|sameTerm))/i,/^(?:CONCAT)/i,/^(?:COALESCE)/i,/^(?:IF)/i,/^(?:TRIPLE)/i,/^(?:REGEX)/i,/^(?:SUBSTR)/i,/^(?:REPLACE)/i,/^(?:EXISTS)/i,/^(?:COUNT)/i,/^(?:SUM|MIN|MAX|AVG|SAMPLE)/i,/^(?:GROUP_CONCAT)/i,/^(?:SEPARATOR)/i,/^(?:\^\^)/i,/^(?:true|false)/i,/^(?:(<(?:[^<>\"\{\}\|\^`\\\u0000-\u0020])*>))/i,/^(?:((([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?)?:))/i,/^(?:(((([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?)?:)((?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|:|[0-9]|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.|:|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|:|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(_:(?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?))/i,/^(?:([\?\$]((?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9])(?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])*)))/i,/^(?:(@[a-zA-Z]+(?:-[a-zA-Z0-9]+)*))/i,/^(?:([0-9]+))/i,/^(?:([0-9]*\.[0-9]+))/i,/^(?:([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+)))/i,/^(?:(\+([0-9]+)))/i,/^(?:(\+([0-9]*\.[0-9]+)))/i,/^(?:(\+([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+))))/i,/^(?:(-([0-9]+)))/i,/^(?:(-([0-9]*\.[0-9]+)))/i,/^(?:(-([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+))))/i,/^(?:([eE][+-]?[0-9]+))/i,/^(?:('(?:(?:[^\u0027\u005C\u000A\u000D])|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])))*'))/i,/^(?:("(?:(?:[^\u0022\u005C\u000A\u000D])|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])))*"))/i,/^(?:('''(?:(?:'|'')?(?:[^'\\]|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f]))))*'''))/i,/^(?:("""(?:(?:"|"")?(?:[^\"\\]|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f]))))*"""))/i,/^(?:(\((\u0020|\u0009|\u000D|\u000A)*\)))/i,/^(?:(\[(\u0020|\u0009|\u000D|\u000A)*\]))/i,/^(?:$)/i,/^(?:.)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125],inclusive:!0}}};function nn(){this.yy={}}return ar.lexer=rn,nn.prototype=ar,ar.Parser=nn,new nn}();e.exports=n},58617:e=>{class t{constructor(){return r||this}equals(e){return e&&this.termType===e.termType}}Object.defineProperty(t.prototype,"value",{enumerable:!0,value:"*"}),Object.defineProperty(t.prototype,"termType",{enumerable:!0,value:"Wildcard"});var r=new t;e.exports.R=t},2085:(e,t,r)=>{var n=r(57474).Parser,i=r(24411),a=r(58617).R,{DataFactory:o}=r(91194);e.exports={Parser:function({prefixes:e,baseIRI:t,factory:r,sparqlStar:i,skipValidation:a,skipUngroupedVariableCheck:s,pathOnly:c}={}){var u={};for(var l in e||{})u[l]=e[l];var d=new n;return d.parse=function(){return n.base=t||"",n.prefixes=Object.create(u),n.factory=r||new o,n.sparqlStar=Boolean(i),n.pathOnly=Boolean(c),n.skipValidation=Boolean(a)||Boolean(s),n.prototype.parse.apply(d,arguments)},d._resetBlanks=n._resetBlanks,d},Generator:i,Wildcard:a}},78152:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(7629),t)},7629:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlJsonParser=void 0;const n=r(91194),i=r(51887),a=r(27609);t.SparqlJsonParser=class{constructor(e){var t;e=e||{},this.dataFactory=e.dataFactory||new n.DataFactory,this.prefixVariableQuestionMark=!!e.prefixVariableQuestionMark,this.suppressMissingStreamResultsError=null===(t=e.suppressMissingStreamResultsError)||void 0===t||t}parseJsonResults(e){return e.results.bindings.map((e=>this.parseJsonBindings(e)))}parseJsonResultsStream(e){const t=e=>s.emit("error",e);e.on("error",t);const r=new a;r.onError=t;let n=!1,o=!1;r.onValue=e=>{if("vars"===r.key&&2===r.stack.length&&"head"===r.stack[1].key)s.emit("variables",e.map((e=>this.dataFactory.variable(e)))),n=!0;else if("results"===r.key&&1===r.stack.length)o=!0;else if("number"==typeof r.key&&3===r.stack.length&&"results"===r.stack[1].key&&"bindings"===r.stack[2].key)try{s.push(this.parseJsonBindings(e))}catch(e){s.emit("error",e)}else"metadata"===r.key&&1===r.stack.length&&s.emit("metadata",e)};const s=e.on("end",(e=>{o||this.suppressMissingStreamResultsError?n||s.emit("variables",[]):s.emit("error",new Error("No valid SPARQL query results were found."))})).pipe(new i.Transform({objectMode:!0,transform(e,t,n){r.write(e),n()}}));return s}parseJsonBindings(e){const t={};for(const r in e){const n=e[r];t[this.prefixVariableQuestionMark?"?"+r:r]=this.parseJsonValue(n)}return t}parseJsonValue(e){let t;switch(e.type){case"bnode":t=this.dataFactory.blankNode(e.value);break;case"literal":t=e["xml:lang"]?this.dataFactory.literal(e.value,e["xml:lang"]):e.datatype?this.dataFactory.literal(e.value,this.dataFactory.namedNode(e.datatype)):this.dataFactory.literal(e.value);break;case"typed-literal":t=this.dataFactory.literal(e.value,this.dataFactory.namedNode(e.datatype));break;case"triple":const r=e.value;if(!(r&&r.subject&&r.predicate&&r.object))throw new Error("Invalid quoted triple: "+JSON.stringify(e));t=this.dataFactory.quad(this.parseJsonValue(r.subject),this.parseJsonValue(r.predicate),this.parseJsonValue(r.object));break;default:t=this.dataFactory.namedNode(e.value)}return t}parseJsonBoolean(e){if("boolean"in e)return e.boolean;throw new Error("No valid ASK response was found.")}parseJsonBooleanStream(e){return new Promise(((t,r)=>{const n=new a;n.onError=r,n.onValue=e=>{"boolean"===n.key&&"boolean"==typeof e&&1===n.stack.length&&t(e)},e.on("error",r).on("data",(e=>n.write(e))).on("end",(()=>r(new Error("No valid ASK response was found."))))}))}}},97977:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29675),t)},29675:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Converter=void 0;const n=r(92126),i=r(78152);class a{constructor(e){(e=e||{delimiter:"_"}).prefixVariableQuestionMark=!1,this.delimiter=e.delimiter||"_",this.parser=new i.SparqlJsonParser(e),this.materializeRdfJsTerms=e.materializeRdfJsTerms}static addValueToTree(e,t,r,n,i,o){const s=t[0],c=n?n+o+s:s,u=i.singularizeVariables[c];if(1===t.length)u?e[s]||(e[s]=r):(e[s]||(e[s]=[]),e[s].push(r));else{let n;u?(e[s]||(e[s]={}),n=e[s]):(e[s]||(e[s]=[{}]),n=e[s][0]),a.addValueToTree(n,t.slice(1),r,c,i,o)}}static mergeTrees(e,t){if(typeof e!=typeof t)throw new Error(`Two incompatible tree nodes were found: ${typeof e} and ${typeof t}`);if(Array.isArray(e)!==Array.isArray(t))throw new Error(`Two incompatible tree nodes were found: Array?${Array.isArray(e)} and Array?${Array.isArray(t)}`);if("object"==typeof e&&"object"==typeof t){if(e.termType&&t.termType)return e.equals(t)?{valid:!0,result:e}:{valid:!1,result:e};if(Array.isArray(e)&&Array.isArray(t)){if(e.length>0){const r=[];let n=!1;for(const i of e){const e=a.mergeTrees(i,t[0]);e.valid?(n=!0,r.push(e.result)):r.push(i)}if(n)return{valid:!0,result:r}}return{valid:!0,result:e.concat(t)}}{const r={};for(const e in t)r[e]=t[e];for(const t in e)if(r[t]){const n=a.mergeTrees(e[t],r[t]);if(!n.valid)return{valid:!1,result:e};r[t]=n.result}else r[t]=e[t];return{valid:!0,result:r}}}throw new Error(`Unmergable tree types: ${typeof e} and ${typeof t}`)}static materializeTree(e){if(e.termType)return(0,n.getTermRaw)(e);if(Array.isArray(e))return e.map(a.materializeTree);{const t={};for(const r in e)t[r]=a.materializeTree(e[r]);return t}}sparqlJsonResultsToTree(e,t){return this.bindingsToTree(this.parser.parseJsonResults(e),t||{singularizeVariables:{}})}bindingsToTree(e,t){const r=t&&t.singularizeVariables[""];let n=r?{}:[];for(const i of e){const e=r?{}:[{}];for(const n in i){const o=n.split(this.delimiter),s=i[n];a.addValueToTree(r?e:e[0],o,s,"",t,this.delimiter)}n=a.mergeTrees(n,e).result}return this.materializeRdfJsTerms&&(n=a.materializeTree(n)),n}}t.Converter=a},31709:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82626),t)},82626:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlXmlParser=void 0;const n=r(91194),i=r(6928),a=r(51887);t.SparqlXmlParser=class{constructor(e){e=e||{},this.dataFactory=e.dataFactory||new n.DataFactory,this.prefixVariableQuestionMark=!!e.prefixVariableQuestionMark}parseXmlResultsStream(e){const t=e=>y.emit("error",e);e.on("error",t);const r=new i.SaxesParser,n=[];let o=!1,s=!1;const c=[];let u,l={},d="",h="",p="",f=[];r.on("error",t),r.on("opentag",(e=>{"variable"===e.name&&this.stackEquals(n,["sparql","head"])?c.push(this.dataFactory.variable(e.attributes.name)):"results"===e.name&&this.stackEquals(n,["sparql"])?s=!0:"result"===e.name&&this.stackEquals(n,["sparql","results"])?l={}:"binding"===e.name&&this.stackEquals(n,["sparql","results","result"])?(d=e.attributes.name||"",h="",u="",p="",f=[]):"triple"===e.name&&this.stackBeginsWith(n,["sparql","results","result"])?f.push({components:{}}):"triple"===n[n.length-1]&&this.stackBeginsWith(n,["sparql","results","result","binding"])?(h="",u="",p="",["subject","predicate","object"].includes(e.name)?f[f.length-1].currentComponent=e.name:t(new Error(`Illegal quoted triple component '${e.name}' found on line ${r.line+1}`))):this.stackBeginsWith(n,["sparql","results","result","binding"])&&(h=e.name,u="xml:lang"in e.attributes?e.attributes["xml:lang"]:"datatype"in e.attributes?this.dataFactory.namedNode(e.attributes.datatype):void 0),n.push(e.name)})),r.on("closetag",(e=>{if(this.stackEquals(n,["sparql","head"])&&(y.emit("variables",c),o=!0),this.stackEquals(n,["sparql","results","result"])&&y.push(l),this.stackBeginsWith(n,["sparql","results","result","binding"])){let e;if(!d&&h)t(new Error(`Terms should have a name on line ${r.line+1}`));else if("uri"===h)e=this.dataFactory.namedNode(p);else if("bnode"===h)e=this.dataFactory.blankNode(p);else if("literal"===h)e=this.dataFactory.literal(p,u);else if("triple"===n[n.length-1]){const n=f.pop();n&&n.components.subject&&n.components.predicate&&n.components.object?e=this.dataFactory.quad(n.components.subject,n.components.predicate,n.components.object):t(new Error(`Incomplete quoted triple on line ${r.line+1}`))}else h&&t(new Error(`Invalid term type '${h}' on line ${r.line+1}`));if(e)if(f.length>0){const n=f[f.length-1];n.components[n.currentComponent]&&t(new Error(`The ${n.currentComponent} in a quoted triple on line ${r.line+1} was already defined before`)),n.components[n.currentComponent]=e}else{const t=this.prefixVariableQuestionMark?"?"+d:d;l[t]=e}h=void 0}n.pop()})),r.on("text",(e=>{this.stackBeginsWith(n,["sparql","results","result","binding"])&&n[n.length-1]===h&&(p=e)}));const y=e.on("end",(e=>{s?o||y.emit("variables",[]):y.emit("error",new Error("No valid SPARQL query results were found."))})).pipe(new a.Transform({objectMode:!0,transform(e,t,n){r.write(e),n()}}));return y}parseXmlBooleanStream(e){return new Promise(((t,r)=>{const n=new i.SaxesParser,a=[];n.on("error",r),n.on("opentag",(e=>{a.push(e.name)})),n.on("closetag",(e=>{a.pop()})),n.on("text",(e=>{this.stackEquals(a,["sparql","boolean"])&&t("true"===e)})),e.on("error",r).on("data",(e=>n.write(e))).on("end",(()=>r(new Error("No valid ASK response was found."))))}))}stackEquals(e,t){return e.length===t.length&&e.every(((e,r)=>t[r]===e))}stackBeginsWith(e,t){return e.length>=t.length&&t.every(((t,r)=>e[r]===t))}}},29038:(e,t,r)=>{var n=r(10715);e.exports=function(e,t,r){"function"==typeof t&&(r=t,t=null);var i="",a=new n((function(r,n){e.on("data",(function(e){i+="string"==typeof t?e.toString(t):e.toString()})),e.on("end",(function(){r(i)})),e.on("error",n)}));return r&&a.then((function(e){r(null,e)}),r),a}},30214:(e,t,r)=>{"use strict";var n=r(77834).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=d,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function l(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},19415:e=>{!function(t){"use strict";var r=function(){function e(e){this.options=e}return e.prototype.toString=function(){return JSON&&JSON.stringify?JSON.stringify(this.options):this.options},e}(),n={isArray:function(e){return"[object Array]"===Object.prototype.toString.apply(e)},isString:function(e){return"[object String]"===Object.prototype.toString.apply(e)},isNumber:function(e){return"[object Number]"===Object.prototype.toString.apply(e)},isBoolean:function(e){return"[object Boolean]"===Object.prototype.toString.apply(e)},join:function(e,t){var r,n="",i=!0;for(r=0;r="0"&&e<="9"}return{isAlpha:function(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"},isDigit:e,isHexDigit:function(t){return e(t)||t>="a"&&t<="f"||t>="A"&&t<="F"}}}(),a=function(){var e=function(e){return e<=127?1:194<=e&&e<=223?2:224<=e&&e<=239?3:240<=e&&e<=244?4:0},t=function(e){return 128<=e&&e<=191};function r(e,t){return"%"===e.charAt(t)&&i.isHexDigit(e.charAt(t+1))&&i.isHexDigit(e.charAt(t+2))}function n(e,t){return parseInt(e.substr(t,2),16)}return{encodeCharacter:function(e){var t,r,n="",i=function(e){return unescape(encodeURIComponent(e))}(e);for(r=0;r1?r+=n:r+=c(n)||s(n)?n:a.encodeCharacter(n);return r},encodeLiteralCharacter:function(e,t){var r=a.pctCharAt(e,t);return r.length>1||c(r)||s(r)?r:a.encodeCharacter(r)}}}(),l=function(){var e={};function t(t){e[t]={symbol:t,separator:"?"===t?"&":""===t||"+"===t||"#"===t?",":t,named:";"===t||"&"===t||"?"===t,ifEmpty:"&"===t||"?"===t?"=":"",first:"+"===t?"":t,encode:"+"===t||"#"===t?u.encodePassReserved:u.encode,toString:function(){return this.symbol}}}return t(""),t("+"),t("#"),t("."),t("/"),t(";"),t("?"),t("&"),{valueOf:function(t){return e[t]?e[t]:"=,!@|".indexOf(t)>=0?null:e[""]}}}();function d(e){var t;if(null==e)return!1;if(n.isArray(e))return e.length>0;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return!0;for(t in e)if(e.hasOwnProperty(t)&&d(e[t]))return!0;return!1}var h=function(){function e(e){this.literal=u.encodeLiteral(e)}return e.prototype.expand=function(){return this.literal},e.prototype.toString=e.prototype.expand,e}(),p=function(){function e(e){var t,n,s=[],c=null,u=null,d=null,h="";function p(){var t=e.substring(u,n);if(0===t.length)throw new r({expressionText:e,message:"a varname must be specified",position:n});c={varname:t,exploded:!1,maxLength:null},u=null}function y(){if(d===n)throw new r({expressionText:e,message:"after a ':' you have to specify the length",position:n});c.maxLength=parseInt(e.substring(d,n),10),d=null}for(t=function(t){var i=l.valueOf(t);if(null===i)throw new r({expressionText:e,message:"illegal use of reserved operator",position:n,operator:t});return i}(e.charAt(0)),n=t.symbol.length,u=n;n=4)throw new r({expressionText:e,message:"A :prefix must have max 4 digits",position:n});continue}y()}if(":"!==h)if("*"!==h){if(","!==h)throw new r({expressionText:e,message:"illegal character",character:h,position:n});s.push(c),c=null,u=n+1}else{if(null===c)throw new r({expressionText:e,message:"exploded without varspec",position:n});if(c.exploded)throw new r({expressionText:e,message:"exploded twice",position:n});if(c.maxLength)throw new r({expressionText:e,message:"an explode (*) MUST NOT follow to a prefix",position:n});c.exploded=!0}else{if(null!==c.maxLength)throw new r({expressionText:e,message:"only one :maxLength is allowed per varspec",position:n});if(c.exploded)throw new r({expressionText:e,message:"an exploeded varspec MUST NOT be varspeced",position:n});d=n+1}}return null!==u&&p(),null!==d&&y(),s.push(c),new f(e,t,s)}return function(t){var n,i,a=[],o=null,s=0;for(n=0;n{function n(e){try{if(!r.g.localStorage)return!1}catch(e){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},60130:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"NIL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"v1",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(t,"v3",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"v4",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"v5",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"version",{enumerable:!0,get:function(){return c.default}});var n=h(r(27343)),i=h(r(46076)),a=h(r(85854)),o=h(r(13940)),s=h(r(15384)),c=h(r(25791)),u=h(r(77888)),l=h(r(49926)),d=h(r(9964));function h(e){return e&&e.__esModule?e:{default:e}}},2763:(e,t)=>{"use strict";function r(e){return 14+(e+64>>>9<<4)+1}function n(e,t){const r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function i(e,t,r,i,a,o){return n((s=n(n(t,e),n(i,o)))<<(c=a)|s>>>32-c,r);var s,c}function a(e,t,r,n,a,o,s){return i(t&r|~t&n,e,t,a,o,s)}function o(e,t,r,n,a,o,s){return i(t&n|r&~n,e,t,a,o,s)}function s(e,t,r,n,a,o,s){return i(t^r^n,e,t,a,o,s)}function c(e,t,r,n,a,o,s){return i(r^(t|~n),e,t,a,o,s)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){if("string"==typeof e){const t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(let r=0;r>5]>>>i%32&255,a=parseInt(n.charAt(r>>>4&15)+n.charAt(15&r),16);t.push(a)}return t}(function(e,t){e[t>>5]|=128<>5]|=(255&e[r/8])<{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};t.default=r},15384:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default="00000000-0000-0000-0000-000000000000"},9964:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};t.default=function(e){if(!(0,i.default)(e))throw TypeError("Invalid UUID");let t;const r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r}},76678:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i},41874:(e,t)=>{"use strict";let r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){if(!r&&(r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!r))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return r(n)};const n=new Uint8Array(16)},13254:(e,t)=>{"use strict";function r(e,t,r,n){switch(e){case 0:return t&r^~t&n;case 1:case 3:return t^r^n;case 2:return t&r^t&n^r&n}}function n(e,t){return e<>>32-t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){const t=[1518500249,1859775393,2400959708,3395469782],i=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof e){const t=unescape(encodeURIComponent(e));e=[];for(let r=0;r>>0;d=l,l=u,u=n(c,30)>>>0,c=o,o=s}i[0]=i[0]+o>>>0,i[1]=i[1]+c>>>0,i[2]=i[2]+u>>>0,i[3]=i[3]+l>>>0,i[4]=i[4]+d>>>0}return[i[0]>>24&255,i[0]>>16&255,i[0]>>8&255,255&i[0],i[1]>>24&255,i[1]>>16&255,i[1]>>8&255,255&i[1],i[2]>>24&255,i[2]>>16&255,i[2]>>8&255,255&i[2],i[3]>>24&255,i[3]>>16&255,i[3]>>8&255,255&i[3],i[4]>>24&255,i[4]>>16&255,i[4]>>8&255,255&i[4]]}},49926:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.unsafeStringify=o;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};const a=[];for(let e=0;e<256;++e)a.push((e+256).toString(16).slice(1));function o(e,t=0){return a[e[t+0]]+a[e[t+1]]+a[e[t+2]]+a[e[t+3]]+"-"+a[e[t+4]]+a[e[t+5]]+"-"+a[e[t+6]]+a[e[t+7]]+"-"+a[e[t+8]]+a[e[t+9]]+"-"+a[e[t+10]]+a[e[t+11]]+a[e[t+12]]+a[e[t+13]]+a[e[t+14]]+a[e[t+15]]}t.default=function(e,t=0){const r=o(e,t);if(!(0,i.default)(r))throw TypeError("Stringified UUID is invalid");return r}},27343:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(41874))&&n.__esModule?n:{default:n},a=r(49926);let o,s,c=0,u=0;t.default=function(e,t,r){let n=t&&r||0;const l=t||new Array(16);let d=(e=e||{}).node||o,h=void 0!==e.clockseq?e.clockseq:s;if(null==d||null==h){const t=e.random||(e.rng||i.default)();null==d&&(d=o=[1|t[0],t[1],t[2],t[3],t[4],t[5]]),null==h&&(h=s=16383&(t[6]<<8|t[7]))}let p=void 0!==e.msecs?e.msecs:Date.now(),f=void 0!==e.nsecs?e.nsecs:u+1;const y=p-c+(f-u)/1e4;if(y<0&&void 0===e.clockseq&&(h=h+1&16383),(y<0||p>c)&&void 0===e.nsecs&&(f=0),f>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");c=p,u=f,s=h,p+=122192928e5;const g=(1e4*(268435455&p)+f)%4294967296;l[n++]=g>>>24&255,l[n++]=g>>>16&255,l[n++]=g>>>8&255,l[n++]=255&g;const m=p/4294967296*1e4&268435455;l[n++]=m>>>8&255,l[n++]=255&m,l[n++]=m>>>24&15|16,l[n++]=m>>>16&255,l[n++]=h>>>8|128,l[n++]=255&h;for(let e=0;e<6;++e)l[n+e]=d[e];return t||(0,a.unsafeStringify)(l)}},46076:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(r(18679)),i=a(r(2763));function a(e){return e&&e.__esModule?e:{default:e}}var o=(0,n.default)("v3",48,i.default);t.default=o},18679:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.URL=t.DNS=void 0,t.default=function(e,t,r){function n(e,n,o,s){var c;if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));const t=[];for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(r(74267)),i=o(r(41874)),a=r(49926);function o(e){return e&&e.__esModule?e:{default:e}}t.default=function(e,t,r){if(n.default.randomUUID&&!t&&!e)return n.default.randomUUID();const o=(e=e||{}).random||(e.rng||i.default)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=o[e];return t}return(0,a.unsafeStringify)(o)}},13940:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(r(18679)),i=a(r(13254));function a(e){return e&&e.__esModule?e:{default:e}}var o=(0,n.default)("v5",80,i.default);t.default=o},77888:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(76678))&&n.__esModule?n:{default:n};t.default=function(e){return"string"==typeof e&&i.default.test(e)}},25791:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};t.default=function(e){if(!(0,i.default)(e))throw TypeError("Invalid UUID");return parseInt(e.slice(14,15),16)}},99650:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(94817),t)},94817:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateIri=t.IriValidationStrategy=void 0;const r=function(){const e="[!$&'()*+,;=]",t="%[a-fA-F0-9]{2}",r="([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",n=`${r}\\.${r}\\.${r}\\.${r}`,i="[a-fA-F0-9]{1,4}",a=`(${i}:${i}|${n})`,o="[a-zA-Z0-9\\-._~ -퟿豈-﷏ﷰ-￯𐀀-🿽𠀀-𯿽𰀀-𿿽񀀀-񏿽񐀀-񟿽񠀀-񯿽񰀀-񿿽򀀀-򏿽򐀀-򟿽򠀀-򯿽򰀀-򿿽󀀀-󏿽󐀀-󟿽󡀀-󯿽]",s=`(${o}|${t}|${e}|[:@])*`,c=`(${s})+`,u=`(${s})*`;return new RegExp(`^[a-zA-Z][a-zA-Z0-9+\\-.]*:(\\/\\/((${o}|${t}|${e}|:)*@)?(\\[(((${i}:){6}${a}|::(${i}:){5}${a}|(${i})?::(${i}:){4}${a}|((${i}:){0,1}${i})?::(${i}:){3}${a}|((${i}:){0,2}${i})?::(${i}:){2}${a}|((${i}:){0,3}${i})?::${i}:${a}|((${i}:){0,4}${i})?::${a}|((${i}:){0,5}${i})?::${i}|((${i}:){0,6}${i})?::)|v[a-fA-F0-9]+\\.(${e}|${e}|":)+)\\]|${n}|(${o}|${t}|${e})*)(:[0-9]*)?(\\/${u})*|\\/(${c}(\\/${u})*)?|${c}(\\/${u})*|)(\\?(${s}|[-󰀀-󿿽􀀀-􏿽]|[\\/?])*)?(#(${s}|[\\/?])*)?$`,"u")}(),n=/^[A-Za-z][\d+-.A-Za-z]*:[^\u0000-\u0020"<>\\^`{|}]*$/u;var i;!function(e){e.Strict="strict",e.Pragmatic="pragmatic",e.None="none"}(i=t.IriValidationStrategy||(t.IriValidationStrategy={})),t.validateIri=function(e,t=i.Strict){switch(t){case i.Strict:return r.test(e)?void 0:new Error(`Invalid IRI according to RFC 3987: '${e}'`);case i.Pragmatic:return n.test(e)?void 0:new Error(`Invalid IRI according to RDF Turtle: '${e}'`);case i.None:return;default:return new Error(`Not supported validation strategy "${t}"`)}}},25919:(e,t,r)=>{e.exports=function e(t,r,n){function i(o,s){if(!r[o]){if(!t[o]){if(a)return a(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};t[o][0].call(u.exports,(function(e){return i(t[o][1][e]||e)}),u,u.exports,e,t,r,n)}return r[o].exports}for(var a=void 0,o=0;o=0;s--)if(c[s]!==u[s])return!1;for(s=c.length-1;s>=0;s--)if(!h(e[o=c[s]],t[o],r,n))return!1;return!0}(e,t,r,s))}return r?e===t:e==t}function p(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function f(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function y(e,t,r,n){var i;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(e){var t;try{e()}catch(e){t=e}return t}(t),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),e&&!i&&l(i,r,"Missing expected exception"+n);var a="string"==typeof n,o=!e&&i&&!r;if((!e&&g.isError(i)&&a&&f(i,r)||o)&&l(i,r,"Got unwanted exception"+n),e&&i&&r&&!f(i,r)||!e&&i)throw i}var g=e("util/"),m=Object.prototype.hasOwnProperty,b=Array.prototype.slice,v="foo"===function(){}.name,_=t.exports=d,w=/\s*function\s+([^\(\s]*)\s*/;_.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return c(u(e.actual),128)+" "+e.operator+" "+c(u(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||l;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var r=new Error;if(r.stack){var n=r.stack,i=s(t),a=n.indexOf("\n"+i);if(a>=0){var o=n.indexOf("\n",a+1);n=n.substring(o+1)}this.stack=n}}},g.inherits(_.AssertionError,Error),_.fail=l,_.ok=d,_.equal=function(e,t,r){e!=t&&l(e,t,r,"==",_.equal)},_.notEqual=function(e,t,r){e==t&&l(e,t,r,"!=",_.notEqual)},_.deepEqual=function(e,t,r){h(e,t,!1)||l(e,t,r,"deepEqual",_.deepEqual)},_.deepStrictEqual=function(e,t,r){h(e,t,!0)||l(e,t,r,"deepStrictEqual",_.deepStrictEqual)},_.notDeepEqual=function(e,t,r){h(e,t,!1)&&l(e,t,r,"notDeepEqual",_.notDeepEqual)},_.notDeepStrictEqual=function e(t,r,n){h(t,r,!0)&&l(t,r,n,"notDeepStrictEqual",e)},_.strictEqual=function(e,t,r){e!==t&&l(e,t,r,"===",_.strictEqual)},_.notStrictEqual=function(e,t,r){e===t&&l(e,t,r,"!==",_.notStrictEqual)},_.throws=function(e,t,r){y(!0,e,t,r)},_.doesNotThrow=function(e,t,r){y(!1,e,t,r)},_.ifError=function(e){if(e)throw e};var T=Object.keys||function(e){var t=[];for(var r in e)m.call(e,r)&&t.push(r);return t}}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"util/":7}],3:[function(e,t,r){},{}],4:[function(e,t,r){function n(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(e){if(l===setTimeout)return setTimeout(e,0);if((l===n||!l)&&setTimeout)return l=setTimeout,setTimeout(e,0);try{return l(e,0)}catch(t){try{return l.call(null,e,0)}catch(t){return l.call(this,e,0)}}}function o(){y&&p&&(y=!1,p.length?f=p.concat(f):g=-1,f.length&&s())}function s(){if(!y){var e=a(o);y=!0;for(var t=f.length;t;){for(p=f,f=[];++g1)for(var r=1;r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(t)?r.showHidden=t:t&&n._extend(r,t),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=a),s(r,e,r.depth)}function a(e,t){var r=i.styles[t];return r?"["+i.colors[r][0]+"m"+e+"["+i.colors[r][1]+"m":e}function o(e,t){return e}function s(e,t,r){if(e.customInspect&&t&&_(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return f(i)||(i=s(e,i,r)),i}var a=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(f(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}return p(t)?e.stylize(""+t,"number"):d(t)?e.stylize(""+t,"boolean"):h(t)?e.stylize("null","null"):void 0}(e,t);if(a)return a;var o=Object.keys(t),m=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),v(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(t);if(0===o.length){if(_(t)){var w=t.name?": "+t.name:"";return e.stylize("[Function"+w+"]","special")}if(g(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(b(t))return e.stylize(Date.prototype.toString.call(t),"date");if(v(t))return c(t)}var T,O="",E=!1,x=["{","}"];return l(t)&&(E=!0,x=["[","]"]),_(t)&&(O=" [Function"+(t.name?": "+t.name:"")+"]"),g(t)&&(O=" "+RegExp.prototype.toString.call(t)),b(t)&&(O=" "+Date.prototype.toUTCString.call(t)),v(t)&&(O=" "+c(t)),0!==o.length||E&&0!=t.length?r<0?g(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),T=E?function(e,t,r,n,i){for(var a=[],o=0,s=t.length;o60?r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}(T,O,x)):x[0]+O+x[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function u(e,t,r,n,i,a){var o,c,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?c=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(c=e.stylize("[Setter]","special")),S(n,i)||(o="["+i+"]"),c||(e.seen.indexOf(u.value)<0?(c=h(r)?s(e,u.value,null):s(e,u.value,r-1)).indexOf("\n")>-1&&(c=a?c.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+c.split("\n").map((function(e){return" "+e})).join("\n")):c=e.stylize("[Circular]","special")),y(o)){if(a&&i.match(/^\d+$/))return c;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+c}function l(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function h(e){return null===e}function p(e){return"number"==typeof e}function f(e){return"string"==typeof e}function y(e){return void 0===e}function g(e){return m(e)&&"[object RegExp]"===w(e)}function m(e){return"object"==typeof e&&null!==e}function b(e){return m(e)&&"[object Date]"===w(e)}function v(e){return m(e)&&("[object Error]"===w(e)||e instanceof Error)}function _(e){return"function"==typeof e}function w(e){return Object.prototype.toString.call(e)}function T(e){return e<10?"0"+e.toString(10):e.toString(10)}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var O=/%[sdj%]/g;n.format=function(e){if(!f(e)){for(var t=[],r=0;r=a)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return e}})),s=n[r];r3&&void 0!==arguments[3]?arguments[3]:1,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return 1},a=Object.create(Le.prototype);return o(a),M(a,Object.create(Be.prototype),e,t,r,n,i),a}function o(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function s(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")}function c(e){return void 0!==e._reader}function u(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._reader._readIntoRequests.push(n)}))}function l(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._reader._readRequests.push(n)}))}function d(e,t){return e._disturbed=!0,"closed"===e._state?Promise.resolve(void 0):"errored"===e._state?Promise.reject(e._storedError):(h(e),e._readableStreamController[Ce](t).then((function(){})))}function h(e){e._state="closed";var t=e._reader;if(void 0!==t){if(!0===_(t)){var r=!0,n=!1,i=void 0;try{for(var a,o=t._readRequests[Symbol.iterator]();!(r=(a=o.next()).done);r=!0)(0,a.value._resolve)(de(void 0,!0))}catch(e){n=!0,i=e}finally{try{!r&&o.return&&o.return()}finally{if(n)throw i}}t._readRequests=[]}!function(e){e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(t)}}function p(e,t){e._state="errored",e._storedError=t;var r=e._reader;if(void 0!==r){if(!0===_(r)){var n=!0,i=!1,a=void 0;try{for(var o,s=r._readRequests[Symbol.iterator]();!(n=(o=s.next()).done);n=!0)o.value._reject(t)}catch(e){i=!0,a=e}finally{try{!n&&s.return&&s.return()}finally{if(i)throw a}}r._readRequests=[]}else{var c=!0,u=!1,l=void 0;try{for(var d,h=r._readIntoRequests[Symbol.iterator]();!(c=(d=h.next()).done);c=!0)d.value._reject(t)}catch(e){u=!0,l=e}finally{try{!c&&h.return&&h.return()}finally{if(u)throw l}}r._readIntoRequests=[]}re(r,t),r._closedPromise.catch((function(){}))}}function f(e,t,r){e._reader._readRequests.shift()._resolve(de(t,r))}function y(e){return e._reader._readIntoRequests.length}function g(e){return e._reader._readRequests.length}function m(e){var t=e._reader;return void 0!==t&&!1!==v(t)}function b(e){var t=e._reader;return void 0!==t&&!1!==_(t)}function v(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")}function _(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")}function w(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?function(e){e._closedPromise=new Promise((function(t,r){e._closedPromise_resolve=t,e._closedPromise_reject=r}))}(e):"closed"===t._state?function(e){e._closedPromise=Promise.resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(e):(function(e,t){e._closedPromise=Promise.reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(e,t._storedError),e._closedPromise.catch((function(){})))}function T(e,t){return d(e._ownerReadableStream,t)}function S(e){"readable"===e._ownerReadableStream._state?re(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){e._closedPromise=Promise.reject(t)}(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),e._closedPromise.catch((function(){})),e._ownerReadableStream._reader=void 0,e._ownerReadableStream=void 0}function O(e,t){var r=e._ownerReadableStream;return r._disturbed=!0,"errored"===r._state?Promise.reject(r._storedError):function(e,t){var r=e._controlledReadableByteStream,n=1;t.constructor!==DataView&&(n=t.constructor.BYTES_PER_ELEMENT);var i=t.constructor,a={buffer:ye(t.buffer),byteOffset:t.byteOffset,byteLength:t.byteLength,bytesFilled:0,elementSize:n,ctor:i,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(a),u(r);if("closed"===r._state){var o=new t.constructor(a.buffer,a.byteOffset,0);return Promise.resolve(de(o,!0))}if(e._queueTotalSize>0){if(!0===Q(e,a)){var s=q(a);return H(e),Promise.resolve(de(s,!1))}if(!0===e._closeRequested){var c=new TypeError("Insufficient bytes to fill elements in the given buffer");return W(e,c),Promise.reject(c)}}e._pendingPullIntos.push(a);var l=u(r);return F(e),l}(r._readableStreamController,t)}function E(e){var t=e._ownerReadableStream;return t._disturbed=!0,"closed"===t._state?Promise.resolve(de(void 0,!0)):"errored"===t._state?Promise.reject(t._storedError):t._readableStreamController[Me]()}function x(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")}function A(e){!1!==R(e)&&(!0!==e._pulling?(e._pulling=!0,e._pullAlgorithm().then((function(){if(e._pulling=!1,!0===e._pullAgain)return e._pullAgain=!1,A(e)}),(function(t){N(e,t)})).catch(_e)):e._pullAgain=!0)}function R(e){var t=e._controlledReadableStream;return!1!==C(e)&&!1!==e._started&&(!0===c(t)&&g(t)>0||j(e)>0)}function I(e){var t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&h(t)}function P(e,t){var r=e._controlledReadableStream;if(!0===c(r)&&g(r)>0)f(r,t,!1);else{var n=void 0;try{n=e._strategySizeAlgorithm(t)}catch(t){throw N(e,t),t}try{Se(e,t,n)}catch(t){throw N(e,t),t}}A(e)}function D(e,t){var r=e._controlledReadableStream;Oe(e),p(r,t)}function N(e,t){"readable"===e._controlledReadableStream._state&&D(e,t)}function j(e){var t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function C(e){var t=e._controlledReadableStream._state;return!1===e._closeRequested&&"readable"===t}function M(e,t,r,n,i,a,o){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,Oe(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=o,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,e._readableStreamController=t;var s=r();Promise.resolve(s).then((function(){t._started=!0,A(t)}),(function(e){N(t,e)})).catch(_e)}function L(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")}function k(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")}function F(e){!1!==function(e){var t=e._controlledReadableByteStream;return"readable"===t._state&&!0!==e._closeRequested&&!1!==e._started&&(!0===b(t)&&g(t)>0||!0===m(t)&&y(t)>0||J(e)>0)}(e)&&(!0!==e._pulling?(e._pulling=!0,e._pullAlgorithm().then((function(){e._pulling=!1,!0===e._pullAgain&&(e._pullAgain=!1,F(e))}),(function(t){"readable"===e._controlledReadableByteStream._state&&W(e,t)})).catch(_e)):e._pullAgain=!0)}function B(e){G(e),e._pendingPullIntos=[]}function U(e,t){var r=!1;"closed"===e._state&&(r=!0);var n=q(t);"default"===t.readerType?f(e,n,r):function(e,t,r){e._reader._readIntoRequests.shift()._resolve(de(t,r))}(e,n,r)}function q(e){var t=e.bytesFilled,r=e.elementSize;return new e.ctor(e.buffer,e.byteOffset,t/r)}function V(e,t,r,n){e._queue.push({buffer:t,byteOffset:r,byteLength:n}),e._queueTotalSize+=n}function Q(e,t){var r=t.elementSize,n=t.bytesFilled-t.bytesFilled%r,i=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),a=t.bytesFilled+i,o=a-a%r,s=i,c=!1;o>n&&(s=o-t.bytesFilled,c=!0);for(var u=e._queue;s>0;){var l=u[0],d=Math.min(s,l.byteLength),h=t.byteOffset+t.bytesFilled;ue(t.buffer,h,l.buffer,l.byteOffset,d),l.byteLength===d?u.shift():(l.byteOffset+=d,l.byteLength-=d),e._queueTotalSize-=d,$(e,d,t),s-=d}return c}function $(e,t,r){G(e),r.bytesFilled+=t}function H(e){0===e._queueTotalSize&&!0===e._closeRequested?h(e._controlledReadableByteStream):F(e)}function G(e){void 0!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=void 0,e._byobRequest=void 0)}function z(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;var t=e._pendingPullIntos[0];!0===Q(e,t)&&(X(e),U(e._controlledReadableByteStream,t))}}function K(e,t){var r=e._pendingPullIntos[0];if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream");!function(e,t){t.buffer=ye(t.buffer);var r=e._controlledReadableByteStream;if(!0===m(r))for(;y(r)>0;)U(r,X(e))}(e,r)}else!function(e,t,r){if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range");if($(e,t,r),!(r.bytesFilled0){var i=r.byteOffset+r.bytesFilled,a=r.buffer.slice(i-n,i);V(e,a,0,a.byteLength)}r.buffer=ye(r.buffer),r.bytesFilled-=n,U(e._controlledReadableByteStream,r),z(e)}}(e,t,r)}function X(e){var t=e._pendingPullIntos.shift();return G(e),t}function W(e,t){var r=e._controlledReadableByteStream;B(e),Oe(e),p(r,t)}function J(e){var t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Y(e,t,r,n,i,a,o){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,B(t),t._queue=t._queueTotalSize=void 0,Oe(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=ge(a),t._pullAlgorithm=n,t._cancelAlgorithm=i,t._autoAllocateChunkSize=o,t._pendingPullIntos=[],e._readableStreamController=t;var s=r();Promise.resolve(s).then((function(){t._started=!0,F(t)}),(function(r){"readable"===e._state&&W(t,r)})).catch(_e)}function Z(e){return new TypeError("ReadableStream.prototype."+e+" can only be used on a ReadableStream")}function ee(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function te(e){return new TypeError("ReadableStreamDefaultReader.prototype."+e+" can only be used on a ReadableStreamDefaultReader")}function re(e,t){e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}function ne(e){return new TypeError("ReadableStreamBYOBReader.prototype."+e+" can only be used on a ReadableStreamBYOBReader")}function ie(e){return new TypeError("ReadableStreamDefaultController.prototype."+e+" can only be used on a ReadableStreamDefaultController")}function ae(e){return new TypeError("ReadableStreamBYOBRequest.prototype."+e+" can only be used on a ReadableStreamBYOBRequest")}function oe(e){return new TypeError("ReadableByteStreamController.prototype."+e+" can only be used on a ReadableByteStreamController")}var se=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.size,a=r.highWaterMark;n(this,e),o(this);var s=t.type;if("bytes"===String(s)){if(void 0===a&&(a=0),a=ge(a),void 0!==i)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){var n=Object.create(qe.prototype),i=le(t,"pull",0,[n]),a=le(t,"cancel",1,[]),o=t.autoAllocateChunkSize;if(void 0!==o&&(!1===Number.isInteger(o)||o<=0))throw new RangeError("autoAllocateChunkSize must be a positive integer");Y(e,n,(function(){return pe(t,"start",[n])}),i,a,r,o)}(this,t,a)}else{if(void 0!==s)throw new RangeError("Invalid type is specified");void 0===a&&(a=1),function(e,t,r,n){var i=Object.create(Be.prototype),a=le(t,"pull",0,[i]),o=le(t,"cancel",1,[]);M(e,i,(function(){return pe(t,"start",[i])}),a,o,r,n)}(this,t,a=ge(a),me(i))}}return se(e,[{key:"cancel",value:function(e){return!1===s(this)?Promise.reject(Z("cancel")):!0===c(this)?Promise.reject(new TypeError("Cannot cancel a stream that already has a reader")):d(this,e)}},{key:"getReader",value:function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).mode;if(!1===s(this))throw Z("getReader");if(void 0===e)return i(this);if("byob"===(e=String(e)))return function(e){return new Fe(e)}(this);throw new RangeError("Invalid mode is specified")}},{key:"pipeThrough",value:function(e,t){var r=e.writable,n=e.readable;if(void 0===r||void 0===n)throw new TypeError("readable and writable arguments must be defined");return function(e){try{Promise.prototype.then.call(e,void 0,(function(){}))}catch(e){}}(this.pipeTo(r,t)),n}},{key:"pipeTo",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.preventClose,a=r.preventAbort,o=r.preventCancel;if(!1===s(this))return Promise.reject(Z("pipeTo"));if(!1===Ae(e))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));if(n=Boolean(n),a=Boolean(a),o=Boolean(o),!0===c(this))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream"));if(!0===Re(e))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream"));var u=i(this),l=xe(e),h=!1,p=Promise.resolve();return new Promise((function(r,i){function s(){var e=p;return p.then((function(){return e!==p?s():void 0}))}function c(e,t,r){"errored"===e._state?r(e._storedError):t.catch(r).catch(_e)}function f(t,r,n){function i(){t().then((function(){return g(r,n)}),(function(e){return g(!0,e)})).catch(_e)}!0!==h&&(h=!0,"writable"===e._state&&!1===je(e)?s().then(i):i())}function y(t,r){!0!==h&&(h=!0,"writable"===e._state&&!1===je(e)?s().then((function(){return g(t,r)})).catch(_e):g(t,r))}function g(e,t){De(l),S(u),e?i(t):r(void 0)}if(c(t,u._closedPromise,(function(t){!1===a?f((function(){return Ie(e,t)}),!0,t):y(!0,t)})),c(e,l._closedPromise,(function(e){!1===o?f((function(){return d(t,e)}),!0,e):y(!0,e)})),function(e,t,r){"closed"===e._state?r():t.then(r).catch(_e)}(t,u._closedPromise,(function(){!1===n?f((function(){return Pe(l)})):y()})),!0===je(e)||"closed"===e._state){var m=new TypeError("the destination writable stream closed before all data could be piped to it");!1===o?f((function(){return d(t,m)}),!0,m):y(!0,m)}(function e(){return!0===h?Promise.resolve():l._readyPromise.then((function(){return E(u).then((function(e){var t=e.value;!0!==e.done&&(p=Ne(l,t).catch((function(){})))}))})).then(e)})().catch((function(e){p=Promise.resolve(),_e(e)}))}))}},{key:"tee",value:function(){if(!1===s(this))throw Z("tee");var e=function(e,t){function r(){return E(o).then((function(e){var t=e.value;if(!0===e.done&&!1===s&&(!1===c&&I(p._readableStreamController),!1===u&&I(f._readableStreamController),s=!0),!0!==s){var r=t,n=t;!1===c&&P(p._readableStreamController,r),!1===u&&P(f._readableStreamController,n)}}))}function n(){}var o=i(e),s=!1,c=!1,u=!1,l=void 0,h=void 0,p=void 0,f=void 0,y=void 0,g=new Promise((function(e){y=e}));return p=a(n,r,(function(t){if(c=!0,l=t,!0===u){var r=be([l,h]),n=d(e,r);y(n)}return g})),f=a(n,r,(function(t){if(u=!0,h=t,!0===c){var r=be([l,h]),n=d(e,r);y(n)}return g})),o._closedPromise.catch((function(e){!0!==s&&(N(p._readableStreamController,e),N(f._readableStreamController,e),s=!0)})),[p,f]}(this);return be(e)}},{key:"locked",get:function(){if(!1===s(this))throw Z("locked");return c(this)}}]),e}();t.exports={CreateReadableByteStream:function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0,a=Object.create(Le.prototype);return o(a),Y(a,Object.create(qe.prototype),e,t,r,n,i),a},CreateReadableStream:a,ReadableStream:Le,IsReadableStreamDisturbed:function(e){return e._disturbed},ReadableStreamDefaultControllerClose:I,ReadableStreamDefaultControllerEnqueue:P,ReadableStreamDefaultControllerError:D,ReadableStreamDefaultControllerGetDesiredSize:j,ReadableStreamDefaultControllerHasBackpressure:function(e){return!0!==R(e)},ReadableStreamDefaultControllerCanCloseOrEnqueue:C};var ke=function(){function e(t){if(n(this,e),!1===s(t))throw new TypeError("ReadableStreamDefaultReader can only be constructed with a ReadableStream instance");if(!0===c(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");w(this,t),this._readRequests=[]}return se(e,[{key:"cancel",value:function(e){return!1===_(this)?Promise.reject(te("cancel")):void 0===this._ownerReadableStream?Promise.reject(ee("cancel")):T(this,e)}},{key:"read",value:function(){return!1===_(this)?Promise.reject(te("read")):void 0===this._ownerReadableStream?Promise.reject(ee("read from")):E(this)}},{key:"releaseLock",value:function(){if(!1===_(this))throw te("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");S(this)}}},{key:"closed",get:function(){return!1===_(this)?Promise.reject(te("closed")):this._closedPromise}}]),e}(),Fe=function(){function e(t){if(n(this,e),!s(t))throw new TypeError("ReadableStreamBYOBReader can only be constructed with a ReadableStream instance given a byte source");if(!1===L(t._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");if(c(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");w(this,t),this._readIntoRequests=[]}return se(e,[{key:"cancel",value:function(e){return v(this)?void 0===this._ownerReadableStream?Promise.reject(ee("cancel")):T(this,e):Promise.reject(ne("cancel"))}},{key:"read",value:function(e){return v(this)?void 0===this._ownerReadableStream?Promise.reject(ee("read from")):ArrayBuffer.isView(e)?!0===fe(e.buffer)?Promise.reject(new TypeError("Cannot read into a view onto a detached ArrayBuffer")):0===e.byteLength?Promise.reject(new TypeError("view must have non-zero byteLength")):O(this,e):Promise.reject(new TypeError("view must be an array buffer view")):Promise.reject(ne("read"))}},{key:"releaseLock",value:function(){if(!v(this))throw ne("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");S(this)}}},{key:"closed",get:function(){return v(this)?this._closedPromise:Promise.reject(ne("closed"))}}]),e}(),Be=function(){function e(){throw n(this,e),new TypeError}return se(e,[{key:"close",value:function(){if(!1===x(this))throw ie("close");if(!1===C(this))throw new TypeError("The stream is not in a state that permits close");I(this)}},{key:"enqueue",value:function(e){if(!1===x(this))throw ie("enqueue");if(!1===C(this))throw new TypeError("The stream is not in a state that permits enqueue");return P(this,e)}},{key:"error",value:function(e){if(!1===x(this))throw ie("error");var t=this._controlledReadableStream;if("readable"!==t._state)throw new TypeError("The stream is "+t._state+" and so cannot be errored");D(this,e)}},{key:Ce,value:function(e){return Oe(this),this._cancelAlgorithm(e)}},{key:Me,value:function(){var e=this._controlledReadableStream;if(this._queue.length>0){var t=Te(this);return!0===this._closeRequested&&0===this._queue.length?h(e):A(this),Promise.resolve(de(t,!1))}var r=l(e);return A(this),r}},{key:"desiredSize",get:function(){if(!1===x(this))throw ie("desiredSize");return j(this)}}]),e}(),Ue=function(){function e(){throw n(this,e),new TypeError("ReadableStreamBYOBRequest cannot be used directly")}return se(e,[{key:"respond",value:function(e){if(!1===k(this))throw ae("respond");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(!0===fe(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");!function(e,t){if(t=Number(t),!1===he(t))throw new RangeError("bytesWritten must be a finite");K(e,t)}(this._associatedReadableByteStreamController,e)}},{key:"respondWithNewView",value:function(e){if(!1===k(this))throw ae("respond");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(!0===fe(e.buffer))throw new TypeError("The supplied view's buffer has been detached and so cannot be used as a response");!function(e,t){var r=e._pendingPullIntos[0];if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.byteLength!==t.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");r.buffer=t.buffer,K(e,t.byteLength)}(this._associatedReadableByteStreamController,e)}},{key:"view",get:function(){if(!1===k(this))throw ae("view");return this._view}}]),e}(),qe=function(){function e(){throw n(this,e),new TypeError("ReadableByteStreamController constructor cannot be used directly")}return se(e,[{key:"close",value:function(){if(!1===L(this))throw oe("close");if(!0===this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");var e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError("The stream (in "+e+" state) is not in the readable state and cannot be closed");!function(e){var t=e._controlledReadableByteStream;if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0&&e._pendingPullIntos[0].bytesFilled>0){var r=new TypeError("Insufficient bytes to fill elements in the given buffer");throw W(e,r),r}h(t)}}(this)}},{key:"enqueue",value:function(e){if(!1===L(this))throw oe("enqueue");if(!0===this._closeRequested)throw new TypeError("stream is closed or draining");var t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError("The stream (in "+t+" state) is not in the readable state and cannot be enqueued to");if(!ArrayBuffer.isView(e))throw new TypeError("You can only enqueue array buffer views when using a ReadableByteStreamController");if(!0===fe(e.buffer))throw new TypeError("Cannot enqueue a view onto a detached ArrayBuffer");!function(e,t){var r=e._controlledReadableByteStream,n=t.buffer,i=t.byteOffset,a=t.byteLength,o=ye(n);!0===b(r)?0===g(r)?V(e,o,i,a):f(r,new Uint8Array(o,i,a),!1):!0===m(r)?(V(e,o,i,a),z(e)):V(e,o,i,a)}(this,e)}},{key:"error",value:function(e){if(!1===L(this))throw oe("error");var t=this._controlledReadableByteStream;if("readable"!==t._state)throw new TypeError("The stream is "+t._state+" and so cannot be errored");W(this,e)}},{key:Ce,value:function(e){return this._pendingPullIntos.length>0&&(this._pendingPullIntos[0].bytesFilled=0),Oe(this),this._cancelAlgorithm(e)}},{key:Me,value:function(){var e=this._controlledReadableByteStream;if(this._queueTotalSize>0){var t=this._queue.shift();this._queueTotalSize-=t.byteLength,H(this);var r=void 0;try{r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}catch(e){return Promise.reject(e)}return Promise.resolve(de(r,!1))}var n=this._autoAllocateChunkSize;if(void 0!==n){var i=void 0;try{i=new ArrayBuffer(n)}catch(e){return Promise.reject(e)}var a={buffer:i,byteOffset:0,byteLength:n,bytesFilled:0,elementSize:1,ctor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(a)}var o=l(e);return F(this),o}},{key:"byobRequest",get:function(){if(!1===L(this))throw oe("byobRequest");if(void 0===this._byobRequest&&this._pendingPullIntos.length>0){var e=this._pendingPullIntos[0],t=new Uint8Array(e.buffer,e.byteOffset+e.bytesFilled,e.byteLength-e.bytesFilled),r=Object.create(Ue.prototype);(function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r})(r,this,t),this._byobRequest=r}return this._byobRequest}},{key:"desiredSize",get:function(){if(!1===L(this))throw oe("desiredSize");return J(this)}}]),e}()},{"./helpers.js":10,"./queue-with-sizes.js":11,"./utils.js":14,"./writable-stream.js":15,"better-assert":16}],13:[function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,r,n,i,a){function u(){return t}e._writable=N(u,(function(t){return function(e,t){y("TransformStreamDefaultSinkWriteAlgorithm()");var r=e._transformStreamController;return!0===e._backpressure?e._backpressureChangePromise.then((function(){var n=e._writable;if("erroring"===n._state)throw n._storedError;return r._transformAlgorithm(t)})):r._transformAlgorithm(t)}(e,t)}),(function(){return function(e){y("TransformStreamDefaultSinkCloseAlgorithm()");var t=e._readable;return e._transformStreamController._flushAlgorithm().then((function(){if("errored"===t._state)throw t._storedError;var e=t._readableStreamController;!0===P(e)&&E(e)})).catch((function(r){throw o(e,r),t._storedError}))}(e)}),(function(){return function(e){return o(e,new TypeError("Writable side aborted")),Promise.resolve()}(e)}),r,n),e._readable=O(u,(function(){return function(e){return y("TransformStreamDefaultSourcePullAlgorithm()"),c(e,!1),e._backpressureChangePromise}(e)}),(function(t){return s(e,t),Promise.resolve()}),i,a),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,c(e,!0),e._transformStreamController=void 0}function a(e){return!!_(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")}function o(e,t){y("TransformStreamError()"),"readable"===e._readable._state&&A(e._readable._readableStreamController,t),s(e,t)}function s(e,t){j(e._writable._writableStreamController,t),!0===e._backpressure&&c(e,!1)}function c(e,t){y("TransformStreamSetBackpressure() [backpressure = "+t+"]"),void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=new Promise((function(t){e._backpressureChangePromise_resolve=t})),e._backpressure=t}function u(e){return!!_(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")}function l(e,t,r,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=n}function d(e,t){y("TransformStreamDefaultControllerEnqueue()");var r=e._controlledTransformStream,n=r._readable._readableStreamController;if(!1===P(n))throw new TypeError("Readable side is not in a state that permits enqueue");try{x(n,t)}catch(e){throw s(r,e),r._readable._storedError}I(n)!==r._backpressure&&c(r,!0)}function h(e){return new TypeError("TransformStreamDefaultController.prototype."+e+" can only be used on a TransformStreamDefaultController")}function p(e){return new TypeError("TransformStream.prototype."+e+" can only be used on a TransformStream")}var f=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(n(this,e),void 0!==t.readableType)throw new RangeError("Invalid readable type specified");if(void 0!==t.writableType)throw new RangeError("Invalid writable type specified");var s=r.size,c=T(s),u=r.highWaterMark;void 0===u&&(u=1),u=w(u);var h=a.size,p=T(h),f=a.highWaterMark;void 0===f&&(f=0),f=w(f);var y=void 0;i(this,new Promise((function(e){y=e})),u,c,f,p),function(e,t){var r=Object.create(M.prototype),n=function(e){try{return d(r,e),Promise.resolve()}catch(e){return Promise.reject(e)}},i=t.transform;if(void 0!==i){if("function"!=typeof i)throw new TypeError("transform is not a method");n=function(n){return v(i,t,[n,r]).catch((function(t){throw o(e,t),t}))}}var a=b(t,"flush",0,[r]);l(e,r,n,a)}(this,t);var g=m(t,"start",[this._transformStreamController]);y(g)}return f(e,[{key:"readable",get:function(){if(!1===a(this))throw p("readable");return this._readable}},{key:"writable",get:function(){if(!1===a(this))throw p("writable");return this._writable}}]),e}(),M=function(){function e(){throw n(this,e),new TypeError("TransformStreamDefaultController instances cannot be created directly")}return f(e,[{key:"enqueue",value:function(e){if(!1===u(this))throw h("enqueue");d(this,e)}},{key:"error",value:function(e){if(!1===u(this))throw h("error");!function(e,t){o(e._controlledTransformStream,t)}(this,e)}},{key:"terminate",value:function(){if(!1===u(this))throw h("terminate");!function(e){y("TransformStreamDefaultControllerTerminate()");var t=e._controlledTransformStream,r=t._readable._readableStreamController;!0===P(r)&&E(r),s(t,new TypeError("TransformStream terminated"))}(this)}},{key:"desiredSize",get:function(){if(!1===u(this))throw h("desiredSize");var e=this._controlledTransformStream._readable._readableStreamController;return R(e)}}]),e}();t.exports={CreateTransformStream:function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return 1},o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:function(){return 1},c=Object.create(C.prototype),u=void 0;i(c,new Promise((function(e){u=e})),n,a,o,s),l(c,Object.create(M.prototype),t,r);var d=e();return u(d),c},TransformStream:C}},{"./helpers.js":10,"./readable-stream.js":12,"./writable-stream.js":15,"better-assert":16,debug:18}],14:[function(e,t,r){"use strict";var n=e("better-assert");r.rethrowAssertionErrorRejection=function(e){e&&e.constructor===n.AssertionError&&setTimeout((function(){throw e}),0)}},{"better-assert":16}],15:[function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e){return new Y(e)}function a(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=[],e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function o(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")}function s(e){return void 0!==e._writer}function c(e,t){var r=e._state;if("closed"===r)return Promise.resolve(void 0);if("errored"===r)return Promise.reject(e._storedError);var n=new TypeError("Requested to abort");if(void 0!==e._pendingAbortRequest)return Promise.reject(n);var i=!1;"erroring"===r&&(i=!0,t=void 0);var a=new Promise((function(r,n){e._pendingAbortRequest={_resolve:r,_reject:n,_reason:t,_wasAlreadyErroring:i}}));return!1===i&&l(e,n),a}function u(e,t){L("WritableStreamDealWithRejection(stream, %o)",t),"writable"!==e._state?d(e):l(e,t)}function l(e,t){L("WritableStreamStartErroring(stream, %o)",t);var r=e._writableStreamController;e._state="erroring",e._storedError=t;var n=e._writer;void 0!==n&&b(n,t),!1===function(e){return void 0===e._inFlightWriteRequest&&void 0===e._inFlightCloseRequest?(L("WritableStreamHasOperationMarkedInFlight() is false"),!1):(L("WritableStreamHasOperationMarkedInFlight() is true"),!0)}(e)&&!0===r._started&&d(e)}function d(e){L("WritableStreamFinishErroring()"),e._state="errored",e._writableStreamController[W]();var t=e._storedError,r=!0,n=!1,i=void 0;try{for(var a,o=e._writeRequests[Symbol.iterator]();!(r=(a=o.next()).done);r=!0)a.value._reject(t)}catch(e){n=!0,i=e}finally{try{!r&&o.return&&o.return()}finally{if(n)throw i}}if(e._writeRequests=[],void 0!==e._pendingAbortRequest){var s=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,!0===s._wasAlreadyErroring)return s._reject(t),void p(e);e._writableStreamController[X](s._reason).then((function(){s._resolve(),p(e)}),(function(t){s._reject(t),p(e)}))}else p(e)}function h(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function p(e){L("WritableStreamRejectCloseAndClosedPromiseIfNeeded()"),void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);var t=e._writer;void 0!==t&&(D(t,e._storedError),t._closedPromise.catch((function(){})))}function f(e,t){var r=e._writer;void 0!==r&&t!==e._backpressure&&(!0===t?function(e){L("defaultWriterReadyPromiseReset()"),e._readyPromise=new Promise((function(t,r){e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}(r):C(r)),e._backpressure=t}function y(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")}function g(e){var t=e._ownerWritableStream,r=t._state;if("closed"===r||"errored"===r)return Promise.reject(new TypeError("The stream (in "+r+" state) is not in the writable state and cannot be closed"));var n=new Promise((function(e,r){var n={_resolve:e,_reject:r};t._closeRequest=n}));return!0===t._backpressure&&"writable"===r&&C(e),function(e){G(e,"close",0),S(e)}(t._writableStreamController),n}function m(e,t){"pending"===e._closedPromiseState?D(e,t):function(e,t){e._closedPromise=Promise.reject(t),e._closedPromiseState="rejected"}(e,t),e._closedPromise.catch((function(){}))}function b(e,t){L("WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, %o)",t),"pending"===e._readyPromiseState?function(e,t){L("defaultWriterReadyPromiseReject(writer, %o)",t),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected"}(e,t):function(e,t){L("defaultWriterReadyPromiseResetToRejected(writer, %o)",t),e._readyPromise=Promise.reject(t),e._readyPromiseState="rejected"}(e,t),e._readyPromise.catch((function(){}))}function v(e){var t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");b(e,r),m(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function _(e,t){var r=e._ownerWritableStream,n=r._writableStreamController,i=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return O(e,t),1}}(n,t);if(r!==e._ownerWritableStream)return Promise.reject(I("write to"));var a=r._state;if("errored"===a)return Promise.reject(r._storedError);if(!0===h(r)||"closed"===a)return Promise.reject(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===a)return Promise.reject(r._storedError);var o=function(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._writeRequests.push(n)}))}(r);return function(e,t,r){var n={chunk:t};try{G(e,n,r)}catch(t){return void O(e,t)}var i=e._controlledWritableStream;!1===h(i)&&"writable"===i._state&&f(i,E(e)),S(e)}(n,t,i),o}function w(e,t,r,n,i,a,o,s){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,K(t),t._started=!1,t._strategySizeAlgorithm=s,t._strategyHWM=o,t._writeAlgorithm=n,t._closeAlgorithm=i,t._abortAlgorithm=a;var c=E(t);f(e,c);var l=r();Promise.resolve(l).then((function(){t._started=!0,S(t)}),(function(r){t._started=!0,u(e,r)})).catch(Q)}function T(e){return e._strategyHWM-e._queueTotalSize}function S(e){L("WritableStreamDefaultControllerAdvanceQueueIfNeeded()");var t=e._controlledWritableStream;if(!1!==e._started&&void 0===t._inFlightWriteRequest){var r=t._state;if("closed"!==r&&"errored"!==r)if("erroring"!==r){if(0!==e._queue.length){var n=z(e);"close"===n?function(e){var t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),H(e),e._closeAlgorithm().then((function(){!function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";var t=e._writer;void 0!==t&&function(e){e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved"}(t)}(t)}),(function(e){!function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),u(e,t)}(t,e)})).catch(Q)}(e):function(e,t){var r=e._controlledWritableStream;(function(e){e._inFlightWriteRequest=e._writeRequests.shift()})(r),e._writeAlgorithm(t).then((function(){!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);var t=r._state;if(H(e),!1===h(r)&&"writable"===t){var n=E(e);f(r,n)}S(e)}),(function(e){!function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,u(e,t)}(r,e)})).catch(Q)}(e,n.chunk)}}else d(t)}}function O(e,t){"writable"===e._controlledWritableStream._state&&x(e,t)}function E(e){return T(e)<=0}function x(e,t){l(e._controlledWritableStream,t)}function A(e){return new TypeError("WritableStream.prototype."+e+" can only be used on a WritableStream")}function R(e){return new TypeError("WritableStreamDefaultWriter.prototype."+e+" can only be used on a WritableStreamDefaultWriter")}function I(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function P(e){e._closedPromise=new Promise((function(t,r){e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"}))}function D(e,t){e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected"}function N(e,t){L("defaultWriterReadyPromiseInitializeAsRejected(writer, %o)",t),e._readyPromise=Promise.reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected"}function j(e){L("defaultWriterReadyPromiseInitializeAsResolved()"),e._readyPromise=Promise.resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled"}function C(e){L("defaultWriterReadyPromiseResolve()"),e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled"}var M=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.size,o=r.highWaterMark,s=void 0===o?1:o;if(n(this,e),a(this),void 0!==t.type)throw new RangeError("Invalid type is specified");var c=q(i);!function(e,t,r,n){var i=Object.create(Z.prototype),a=F(t,"write",1,[i]),o=F(t,"close",0,[]),s=F(t,"abort",1,[]);w(e,i,(function(){return B(t,"start",[i])}),a,o,s,r,n)}(this,t,s=U(s),c)}return M(e,[{key:"abort",value:function(e){return!1===o(this)?Promise.reject(A("abort")):!0===s(this)?Promise.reject(new TypeError("Cannot abort a stream that already has a writer")):c(this,e)}},{key:"getWriter",value:function(){if(!1===o(this))throw A("getWriter");return i(this)}},{key:"locked",get:function(){if(!1===o(this))throw A("locked");return s(this)}}]),e}();t.exports={AcquireWritableStreamDefaultWriter:i,CreateWritableStream:function(e,t,r,n){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:function(){return 1},s=Object.create(J.prototype);return a(s),w(s,Object.create(Z.prototype),e,t,r,n,i,o),s},IsWritableStream:o,IsWritableStreamLocked:s,WritableStream:J,WritableStreamAbort:c,WritableStreamDefaultControllerErrorIfNeeded:O,WritableStreamDefaultWriterCloseWithErrorPropagation:function(e){var t=e._ownerWritableStream,r=t._state;return!0===h(t)||"closed"===r?Promise.resolve():"errored"===r?Promise.reject(t._storedError):g(e)},WritableStreamDefaultWriterRelease:v,WritableStreamDefaultWriterWrite:_,WritableStreamCloseQueuedOrInFlight:h};var Y=function(){function e(t){if(n(this,e),!1===o(t))throw new TypeError("WritableStreamDefaultWriter can only be constructed with a WritableStream instance");if(!0===s(t))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=t,t._writer=this;var r=t._state;if("writable"===r)!1===h(t)&&!0===t._backpressure?function(e){L("defaultWriterReadyPromiseInitialize()"),e._readyPromise=new Promise((function(t,r){e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}(this):j(this),P(this);else if("erroring"===r)N(this,t._storedError),this._readyPromise.catch((function(){})),P(this);else if("closed"===r)j(this),function(e){e._closedPromise=Promise.resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved"}(this);else{var i=t._storedError;N(this,i),this._readyPromise.catch((function(){})),function(e,t){e._closedPromise=Promise.reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected"}(this,i),this._closedPromise.catch((function(){}))}}return M(e,[{key:"abort",value:function(e){return!1===y(this)?Promise.reject(R("abort")):void 0===this._ownerWritableStream?Promise.reject(I("abort")):function(e,t){return c(e._ownerWritableStream,t)}(this,e)}},{key:"close",value:function(){if(!1===y(this))return Promise.reject(R("close"));var e=this._ownerWritableStream;return void 0===e?Promise.reject(I("close")):!0===h(e)?Promise.reject(new TypeError("cannot close an already-closing stream")):g(this)}},{key:"releaseLock",value:function(){if(!1===y(this))throw R("releaseLock");void 0!==this._ownerWritableStream&&v(this)}},{key:"write",value:function(e){return!1===y(this)?Promise.reject(R("write")):void 0===this._ownerWritableStream?Promise.reject(I("write to")):_(this,e)}},{key:"closed",get:function(){return!1===y(this)?Promise.reject(R("closed")):this._closedPromise}},{key:"desiredSize",get:function(){if(!1===y(this))throw R("desiredSize");if(void 0===this._ownerWritableStream)throw I("desiredSize");return e=this._ownerWritableStream,"errored"===(t=e._state)||"erroring"===t?null:"closed"===t?0:T(e._writableStreamController);var e,t}},{key:"ready",get:function(){return!1===y(this)?Promise.reject(R("ready")):this._readyPromise}}]),e}(),Z=function(){function e(){throw n(this,e),new TypeError("WritableStreamDefaultController cannot be constructed explicitly")}return M(e,[{key:"error",value:function(e){if(!1===function(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledWritableStream")}(this))throw new TypeError("WritableStreamDefaultController.prototype.error can only be used on a WritableStreamDefaultController");"writable"===this._controlledWritableStream._state&&x(this,e)}},{key:X,value:function(e){return this._abortAlgorithm(e)}},{key:W,value:function(){K(this)}}]),e}()},{"./helpers.js":10,"./queue-with-sizes.js":11,"./utils.js":14,"better-assert":16,debug:18}],16:[function(e,t,r){(function(r){var n=e("assert").AssertionError,i=e("callsite"),a=e("fs");t.exports=r.env.NO_ASSERT?function(){}:function(e){if(!e){var t=i(),r=t[1],o=r.getFileName(),s=r.getLineNumber(),c=(c=a.readFileSync(o,"utf8")).split("\n")[s-1].match(/assert\((.*)\)/)[1];throw new n({message:c,stackStartFunction:t[0].getFunction()})}}}).call(this,e("_process"))},{_process:4,assert:2,callsite:17,fs:3}],17:[function(e,t,r){t.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(e,t){return t};var t=new Error;Error.captureStackTrace(t,arguments.callee);var r=t.stack;return Error.prepareStackTrace=e,r}},{}],18:[function(e,t,r){(function(n){function i(){var e;try{e=r.storage.debug}catch(e){}return!e&&void 0!==n&&"env"in n&&(e=n.env.DEBUG),e}(r=t.exports=e("./debug")).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},r.formatArgs=function(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+r.humanize(this.diff),t){var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0,a=0;e[0].replace(/%[a-zA-Z%]/g,(function(e){"%%"!==e&&(i++,"%c"===e&&(a=i))})),e.splice(a,0,n)}},r.save=function(e){try{null==e?r.storage.removeItem("debug"):r.storage.debug=e}catch(e){}},r.load=i,r.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},r.enable(i())}).call(this,e("_process"))},{"./debug":19,_process:4}],19:[function(e,t,r){function n(e){function t(){if(t.enabled){var e=t,i=+new Date,a=i-(n||i);e.diff=a,e.prev=n,e.curr=i,n=i;for(var o=new Array(arguments.length),s=0;s100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return r*d;case"days":case"day":case"d":return r*l;case"hours":case"hour":case"hrs":case"hr":case"h":return r*u;case"minutes":case"minute":case"mins":case"min":case"m":return r*c;case"seconds":case"second":case"secs":case"sec":case"s":return r*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function i(e){return e>=l?Math.round(e/l)+"d":e>=u?Math.round(e/u)+"h":e>=c?Math.round(e/c)+"m":e>=s?Math.round(e/s)+"s":e+"ms"}function a(e){return o(e,l,"day")||o(e,u,"hour")||o(e,c,"minute")||o(e,s,"second")||e+" ms"}function o(e,t,r){if(!(e0)return n(e);if("number"===r&&!1===isNaN(e))return t.long?a(e):i(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},{}]},{},[1])(1)},53291:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="\t\n\r -퟿-�𐀀-􏿿",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u"),t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=32&&e<=55295||10===e||13===e||9===e||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},90183:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="-퟿-�𐀀-􏿿",t.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.RESTRICTED_CHAR_RE=new RegExp("^["+t.RESTRICTED_CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u"),t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=1&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isRestrictedChar=function(e){return e>=1&&e<=8||11===e||12===e||e>=14&&e<=31||e>=127&&e<=132||e>=134&&e<=159},t.isCharAndNotRestricted=function(e){return 9===e||10===e||13===e||e>31&&e<127||133===e||e>159&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},99977:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||95===e||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NC_NAME_CHAR="-"+t.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.NC_NAME_START_CHAR_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]$","u"),t.NC_NAME_CHAR_RE=new RegExp("^["+t.NC_NAME_CHAR+"]$","u"),t.NC_NAME_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]["+t.NC_NAME_CHAR+"]*$","u"),t.isNCNameStartChar=r,t.isNCNameChar=function(e){return r(e)||45===e||46===e||e>=48&&e<=57||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},93344:e=>{"use strict";e.exports=function e(t){if("number"==typeof t&&isNaN(t))throw new Error("NaN is not allowed");if("number"==typeof t&&!isFinite(t))throw new Error("Infinity is not allowed");return null===t||"object"!=typeof t?JSON.stringify(t):t.toJSON instanceof Function?e(t.toJSON()):Array.isArray(t)?`[${t.reduce(((t,r,n)=>`${t}${0===n?"":","}${e(void 0===r||"symbol"==typeof r?null:r)}`),"")}]`:`{${Object.keys(t).sort().reduce(((r,n)=>void 0===t[n]||"symbol"==typeof t[n]?r:`${r}${0===r.length?"":","}${e(n)}:${e(t[n])}`),"")}}`}},82197:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var o=a(r(95630)),s=r(73094),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),d=new Set(["dd","dt"]),h=new Set(["rt","rp"]),p=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",d],["dt",d],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",h],["rp",h],["tbody",l],["tfoot",l]]),f=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,s;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.htmlMode=!this.options.xmlMode,this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:this.htmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:this.htmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:o.default)(this.options,this),this.foreignContext=[!this.htmlMode],null===(s=(a=this.cbs).onparserinit)||void 0===s||s.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e,t){var r,n;this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,(0,s.fromCodePoint)(e)),this.startIndex=t},e.prototype.isVoidElement=function(e){return this.htmlMode&&f.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=this.htmlMode&&p.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[0]);){var o=this.stack.shift();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,o,!0)}this.isVoidElement(e)||(this.stack.unshift(e),this.htmlMode&&(y.has(e)?this.foreignContext.unshift(!0):g.has(e)&&this.foreignContext.unshift(!1))),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,o,s,c,u;this.endIndex=t;var l=this.getSlice(e,t);if(this.lowerCaseTagNames&&(l=l.toLowerCase()),this.htmlMode&&(y.has(l)||g.has(l))&&this.foreignContext.shift(),this.isVoidElement(l))this.htmlMode&&"br"===l&&(null===(a=(i=this.cbs).onopentagname)||void 0===a||a.call(i,"br"),null===(s=(o=this.cbs).onopentag)||void 0===s||s.call(o,"br",{},!0),null===(u=(c=this.cbs).onclosetag)||void 0===u||u.call(c,"br",!1));else{var d=this.stack.indexOf(l);if(-1!==d)for(var h=0;h<=d;h++){var p=this.stack.shift();null===(n=(r=this.cbs).onclosetag)||void 0===n||n.call(r,p,h!==d)}else this.htmlMode&&"p"===l&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.recognizeSelfClosing||this.foreignContext[0]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[0]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.shift())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,s.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===o.QuoteType.Double?'"':e===o.QuoteType.Single?"'":e===o.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,o;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(o=(a=this.cbs).oncommentend)||void 0===o||o.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,o,s,c,u,l,d,h;this.endIndex=t;var p=this.getSlice(e,t-r);!this.htmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(o=(a=this.cbs).ontext)||void 0===o||o.call(a,p),null===(c=(s=this.cbs).oncdataend)||void 0===c||c.call(s)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(p,"]]")),null===(h=(d=this.cbs).oncommentend)||void 0===h||h.call(d)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=0;r=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,o=r(73094);function s(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||s(e)}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.InEntity=25]="InEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var u={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},l=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,s=void 0===a||a,c=this;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.xmlMode=n,this.decodeEntities=s,this.entityDecoder=new o.EntityDecoder(n?o.xmlDecodeTree:o.htmlDecodeTree,(function(e,t){return c.emitCodePoint(e,t)}))}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||s(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==u.TitleEnd[2]?this.state=this.xmlMode||t!==u.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(u.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){s(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||s(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:s(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):s(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):s(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):s(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){s(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=u.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===u.ScriptEnd[3]?this.startSpecial(u.ScriptEnd,4):t===u.StyleEnd[3]?this.startSpecial(u.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.startEntity=function(){this.baseState=this.state,this.state=i.InEntity,this.entityStart=this.index,this.entityDecoder.startEntity(this.xmlMode?o.DecodingMode.Strict:this.baseState===i.Text||this.baseState===i.InSpecialTag?o.DecodingMode.Legacy:o.DecodingMode.Attribute)},e.prototype.stateInEntity=function(){var e=this.entityDecoder.write(this.buffer,this.index-this.offset);e>=0?(this.state=this.baseState,0===e&&(this.index=this.entityStart)):this.index=this.offset+this.buffer.length-1},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index=e||(this.state===i.InCommentLike?this.currentSequence===u.CdataEnd?this.cbs.oncdata(this.sectionStart,e,0):this.cbs.oncomment(this.sectionStart,e,0):this.state===i.InTagName||this.state===i.BeforeAttributeName||this.state===i.BeforeAttributeValue||this.state===i.AfterAttributeName||this.state===i.InAttributeName||this.state===i.InAttributeValueSq||this.state===i.InAttributeValueDq||this.state===i.InAttributeValueNq||this.state===i.InClosingTagName||this.cbs.ontext(this.sectionStart,e))},e.prototype.emitCodePoint=function(e,t){this.baseState!==i.Text&&this.baseState!==i.InSpecialTag?(this.sectionStart{},72056:()=>{},89227:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isIterator=t.isIterable=t.isSourceExpression=t.isPromise=t.isEventEmitter=t.isFunction=t.range=t.union=t.fromIterable=t.fromIterator=t.fromArray=t.single=t.empty=t.wrap=t.WrappingIterator=t.ClonedIterator=t.UnionIterator=t.MultiTransformIterator=t.SimpleTransformIterator=t.TransformIterator=t.BufferedIterator=t.MappingIterator=t.DESTINATION=t.identity=t.IntegerIterator=t.ArrayIterator=t.SingletonIterator=t.EmptyIterator=t.AsyncIterator=t.DESTROYED=t.ENDED=t.CLOSED=t.CLOSING=t.OPEN=t.INIT=t.setTaskScheduler=t.getTaskScheduler=t.scheduleTask=t.LinkedList=void 0;const n=r(22699),i=r(16821);Object.defineProperty(t,"LinkedList",{enumerable:!0,get:function(){return i.LinkedList}});let a=r(13805).createTaskScheduler();t.scheduleTask=function(e){a(e)},t.getTaskScheduler=function(){return a},t.setTaskScheduler=function(e){a=e},t.INIT=1,t.OPEN=2,t.CLOSING=4,t.CLOSED=8,t.ENDED=16,t.DESTROYED=32;class o extends n.EventEmitter{constructor(e=t.OPEN){super(),this._readable=!1,this._state=e,this.on("newListener",s)}_changeState(e,r=!1){const n=e>this._state&&this._statethis.emit("end"))):this.emit("end"))),n}read(){return null}forEach(e,t){this.on("data",j(e,t))}close(){this._changeState(t.CLOSED)&&this._endAsync()}destroy(e){this.done||this._destroy(e,(t=>{(e=e||t)&&this.emit("error",e),this._end(!0)}))}_destroy(e,t){t()}_end(e=!1){this._changeState(e?t.DESTROYED:t.ENDED)&&(this._readable=!1,this.removeAllListeners("readable"),this.removeAllListeners("data"),this.removeAllListeners("end"))}_endAsync(){a((()=>this._end()))}get readable(){return this._readable}set readable(e){e=Boolean(e)&&!this.done,this._readable!==e&&(this._readable=e,e&&a((()=>this.emit("readable"))))}get closed(){return this._state>=t.CLOSING}get ended(){return this._state===t.ENDED}get destroyed(){return this._state===t.DESTROYED}get done(){return this._state>=t.ENDED}toString(){const e=this._toStringDetails();return`[${this.constructor.name}${e?` ${e}`:""}]`}_toStringDetails(){return""}toArray(e){const t=[],r="number"==typeof(null==e?void 0:e.limit)?e.limit:1/0;return this.ended||r<=0?Promise.resolve(t):new Promise(((e,n)=>{const i=()=>e(t),a=o=>{t.push(o),t.length>=r&&(this.removeListener("error",n),this.removeListener("data",a),this.removeListener("end",i),e(t))};this.on("error",n),this.on("data",a),this.on("end",i)}))}getProperty(e,t){const r=this._properties;if(!t)return r&&r[e];if(r&&e in r)a((()=>t(r[e])));else{let r;(r=this._propertyCallbacks)||(this._propertyCallbacks=r=Object.create(null)),e in r?r[e].push(t):r[e]=[t]}}setProperty(e,t){(this._properties||(this._properties=Object.create(null)))[e]=t;const r=this._propertyCallbacks||{},n=r[e];if(n){for(e in delete r[e],a((()=>{for(const e of n)e(t)})),r)return;delete this._propertyCallbacks}}getProperties(){const e=this._properties,t={};for(const r in e)t[r]=e[r];return t}setProperties(e){for(const t in e)this.setProperty(t,e[t])}copyProperties(e,t){for(const r of t)e.getProperty(r,(e=>this.setProperty(r,e)))}transform(e){return new O(this,e)}map(e,t){return new y(this,j(e,t))}filter(e,t){return this.map((function(r){return e.call(t||this,r)?r:null}))}uniq(e=f){const t=new Set;return this.filter((function(r){const n=e.call(this,r);return!t.has(n)&&(t.add(n),!0)}))}prepend(e){return this.transform({prepend:e})}append(e){return this.transform({append:e})}surround(e,t){return this.transform({prepend:e,append:t})}skip(e){return this.map((t=>e-- >0?null:t))}take(e){return this.transform({limit:e})}range(e,t){return this.transform({offset:e,limit:Math.max(t-e+1,0)})}clone(){return new A(this)}}function s(e){"data"===e&&(this.removeListener("newListener",s),u(this,"readable",c),this.readable&&a((()=>c.call(this))))}function c(){let e;for(;0!==this.listenerCount("data")&&null!==(e=this.read());)this.emit("data",e);0!==this.listenerCount("data")||this.done||(this.removeListener("readable",c),u(this,"newListener",s))}function u(e,t,r){e.listeners(t).includes(r)||e.on(t,r)}t.AsyncIterator=o;class l extends o{constructor(){super(),this._changeState(t.ENDED,!0)}}t.EmptyIterator=l;class d extends o{constructor(e){super(),this._item=e,null===e?this.close():this.readable=!0}read(){const e=this._item;return this._item=null,this.close(),e}_toStringDetails(){return null===this._item?"":`(${this._item})`}}t.SingletonIterator=d;class h extends o{constructor(e=[],{autoStart:t=!0,preserve:r=!0}={}){super();const n=r||!Array.isArray(e)?[...e]:e;this._index=0,this._sourceStarted=!1!==t,this._truncateThreshold=r?-1:64,this._sourceStarted&&0===n.length?this.close():this._buffer=n,this.readable=!0}read(){this._sourceStarted||(this._sourceStarted=!0);let e=null;return this._buffer&&(this._index=t&&this.close(),Promise.resolve(i)}}t.ArrayIterator=h;class p extends o{constructor({start:e=0,step:t=1,end:r}={}){super(),Number.isFinite(e)&&(e=Math.trunc(e)),this._next=e,Number.isFinite(t)&&(t=Math.trunc(t)),this._step=t;const n=t>=0,i=n?1/0:-1/0;Number.isFinite(r)?r=Math.trunc(r):r!==-i&&(r=i),this._last=r,!Number.isFinite(e)||(n?e>r:e=0?n>r:nthis._init(r))),this._sourceStarted=!1!==r}get maxBufferSize(){return this._maxBufferSize}set maxBufferSize(e){e!==1/0&&(e=Number.isFinite(e)?Math.max(Math.trunc(e),1):4),this._maxBufferSize!==e&&(this._maxBufferSize=e,this._state===t.OPEN&&this._fillBuffer())}_init(e){let r=!1;this._reading=!0,this._begin((()=>{if(r)throw new Error("done callback called multiple times");r=!0,this._reading=!1,this._changeState(t.OPEN),e?this._fillBufferAsync():this.readable=!0}))}_begin(e){e()}read(){if(this.done)return null;this._sourceStarted||(this._sourceStarted=!0);const e=this._buffer;let t;return e.empty?(t=null,this.readable=!1):t=e.shift(),!this._reading&&e.length0&&(this._pushedCount=0,this._reading=!0,this._read(e,(()=>{if(!e)throw new Error("done callback called multiple times");e=0,this._reading=!1,this.closed?this._completeClose():this._pushedCount&&(this.readable=!0,this._buffer.length{this._reading=!1,this._fillBuffer()})))}close(){this._reading?this._changeState(t.CLOSING):this._completeClose()}_completeClose(){this._changeState(t.CLOSED)&&(this._reading=!0,this._flush((()=>{if(!this._reading)throw new Error("done callback called multiple times");this._reading=!1,this._buffer.empty&&this._endAsync()})))}_destroy(e,t){this._buffer.clear(),t()}_flush(e){e()}_toStringDetails(){const e=this._buffer;return`{${e.empty?"":`next: ${e.first}, `}buffer: ${e.length}}`}}t.BufferedIterator=m;class b extends m{constructor(e,t=e||{}){super(t),this._boundPush=e=>this._push(e),k(e)||(e=t.source),M(e)?this.source=e:e&&(this._createSource=L(e)?()=>e:e,this._sourceStarted&&this._loadSourceAsync()),this._optional=Boolean(t.optional),this._destroySource=!1!==t.destroySource}get source(){return C(this._createSource)&&this._loadSourceAsync(),this._source}set source(e){const r=this._source=this._validateSource(e);r[t.DESTINATION]=this,this.done?this._destroySource&&r.destroy():r.done?this.close():(r.on("end",T),r.on("readable",S),r.on("error",_))}_loadSourceAsync(){C(this._createSource)&&(Promise.resolve(this._createSource()).then((e=>{delete this._createSource,this.source=e,this._fillBuffer()}),(e=>this.emit("error",e))),this._createSource=null)}_validateSource(e,t=!1){if(this._source||void 0!==this._createSource)throw new Error("The source cannot be changed after it has been set");return g(e,t)}_read(e,t){const r=()=>{this._pushedCountthis._readAndTransform(r,t))):t()};this._readAndTransform(r,t)}_readAndTransform(e,t){let r;const n=this.source;!n||n.done||null===(r=n.read())?t():this._optional?this._optionalTransform(r,e):this._transform(r,e,this._boundPush)}_optionalTransform(e,t){const r=this._pushedCount;this._transform(e,(()=>{r===this._pushedCount&&this._push(e),t()}),this._boundPush)}_transform(e,t,r){r(e),t()}_closeWhenDone(){this.close()}_end(e){const r=this._source;r&&(r.removeListener("end",T),r.removeListener("error",_),r.removeListener("readable",S),delete r[t.DESTINATION],this._destroySource&&r.destroy()),super._end(e)}}function v(){this[t.DESTINATION].readable=!0}function _(e){this[t.DESTINATION].emit("error",e)}function w(){this[t.DESTINATION].close()}function T(){this[t.DESTINATION]._closeWhenDone()}function S(){!1!==this[t.DESTINATION]._sourceStarted&&this[t.DESTINATION]._fillBuffer()}t.TransformIterator=b;class O extends b{constructor(e,t){if(super(e,t),this._offset=0,this._limit=1/0,this._filter=e=>!0,t=t||(k(e)?null:e)){const e=C(t)?t:t.transform,{limit:r,offset:n,filter:i,map:a,prepend:o,append:s}=t;n===1/0||r===-1/0?this._limit=0:(Number.isFinite(n)&&(this._offset=Math.max(Math.trunc(n),0)),Number.isFinite(r)&&(this._limit=Math.max(Math.trunc(r),0)),C(i)&&(this._filter=i),C(a)&&(this._map=a),this._transform=C(e)?e:null),o&&(this._prepender=M(o)?o:N(o)),s&&(this._appender=M(s)?s:N(s))}}_read(e,t){const r=()=>this._readAndTransformSimple(e,n,t);function n(){a(r)}this._readAndTransformSimple(e,n,t)}_readAndTransformSimple(e,t,r){let n;const{source:i}=this;if(i&&!i.done){for(0===this._limit&&this.close();!this.closed&&this._pushedCountthis._push(e);!e||e.done?t():(e.on("data",r),e.on("end",(function n(){e.removeListener("data",r),e.removeListener("end",n),t()})))}}t.SimpleTransformIterator=O,t.MultiTransformIterator=class extends b{constructor(e,t){if(super(e,t),this._transformerQueue=[],t){const e=C(t)?t:t.multiTransform;e&&(this._createTransformer=e)}}_read(e,r){const n=this._transformerQueue,i=this._optional;let a,o;for(;(a=n[0])&&a.transformer.done;){i&&null!==a.item&&(e--,this._push(a.item)),n.shift();const{transformer:t}=a;t.removeListener("end",S),t.removeListener("readable",S),t.removeListener("error",_)}const{source:s}=this;for(;s&&!s.done&&n.length0&&null!==(o=t.read());)this._push(o),i&&(a.item=null)}else s&&s.done&&this.close();r()}_createTransformer(e){return new d(e)}_closeWhenDone(){this._transformerQueue.length||this.close()}_end(e){if(super._end(e),this._destroySource)for(const e of this._transformerQueue)e.transformer.destroy()}};class E extends m{constructor(e,t={}){super(t),this._sources=[],this._currentSource=-1;const r=!1!==t.autoStart;if(M(e))e.on("error",(e=>this.emit("error",e))),this._pending={loading:!1,sources:e},r&&this._loadSources();else if(Array.isArray(e)&&e.length>0)for(const t of e)this._addSource(t);else r&&this.close();this._destroySources=!1!==t.destroySources}_loadSources(){const e=this._pending.sources;this._pending.loading=!0,e.done?(delete this._pending,this.close()):(e.on("data",(e=>{this._addSource(e),this._fillBufferAsync()})),e.on("end",(()=>{delete this._pending,this._fillBuffer()})))}_addSource(e){L(e)&&(e=P(e)),e.done||(this._sources.push(e),e[t.DESTINATION]=this,e.on("error",_),e.on("readable",S),e.on("end",x))}_removeEmptySources(){this._sources=this._sources.filter(((e,t)=>(e.done&&t<=this._currentSource&&this._currentSource--,!e.done))),this._fillBuffer()}_read(e,t){var r;!1===(null===(r=this._pending)||void 0===r?void 0:r.loading)&&this._loadSources();let n,i=0;for(;i!==(i=e);)for(let t=0;t0;t++)this._currentSource=(this._currentSource+1)%this._sources.length,null!==(n=this._sources[this._currentSource].read())&&(e--,this._push(n));this._pending||0!==this._sources.length||this.close(),t()}_end(e=!1){if(super._end(e),this._destroySources){for(const e of this._sources)e.destroy();this._pending&&(this._pending.sources.destroy(),delete this._pending)}}}function x(){this[t.DESTINATION]._removeEmptySources()}t.UnionIterator=E;class A extends b{constructor(e){super(e,{autoStart:!1}),this._readPosition=0,this._reading=!1,e&&(this.readable=!0)}_init(){}close(){o.prototype.close.call(this)}get source(){return super.source}set source(e){const r=this._source=this._validateSource(e),n=r&&r[t.DESTINATION]||(r[t.DESTINATION]=new R(r));this.done?this._destroySource&&r.destroy():n.endsAt(0)?this.close():(n.register(this),!1!==r._sourceStarted&&null===n.readAt(0)||(this.readable=!0));const i=this._propertyCallbacks;for(const e in i){const t=i[e];for(const r of t)this._getSourceProperty(e,r)}}_validateSource(e,r=!1){const n=e&&e[t.DESTINATION];return super._validateSource(e,!n||n instanceof R)}getProperty(e,t){const{source:r}=this,n=this._properties,i=n&&e in n;if(!t)return i?n&&n[e]:r&&r.getProperty(e);super.getProperty(e,t),r&&!i&&this._getSourceProperty(e,t)}_getSourceProperty(e,t){this.source.getProperty(e,(r=>{this._properties&&e in this._properties||t(r)}))}getProperties(){const e=this.source?this.source.getProperties():{},t=this._properties;for(const r in t)e[r]=t[r];return e}_toStringDetails(){return`{source: ${this.source?this.source.toString():"none"}}`}read(){this._sourceStarted||(this._sourceStarted=!0);const e=this.source;let r=null;if(!this.done&&e){const n=e[t.DESTINATION];null!==(r=n.readAt(this._readPosition))?this._readPosition++:this.readable=!1,n.endsAt(this._readPosition)&&this.close()}return r}_end(e){const r=this.source,n=null==r?void 0:r[t.DESTINATION];n&&n.unregister(this),m.prototype._end.call(this,e)}}t.ClonedIterator=A;class R{constructor(e){if(this._history=[],this._trackers=new Set,this._source=e,!e.done){const t=()=>{for(const e of this._trackers)e.readable=!0},r=e=>{for(const t of this._trackers)t.emit("error",e)},n=()=>{for(const e of this._trackers)!1!==e._sourceStarted&&e._readPosition===this._history.length&&e.close();this._trackers.clear(),e.removeListener("end",n),e.removeListener("error",r),e.removeListener("readable",t)};e.on("end",n),e.on("error",r),e.on("readable",t)}}register(e){this._source.done||this._trackers.add(e)}unregister(e){this._trackers.delete(e)}readAt(e){let t=null;return e{this._source=null,this.source=e})).catch((e=>this.emit("error",e)))):e&&(this.source=e)}set source(e){let r=e;if(null!==this._source)throw new Error("The source cannot be changed after it has been set");if(F(r)&&(r=r[Symbol.iterator]()),B(r)){let e=r;r=new n.EventEmitter,r.read=()=>{if(null!==e){let t;for(;!(t=e.next()).done;)if(null!==t.value)return t.value;e=null,this.close()}return null}}else r=g(r);this.done?this._destroySource&&C(r.destroy)&&r.destroy():(r[t.DESTINATION]=this,r.on("end",w),r.on("error",_),r.on("readable",v),this._source=r,this.readable=!1!==r.readable)}read(){if(null!==this._source&&!1!==this._source.readable){const e=this._source.read();if(null!==e)return e;this.readable=!1}return null}_end(e=!1){null!==this._source&&(this._source.removeListener("end",w),this._source.removeListener("error",_),this._source.removeListener("readable",v),delete this._source[t.DESTINATION],this._destroySource&&C(this._source.destroy)&&this._source.destroy(),this._source=null),super._end(e)}}function P(e,t){if(t&&("autoStart"in t||"optional"in t||"source"in t||"maxBufferSize"in t))return e&&!M(e)&&(e=new I(e)),new b(e,t);if(!e)return D();if(L(e))return new I(e,t);if(e instanceof o)return e;if(Array.isArray(e))return N(e);if(F(e)||B(e)||M(e))return new I(e,t);throw new TypeError(`Invalid source: ${e}`)}function D(){return new l}function N(e){return new h(e)}function j(e,t){return t?e.bind(t):e}function C(e){return"function"==typeof e}function M(e){return C(null==e?void 0:e.on)}function L(e){return C(null==e?void 0:e.then)}function k(e){return e&&(M(e)||L(e)||C(e))}function F(e){return e&&Symbol.iterator in e}function B(e){return C(null==e?void 0:e.next)}t.WrappingIterator=I,t.wrap=P,t.empty=D,t.single=function(e){return new d(e)},t.fromArray=N,t.fromIterator=function(e){return new I(e)},t.fromIterable=function(e){return new I(e)},t.union=function(e){return new E(e)},t.range=function(e,t,r){return new p({start:e,end:t,step:r})},t.isFunction=C,t.isEventEmitter=M,t.isPromise=L,t.isSourceExpression=k,t.isIterable=F,t.isIterator=B},16821:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedList=void 0,t.LinkedList=class{constructor(){this._length=0,this._head=null,this._tail=null}get length(){return this._length}get first(){var e;return null===(e=this._head)||void 0===e?void 0:e.value}get last(){var e;return null===(e=this._tail)||void 0===e?void 0:e.value}get empty(){return null===this._head}push(e){const t={value:e,next:null};null===this._tail?this._head=this._tail=t:this._tail.next=this._tail=t,this._length++}shift(){if(null===this._head)return;const{value:e,next:t}=this._head;return this._head=t,null===t&&(this._tail=null),this._length--,e}clear(){this._length=0,this._head=this._tail=null}}},13805:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createTaskScheduler=void 0;const r=Promise.resolve(void 0);t.createTaskScheduler=function(){const e="function"==typeof queueMicrotask?queueMicrotask:e=>r.then(e),t="function"==typeof setImmediate?setImmediate:e=>setTimeout(e,0);let n=0,i=null;return r=>{null!==i?i.push(r):++n<100?e(r):(i=[r],t((()=>{for(const t of i)e(t);i=null,n=0})))}}},70463:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LRUCache=void 0;const r="object"==typeof performance&&performance&&"function"==typeof performance.now?performance:Date,n=new Set,i="object"==typeof process&&process?process:{},a=(e,t,r,n)=>{"function"==typeof i.emitWarning?i.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)};let o=globalThis.AbortController,s=globalThis.AbortSignal;if(void 0===o){s=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(e,t){this._onabort.push(t)}},o=class{constructor(){t()}signal=new s;abort(e){if(!this.signal.aborted){this.signal.reason=e,this.signal.aborted=!0;for(const t of this.signal._onabort)t(e);this.signal.onabort?.(e)}}};let e="1"!==i.env?.LRU_CACHE_IGNORE_AC_WARNING;const t=()=>{e&&(e=!1,a("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}Symbol("type");const c=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),u=e=>c(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?l:null:null;class l extends Array{constructor(e){super(e),this.fill(0)}}class d{heap;length;static#e=!1;static create(e){const t=u(e);if(!t)return[];d.#e=!0;const r=new d(e,t);return d.#e=!1,r}constructor(e,t){if(!d.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new t(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}}class h{#t;#r;#n;#i;#a;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#s;#c;#u;#l;#d;#h;#p;#f;#y;#g;#m;#b;#v;#_;#w;#T;static unsafeExposeInternals(e){return{starts:e.#b,ttls:e.#v,sizes:e.#m,keyMap:e.#c,keyList:e.#u,valList:e.#l,next:e.#d,prev:e.#h,get head(){return e.#p},get tail(){return e.#f},free:e.#y,isBackgroundFetch:t=>e.#S(t),backgroundFetch:(t,r,n,i)=>e.#O(t,r,n,i),moveToTail:t=>e.#E(t),indexes:t=>e.#x(t),rindexes:t=>e.#A(t),isStale:t=>e.#R(t)}}get max(){return this.#t}get maxSize(){return this.#r}get calculatedSize(){return this.#s}get size(){return this.#o}get fetchMethod(){return this.#a}get dispose(){return this.#n}get disposeAfter(){return this.#i}constructor(e){const{max:t=0,ttl:r,ttlResolution:i=1,ttlAutopurge:o,updateAgeOnGet:s,updateAgeOnHas:l,allowStale:p,dispose:f,disposeAfter:y,noDisposeOnSet:g,noUpdateTTL:m,maxSize:b=0,maxEntrySize:v=0,sizeCalculation:_,fetchMethod:w,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:S,allowStaleOnFetchRejection:O,allowStaleOnFetchAbort:E,ignoreFetchAbort:x}=e;if(0!==t&&!c(t))throw new TypeError("max option must be a nonnegative integer");const A=t?u(t):Array;if(!A)throw new Error("invalid max value: "+t);if(this.#t=t,this.#r=b,this.maxEntrySize=v||this.#r,this.sizeCalculation=_,this.sizeCalculation){if(!this.#r&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if("function"!=typeof this.sizeCalculation)throw new TypeError("sizeCalculation set to non-function")}if(void 0!==w&&"function"!=typeof w)throw new TypeError("fetchMethod must be a function if specified");if(this.#a=w,this.#w=!!w,this.#c=new Map,this.#u=new Array(t).fill(void 0),this.#l=new Array(t).fill(void 0),this.#d=new A(t),this.#h=new A(t),this.#p=0,this.#f=0,this.#y=d.create(t),this.#o=0,this.#s=0,"function"==typeof f&&(this.#n=f),"function"==typeof y?(this.#i=y,this.#g=[]):(this.#i=void 0,this.#g=void 0),this.#_=!!this.#n,this.#T=!!this.#i,this.noDisposeOnSet=!!g,this.noUpdateTTL=!!m,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!O,this.allowStaleOnFetchAbort=!!E,this.ignoreFetchAbort=!!x,0!==this.maxEntrySize){if(0!==this.#r&&!c(this.#r))throw new TypeError("maxSize must be a positive integer if specified");if(!c(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#I()}if(this.allowStale=!!p,this.noDeleteOnStaleGet=!!S,this.updateAgeOnGet=!!s,this.updateAgeOnHas=!!l,this.ttlResolution=c(i)||0===i?i:1,this.ttlAutopurge=!!o,this.ttl=r||0,this.ttl){if(!c(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(0===this.#t&&0===this.ttl&&0===this.#r)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#t&&!this.#r){const e="LRU_CACHE_UNBOUNDED";(e=>!n.has(e))(e)&&(n.add(e),a("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",e,h))}}getRemainingTTL(e){return this.#c.has(e)?1/0:0}#P(){const e=new l(this.#t),t=new l(this.#t);this.#v=e,this.#b=t,this.#D=(n,i,a=r.now())=>{if(t[n]=0!==i?a:0,e[n]=i,0!==i&&this.ttlAutopurge){const e=setTimeout((()=>{this.#R(n)&&this.delete(this.#u[n])}),i+1);e.unref&&e.unref()}},this.#N=n=>{t[n]=0!==e[n]?r.now():0},this.#j=(r,a)=>{if(e[a]){const o=e[a],s=t[a];r.ttl=o,r.start=s,r.now=n||i();const c=r.now-s;r.remainingTTL=o-c}};let n=0;const i=()=>{const e=r.now();if(this.ttlResolution>0){n=e;const t=setTimeout((()=>n=0),this.ttlResolution);t.unref&&t.unref()}return e};this.getRemainingTTL=r=>{const a=this.#c.get(r);if(void 0===a)return 0;const o=e[a],s=t[a];return 0===o||0===s?1/0:o-((n||i())-s)},this.#R=r=>0!==e[r]&&0!==t[r]&&(n||i())-t[r]>e[r]}#N=()=>{};#j=()=>{};#D=()=>{};#R=()=>!1;#I(){const e=new l(this.#t);this.#s=0,this.#m=e,this.#C=t=>{this.#s-=e[t],e[t]=0},this.#M=(e,t,r,n)=>{if(this.#S(t))return 0;if(!c(r)){if(!n)throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");if("function"!=typeof n)throw new TypeError("sizeCalculation must be a function");if(r=n(t,e),!c(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return r},this.#L=(t,r,n)=>{if(e[t]=r,this.#r){const r=this.#r-e[t];for(;this.#s>r;)this.#k(!0)}this.#s+=e[t],n&&(n.entrySize=r,n.totalCalculatedSize=this.#s)}}#C=e=>{};#L=(e,t,r)=>{};#M=(e,t,r,n)=>{if(r||n)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#x({allowStale:e=this.allowStale}={}){if(this.#o)for(let t=this.#f;this.#F(t)&&(!e&&this.#R(t)||(yield t),t!==this.#p);)t=this.#h[t]}*#A({allowStale:e=this.allowStale}={}){if(this.#o)for(let t=this.#p;this.#F(t)&&(!e&&this.#R(t)||(yield t),t!==this.#f);)t=this.#d[t]}#F(e){return void 0!==e&&this.#c.get(this.#u[e])===e}*entries(){for(const e of this.#x())void 0===this.#l[e]||void 0===this.#u[e]||this.#S(this.#l[e])||(yield[this.#u[e],this.#l[e]])}*rentries(){for(const e of this.#A())void 0===this.#l[e]||void 0===this.#u[e]||this.#S(this.#l[e])||(yield[this.#u[e],this.#l[e]])}*keys(){for(const e of this.#x()){const t=this.#u[e];void 0===t||this.#S(this.#l[e])||(yield t)}}*rkeys(){for(const e of this.#A()){const t=this.#u[e];void 0===t||this.#S(this.#l[e])||(yield t)}}*values(){for(const e of this.#x())void 0===this.#l[e]||this.#S(this.#l[e])||(yield this.#l[e])}*rvalues(){for(const e of this.#A())void 0===this.#l[e]||this.#S(this.#l[e])||(yield this.#l[e])}[Symbol.iterator](){return this.entries()}find(e,t={}){for(const r of this.#x()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;if(void 0!==i&&e(i,this.#u[r],this))return this.get(this.#u[r],t)}}forEach(e,t=this){for(const r of this.#x()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;void 0!==i&&e.call(t,i,this.#u[r],this)}}rforEach(e,t=this){for(const r of this.#A()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;void 0!==i&&e.call(t,i,this.#u[r],this)}}purgeStale(){let e=!1;for(const t of this.#A({allowStale:!0}))this.#R(t)&&(this.delete(this.#u[t]),e=!0);return e}dump(){const e=[];for(const t of this.#x({allowStale:!0})){const n=this.#u[t],i=this.#l[t],a=this.#S(i)?i.__staleWhileFetching:i;if(void 0===a||void 0===n)continue;const o={value:a};if(this.#v&&this.#b){o.ttl=this.#v[t];const e=r.now()-this.#b[t];o.start=Math.floor(Date.now()-e)}this.#m&&(o.size=this.#m[t]),e.unshift([n,o])}return e}load(e){this.clear();for(const[t,n]of e){if(n.start){const e=Date.now()-n.start;n.start=r.now()-e}this.set(t,n.value,n)}}set(e,t,r={}){if(void 0===t)return this.delete(e),this;const{ttl:n=this.ttl,start:i,noDisposeOnSet:a=this.noDisposeOnSet,sizeCalculation:o=this.sizeCalculation,status:s}=r;let{noUpdateTTL:c=this.noUpdateTTL}=r;const u=this.#M(e,t,r.size||0,o);if(this.maxEntrySize&&u>this.maxEntrySize)return s&&(s.set="miss",s.maxEntrySizeExceeded=!0),this.delete(e),this;let l=0===this.#o?void 0:this.#c.get(e);if(void 0===l)l=0===this.#o?this.#f:0!==this.#y.length?this.#y.pop():this.#o===this.#t?this.#k(!1):this.#o,this.#u[l]=e,this.#l[l]=t,this.#c.set(e,l),this.#d[this.#f]=l,this.#h[l]=this.#f,this.#f=l,this.#o++,this.#L(l,u,s),s&&(s.set="add"),c=!1;else{this.#E(l);const r=this.#l[l];if(t!==r){if(this.#w&&this.#S(r)){r.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:t}=r;void 0===t||a||(this.#_&&this.#n?.(t,e,"set"),this.#T&&this.#g?.push([t,e,"set"]))}else a||(this.#_&&this.#n?.(r,e,"set"),this.#T&&this.#g?.push([r,e,"set"]));if(this.#C(l),this.#L(l,u,s),this.#l[l]=t,s){s.set="replace";const e=r&&this.#S(r)?r.__staleWhileFetching:r;void 0!==e&&(s.oldValue=e)}}else s&&(s.set="update")}if(0===n||this.#v||this.#P(),this.#v&&(c||this.#D(l,n,i),s&&this.#j(s,l)),!a&&this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}return this}pop(){try{for(;this.#o;){const e=this.#l[this.#p];if(this.#k(!0),this.#S(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(void 0!==e)return e}}finally{if(this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}}}#k(e){const t=this.#p,r=this.#u[t],n=this.#l[t];return this.#w&&this.#S(n)?n.__abortController.abort(new Error("evicted")):(this.#_||this.#T)&&(this.#_&&this.#n?.(n,r,"evict"),this.#T&&this.#g?.push([n,r,"evict"])),this.#C(t),e&&(this.#u[t]=void 0,this.#l[t]=void 0,this.#y.push(t)),1===this.#o?(this.#p=this.#f=0,this.#y.length=0):this.#p=this.#d[t],this.#c.delete(r),this.#o--,t}has(e,t={}){const{updateAgeOnHas:r=this.updateAgeOnHas,status:n}=t,i=this.#c.get(e);if(void 0!==i){const e=this.#l[i];if(this.#S(e)&&void 0===e.__staleWhileFetching)return!1;if(!this.#R(i))return r&&this.#N(i),n&&(n.has="hit",this.#j(n,i)),!0;n&&(n.has="stale",this.#j(n,i))}else n&&(n.has="miss");return!1}peek(e,t={}){const{allowStale:r=this.allowStale}=t,n=this.#c.get(e);if(void 0!==n&&(r||!this.#R(n))){const e=this.#l[n];return this.#S(e)?e.__staleWhileFetching:e}}#O(e,t,r,n){const i=void 0===t?void 0:this.#l[t];if(this.#S(i))return i;const a=new o,{signal:s}=r;s?.addEventListener("abort",(()=>a.abort(s.reason)),{signal:a.signal});const c={signal:a.signal,options:r,context:n},u=(n,i=!1)=>{const{aborted:o}=a.signal,s=r.ignoreFetchAbort&&void 0!==n;if(r.status&&(o&&!i?(r.status.fetchAborted=!0,r.status.fetchError=a.signal.reason,s&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),o&&!s&&!i)return l(a.signal.reason);const u=d;return this.#l[t]===d&&(void 0===n?u.__staleWhileFetching?this.#l[t]=u.__staleWhileFetching:this.delete(e):(r.status&&(r.status.fetchUpdated=!0),this.set(e,n,c.options))),n},l=n=>{const{aborted:i}=a.signal,o=i&&r.allowStaleOnFetchAbort,s=o||r.allowStaleOnFetchRejection,c=s||r.noDeleteOnFetchRejection,u=d;if(this.#l[t]===d&&(c&&void 0!==u.__staleWhileFetching?o||(this.#l[t]=u.__staleWhileFetching):this.delete(e)),s)return r.status&&void 0!==u.__staleWhileFetching&&(r.status.returnedStale=!0),u.__staleWhileFetching;if(u.__returned===u)throw n};r.status&&(r.status.fetchDispatched=!0);const d=new Promise(((t,n)=>{const o=this.#a?.(e,i,c);o&&o instanceof Promise&&o.then((e=>t(void 0===e?void 0:e)),n),a.signal.addEventListener("abort",(()=>{r.ignoreFetchAbort&&!r.allowStaleOnFetchAbort||(t(void 0),r.allowStaleOnFetchAbort&&(t=e=>u(e,!0)))}))})).then(u,(e=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=e),l(e)))),h=Object.assign(d,{__abortController:a,__staleWhileFetching:i,__returned:void 0});return void 0===t?(this.set(e,h,{...c.options,status:void 0}),t=this.#c.get(e)):this.#l[t]=h,h}#S(e){if(!this.#w)return!1;const t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof o}async fetch(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:s=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:d=this.allowStaleOnFetchRejection,ignoreFetchAbort:h=this.ignoreFetchAbort,allowStaleOnFetchAbort:p=this.allowStaleOnFetchAbort,context:f,forceRefresh:y=!1,status:g,signal:m}=t;if(!this.#w)return g&&(g.fetch="get"),this.get(e,{allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:i,status:g});const b={allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:i,ttl:a,noDisposeOnSet:o,size:s,sizeCalculation:c,noUpdateTTL:u,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:d,allowStaleOnFetchAbort:p,ignoreFetchAbort:h,status:g,signal:m};let v=this.#c.get(e);if(void 0===v){g&&(g.fetch="miss");const t=this.#O(e,v,b,f);return t.__returned=t}{const t=this.#l[v];if(this.#S(t)){const e=r&&void 0!==t.__staleWhileFetching;return g&&(g.fetch="inflight",e&&(g.returnedStale=!0)),e?t.__staleWhileFetching:t.__returned=t}const i=this.#R(v);if(!y&&!i)return g&&(g.fetch="hit"),this.#E(v),n&&this.#N(v),g&&this.#j(g,v),t;const a=this.#O(e,v,b,f),o=void 0!==a.__staleWhileFetching&&r;return g&&(g.fetch=i?"stale":"refresh",o&&i&&(g.returnedStale=!0)),o?a.__staleWhileFetching:a.__returned=a}}get(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,status:a}=t,o=this.#c.get(e);if(void 0!==o){const t=this.#l[o],s=this.#S(t);return a&&this.#j(a,o),this.#R(o)?(a&&(a.get="stale"),s?(a&&r&&void 0!==t.__staleWhileFetching&&(a.returnedStale=!0),r?t.__staleWhileFetching:void 0):(i||this.delete(e),a&&r&&(a.returnedStale=!0),r?t:void 0)):(a&&(a.get="hit"),s?t.__staleWhileFetching:(this.#E(o),n&&this.#N(o),t))}a&&(a.get="miss")}#B(e,t){this.#h[t]=e,this.#d[e]=t}#E(e){e!==this.#f&&(e===this.#p?this.#p=this.#d[e]:this.#B(this.#h[e],this.#d[e]),this.#B(this.#f,e),this.#f=e)}delete(e){let t=!1;if(0!==this.#o){const r=this.#c.get(e);if(void 0!==r)if(t=!0,1===this.#o)this.clear();else{this.#C(r);const t=this.#l[r];this.#S(t)?t.__abortController.abort(new Error("deleted")):(this.#_||this.#T)&&(this.#_&&this.#n?.(t,e,"delete"),this.#T&&this.#g?.push([t,e,"delete"])),this.#c.delete(e),this.#u[r]=void 0,this.#l[r]=void 0,r===this.#f?this.#f=this.#h[r]:r===this.#p?this.#p=this.#d[r]:(this.#d[this.#h[r]]=this.#d[r],this.#h[this.#d[r]]=this.#h[r]),this.#o--,this.#y.push(r)}}if(this.#T&&this.#g?.length){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}return t}clear(){for(const e of this.#A({allowStale:!0})){const t=this.#l[e];if(this.#S(t))t.__abortController.abort(new Error("deleted"));else{const r=this.#u[e];this.#_&&this.#n?.(t,r,"delete"),this.#T&&this.#g?.push([t,r,"delete"])}}if(this.#c.clear(),this.#l.fill(void 0),this.#u.fill(void 0),this.#v&&this.#b&&(this.#v.fill(0),this.#b.fill(0)),this.#m&&this.#m.fill(0),this.#p=0,this.#f=0,this.#y.length=0,this.#s=0,this.#o=0,this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}}}t.LRUCache=h},3048:e=>{"use strict";e.exports=JSON.parse('{"http://schema.org/":{"properties":{"additionalType":{"subPropertyOf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}}},"http://microformats.org/profile/hcard":{}}')},44299:e=>{"use strict";e.exports=JSON.parse('{"@context":{"alternate":"http://www.w3.org/1999/xhtml/vocab#alternate","appendix":"http://www.w3.org/1999/xhtml/vocab#appendix","cite":"http://www.w3.org/1999/xhtml/vocab#cite","bookmark":"http://www.w3.org/1999/xhtml/vocab#bookmark","contents":"http://www.w3.org/1999/xhtml/vocab#contents","chapter":"http://www.w3.org/1999/xhtml/vocab#chapter","copyright":"http://www.w3.org/1999/xhtml/vocab#copyright","first":"http://www.w3.org/1999/xhtml/vocab#first","glossary":"http://www.w3.org/1999/xhtml/vocab#glossary","help":"http://www.w3.org/1999/xhtml/vocab#help","icon":"http://www.w3.org/1999/xhtml/vocab#icon","index":"http://www.w3.org/1999/xhtml/vocab#index","last":"http://www.w3.org/1999/xhtml/vocab#last","license":"http://www.w3.org/1999/xhtml/vocab#license","meta":"http://www.w3.org/1999/xhtml/vocab#meta","next":"http://www.w3.org/1999/xhtml/vocab#next","prev":"http://www.w3.org/1999/xhtml/vocab#prev","previous":"http://www.w3.org/1999/xhtml/vocab#previous","section":"http://www.w3.org/1999/xhtml/vocab#section","start":"http://www.w3.org/1999/xhtml/vocab#start","stylesheet":"http://www.w3.org/1999/xhtml/vocab#stylesheet","subsection":"http://www.w3.org/1999/xhtml/vocab#subsection","top":"http://www.w3.org/1999/xhtml/vocab#top","up":"http://www.w3.org/1999/xhtml/vocab#up","p3pv1":"http://www.w3.org/1999/xhtml/vocab#p3pv1"}}')},59261:e=>{"use strict";e.exports=JSON.parse('{"@context":{"as":"https://www.w3.org/ns/activitystreams#","cat":"http://www.w3.org/ns/dcat#","cc":"http://creativecommons.org/ns#","cnt":"http://www.w3.org/2008/content#","csvw":"http://www.w3.org/ns/csvw#","ctag":"http://commontag.org/ns#","dc":"http://purl.org/dc/terms/","dc11":"http://purl.org/dc/elements/1.1/","dcat":"http://www.w3.org/ns/dcat#","dcterms":"http://purl.org/dc/terms/","dqv":"http://www.w3.org/ns/dqv#","duv":"https://www.w3.org/TR/vocab-duv#","earl":"http://www.w3.org/ns/earl#","foaf":"http://xmlns.com/foaf/0.1/","gldp":"http://www.w3.org/ns/people#","gr":"http://purl.org/goodrelations/v1#","grddl":"http://www.w3.org/2003/g/data-view#","ht":"http://www.w3.org/2006/http#","ical":"http://www.w3.org/2002/12/cal/icaltzd#","ldp":"http://www.w3.org/ns/ldp#","ma":"http://www.w3.org/ns/ma-ont#","oa":"http://www.w3.org/ns/oa#","odrl":"http://www.w3.org/ns/odrl/2/","og":"http://ogp.me/ns#","org":"http://www.w3.org/ns/org#","owl":"http://www.w3.org/2002/07/owl#","prov":"http://www.w3.org/ns/prov#","ptr":"http://www.w3.org/2009/pointers#","qb":"http://purl.org/linked-data/cube#","rev":"http://purl.org/stuff/rev#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfa":"http://www.w3.org/ns/rdfa#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","rif":"http://www.w3.org/2007/rif#","rr":"http://www.w3.org/ns/r2rml#","schema":"http://schema.org/","sd":"http://www.w3.org/ns/sparql-service-description#","sioc":"http://rdfs.org/sioc/ns#","skos":"http://www.w3.org/2004/02/skos/core#","skosxl":"http://www.w3.org/2008/05/skos-xl#","ssn":"http://www.w3.org/ns/ssn/","sosa":"http://www.w3.org/ns/sosa/","time":"http://www.w3.org/2006/time#","v":"http://rdf.data-vocabulary.org/#","vcard":"http://www.w3.org/2006/vcard/ns#","void":"http://rdfs.org/ns/void#","wdr":"http://www.w3.org/2007/05/powder#","wdrs":"http://www.w3.org/2007/05/powder-s#","xhv":"http://www.w3.org/1999/xhtml/vocab#","xml":"http://www.w3.org/XML/1998/namespace","xsd":"http://www.w3.org/2001/XMLSchema#","describedby":"http://www.w3.org/2007/05/powder-s#describedby","license":"http://www.w3.org/1999/xhtml/vocab#license","role":"http://www.w3.org/1999/xhtml/vocab#role"}}')}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n=r(2159);Comunica=n})(); +var Comunica;(()=>{var e={27609:(e,t,r)=>{var{Buffer:n}=r(48834),a={},o=a.LEFT_BRACE=1,s=a.RIGHT_BRACE=2,c=a.LEFT_BRACKET=3,u=a.RIGHT_BRACKET=4,l=a.COLON=5,d=a.COMMA=6,h=a.TRUE=7,p=a.FALSE=8,f=a.NULL=9,y=a.STRING=10,g=a.NUMBER=11,m=a.START=17,b=a.STOP=18,v=a.TRUE1=33,_=a.TRUE2=34,w=a.TRUE3=35,T=a.FALSE1=49,S=a.FALSE2=50,O=a.FALSE3=51,E=a.FALSE4=52,x=a.NULL1=65,A=a.NULL2=66,R=a.NULL3=67,I=a.NUMBER1=81,P=a.NUMBER3=83,D=a.STRING1=97,N=a.STRING2=98,j=a.STRING3=99,C=a.STRING4=100,M=a.STRING5=101,L=a.STRING6=102,k=a.VALUE=113,F=a.KEY=114,B=a.OBJECT=129,U=a.ARRAY=130,q="\\".charCodeAt(0),V="/".charCodeAt(0),Q="\b".charCodeAt(0),$="\f".charCodeAt(0),H="\n".charCodeAt(0),G="\r".charCodeAt(0),z="\t".charCodeAt(0),K=65536;function X(e){return n.alloc?n.alloc(e):new n(e)}function W(){this.tState=m,this.value=void 0,this.string=void 0,this.stringBuffer=X(K),this.stringBufferOffset=0,this.unicode=void 0,this.highSurrogate=void 0,this.key=void 0,this.mode=void 0,this.stack=[],this.state=k,this.bytes_remaining=0,this.bytes_in_sequence=0,this.temp_buffs={2:X(2),3:X(3),4:X(4)},this.offset=-1}W.toknam=function(e){for(var t=Object.keys(a),r=0,n=t.length;r=K&&(this.string+=this.stringBuffer.toString("utf8"),this.stringBufferOffset=0),this.stringBuffer[this.stringBufferOffset++]=e},J.appendStringBuf=function(e,t,r){var n=e.length;"number"==typeof t&&(n="number"==typeof r?r<0?e.length-t+r:r-t:e.length-t),n<0&&(n=0),this.stringBufferOffset+n>K&&(this.string+=this.stringBuffer.toString("utf8",0,this.stringBufferOffset),this.stringBufferOffset=0),e.copy(this.stringBuffer,this.stringBufferOffset,t,r),this.stringBufferOffset+=n},J.write=function(e){var t;"string"==typeof e&&(e=new n(e));for(var r=0,i=e.length;r=48&&t<64)this.string=String.fromCharCode(t),this.tState=P;else if(32!==t&&9!==t&&10!==t&&13!==t)return this.charError(e,r)}else if(this.tState===D)if(t=e[r],this.bytes_remaining>0){for(var a=0;a=128){if(t<=193||t>244)return this.onError(new Error("Invalid UTF-8 character at position "+r+" in state "+W.toknam(this.tState)));if(t>=194&&t<=223&&(this.bytes_in_sequence=2),t>=224&&t<=239&&(this.bytes_in_sequence=3),t>=240&&t<=244&&(this.bytes_in_sequence=4),this.bytes_in_sequence+r>e.length){for(var g=0;g<=e.length-1-r;g++)this.temp_buffs[this.bytes_in_sequence][g]=e[r+g];this.bytes_remaining=r+this.bytes_in_sequence-e.length,r=e.length-1}else this.appendStringBuf(e,r,r+this.bytes_in_sequence),r=r+this.bytes_in_sequence-1}else if(34===t)this.tState=m,this.string+=this.stringBuffer.toString("utf8",0,this.stringBufferOffset),this.stringBufferOffset=0,this.onToken(y,this.string),this.offset+=n.byteLength(this.string,"utf8")+1,this.string=void 0;else if(92===t)this.tState=N;else{if(!(t>=32))return this.charError(e,r);this.appendStringChar(t)}else if(this.tState===N)if(34===(t=e[r]))this.appendStringChar(t),this.tState=D;else if(92===t)this.appendStringChar(q),this.tState=D;else if(47===t)this.appendStringChar(V),this.tState=D;else if(98===t)this.appendStringChar(Q),this.tState=D;else if(102===t)this.appendStringChar($),this.tState=D;else if(110===t)this.appendStringChar(H),this.tState=D;else if(114===t)this.appendStringChar(G),this.tState=D;else if(116===t)this.appendStringChar(z),this.tState=D;else{if(117!==t)return this.charError(e,r);this.unicode="",this.tState=j}else if(this.tState===j||this.tState===C||this.tState===M||this.tState===L){if(!((t=e[r])>=48&&t<64||t>64&&t<=70||t>96&&t<=102))return this.charError(e,r);if(this.unicode+=String.fromCharCode(t),this.tState++===L){var b=parseInt(this.unicode,16);this.unicode=void 0,void 0!==this.highSurrogate&&b>=56320&&b<57344?(this.appendStringBuf(new n(String.fromCharCode(this.highSurrogate,b))),this.highSurrogate=void 0):void 0===this.highSurrogate&&b>=55296&&b<56320?this.highSurrogate=b:(void 0!==this.highSurrogate&&(this.appendStringBuf(new n(String.fromCharCode(this.highSurrogate))),this.highSurrogate=void 0),this.appendStringBuf(new n(String.fromCharCode(b)))),this.tState=D}}else if(this.tState===I||this.tState===P)switch(t=e[r]){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 46:case 101:case 69:case 43:case 45:this.string+=String.fromCharCode(t),this.tState=P;break;default:this.tState=m;var k=this.numberReviver(this.string);if(k)return k;this.offset+=this.string.length-1,this.string=void 0,r--}else if(this.tState===v){if(114!==e[r])return this.charError(e,r);this.tState=_}else if(this.tState===_){if(117!==e[r])return this.charError(e,r);this.tState=w}else if(this.tState===w){if(101!==e[r])return this.charError(e,r);this.tState=m,this.onToken(h,!0),this.offset+=3}else if(this.tState===T){if(97!==e[r])return this.charError(e,r);this.tState=S}else if(this.tState===S){if(108!==e[r])return this.charError(e,r);this.tState=O}else if(this.tState===O){if(115!==e[r])return this.charError(e,r);this.tState=E}else if(this.tState===E){if(101!==e[r])return this.charError(e,r);this.tState=m,this.onToken(p,!1),this.offset+=4}else if(this.tState===x){if(117!==e[r])return this.charError(e,r);this.tState=A}else if(this.tState===A){if(108!==e[r])return this.charError(e,r);this.tState=R}else if(this.tState===R){if(108!==e[r])return this.charError(e,r);this.tState=m,this.onToken(f,null),this.offset+=3}},J.onToken=function(e,t){},J.parseError=function(e,t){this.tState=b,this.onError(new Error("Unexpected "+W.toknam(e)+(t?"("+JSON.stringify(t)+")":"")+" in state "+W.toknam(this.state)))},J.push=function(){this.stack.push({value:this.value,key:this.key,mode:this.mode})},J.pop=function(){var e=this.value,t=this.stack.pop();this.value=t.value,this.key=t.key,this.mode=t.mode,this.emit(e),this.mode||(this.state=k)},J.emit=function(e){this.mode&&(this.state=d),this.onValue(e)},J.onValue=function(e){},J.onToken=function(e,t){if(this.state===k)if(e===y||e===g||e===h||e===p||e===f)this.value&&(this.value[this.key]=t),this.emit(t);else if(e===o)this.push(),this.value?this.value=this.value[this.key]={}:this.value={},this.key=void 0,this.state=F,this.mode=B;else if(e===c)this.push(),this.value?this.value=this.value[this.key]=[]:this.value=[],this.key=0,this.mode=U,this.state=k;else if(e===s){if(this.mode!==B)return this.parseError(e,t);this.pop()}else{if(e!==u)return this.parseError(e,t);if(this.mode!==U)return this.parseError(e,t);this.pop()}else if(this.state===F)if(e===y)this.key=t,this.state=l;else{if(e!==s)return this.parseError(e,t);this.pop()}else if(this.state===l){if(e!==l)return this.parseError(e,t);this.state=k}else{if(this.state!==d)return this.parseError(e,t);if(e===d)this.mode===U?(this.key++,this.state=k):this.mode===B&&(this.state=F);else{if(!(e===u&&this.mode===U||e===s&&this.mode===B))return this.parseError(e,t);this.pop()}}},J.numberReviver=function(e){var t=Number(e);if(isNaN(t))return this.charError(buffer,i);e.match(/[0-9]+/)==e&&t.toString()!=e?this.onToken(y,e):this.onToken(g,t)},W.C=a,e.exports=W},54439:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fragment=void 0,t.fragment=function(e){let t=function(e){let t=e;(t.endsWith("/")||t.endsWith("#"))&&(t=t.slice(0,t.length-1));const r=[];t.lastIndexOf("/")>0&&r.push(t.lastIndexOf("/")),t.lastIndexOf("#")>0&&r.push(t.lastIndexOf("#"));const n=Math.max(...r);return t.slice(n+1)}(e);return t=t?function(e){var t;const r=null===(t=e.split(/[^a-z0-9]+/gi).filter((e=>""!==e)).map((e=>e[0].toUpperCase()+e.slice(1))).join("").match(/[a-z][a-z0-9]+/gi))||void 0===t?void 0:t[0];return void 0===r?void 0:r[0].toLowerCase()+r.slice(1)}(t):void 0,t||"v"}},20098:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupAllPrefixes=t.prefixToUri=t.uriToPrefix=void 0;const i=r(54439),a=r(51807);t.uriToPrefix=function(e,t){return n(this,void 0,void 0,(function*(){let r;try{r=yield(0,a.lookupPrefix)(e,t)}catch(n){(null==t?void 0:t.mintOnUnknown)&&(r=(0,i.fragment)(e).slice(0,4))}if(void 0!==r&&"object"==typeof(null==t?void 0:t.existingPrefixes)&&r in t.existingPrefixes){let e=0;for(;`${r}${e}`in t.existingPrefixes;)e+=1;r=`${r}${e}`}return r}))},t.prefixToUri=function(e,t){return n(this,void 0,void 0,(function*(){try{return yield(0,a.lookupUri)(e,t)}catch(e){return}}))};var o=r(51807);Object.defineProperty(t,"lookupAllPrefixes",{enumerable:!0,get:function(){return o.lookupAllPrefixes}})},55889:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.fetchContext=t.fetchJson=void 0;const i=r(80182);function a(e,t){var r;return n(this,void 0,void 0,(function*(){const n=null!==(r=null==t?void 0:t.fetch)&&void 0!==r?r:i.fetch;return(yield n(e)).json()}))}t.fetchJson=a,t.fetchContext=function(e,t){return n(this,void 0,void 0,(function*(){return(yield a(e,t))["@context"]}))}},51807:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(14779),t),i(r(1843),t),i(r(2034),t)},2034:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupAllPrefixes=void 0;const i=r(55889);t.lookupAllPrefixes=function(e){return n(this,void 0,void 0,(function*(){return(0,i.fetchContext)("https://prefix.cc/context",e)}))}},14779:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupUri=void 0;const i=r(55889);t.lookupUri=function(e,t){return n(this,void 0,void 0,(function*(){const r=(yield(0,i.fetchContext)(`https://prefix.cc/${e}.file.jsonld`,t))[e];if("string"!=typeof r)throw new Error(`Expected uri to be a string, received: ${r} of type ${typeof r}`);return r}))}},1843:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.lookupPrefix=void 0;const i=r(55889);t.lookupPrefix=function(e,t){return n(this,void 0,void 0,(function*(){const r=new URL("https://prefix.cc/reverse");r.searchParams.append("uri",e),r.searchParams.append("format","jsonld");const n=Object.keys(yield(0,i.fetchContext)(r,t));if(0===n.length)throw new Error("No prefixes returned");return n[0]}))}},80182:function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(t=i.fetch).default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t},6928:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SaxesParser=t.EVENTS=void 0;const n=r(53291),i=r(90183),a=r(99977);var o=n.isS,s=n.isChar,c=n.isNameStartChar,u=n.isNameChar,l=n.S_LIST,d=n.NAME_RE,h=i.isChar,p=a.isNCNameStartChar,f=a.isNCNameChar,y=a.NC_NAME_RE;const g="http://www.w3.org/XML/1998/namespace",m="http://www.w3.org/2000/xmlns/",b={__proto__:null,xml:g,xmlns:m},v={__proto__:null,amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},_=-1,w=-2,T=13,S=33,O=10,E=60,x=61,A=62,R=63,I=93,P=e=>34===e||39===e,D=[34,39],N=[...D,91,A],j=[...D,E,I],C=[x,R,...l],M=[...l,A,38,E];function L(e,t,r){switch(t){case"xml":r!==g&&e.fail(`xml prefix must be bound to ${g}.`);break;case"xmlns":r!==m&&e.fail(`xmlns prefix must be bound to ${m}.`)}switch(r){case m:e.fail(""===t?`the default namespace may not be set to ${r}.`:`may not assign a prefix (even "xmlns") to the URI ${m}.`);break;case g:switch(t){case"xml":break;case"":e.fail(`the default namespace may not be set to ${r}.`);break;default:e.fail("may not assign the xml namespace to another prefix.")}}}const k=e=>y.test(e),F=e=>d.test(e);t.EVENTS=["xmldecl","text","processinginstruction","doctype","comment","opentagstart","attribute","opentag","closetag","cdata","error","end","ready"];const B={xmldecl:"xmldeclHandler",text:"textHandler",processinginstruction:"piHandler",doctype:"doctypeHandler",comment:"commentHandler",opentagstart:"openTagStartHandler",attribute:"attributeHandler",opentag:"openTagHandler",closetag:"closeTagHandler",cdata:"cdataHandler",error:"errorHandler",end:"endHandler",ready:"readyHandler"};t.SaxesParser=class{get closed(){return this._closed}constructor(e){this.opt=null!=e?e:{},this.fragmentOpt=!!this.opt.fragment;const t=this.xmlnsOpt=!!this.opt.xmlns;if(this.trackPosition=!1!==this.opt.position,this.fileName=this.opt.fileName,t){this.nameStartCheck=p,this.nameCheck=f,this.isName=k,this.processAttribs=this.processAttribsNS,this.pushAttrib=this.pushAttribNS,this.ns=Object.assign({__proto__:null},b);const e=this.opt.additionalNamespaces;null!=e&&(function(e,t){for(const r of Object.keys(t))L(e,r,t[r])}(this,e),Object.assign(this.ns,e))}else this.nameStartCheck=c,this.nameCheck=u,this.isName=F,this.processAttribs=this.processAttribsPlain,this.pushAttrib=this.pushAttribPlain;this.stateTable=[this.sBegin,this.sBeginWhitespace,this.sDoctype,this.sDoctypeQuote,this.sDTD,this.sDTDQuoted,this.sDTDOpenWaka,this.sDTDOpenWakaBang,this.sDTDComment,this.sDTDCommentEnding,this.sDTDCommentEnded,this.sDTDPI,this.sDTDPIEnding,this.sText,this.sEntity,this.sOpenWaka,this.sOpenWakaBang,this.sComment,this.sCommentEnding,this.sCommentEnded,this.sCData,this.sCDataEnding,this.sCDataEnding2,this.sPIFirstChar,this.sPIRest,this.sPIBody,this.sPIEnding,this.sXMLDeclNameStart,this.sXMLDeclName,this.sXMLDeclEq,this.sXMLDeclValueStart,this.sXMLDeclValue,this.sXMLDeclSeparator,this.sXMLDeclEnding,this.sOpenTag,this.sOpenTagSlash,this.sAttrib,this.sAttribName,this.sAttribNameSawWhite,this.sAttribValue,this.sAttribValueQuoted,this.sAttribValueClosed,this.sAttribValueUnquoted,this.sCloseTag,this.sCloseTagSawWhite],this._init()}_init(){var e;this.openWakaBang="",this.text="",this.name="",this.piTarget="",this.entity="",this.q=null,this.tags=[],this.tag=null,this.topNS=null,this.chunk="",this.chunkPosition=0,this.i=0,this.prevI=0,this.carriedFromPrevious=void 0,this.forbiddenState=0,this.attribList=[];const{fragmentOpt:t}=this;this.state=t?T:0,this.reportedTextBeforeRoot=this.reportedTextAfterRoot=this.closedRoot=this.sawRoot=t,this.xmlDeclPossible=!t,this.xmlDeclExpects=["version"],this.entityReturnState=void 0;let{defaultXMLVersion:r}=this.opt;if(void 0===r){if(!0===this.opt.forceXMLVersion)throw new Error("forceXMLVersion set but defaultXMLVersion is not set");r="1.0"}this.setXMLVersion(r),this.positionAtNewLine=0,this.doctype=!1,this._closed=!1,this.xmlDecl={version:void 0,encoding:void 0,standalone:void 0},this.line=1,this.column=0,this.ENTITIES=Object.create(v),null===(e=this.readyHandler)||void 0===e||e.call(this)}get position(){return this.chunkPosition+this.i}get columnIndex(){return this.position-this.positionAtNewLine}on(e,t){this[B[e]]=t}off(e){this[B[e]]=void 0}makeError(e){var t;let r=null!==(t=this.fileName)&&void 0!==t?t:"";return this.trackPosition&&(r.length>0&&(r+=":"),r+=`${this.line}:${this.column}`),r.length>0&&(r+=": "),new Error(r+e)}fail(e){const t=this.makeError(e),r=this.errorHandler;if(void 0===r)throw t;return r(t),this}write(e){if(this.closed)return this.fail("cannot write after close; assign an onready handler.");let t=!1;null===e?(t=!0,e=""):"object"==typeof e&&(e=e.toString()),void 0!==this.carriedFromPrevious&&(e=`${this.carriedFromPrevious}${e}`,this.carriedFromPrevious=void 0);let r=e.length;const n=e.charCodeAt(r-1);!t&&(13===n||n>=55296&&n<=56319)&&(this.carriedFromPrevious=e[r-1],r--,e=e.slice(0,r));const{stateTable:i}=this;for(this.chunk=e,this.i=0;this.i=e.length)return _;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>=32||9===r)return r;switch(r){case O:return this.line++,this.column=0,this.positionAtNewLine=this.position,O;case 13:return e.charCodeAt(t+1)===O&&(this.i=t+2),this.line++,this.column=0,this.positionAtNewLine=this.position,w;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCode11(){const{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return _;const r=e.charCodeAt(t);if(this.column++,r<55296){if(r>31&&r<127||r>159&&8232!==r||9===r)return r;switch(r){case O:return this.line++,this.column=0,this.positionAtNewLine=this.position,O;case 13:{const r=e.charCodeAt(t+1);r!==O&&133!==r||(this.i=t+2)}case 133:case 8232:return this.line++,this.column=0,this.positionAtNewLine=this.position,w;default:return this.fail("disallowed character."),r}}if(r>56319)return r>=57344&&r<=65533||this.fail("disallowed character."),r;const n=65536+1024*(r-55296)+(e.charCodeAt(t+1)-56320);return this.i=t+2,n>1114111&&this.fail("disallowed character."),n}getCodeNorm(){const e=this.getCode();return e===w?O:e}unget(){this.i=this.prevI,this.column--}captureTo(e){let{i:t}=this;const{chunk:r}=this;for(;;){const n=this.getCode(),i=n===w,a=i?O:n;if(a===_||e.includes(a))return this.text+=r.slice(t,this.prevI),a;i&&(this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i)}}captureToChar(e){let{i:t}=this;const{chunk:r}=this;for(;;){let n=this.getCode();switch(n){case w:this.text+=`${r.slice(t,this.prevI)}\n`,t=this.i,n=O;break;case _:return this.text+=r.slice(t),!1}if(n===e)return this.text+=r.slice(t,this.prevI),!0}}captureNameChars(){const{chunk:e,i:t}=this;for(;;){const r=this.getCode();if(r===_)return this.name+=e.slice(t),_;if(!u(r))return this.name+=e.slice(t,this.prevI),r===w?O:r}}skipSpaces(){for(;;){const e=this.getCodeNorm();if(e===_||!o(e))return e}}setXMLVersion(e){this.currentXMLVersion=e,"1.0"===e?(this.isChar=s,this.getCode=this.getCode10):(this.isChar=h,this.getCode=this.getCode11)}sBegin(){65279===this.chunk.charCodeAt(0)&&(this.i++,this.column++),this.state=1}sBeginWhitespace(){const e=this.i,t=this.skipSpaces();switch(this.prevI!==e&&(this.xmlDeclPossible=!1),t){case E:if(this.state=15,0!==this.text.length)throw new Error("no-empty text at start");break;case _:break;default:this.unget(),this.state=T,this.xmlDeclPossible=!1}}sDoctype(){var e;const t=this.captureTo(N);switch(t){case A:null===(e=this.doctypeHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=T,this.doctype=!0;break;case _:break;default:this.text+=String.fromCodePoint(t),91===t?this.state=4:P(t)&&(this.state=3,this.q=t)}}sDoctypeQuote(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.q=null,this.state=2)}sDTD(){const e=this.captureTo(j);e!==_&&(this.text+=String.fromCodePoint(e),e===I?this.state=2:e===E?this.state=6:P(e)&&(this.state=5,this.q=e))}sDTDQuoted(){const e=this.q;this.captureToChar(e)&&(this.text+=String.fromCodePoint(e),this.state=4,this.q=null)}sDTDOpenWaka(){const e=this.getCodeNorm();switch(this.text+=String.fromCodePoint(e),e){case 33:this.state=7,this.openWakaBang="";break;case R:this.state=11;break;default:this.state=4}}sDTDOpenWakaBang(){const e=String.fromCodePoint(this.getCodeNorm()),t=this.openWakaBang+=e;this.text+=e,"-"!==t&&(this.state="--"===t?8:4,this.openWakaBang="")}sDTDComment(){this.captureToChar(45)&&(this.text+="-",this.state=9)}sDTDCommentEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),this.state=45===e?10:8}sDTDCommentEnded(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===A?this.state=4:(this.fail("malformed comment."),this.state=8)}sDTDPI(){this.captureToChar(R)&&(this.text+="?",this.state=12)}sDTDPIEnding(){const e=this.getCodeNorm();this.text+=String.fromCodePoint(e),e===A&&(this.state=4)}sText(){0!==this.tags.length?this.handleTextInRoot():this.handleTextOutsideRoot()}sEntity(){let{i:e}=this;const{chunk:t}=this;e:for(;;)switch(this.getCode()){case w:this.entity+=`${t.slice(e,this.prevI)}\n`,e=this.i;break;case 59:{const{entityReturnState:r}=this,n=this.entity+t.slice(e,this.prevI);let i;this.state=r,""===n?(this.fail("empty entity name."),i="&;"):(i=this.parseEntity(n),this.entity=""),r===T&&void 0===this.textHandler||(this.text+=i);break e}case _:this.entity+=t.slice(e);break e}}sOpenWaka(){const e=this.getCode();if(c(e))this.state=34,this.unget(),this.xmlDeclPossible=!1;else switch(e){case 47:this.state=43,this.xmlDeclPossible=!1;break;case 33:this.state=16,this.openWakaBang="",this.xmlDeclPossible=!1;break;case R:this.state=23;break;default:this.fail("disallowed character in tag name"),this.state=T,this.xmlDeclPossible=!1}}sOpenWakaBang(){switch(this.openWakaBang+=String.fromCodePoint(this.getCodeNorm()),this.openWakaBang){case"[CDATA[":this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0),this.state=20,this.openWakaBang="";break;case"--":this.state=17,this.openWakaBang="";break;case"DOCTYPE":this.state=2,(this.doctype||this.sawRoot)&&this.fail("inappropriately located doctype declaration."),this.openWakaBang="";break;default:this.openWakaBang.length>=7&&this.fail("incorrect syntax.")}}sComment(){this.captureToChar(45)&&(this.state=18)}sCommentEnding(){var e;const t=this.getCodeNorm();45===t?(this.state=19,null===(e=this.commentHandler)||void 0===e||e.call(this,this.text),this.text=""):(this.text+=`-${String.fromCodePoint(t)}`,this.state=17)}sCommentEnded(){const e=this.getCodeNorm();e!==A?(this.fail("malformed comment."),this.text+=`--${String.fromCodePoint(e)}`,this.state=17):this.state=T}sCData(){this.captureToChar(I)&&(this.state=21)}sCDataEnding(){const e=this.getCodeNorm();e===I?this.state=22:(this.text+=`]${String.fromCodePoint(e)}`,this.state=20)}sCDataEnding2(){var e;const t=this.getCodeNorm();switch(t){case A:null===(e=this.cdataHandler)||void 0===e||e.call(this,this.text),this.text="",this.state=T;break;case I:this.text+="]";break;default:this.text+=`]]${String.fromCodePoint(t)}`,this.state=20}}sPIFirstChar(){const e=this.getCodeNorm();this.nameStartCheck(e)?(this.piTarget+=String.fromCodePoint(e),this.state=24):e===R||o(e)?(this.fail("processing instruction without a target."),this.state=e===R?26:25):(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(e),this.state=24)}sPIRest(){const{chunk:e,i:t}=this;for(;;){const r=this.getCodeNorm();if(r===_)return void(this.piTarget+=e.slice(t));if(!this.nameCheck(r)){this.piTarget+=e.slice(t,this.prevI);const n=r===R;n||o(r)?"xml"===this.piTarget?(this.xmlDeclPossible||this.fail("an XML declaration must be at the start of the document."),this.state=n?S:27):this.state=n?26:25:(this.fail("disallowed character in processing instruction name."),this.piTarget+=String.fromCodePoint(r));break}}}sPIBody(){if(0===this.text.length){const e=this.getCodeNorm();e===R?this.state=26:o(e)||(this.text=String.fromCodePoint(e))}else this.captureToChar(R)&&(this.state=26)}sPIEnding(){var e;const t=this.getCodeNorm();if(t===A){const{piTarget:t}=this;"xml"===t.toLowerCase()&&this.fail("the XML declaration must appear at the start of the document."),null===(e=this.piHandler)||void 0===e||e.call(this,{target:t,body:this.text}),this.piTarget=this.text="",this.state=T}else t===R?this.text+="?":(this.text+=`?${String.fromCodePoint(t)}`,this.state=25);this.xmlDeclPossible=!1}sXMLDeclNameStart(){const e=this.skipSpaces();e!==R?e!==_&&(this.state=28,this.name=String.fromCodePoint(e)):this.state=S}sXMLDeclName(){const e=this.captureTo(C);if(e===R)return this.state=S,this.name+=this.text,this.text="",void this.fail("XML declaration is incomplete.");if(o(e)||e===x){if(this.name+=this.text,this.text="",!this.xmlDeclExpects.includes(this.name))switch(this.name.length){case 0:this.fail("did not expect any more name/value pairs.");break;case 1:this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);break;default:this.fail(`expected one of ${this.xmlDeclExpects.join(", ")}`)}this.state=e===x?30:29}}sXMLDeclEq(){const e=this.getCodeNorm();if(e===R)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(e!==x&&this.fail("value required."),this.state=30)}sXMLDeclValueStart(){const e=this.getCodeNorm();if(e===R)return this.state=S,void this.fail("XML declaration is incomplete.");o(e)||(P(e)?this.q=e:(this.fail("value must be quoted."),this.q=32),this.state=31)}sXMLDeclValue(){const e=this.captureTo([this.q,R]);if(e===R)return this.state=S,this.text="",void this.fail("XML declaration is incomplete.");if(e===_)return;const t=this.text;switch(this.text="",this.name){case"version":{this.xmlDeclExpects=["encoding","standalone"];const e=t;this.xmlDecl.version=e,/^1\.[0-9]+$/.test(e)?this.opt.forceXMLVersion||this.setXMLVersion(e):this.fail("version number must match /^1\\.[0-9]+$/.");break}case"encoding":/^[A-Za-z][A-Za-z0-9._-]*$/.test(t)||this.fail("encoding value must match /^[A-Za-z0-9][A-Za-z0-9._-]*$/."),this.xmlDeclExpects=["standalone"],this.xmlDecl.encoding=t;break;case"standalone":"yes"!==t&&"no"!==t&&this.fail('standalone value must match "yes" or "no".'),this.xmlDeclExpects=[],this.xmlDecl.standalone=t}this.name="",this.state=32}sXMLDeclSeparator(){const e=this.getCodeNorm();e!==R?(o(e)||(this.fail("whitespace required."),this.unget()),this.state=27):this.state=S}sXMLDeclEnding(){var e;this.getCodeNorm()===A?("xml"!==this.piTarget?this.fail("processing instructions are not allowed before root."):"version"!==this.name&&this.xmlDeclExpects.includes("version")&&this.fail("XML declaration must contain a version."),null===(e=this.xmldeclHandler)||void 0===e||e.call(this,this.xmlDecl),this.name="",this.piTarget=this.text="",this.state=T):this.fail("The character ? is disallowed anywhere in XML declarations."),this.xmlDeclPossible=!1}sOpenTag(){var e;const t=this.captureNameChars();if(t===_)return;const r=this.tag={name:this.name,attributes:Object.create(null)};switch(this.name="",this.xmlnsOpt&&(this.topNS=r.ns=Object.create(null)),null===(e=this.openTagStartHandler)||void 0===e||e.call(this,r),this.sawRoot=!0,!this.fragmentOpt&&this.closedRoot&&this.fail("documents may contain only one root."),t){case A:this.openTag();break;case 47:this.state=35;break;default:o(t)||this.fail("disallowed character in tag name."),this.state=36}}sOpenTagSlash(){this.getCode()===A?this.openSelfClosingTag():(this.fail("forward-slash in opening tag not followed by >."),this.state=36)}sAttrib(){const e=this.skipSpaces();e!==_&&(c(e)?(this.unget(),this.state=37):e===A?this.openTag():47===e?this.state=35:this.fail("disallowed character in attribute name."))}sAttribName(){const e=this.captureNameChars();e===x?this.state=39:o(e)?this.state=38:e===A?(this.fail("attribute without value."),this.pushAttrib(this.name,this.name),this.name=this.text="",this.openTag()):e!==_&&this.fail("disallowed character in attribute name.")}sAttribNameSawWhite(){const e=this.skipSpaces();switch(e){case _:return;case x:this.state=39;break;default:this.fail("attribute without value."),this.text="",this.name="",e===A?this.openTag():c(e)?(this.unget(),this.state=37):(this.fail("disallowed character in attribute name."),this.state=36)}}sAttribValue(){const e=this.getCodeNorm();P(e)?(this.q=e,this.state=40):o(e)||(this.fail("unquoted attribute value."),this.state=42,this.unget())}sAttribValueQuoted(){const{q:e,chunk:t}=this;let{i:r}=this;for(;;)switch(this.getCode()){case e:return this.pushAttrib(this.name,this.text+t.slice(r,this.prevI)),this.name=this.text="",this.q=null,void(this.state=41);case 38:return this.text+=t.slice(r,this.prevI),this.state=14,void(this.entityReturnState=40);case O:case w:case 9:this.text+=`${t.slice(r,this.prevI)} `,r=this.i;break;case E:return this.text+=t.slice(r,this.prevI),void this.fail("disallowed character.");case _:return void(this.text+=t.slice(r))}}sAttribValueClosed(){const e=this.getCodeNorm();o(e)?this.state=36:e===A?this.openTag():47===e?this.state=35:c(e)?(this.fail("no whitespace between attributes."),this.unget(),this.state=37):this.fail("disallowed character in attribute name.")}sAttribValueUnquoted(){const e=this.captureTo(M);switch(e){case 38:this.state=14,this.entityReturnState=42;break;case E:this.fail("disallowed character.");break;case _:break;default:this.text.includes("]]>")&&this.fail('the string "]]>" is disallowed in char data.'),this.pushAttrib(this.name,this.text),this.name=this.text="",e===A?this.openTag():this.state=36}}sCloseTag(){const e=this.captureNameChars();e===A?this.closeTag():o(e)?this.state=44:e!==_&&this.fail("disallowed character in closing tag.")}sCloseTagSawWhite(){switch(this.skipSpaces()){case A:this.closeTag();break;case _:break;default:this.fail("disallowed character in closing tag.")}}handleTextInRoot(){let{i:e,forbiddenState:t}=this;const{chunk:r,textHandler:n}=this;e:for(;;)switch(this.getCode()){case E:if(this.state=15,void 0!==n){const{text:t}=this,i=r.slice(e,this.prevI);0!==t.length?(n(t+i),this.text=""):0!==i.length&&n(i)}t=0;break e;case 38:this.state=14,this.entityReturnState=T,void 0!==n&&(this.text+=r.slice(e,this.prevI)),t=0;break e;case I:switch(t){case 0:t=1;break;case 1:t=2;break;case 2:break;default:throw new Error("impossible state")}break;case A:2===t&&this.fail('the string "]]>" is disallowed in char data.'),t=0;break;case w:void 0!==n&&(this.text+=`${r.slice(e,this.prevI)}\n`),e=this.i,t=0;break;case _:void 0!==n&&(this.text+=r.slice(e));break e;default:t=0}this.forbiddenState=t}handleTextOutsideRoot(){let{i:e}=this;const{chunk:t,textHandler:r}=this;let n=!1;e:for(;;){const i=this.getCode();switch(i){case E:if(this.state=15,void 0!==r){const{text:n}=this,i=t.slice(e,this.prevI);0!==n.length?(r(n+i),this.text=""):0!==i.length&&r(i)}break e;case 38:this.state=14,this.entityReturnState=T,void 0!==r&&(this.text+=t.slice(e,this.prevI)),n=!0;break e;case w:void 0!==r&&(this.text+=`${t.slice(e,this.prevI)}\n`),e=this.i;break;case _:void 0!==r&&(this.text+=t.slice(e));break e;default:o(i)||(n=!0)}}n&&(this.sawRoot||this.reportedTextBeforeRoot||(this.fail("text data outside of root node."),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail("text data outside of root node."),this.reportedTextAfterRoot=!0))}pushAttribNS(e,t){var r;const{prefix:n,local:i}=this.qname(e),a={name:e,prefix:n,local:i,value:t};if(this.attribList.push(a),null===(r=this.attributeHandler)||void 0===r||r.call(this,a),"xmlns"===n){const e=t.trim();"1.0"===this.currentXMLVersion&&""===e&&this.fail("invalid attempt to undefine prefix in XML 1.0"),this.topNS[i]=e,L(this,i,e)}else if("xmlns"===e){const e=t.trim();this.topNS[""]=e,L(this,"",e)}}pushAttribPlain(e,t){var r;const n={name:e,value:t};this.attribList.push(n),null===(r=this.attributeHandler)||void 0===r||r.call(this,n)}end(){var e,t;this.sawRoot||this.fail("document must contain a root element.");const{tags:r}=this;for(;r.length>0;){const e=r.pop();this.fail(`unclosed tag: ${e.name}`)}0!==this.state&&this.state!==T&&this.fail("unexpected end.");const{text:n}=this;return 0!==n.length&&(null===(e=this.textHandler)||void 0===e||e.call(this,n),this.text=""),this._closed=!0,null===(t=this.endHandler)||void 0===t||t.call(this),this._init(),this}resolve(e){var t,r;let n=this.topNS[e];if(void 0!==n)return n;const{tags:i}=this;for(let t=i.length-1;t>=0;t--)if(n=i[t].ns[e],void 0!==n)return n;return n=this.ns[e],void 0!==n?n:null===(r=(t=this.opt).resolvePrefix)||void 0===r?void 0:r.call(t,e)}qname(e){const t=e.indexOf(":");if(-1===t)return{prefix:"",local:e};const r=e.slice(t+1),n=e.slice(0,t);return(""===n||""===r||r.includes(":"))&&this.fail(`malformed name: ${e}.`),{prefix:n,local:r}}processAttribsNS(){var e;const{attribList:t}=this,r=this.tag;{const{prefix:t,local:n}=this.qname(r.name);r.prefix=t,r.local=n;const i=r.uri=null!==(e=this.resolve(t))&&void 0!==e?e:"";""!==t&&("xmlns"===t&&this.fail('tags may not have "xmlns" as prefix.'),""===i&&(this.fail(`unbound namespace prefix: ${JSON.stringify(t)}.`),r.uri=t))}if(0===t.length)return;const{attributes:n}=r,i=new Set;for(const e of t){const{name:t,prefix:r,local:a}=e;let o,s;""===r?(o="xmlns"===t?m:"",s=t):(o=this.resolve(r),void 0===o&&(this.fail(`unbound namespace prefix: ${JSON.stringify(r)}.`),o=r),s=`{${o}}${a}`),i.has(s)&&this.fail(`duplicate attribute: ${s}.`),i.add(s),e.uri=o,n[t]=e}this.attribList=[]}processAttribsPlain(){const{attribList:e}=this,t=this.tag.attributes;for(const{name:r,value:n}of e)void 0!==t[r]&&this.fail(`duplicate attribute: ${r}.`),t[r]=n;this.attribList=[]}openTag(){var e;this.processAttribs();const{tags:t}=this,r=this.tag;r.isSelfClosing=!1,null===(e=this.openTagHandler)||void 0===e||e.call(this,r),t.push(r),this.state=T,this.name=""}openSelfClosingTag(){var e,t,r;this.processAttribs();const{tags:n}=this,i=this.tag;i.isSelfClosing=!0,null===(e=this.openTagHandler)||void 0===e||e.call(this,i),null===(t=this.closeTagHandler)||void 0===t||t.call(this,i),null===(this.tag=null!==(r=n[n.length-1])&&void 0!==r?r:null)&&(this.closedRoot=!0),this.state=T,this.name=""}closeTag(){const{tags:e,name:t}=this;if(this.state=T,this.name="",""===t)return this.fail("weird empty close tag."),void(this.text+="");const r=this.closeTagHandler;let n=e.length;for(;n-- >0;){const n=this.tag=e.pop();if(this.topNS=n.ns,null==r||r(n),n.name===t)break;this.fail("unexpected close tag.")}0===n?this.closedRoot=!0:n<0&&(this.fail(`unmatched closing tag: ${t}.`),this.text+=``)}parseEntity(e){if("#"!==e[0]){const t=this.ENTITIES[e];return void 0!==t?t:(this.fail(this.isName(e)?"undefined entity.":"disallowed character in entity name."),`&${e};`)}let t=NaN;return"x"===e[1]&&/^#x[0-9a-f]+$/i.test(e)?t=parseInt(e.slice(2),16):/^#[0-9]+$/.test(e)&&(t=parseInt(e.slice(1),10)),this.isChar(t)?String.fromCodePoint(t):(this.fail("malformed character entity."),`&${e};`)}}},47948:e=>{"use strict";const{AbortController:t,AbortSignal:r}="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0;e.exports=t,e.exports.AbortSignal=r,e.exports.default=t},92248:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];return r=e.on("data",(e=>t.push(e))),n=t,new Promise(((e,t)=>{r.on("end",(()=>e(n))),r.on("error",t)}));var r,n}},89727:(e,t,r)=>{const n=r(75192),i=r(18015),a=r(2283),o=r(78917),s=r(21527);e.exports={DynamicNestedLoopJoin:n,HashJoin:i,NestedLoopJoin:a,SymmetricHashJoin:o,MergeStream:s}},75192:(e,t,r)=>{let n=r(89227),i=n.MultiTransformIterator,a=n.SimpleTransformIterator;e.exports=class extends i{constructor(e,t,r,n){super(e,n),this.funRight=t,this.funJoin=r}_createTransformer(e){return new a(this.funRight(e),{transform:(t,r,n)=>{let i=this.funJoin(e,t);null!==i&&n(i),r()}})}}},18015:(e,t,r)=>{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e,t,r,n){super(),this.addedDataListener=!1,this.left=e,this.right=t,this.funHash=r,this.funJoin=n,this.leftMap=new Map,this.match=null,this.matches=[],this.matchIdx=0,this.left.on("error",(e=>this.destroy(e))),this.right.on("error",(e=>this.destroy(e))),this.readable=!1,this.left.on("end",function(){if(this.leftMap.size<=0)return this.close();this.readable=!0,this.right.on("readable",(()=>this.readable=!0)),this.right.on("end",(()=>{this.hasResults()||this._end()}))}.bind(this)),this.on("newListener",(e=>{"data"!==e||this.addedDataListener||(this.addedDataListener=!0,this._addDataListener())}))}hasResults(){return!this.right.ended||this.matchIdx{const{MultiTransformIterator:n,SimpleTransformIterator:i,scheduleTask:a}=r(89227);e.exports=class extends n{constructor(e,t,r,n){super(e,n),this.right=t,this.funJoin=r,this.on("end",(()=>this.right.close()))}_end(){super._end(),a((()=>this.right.destroy()))}_createTransformer(e){return new i(this.right.clone(),{transform:(t,r,n)=>{let i=this.funJoin(e,t);null!==i&&n(i),r()}})}}},78917:(e,t,r)=>{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e,t,r,n){super(),this.left=e,this.right=t,this.funHash=r,this.funJoin=n,this.usedLeft=!1,this.leftMap=new Map,this.rightMap=new Map,this.on("end",(()=>this._cleanup())),this.match=null,this.matches=[],this.matchIdx=0,(this.left.readable||this.right.readable)&&(this.readable=!0),this.left.on("error",(e=>this.destroy(e))),this.right.on("error",(e=>this.destroy(e))),this.left.on("readable",(()=>this.readable=!0)),this.right.on("readable",(()=>this.readable=!0)),this.left.on("end",(()=>{this.hasResults()||this._end()})),this.right.on("end",(()=>{this.hasResults()||this._end()}))}hasResults(){return!this.left.ended||!this.right.ended||!!this.matches&&this.matchIdx{let n=r(89227).AsyncIterator;e.exports=class extends n{constructor(e){super(),Array.isArray(e)||(e=Array.prototype.slice.call(arguments)),this.streams=e;for(let t of e)t.on("readable",(()=>this.emit("readable"))),t.on("end",(()=>this._removeStream(t)));0===this.streams.length&&this.close(),this.idx=this.streams.length-1}_removeStream(e){let t=this.streams.indexOf(e);t<0||(this.streams.splice(t,1),this.idx>=this.streams.length&&--this.idx,0===this.streams.length&&this._end())}close(){super.close();for(let e of this.streams)e.close()}read(){for(let e=0;e{const n=new(r(60738).LoggerVoid),i=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-init/^2.0.0/components/ActorInit.jsonld#ActorInit_default_bus"}),a=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-context-preprocess/^2.0.0/components/ActorContextPreprocess.jsonld#ActorContextPreprocess_default_bus"}),o=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-hash-bindings/^2.0.0/components/ActorHashBindings.jsonld#ActorHashBindings_default_bus"}),s=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-optimize-query-operation/^2.0.0/components/ActorOptimizeQueryOperation.jsonld#ActorOptimizeQueryOperation_default_bus"}),c=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-parse/^2.0.0/components/ActorQueryParse.jsonld#ActorQueryParse_default_bus"}),u=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-result-serialize/^2.0.0/components/ActorQueryResultSerialize.jsonld#ActorQueryResultSerialize_default_bus"}),l=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference/^2.0.0/components/ActorDereference.jsonld#ActorDereference_default_bus"}),d=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference-rdf/^2.0.0/components/ActorDereferenceRdf.jsonld#ActorDereferenceRdf_default_bus"}),h=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-entries-sort/^2.0.0/components/ActorRdfJoinEntriesSort.jsonld#ActorRdfJoinEntriesSort_default_bus"}),p=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-selectivity/^2.0.0/components/ActorRdfJoinSelectivity.jsonld#ActorRdfJoinSelectivity_default_bus"}),f=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata/^2.0.0/components/ActorRdfMetadata.jsonld#ActorRdfMetadata_default_bus"}),y=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-accumulate/^2.0.0/components/ActorRdfMetadataAccumulate.jsonld#ActorRdfMetadataAccumulate_default_bus"}),g=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-extract/^2.0.0/components/ActorRdfMetadataExtract.jsonld#ActorRdfMetadataExtract_default_bus"}),m=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse/^2.0.0/components/ActorRdfParse.jsonld#ActorRdfParse_default_bus"}),b=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse-html/^2.0.0/components/ActorRdfParseHtml.jsonld#ActorRdfParseHtml_default_bus"}),v=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia/^2.0.0/components/ActorRdfResolveHypermedia.jsonld#ActorRdfResolveHypermedia_default_bus"}),_=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links/^2.0.0/components/ActorRdfResolveHypermediaLinks.jsonld#ActorRdfResolveHypermediaLinks_default_bus"}),w=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links-queue/^2.0.0/components/ActorRdfResolveHypermediaLinksQueue.jsonld#ActorRdfResolveHypermediaLinksQueue_default_bus"}),T=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-serialize/^2.0.0/components/ActorRdfSerialize.jsonld#ActorRdfSerialize_default_bus"}),S=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-hypermedia/^2.0.0/components/ActorRdfUpdateHypermedia.jsonld#ActorRdfUpdateHypermedia_default_bus"}),O=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-quads/^2.0.0/components/ActorRdfUpdateQuads.jsonld#ActorRdfUpdateQuads_default_bus"}),E=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_default_bus"}),x=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_fallback_bus"}),A=new(r(83814).BusQueryOperation)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-operation/^2.0.0/components/ActorQueryOperation.jsonld#ActorQueryOperation_default_bus"}),R=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join/^2.0.0/components/ActorRdfJoin.jsonld#ActorRdfJoin_default_bus"}),I=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-quad-pattern/^2.0.0/components/ActorRdfResolveQuadPattern.jsonld#ActorRdfResolveQuadPattern_default_bus"}),P=new(r(21049).Bus)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http-invalidate/^2.0.0/components/ActorHttpInvalidate.jsonld#ActorHttpInvalidate_default_bus"}),D=(new(r(76400).ActorContextPreprocessSourceToDestination)({name:"urn:comunica:default:context-preprocess/actors#source-to-destination",bus:a}),new(r(84190).MediatorCombinePipeline)({name:"urn:comunica:default:context-preprocess/mediators#main",bus:a})),N=(new(r(82738).ActorHashBindingsSha1)({name:"urn:comunica:default:hash-bindings/actors#sha1",bus:o}),new(r(7204).MediatorRace)({name:"urn:comunica:default:hash-bindings/mediators#main",bus:o})),j=(new(r(68723).ActorOptimizeQueryOperationJoinBgp)({name:"urn:comunica:default:optimize-query-operation/actors#join-bgp",bus:s}),new(r(1525).ActorOptimizeQueryOperationBgpToJoin)({name:"urn:comunica:default:optimize-query-operation/actors#bgp-to-join",bus:s}),new(r(67768).ActorOptimizeQueryOperationJoinConnected)({name:"urn:comunica:default:optimize-query-operation/actors#join-connected",bus:s}),new(r(84190).MediatorCombinePipeline)({name:"urn:comunica:default:optimize-query-operation/mediators#main",bus:s})),C=(new(r(93700).ActorQueryParseSparql)({prefixes:{dbpedia:"http://dbpedia.org/resource/","dbpedia-owl":"http://dbpedia.org/ontology/",dbpprop:"http://dbpedia.org/property/",dc:"http://purl.org/dc/terms/",dc11:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",foaf:"http://xmlns.com/foaf/0.1/",geo:"http://www.w3.org/2003/01/geo/wgs84_pos#",owl:"http://www.w3.org/2002/07/owl#",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",schema:"http://schema.org/",skos:"http://www.w3.org/2008/05/skos#",xsd:"http://www.w3.org/2001/XMLSchema#"},name:"urn:comunica:default:query-parse/actors#sparql",bus:c}),new(r(37873).ActorQueryParseGraphql)({name:"urn:comunica:default:query-parse/actors#graphql",bus:c}),new(r(7204).MediatorRace)({name:"urn:comunica:default:query-parse/mediators#main",bus:c})),M=(new(r(6234).ActorQueryResultSerializeJson)({mediaTypePriorities:{"application/json":1},mediaTypeFormats:{"application/json":"https://comunica.linkeddatafragments.org/#results_JSON"},name:"urn:comunica:default:query-result-serialize/actors#json",bus:u}),new(r(54399).ActorQueryResultSerializeSimple)({mediaTypePriorities:{simple:.9},mediaTypeFormats:{simple:"https://comunica.linkeddatafragments.org/#results_simple"},name:"urn:comunica:default:query-result-serialize/actors#simple",bus:u}),new(r(74295).ActorQueryResultSerializeSparqlCsv)({mediaTypePriorities:{"text/csv":.75},mediaTypeFormats:{"text/csv":"http://www.w3.org/ns/formats/SPARQL_Results_CSV"},name:"urn:comunica:default:query-result-serialize/actors#csv",bus:u}),new(r(30865).ActorQueryResultSerializeSparqlTsv)({mediaTypePriorities:{"text/tab-separated-values":.75},mediaTypeFormats:{"text/tab-separated-values":"http://www.w3.org/ns/formats/SPARQL_Results_TSV"},name:"urn:comunica:default:query-result-serialize/actors#sparql-tsv",bus:u}),new(r(33499).ActorQueryResultSerializeSparqlXml)({mediaTypePriorities:{"application/sparql-results+xml":.8},mediaTypeFormats:{"application/sparql-results+xml":"http://www.w3.org/ns/formats/SPARQL_Results_XML"},name:"urn:comunica:default:query-result-serialize/actors#sparql-xml",bus:u}),new(r(68266).ActorQueryResultSerializeTable)({columnWidth:50,mediaTypePriorities:{table:.6},mediaTypeFormats:{table:"https://comunica.linkeddatafragments.org/#results_table"},name:"urn:comunica:default:query-result-serialize/actors#table",bus:u}),new(r(93148).ActorQueryResultSerializeTree)({mediaTypePriorities:{tree:.5},mediaTypeFormats:{tree:"https://comunica.linkeddatafragments.org/#results_tree"},name:"urn:comunica:default:query-result-serialize/actors#tree",bus:u}),new(r(7204).MediatorRace)({name:"urn:comunica:default:query-result-serialize/mediators#serialize",bus:u})),L=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:query-result-serialize/mediators#mediaType",bus:u}),k=new(r(21413).MediatorCombineUnion)({field:"mediaTypeFormats",name:"urn:comunica:default:query-result-serialize/mediators#mediaTypeFormat",bus:u}),F=new(r(24154).ActorDereferenceFallback)({name:"urn:comunica:default:dereference/actors#fallback",bus:l}),B=new(r(7204).MediatorRace)({name:"urn:comunica:default:dereference/mediators#main",bus:l}),U=new(r(7204).MediatorRace)({name:"urn:comunica:default:dereference-rdf/mediators#main",bus:d}),q=(new(r(12321).ActorRdfJoinEntriesSortCardinality)({name:"urn:comunica:default:rdf-join-entries-sort/actors#cardinality",bus:h}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-join-entries-sort/mediators#main",bus:h})),V=(new(r(41998).ActorRdfJoinSelectivityVariableCounting)({name:"urn:comunica:default:rdf-join-selectivity/actors#variable-counting",bus:p}),new(r(92201).MediatorNumber)({field:"accuracy",type:"max",ignoreErrors:!0,name:"urn:comunica:default:rdf-join-selectivity/mediators#main",bus:p})),Q=(new(r(8962).ActorRdfMetadataPrimaryTopic)({metadataToData:!1,dataToMetadataOnInvalidMetadataGraph:!0,name:"urn:comunica:default:rdf-metadata/actors#primary-topic",bus:f}),new(r(59095).ActorRdfMetadataAll)({name:"urn:comunica:default:rdf-metadata/actors#all",bus:f}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-metadata/mediators#main",bus:f})),$=(new(r(69791).ActorRdfMetadataAccumulateCanContainUndefs)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#cancontainundefs",bus:y}),new(r(22074).ActorRdfMetadataAccumulateCardinality)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#cardinality",bus:y}),new(r(78345).ActorRdfMetadataAccumulatePageSize)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#pagesize",bus:y}),new(r(13905).ActorRdfMetadataAccumulateRequestTime)({name:"urn:comunica:default:rdf-metadata-accumulate/actors#requesttime",bus:y}),new(r(21413).MediatorCombineUnion)({field:"metadata",name:"urn:comunica:default:rdf-metadata-accumulate/mediators#main",bus:y})),H=(new(r(88791).ActorRdfMetadataExtractHydraControls)({name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-controls",bus:g}),new(r(62270).ActorRdfMetadataExtractHydraCount)({predicates:["http://www.w3.org/ns/hydra/core#totalItems","http://rdfs.org/ns/void#triples"],name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-count",bus:g}),new(r(95831).ActorRdfMetadataExtractHydraPagesize)({predicates:["http://www.w3.org/ns/hydra/core#itemsPerPage"],name:"urn:comunica:default:rdf-metadata-extract/actors#hydra-pagesize",bus:g}),new(r(25344).ActorRdfMetadataExtractRequestTime)({name:"urn:comunica:default:rdf-metadata-extract/actors#request-time",bus:g}),new(r(33394).ActorRdfMetadataExtractAllowHttpMethods)({name:"urn:comunica:default:rdf-metadata-extract/actors#allow-http-methods",bus:g}),new(r(13409).ActorRdfMetadataExtractPutAccepted)({name:"urn:comunica:default:rdf-metadata-extract/actors#put-accepted",bus:g}),new(r(31684).ActorRdfMetadataExtractPatchSparqlUpdate)({name:"urn:comunica:default:rdf-metadata-extract/actors#patch-sparql-update",bus:g}),new(r(17609).ActorRdfMetadataExtractSparqlService)({inferHttpsEndpoint:!0,name:"urn:comunica:default:rdf-metadata-extract/actors#sparql-service",bus:g}),new(r(21413).MediatorCombineUnion)({field:"metadata",name:"urn:comunica:default:rdf-metadata-extract/mediators#main",bus:g})),G=(new(r(44500).ActorRdfParseN3)({mediaTypePriorities:{"application/n-quads":1,"application/n-triples":.8,"application/trig":.95,"text/n3":.35,"text/turtle":.6},mediaTypeFormats:{"application/n-quads":"http://www.w3.org/ns/formats/N-Quads","application/n-triples":"http://www.w3.org/ns/formats/N-Triples","application/trig":"http://www.w3.org/ns/formats/TriG","text/n3":"http://www.w3.org/ns/formats/N3","text/turtle":"http://www.w3.org/ns/formats/Turtle"},priorityScale:1,name:"urn:comunica:default:rdf-parse/actors#n3",bus:m}),new(r(71422).ActorRdfParseRdfXml)({mediaTypePriorities:{"application/rdf+xml":1},mediaTypeFormats:{"application/rdf+xml":"http://www.w3.org/ns/formats/RDF_XML"},priorityScale:.5,name:"urn:comunica:default:rdf-parse/actors#rdfxml",bus:m}),new(r(47385).ActorRdfParseXmlRdfa)({mediaTypePriorities:{"application/xml":1,"image/svg+xml":1,"text/xml":1},mediaTypeFormats:{"application/xml":"http://www.w3.org/ns/formats/RDFa","image/svg+xml":"http://www.w3.org/ns/formats/RDFa","text/xml":"http://www.w3.org/ns/formats/RDFa"},priorityScale:.3,name:"urn:comunica:default:rdf-parse/actors#xmlrdfa",bus:m}),new(r(38688).ActorRdfParseShaclc)({mediaTypePriorities:{"text/shaclc":1,"text/shaclc-ext":.5},mediaTypeFormats:{"text/shaclc":"http://www.w3.org/ns/formats/Shaclc","text/shaclc-ext":"http://www.w3.org/ns/formats/ShaclcExtended"},priorityScale:.1,name:"urn:comunica:default:rdf-parse/actors#shaclc",bus:m}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-parse/mediators#parse",bus:m})),z=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:rdf-parse/mediators#mediaType",bus:m}),K=(new(r(9381).ActorRdfParseHtml)({busRdfParseHtml:b,mediaTypePriorities:{"application/xhtml+xml":.9,"text/html":1},mediaTypeFormats:{"application/xhtml+xml":"http://www.w3.org/ns/formats/HTML","text/html":"http://www.w3.org/ns/formats/HTML"},priorityScale:.2,name:"urn:comunica:default:rdf-parse/actors#html",bus:m}),new(r(29438).ActorRdfParseHtmlMicrodata)({name:"urn:comunica:default:rdf-parse-html/actors#microdata",bus:b}),new(r(75022).ActorRdfParseHtmlRdfa)({name:"urn:comunica:default:rdf-parse-html/actors#rdfa",bus:b}),new(r(2458).ActorRdfResolveHypermediaNone)({name:"urn:comunica:default:rdf-resolve-hypermedia/actors#none",bus:v}),new(r(92201).MediatorNumber)({field:"filterFactor",type:"max",ignoreErrors:!0,name:"urn:comunica:default:rdf-resolve-hypermedia/mediators#main",bus:v})),X=(new(r(62120).ActorRdfResolveHypermediaLinksNext)({name:"urn:comunica:default:rdf-resolve-hypermedia-links/actors#next",bus:_}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-hypermedia-links/mediators#main",bus:_})),W=(new(r(67506).ActorRdfResolveHypermediaLinksQueueFifo)({name:"urn:comunica:default:rdf-resolve-hypermedia-links-queue/actors#fifo",bus:w}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-hypermedia-links-queue/mediators#main",bus:w})),J=(new(r(97021).ActorRdfSerializeN3)({mediaTypePriorities:{"application/n-quads":1,"application/n-triples":.8,"application/trig":.95,"text/n3":.35,"text/turtle":.6},mediaTypeFormats:{"application/n-quads":"http://www.w3.org/ns/formats/N-Quads","application/n-triples":"http://www.w3.org/ns/formats/N-Triples","application/trig":"http://www.w3.org/ns/formats/TriG","text/n3":"http://www.w3.org/ns/formats/N3","text/turtle":"http://www.w3.org/ns/formats/Turtle"},name:"urn:comunica:default:rdf-serialize/actors#n3",bus:T}),new(r(21336).ActorRdfSerializeJsonLd)({jsonStringifyIndentSpaces:2,mediaTypePriorities:{"application/ld+json":1},mediaTypeFormats:{"application/ld+json":"http://www.w3.org/ns/formats/JSON-LD"},priorityScale:.9,name:"urn:comunica:default:rdf-serialize/actors#jsonld",bus:T}),new(r(76752).ActorRdfSerializeShaclc)({mediaTypePriorities:{"text/shaclc":1,"text/shaclc-ext":.5},mediaTypeFormats:{"text/shaclc":"http://www.w3.org/ns/formats/Shaclc","text/shaclc-ext":"http://www.w3.org/ns/formats/ShaclcExtended"},priorityScale:.1,name:"urn:comunica:default:rdf-serialize/actors#shaclc",bus:T}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-serialize/mediators#serialize",bus:T})),Y=new(r(21413).MediatorCombineUnion)({field:"mediaTypes",name:"urn:comunica:default:rdf-serialize/mediators#mediaType",bus:T}),Z=new(r(21413).MediatorCombineUnion)({field:"mediaTypeFormats",name:"urn:comunica:default:rdf-serialize/mediators#mediaTypeFormat",bus:T}),ee=new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-update-hypermedia/mediators#main",bus:S}),te=(new(r(2340).ActorRdfUpdateQuadsRdfJsStore)({name:"urn:comunica:default:rdf-update-quads/actors#rdfjs-store",bus:O}),new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-update-quads/mediators#main",bus:O})),re=new(r(67951).ActorHttpFetch)({agentOptions:{keepAlive:!0,maxSockets:5},name:"urn:comunica:default:http/actors#fetch",bus:E}),ne=new(r(92201).MediatorNumber)({field:"time",type:"min",ignoreErrors:!0,name:"urn:comunica:default:http/mediators#no-fallback",bus:E}),ie=new(r(92201).MediatorNumber)({field:"time",type:"min",ignoreErrors:!0,name:"urn:comunica:default:http/mediators#main",bus:x}),ae=(new(r(78251).ActorQueryOperationValues)({name:"urn:comunica:default:query-operation/actors#values",bus:A}),new(r(92201).MediatorNumber)({field:"httpRequests",type:"min",ignoreErrors:!0,name:"urn:comunica:default:query-operation/mediators#main",bus:A})),oe=new(r(78557).MediatorJoinCoefficientsFixed)({cpuWeight:1,memoryWeight:1,timeWeight:10,ioWeight:100,name:"urn:comunica:default:rdf-join/mediators#main",bus:R}),se=new(r(7204).MediatorRace)({name:"urn:comunica:default:rdf-resolve-quad-pattern/mediators#main",bus:I}),ce=new(r(95069).MediatorAll)({name:"urn:comunica:default:http-invalidate/mediators#main",bus:P}),ue=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-update-quads-hypermedia/^2.0.0/components/ActorRdfUpdateQuadsHypermedia.jsonld#IActorRdfUpdateQuadsHypermediaArgs_default_invalidator",bus:P}),le=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/^2.0.0/components/ActorRdfResolveQuadPatternHypermedia.jsonld#IActorRdfResolveQuadPatternHypermediaArgs_default_invalidator",bus:P}),de=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator",bus:P}),he=new(r(90178).ActorHttpInvalidateListenable)({name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator",bus:P}),pe=(new(r(64849).ActorRdfJoinNone)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-none",bus:R}),new(r(85427).ActorRdfJoinSingle)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-single",bus:R}),new(r(3771).ActorRdfJoinMultiEmpty)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-empty",bus:R}),new(r(55393).ActorRdfJoinHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-hash",bus:R}),new(r(33023).ActorRdfJoinSymmetricHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-symmetric-hash",bus:R}),new(r(87622).ActorRdfJoinNestedLoop)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-nested-loop",bus:R}),new(r(66927).ActorRdfJoinMinusHash)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#minus-hash",bus:R}),new(r(56419).ActorRdfJoinMinusHashUndef)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#minus-hash-undef",bus:R}),new(r(36920).ActorRdfJoinOptionalNestedLoop)({mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#optional-nested-loop",bus:R}),new(r(14952).ActorRdfResolveHypermediaQpf)({mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorDereferenceRdf:U,subjectUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#subject",predicateUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate",objectUri:"http://www.w3.org/1999/02/22-rdf-syntax-ns#object",graphUri:"http://www.w3.org/ns/sparql-service-description#graph",name:"urn:comunica:default:rdf-resolve-hypermedia/actors#qpf",bus:v}),new(r(82950).ActorDereferenceRdfParse)({mediatorDereference:B,mediatorParse:G,mediatorParseMediatypes:z,mediaMappings:{htm:"text/html",html:"text/html",json:"application/json",jsonld:"application/ld+json",n3:"text/n3",nq:"application/n-quads",nquads:"application/n-quads",nt:"application/n-triples",ntriples:"application/n-triples",owl:"application/rdf+xml",rdf:"application/rdf+xml",rdfxml:"application/rdf+xml",shaclc:"text/shaclc",shaclce:"text/shaclc-ext",shc:"text/shaclc",shce:"text/shaclc-ext",svg:"image/svg+xml",svgz:"image/svg+xml",trig:"application/trig",ttl:"text/turtle",turtle:"text/turtle",xht:"application/xhtml+xml",xhtml:"application/xhtml+xml",xml:"application/xml"},name:"urn:comunica:default:dereference-rdf/actors#parse",bus:d}),new(r(89518).ActorRdfParseHtmlScript)({mediatorRdfParseMediatypes:z,mediatorRdfParseHandle:G,name:"urn:comunica:default:rdf-parse-html/actors#script",bus:b}),new(r(45322).ActorQueryResultSerializeRdf)({mediatorRdfSerialize:J,mediatorMediaTypeCombiner:Y,mediatorMediaTypeFormatCombiner:Z,name:"urn:comunica:default:query-result-serialize/actors#rdf",bus:u}),new(r(16949).ActorHttpWayback)({mediatorHttp:ne,name:"urn:comunica:default:http/actors#wayback",bus:x}),new(r(79852).ActorRdfParseJsonLd)({mediatorHttp:ie,mediaTypePriorities:{"application/json":.5,"application/ld+json":1},mediaTypeFormats:{"application/json":"http://www.w3.org/ns/formats/JSON-LD","application/ld+json":"http://www.w3.org/ns/formats/JSON-LD"},priorityScale:.9,name:"urn:comunica:default:rdf-parse/actors#jsonld",bus:m}),new(r(14579).ActorRdfResolveHypermediaSparql)({mediatorHttp:ie,checkUrlSuffix:!0,forceHttpGet:!1,cacheSize:1024,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#sparql",bus:v}),new(r(54612).ActorRdfUpdateHypermediaPatchSparqlUpdate)({mediatorHttp:ie,name:"urn:comunica:default:rdf-update-hypermedia/actors#patch-sparql-update",bus:S}),new(r(17344).ActorRdfUpdateHypermediaPutLdp)({mediatorHttp:ie,mediatorRdfSerializeMediatypes:Y,mediatorRdfSerialize:J,name:"urn:comunica:default:rdf-update-hypermedia/actors#put-ldp",bus:S}),new(r(61908).ActorRdfUpdateHypermediaSparql)({mediatorHttp:ie,checkUrlSuffixSparql:!0,checkUrlSuffixUpdate:!0,name:"urn:comunica:default:rdf-update-hypermedia/actors#sparql",bus:S}),new(r(71111).ActorQueryOperationSparqlEndpoint)({mediatorHttp:ie,checkUrlSuffixSparql:!0,checkUrlSuffixUpdate:!0,forceHttpGet:!1,name:"urn:comunica:default:query-operation/actors#sparql-endpoint",bus:A}),new(r(8589).ActorQueryOperationAsk)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#ask",bus:A}),new(r(44185).ActorQueryOperationBgpJoin)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#bgp",bus:A}),new(r(32023).ActorQueryOperationConstruct)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#construct",bus:A}),new(r(26245).ActorQueryOperationDescribeSubject)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#describe",bus:A}),new(r(51245).ActorQueryOperationDistinctHash)({mediatorHashBindings:N,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#distinct",bus:A}),new(r(97320).ActorQueryOperationExtend)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#extend",bus:A}),new(r(29403).ActorQueryOperationFilterSparqlee)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#filter",bus:A}),new(r(17877).ActorQueryOperationFromQuad)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#from",bus:A}),new(r(7375).ActorQueryOperationGroup)({mediatorHashBindings:N,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#group",bus:A}),new(r(24675).ActorQueryOperationNop)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#nop",bus:A}),new(r(3438).ActorQueryOperationOrderBySparqlee)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#orderby",bus:A}),new(r(82491).ActorQueryOperationProject)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#project",bus:A}),new(r(86019).ActorQueryOperationReducedHash)({mediatorHashBindings:N,cacheSize:100,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#reduced",bus:A}),new(r(85900).ActorQueryOperationService)({forceSparqlEndpoint:!1,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#service",bus:A}),new(r(86069).ActorQueryOperationSlice)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#slice",bus:A}),new(r(54036).ActorQueryOperationUnion)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#union",bus:A}),new(r(956).ActorQueryOperationPathAlt)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-alt",bus:A}),new(r(60283).ActorQueryOperationPathInv)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-inv",bus:A}),new(r(2450).ActorQueryOperationPathLink)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-link",bus:A}),new(r(14985).ActorQueryOperationPathNps)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-nps",bus:A}),new(r(53346).ActorQueryOperationPathOneOrMore)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-one-or-more",bus:A}),new(r(54945).ActorQueryOperationPathZeroOrMore)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-zero-or-more",bus:A}),new(r(39079).ActorQueryOperationPathZeroOrOne)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-zero-or-one",bus:A}),new(r(71103).ActorQueryOperationClear)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-clear",bus:A}),new(r(46270).ActorQueryOperationAddRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-add",bus:A}),new(r(56690).ActorQueryOperationUpdateCompositeUpdate)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-composite",bus:A}),new(r(71852).ActorQueryOperationCopyRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-copy",bus:A}),new(r(17166).ActorQueryOperationCreate)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-create",bus:A}),new(r(6215).ActorQueryOperationUpdateDeleteInsert)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-delete-insert",bus:A}),new(r(54322).ActorQueryOperationDrop)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-drop",bus:A}),new(r(82965).ActorQueryOperationLoad)({mediatorUpdateQuads:te,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-load",bus:A}),new(r(69259).ActorQueryOperationMoveRewrite)({mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#update-move",bus:A}),new(r(39474).ActorRdfJoinMultiBind)({bindOrder:"depth-first",selectivityModifier:1e-4,mediatorJoinEntriesSort:q,mediatorQueryOperation:ae,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-bind",bus:R}),new(r(95117).ActorRdfJoinOptionalBind)({bindOrder:"depth-first",selectivityModifier:1e-4,mediatorQueryOperation:ae,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#optional-bind",bus:R}),new(r(1513).ActorQueryOperationJoin)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#join",bus:A}),new(r(42678).ActorQueryOperationLeftJoin)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#leftjoin",bus:A}),new(r(21530).ActorQueryOperationMinus)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#minus",bus:A}),new(r(14059).ActorQueryOperationPathSeq)({mediatorJoin:oe,mediatorQueryOperation:ae,name:"urn:comunica:default:query-operation/actors#path-seq",bus:A}),new(r(34442).ActorRdfJoinMultiSmallest)({mediatorJoinEntriesSort:q,mediatorJoin:oe,mediatorJoinSelectivity:V,name:"urn:comunica:default:rdf-join/actors#inner-multi-smallest",bus:R}),new(r(63632).ActorQueryOperationQuadpattern)({mediatorResolveQuadPattern:se,unionDefaultGraph:!1,name:"urn:comunica:default:query-operation/actors#quadpattern",bus:A}),new(r(87779).ActorRdfResolveQuadPatternFederated)({mediatorResolveQuadPattern:se,mediatorRdfMetadataAccumulate:$,skipEmptyPatterns:!1,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#federated",bus:I}),new(r(90106).ActorDereferenceHttp)({mediatorHttp:ie,maxAcceptHeaderLength:1024,maxAcceptHeaderLengthBrowser:128,name:"urn:comunica:default:dereference/actors#http",bus:l,beforeActors:[F]}),new(r(61357).ActorHttpProxy)({mediatorHttp:ie,name:"urn:comunica:default:http/actors#proxy",bus:E,beforeActors:[re]}),new(r(96226).ActorInitQuery)({mediatorOptimizeQueryOperation:j,mediatorQueryOperation:ae,mediatorQueryParse:C,mediatorQueryResultSerialize:M,mediatorQueryResultSerializeMediaTypeCombiner:L,mediatorQueryResultSerializeMediaTypeFormatCombiner:k,mediatorContextPreprocess:D,mediatorHttpInvalidate:ce,logger:n,defaultQueryInputFormat:"sparql",allowNoSources:!1,contextKeyShortcuts:{baseIRI:"@comunica/actor-init-query:baseIRI",datetime:"@comunica/actor-http-memento:datetime",destination:"@comunica/bus-rdf-update-quads:destination",explain:"@comunica/actor-init-query:explain",extensionFunctionCreator:"@comunica/actor-init-query:extensionFunctionCreator",extensionFunctions:"@comunica/actor-init-query:extensionFunctions",fetch:"@comunica/bus-http:fetch",functionArgumentsCache:"@comunica/actor-init-query:functionArgumentsCache",httpAuth:"@comunica/bus-http:auth",httpBodyTimeout:"@comunica/bus-http:http-body-timeout",httpIncludeCredentials:"@comunica/bus-http:include-credentials",httpProxyHandler:"@comunica/actor-http-proxy:httpProxyHandler",httpRetryCount:"@comunica/bus-http:http-retry-count",httpRetryDelay:"@comunica/bus-http:http-retry-delay",httpRetryOnServerError:"@comunica/bus-http:http-retry-on-server-error",httpTimeout:"@comunica/bus-http:http-timeout",initialBindings:"@comunica/actor-init-query:initialBindings",lenient:"@comunica/actor-init-query:lenient",log:"@comunica/core:log",queryFormat:"@comunica/actor-init-query:queryFormat",queryTimestamp:"@comunica/actor-init-query:queryTimestamp",readOnly:"@comunica/bus-query-operation:readOnly",recoverBrokenLinks:"@comunica/bus-http-wayback:recover-broken-links",source:"@comunica/bus-rdf-resolve-quad-pattern:source",sources:"@comunica/bus-rdf-resolve-quad-pattern:sources",unionDefaultGraph:"@comunica/bus-query-operation:unionDefaultGraph"},name:"urn:comunica:default:init/actors#query",bus:i})),fe=(new(r(14054).ActorRdfUpdateQuadsHypermedia)({cacheSize:100,httpInvalidator:ue,mediatorDereferenceRdf:U,mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorRdfUpdateHypermedia:ee,name:"urn:comunica:default:rdf-update-quads/actors#hypermedia",bus:O}),new(r(32008).ActorRdfResolveQuadPatternHypermedia)({cacheSize:100,httpInvalidator:le,maxIterators:64,aggregateStore:!1,mediatorDereferenceRdf:U,mediatorMetadata:Q,mediatorMetadataExtract:H,mediatorMetadataAccumulate:$,mediatorRdfResolveHypermedia:K,mediatorRdfResolveHypermediaLinks:X,mediatorRdfResolveHypermediaLinksQueue:W,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#hypermedia",bus:I})),ye=new(r(68058).ActionObserverHttp)({httpInvalidator:de,name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActorQueryResultSerializeSparqlJson.jsonld#ActorQueryResultSerializeSparqlJson_default_observer",bus:E}),ge=new(r(81801).ActionObserverHttp)({httpInvalidator:he,name:"https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActorQueryResultSerializeStats.jsonld#ActorQueryResultSerializeStats_default_observer",bus:E});new(r(68058).ActorQueryResultSerializeSparqlJson)({emitMetadata:!0,httpObserver:ye,mediaTypePriorities:{"application/sparql-results+json":.8},mediaTypeFormats:{"application/sparql-results+json":"http://www.w3.org/ns/formats/SPARQL_Results_JSON"},name:"urn:comunica:default:query-result-serialize/actors#sparql-json",bus:u}),new(r(81801).ActorQueryResultSerializeStats)({httpObserver:ge,mediaTypePriorities:{stats:.5},mediaTypeFormats:{stats:"https://comunica.linkeddatafragments.org/#results_stats"},name:"urn:comunica:default:query-result-serialize/actors#stats",bus:u}),new(r(62515).ActorRdfResolveQuadPatternRdfJsSource)({name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#rdfjs-source",bus:I,beforeActors:[fe]}),new(r(87798).ActorRdfResolveQuadPatternStringSource)({cacheSize:100,mediatorRdfParse:G,mediatorRdfResolveQuadPattern:se,name:"urn:comunica:default:rdf-resolve-quad-pattern/actors#string-source",bus:I,beforeActors:[fe]}),e.exports=pe},39901:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngine=void 0;const n=r(96226),i=r(73336);class a extends n.QueryEngineBase{constructor(e=i){super(e)}}t.QueryEngine=a},2159:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(39901),t)},33790:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractMediaTyped=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}async run(e){if("handle"in e){const t=e;return{handle:await this.runHandle(t.handle,t.handleMediaType,e.context)}}if("mediaTypes"in e)return{mediaTypes:await this.getMediaTypes(e.context)};if("mediaTypeFormats"in e)return{mediaTypeFormats:await this.getMediaTypeFormats(e.context)};throw new Error("Either a handle, mediaTypes or mediaTypeFormats action needs to be provided")}async test(e){if("handle"in e){const t=e;return{handle:await this.testHandle(t.handle,t.handleMediaType,e.context)}}if("mediaTypes"in e)return{mediaTypes:await this.testMediaType(e.context)};if("mediaTypeFormats"in e)return{mediaTypeFormats:await this.testMediaTypeFormats(e.context)};throw new Error("Either a handle, mediaTypes or mediaTypeFormats action needs to be provided")}}t.ActorAbstractMediaTyped=i},86171:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractMediaTypedFixed=void 0;const n=r(33790);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e);const t=this.priorityScale||0===this.priorityScale?this.priorityScale:1;this.mediaTypePriorities&&Object.entries(this.mediaTypePriorities).forEach((([e,r],n)=>{this.mediaTypePriorities[e]=t*r})),this.mediaTypePriorities=Object.freeze(this.mediaTypePriorities),this.mediaTypeFormats=Object.freeze(this.mediaTypeFormats)}async testHandle(e,t,r){if(!t||!(t in this.mediaTypePriorities))throw new Error(`Unrecognized media type: ${t}`);return await this.testHandleChecked(e,r)}async testMediaType(e){return!0}async getMediaTypes(e){return this.mediaTypePriorities}async testMediaTypeFormats(e){return!0}async getMediaTypeFormats(e){return this.mediaTypeFormats}}t.ActorAbstractMediaTypedFixed=i},89208:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33790),t),i(r(86171),t)},51573:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorAbstractPath=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(89227),s=r(91194),c=r(6053),u=r(6789),l=r(55846),d=new s.DataFactory,h=new n.BindingsFactory;class p extends i.ActorQueryOperationTypedMediated{constructor(e,t){super(e,"path"),this.predicateType=t}async testOperation(e,t){if(e.predicate.type!==this.predicateType)throw new Error(`This Actor only supports ${this.predicateType} Path operations.`);return!0}generateVariable(e,t){return t?!e||e.subject.value!==t&&e.object.value!==t?d.variable(t):this.generateVariable(e,`${t}b`):this.generateVariable(e,"b")}async isPathArbitraryLengthDistinct(e,t){return e.get(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey)?{context:e=e.set(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey,!1),operation:void 0}:{context:e=e.set(a.KeysQueryOperation.isPathArbitraryLengthDistinctKey,!0),operation:i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:p.FACTORY.createDistinct(t),context:e}))}}async predicateStarGraphVariable(e,t,r,n,a){const s=this.generateVariable(p.FACTORY.createPath(e,r,t,n)),c=p.FACTORY.createUnion([p.FACTORY.createPattern(e,s,t,n),p.FACTORY.createPattern(t,s,e,n)]),u=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:a,operation:c})),l=new Set;return{bindingsStream:new o.MultiTransformIterator(u.bindingsStream,{multiTransform:i=>{const s=i.get(n);return l.has(s.value)?new o.EmptyIterator:(l.add(s.value),new o.TransformIterator((async()=>{const i=new o.BufferedIterator;return await this.getObjectsPredicateStar(e,r,s,a,{},i,{count:0}),i.transform({transform(e,r,i){i(h.bindings([[t,e],[n,s]])),r()}})}),{maxBufferSize:128}))},autoStart:!1}),metadata:u.metadata}}async getObjectsPredicateStarEval(e,t,r,n,i,a){if("Variable"===n.termType)return this.predicateStarGraphVariable(e,r,t,n,i);const o=new l.PathVariableObjectIterator(e,t,n,i,this.mediatorQueryOperation,a);return{bindingsStream:o.transform({autoStart:!1,transform(e,t,n){n(h.bindings([[r,e]])),t()}}),async metadata(){const e=await new Promise((e=>{o.getProperty("metadata",(t=>e(t())))}));return e.cardinality.value++,e}}}async getObjectsPredicateStar(e,t,r,n,a,o,s){const u=(0,c.termToString)(e);if(a[u])return;o._push(e),a[u]=e,s.count++;const l=this.generateVariable(),d=p.FACTORY.createPath(e,t,l,r),h=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:d,context:n}));return h.bindingsStream.on("data",(async e=>{const i=e.get(l);await this.getObjectsPredicateStar(i,t,r,n,a,o,s)})),h.bindingsStream.on("end",(()=>{0==--s.count&&o.close()})),h.metadata}async getSubjectAndObjectBindingsPredicateStar(e,t,r,n,a,o,s,u,l,d,f){const y=(0,c.termToString)(n)+(0,c.termToString)(o);if(l[y])return;if(f.count++,l[y]=!0,d._push(h.bindings([[e,r],[t,n]])),y in u){const n=await u[y];for(const i of n)await this.getSubjectAndObjectBindingsPredicateStar(e,t,r,i,a,o,s,u,l,d,f);return void(0==--f.count&&d.close())}const g=new Promise((async(c,h)=>{const y=[],g=this.generateVariable(),m=p.FACTORY.createPath(n,a,g,o),b=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:m,context:s}));b.bindingsStream.on("data",(async n=>{const i=n.get(g);y.push(i),await this.getSubjectAndObjectBindingsPredicateStar(e,t,r,i,a,o,s,u,l,d,f)})),b.bindingsStream.on("error",h),b.bindingsStream.on("end",(()=>{0==--f.count&&d.close(),c(y)}))}));u[y]=g}}t.ActorAbstractPath=p,p.FACTORY=new u.Factory},55846:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PathVariableObjectIterator=void 0;const n=r(83814),i=r(89227),a=r(91194),o=r(6053),s=r(6789),c=new a.DataFactory,u=new s.Factory;class l extends i.BufferedIterator{constructor(e,t,r,n,i,a,o=16){super({autoStart:!0}),this.subject=e,this.predicate=t,this.graph=r,this.context=n,this.mediatorQueryOperation=i,this.maxRunningOperations=o,this.termHashes=new Map,this.runningOperations=[],this.pendingOperations=[],this._push(this.subject,a)}_end(e){for(const e of this.runningOperations)e.destroy();super._end(e)}_push(e,t=!0){let r;if(t&&(r=(0,o.termToString)(e),this.termHashes.has(r)))return;const n=c.variable("b");this.pendingOperations.push({variable:n,operation:u.createPath(e,this.predicate,n,this.graph)}),r&&(this.termHashes.set(r,e),super._push(e))}_read(e,t){const r=this;(async function(){for(;r.runningOperations.lengthr.destroy(e))),i.on("readable",(()=>{r.readable=!0,r._fillBufferAsync()})),i.on("end",(()=>{r.runningOperations.splice(r.runningOperations.indexOf(i),1),r.readable=!0,r._fillBufferAsync()}))),r.setProperty("metadata",t.metadata)}let t,i=0;for(;i!==(i=e);)for(let n=0;n0;n++)null!==(t=r.runningOperations[n].read())&&(e--,r._push(t));0===r.runningOperations.length&&0===r.pendingOperations.length&&r.close()})().then((()=>{t()}),(e=>this.destroy(e)))}}t.PathVariableObjectIterator=l},26622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(51573),t),i(r(55846),t)},35320:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorContextPreprocessSourceToDestination=void 0;const n=r(20846),i=r(78470);class a extends n.ActorContextPreprocess{constructor(e){super(e)}async test(e){return!0}async run(e){if(e.context.get(i.KeysRdfResolveQuadPattern.sources)&&!e.context.get(i.KeysRdfUpdateQuads.destination)){const t=e.context.get(i.KeysRdfResolveQuadPattern.sources);if(1===t.length)return{context:e.context.set(i.KeysRdfUpdateQuads.destination,t[0])}}return e}}t.ActorContextPreprocessSourceToDestination=a},76400:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35320),t)},68327:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceFallback=void 0;const n=r(14402);class i extends n.ActorDereference{constructor(e){super(e)}async test(e){return!0}async run(e){return this.handleDereferenceErrors(e,new Error(`Could not dereference '${e.url}'`))}}t.ActorDereferenceFallback=i},24154:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(68327),t)},43800:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceHttp=void 0;const n=r(27734);class i extends n.ActorDereferenceHttpBase{getMaxAcceptHeaderLength(){return this.maxAcceptHeaderLengthBrowser}}t.ActorDereferenceHttp=i},27734:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceHttpBase=t.mediaTypesToAcceptString=void 0;const n=r(14402),i=r(80389),a=r(96279),o=r(84690),s=r(29038),c=/^[^ ;]*/u;function u(e,t){const r=[],n=Object.entries(e).map((([e,t])=>({mediaType:e,priority:t}))).sort(((e,t)=>t.priority===e.priority?e.mediaType.localeCompare(t.mediaType):t.priority-e.priority));let i=n.length-1;for(const{mediaType:e,priority:a}of n){const n=e+(1!==a?`;q=${a.toFixed(3).replace(/0*$/u,"")}`:"");if(i+n.length>t){for(;i+9>t;)i-=(r.pop()||"").length+1;r.push("*/*;q=0.1");break}r.push(n),i+=n.length}return 0===r.length?"*/*":r.join(",")}t.mediaTypesToAcceptString=u;class l extends n.ActorDereference{constructor(e){super(e)}async test({url:e}){if(!/^https?:/u.test(e))throw new Error(`Cannot retrieve ${e} because it is not an HTTP(S) URL.`);return!0}async run(e){let t=!0;const r=new a.Headers(e.headers);let l;r.append("Accept",u(await(e.mediaTypes?.())??{},this.getMaxAcceptHeaderLength()));const d=Date.now();try{l=await this.mediatorHttp.mediate({context:e.context,init:{headers:r,method:e.method},input:e.url})}catch(t){return this.handleDereferenceErrors(e,t)}const h=(0,o.resolve)(l.url,e.url),p=Date.now()-d;if(200!==l.status){t=!1;const r=l.body?await s(i.ActorHttp.toNodeReadable(l.body)):"empty response";if(!e.acceptErrors){const t=new Error(`Could not retrieve ${e.url} (HTTP status ${l.status}):\n${r}`);return this.handleDereferenceErrors(e,t,l.headers,p)}}const f=c.exec(l.headers.get("content-type")??"")?.[0];return{url:h,data:t?i.ActorHttp.toNodeReadable(l.body):(0,n.emptyReadable)(),exists:t,requestTime:p,headers:l.headers,mediaType:"text/plain"!==f?f:void 0}}}t.ActorDereferenceHttpBase=l},90106:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(43800),t),i(r(27734),t)},84295:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceRdfParse=void 0;const n=r(20961);class i extends n.ActorDereferenceRdf{constructor(e){super(e)}async getMetadata(e){return{baseIRI:e.url}}}t.ActorDereferenceRdfParse=i},82950:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84295),t)},84699:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHashBindingsSha1=void 0;const n=r(47582),i=r(34485),a=r(6053),o=r(93344);class s extends n.ActorHashBindings{async test(e){if(!e.allowHashCollisions)throw new Error(`Actor ${this.name} can not provide hash functions without hash collisions`);return!0}async run(e){return{hashFunction:e=>(0,i.sha1)().update(o(Object.fromEntries([...e].map((([e,t])=>[(0,a.termToString)(e),(0,a.termToString)(t)]))))).digest("hex"),hashCollisions:!0}}}t.ActorHashBindingsSha1=s},82738:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84699),t)},65793:(e,t,r)=>{"use strict";var n=r(48834).Buffer;Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpFetch=void 0;const i=r(80389),a=r(78470);r(43616);const o=r(73343);class s extends i.ActorHttp{constructor(e){super(e),this.userAgent=s.createUserAgent(),this.fetchInitPreprocessor=new o.FetchInitPreprocessor(e.agentOptions)}static createUserAgent(){return`Comunica/actor-http-fetch (${void 0===globalThis.navigator?`Node.js ${process.version}; ${process.platform}`:`Browser-${globalThis.navigator.userAgent}`})`}async test(e){return{time:Number.POSITIVE_INFINITY}}static async getResponse(e,t,r,n,i,a){let o,s=n+1;for(;s-- >0;)try{const n=await e(t,r);if(a&&n.status>=500&&n.status<600)throw new Error(`Server replied with response code ${n.status}: ${n.statusText}`);return n}catch(e){if(o=e,r.signal?.aborted)throw e;s>0&&await new Promise(((e,t)=>{setTimeout(e,i),r.signal?.addEventListener("abort",(()=>{t(new Error("Fetch aborted by timeout."))}))}))}throw n>0?new Error(`Number of fetch retries (${n}) exceeded. Last error: ${String(o)}`):o}async run(e){const t=e.init?.headers??{};e.init=e.init??{},e.init.headers=new Headers(t),e.init.headers.has("user-agent")||e.init.headers.append("user-agent",this.userAgent);const r=e.context.get(a.KeysHttp.auth);r&&e.init.headers.append("Authorization",`Basic ${n.from(r).toString("base64")}`),this.logInfo(e.context,`Requesting ${"string"==typeof e.input?e.input:e.input.url}`,(()=>({headers:i.ActorHttp.headersToHash(new Headers(e.init.headers)),method:e.init.method||"GET"}))),e.init?.headers&&"append"in e.init.headers&&e.context.has(a.KeysHttp.fetch)&&(e.init.headers=i.ActorHttp.headersToHash(e.init.headers));let o={...e.init};e.context.get(a.KeysHttp.includeCredentials)&&(o.credentials="include");const c=e.context?.get(a.KeysHttp.httpTimeout);let u,l;if(void 0!==c){const e=await this.fetchInitPreprocessor.createAbortController();o.signal=e.signal,l=()=>e.abort(),u=setTimeout((()=>l()),c)}try{o=await this.fetchInitPreprocessor.handle(o);const t=e.context?.get(a.KeysHttp.httpRetryCount)??0,r=e.context?.get(a.KeysHttp.httpRetryDelay)??0,n=e.context?.get(a.KeysHttp.httpRetryOnServerError)??!1,i=e.context?.get(a.KeysHttp.fetch),c=await s.getResponse(i||fetch,e.input,o,t,r,n);return void 0!==u&&(e.context?.get(a.KeysHttp.httpBodyTimeout)&&c.body?(l=()=>c.body?.cancel(new Error(`HTTP timeout when reading the body of ${c.url}.\nThis error can be disabled by modifying the 'httpBodyTimeout' and/or 'httpTimeout' options.`)),c.body.on("close",(()=>{clearTimeout(u)}))):clearTimeout(u)),c.body&&!c.body.cancel&&(c.body.cancel=async e=>{c.body.destroy(e),void 0!==u&&clearTimeout(u)}),c}catch(e){throw void 0!==u&&clearTimeout(u),e}}}t.ActorHttpFetch=s},73343:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchInitPreprocessor=void 0;const n=r(80389);t.FetchInitPreprocessor=class{async handle(e){if(e.headers){const t=new Headers(e.headers);t.has("user-agent")&&t.delete("user-agent"),e.headers=t}if(e?.headers&&"append"in e.headers&&(e.headers=n.ActorHttp.headersToHash(e.headers)),e.body&&"string"!=typeof e.body&&"getReader"in e.body){const t=e.body.getReader(),r=[];for(;;){const{done:e,value:n}=await t.read();if(e)break;r.push(n)}e.body=r.join("")}return{keepalive:!e.body,...e}}async createAbortController(){return new AbortController}}},67951:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(65793),t)},22360:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpProxy=void 0;const n=r(80389),i=r(78470);class a extends n.ActorHttp{constructor(e){super(e)}async test(e){const t=e.context.get(i.KeysHttpProxy.httpProxyHandler);if(!t)throw new Error(`Actor ${this.name} could not find a proxy handler in the context.`);if(!await t.getProxy(e))throw new Error(`Actor ${this.name} could not determine a proxy for the given request.`);return{time:Number.POSITIVE_INFINITY}}async run(e){const t="string"==typeof e.input?e.input:e.input.url,r=e.context.get(i.KeysHttpProxy.httpProxyHandler),n=await this.mediatorHttp.mediate({...await r.getProxy(e),context:e.context.delete(i.KeysHttpProxy.httpProxyHandler)});return Object.defineProperty(n,"url",{configurable:!0,enumerable:!0,get:()=>n.headers.get("x-final-url")??t}),n}}t.ActorHttpProxy=a},61852:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ProxyHandlerStatic=void 0,t.ProxyHandlerStatic=class{constructor(e){this.prefixUrl=e}async getProxy(e){return{init:e.init,input:this.modifyInput(e.input)}}modifyInput(e){return"string"==typeof e?this.prefixUrl+e:new Request(this.prefixUrl+e.url,e)}}},61357:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22360),t),i(r(61852),t)},77224:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpWayback=void 0;const n=r(80389),i=r(78470),a=r(29038);r(43616);const o="http://wayback.archive-it.org/";function s(e){const t=new Request(e.input,e.init);return{input:new Request(new URL(`/${t.url}`,o),t)}}function c(e){const t=e.get(i.KeysHttpProxy.httpProxyHandler);return t?e=>t.getProxy(s(e)):e=>Promise.resolve(s(e))}class u extends n.ActorHttp{constructor(e){super(e)}async test(e){return!0}async run(e){let t=await this.mediatorHttp.mediate(e);if(404===t.status&&e.context.get(i.KeysHttpWayback.recoverBrokenLinks)){let r=await this.mediatorHttp.mediate({...e,context:e.context.set(i.KeysHttpWayback.recoverBrokenLinks,!1).set(i.KeysHttpProxy.httpProxyHandler,{getProxy:c(e.context)})});200===r.status&&([t,r]=[r,t]);const{body:o}=r;o&&("destroy"in o&&"function"==typeof o.destroy?o.destroy():await a(n.ActorHttp.toNodeReadable(r.body)))}return t}}t.ActorHttpWayback=u},16949:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77224),t)},13757:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInitQuery=void 0;const n=r(4739);"undefined"==typeof process&&(globalThis.process=r(34406));class i extends n.ActorInitQueryBase{}t.ActorInitQuery=i},4739:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInitQueryBase=void 0;const n=r(40104);class i extends n.ActorInit{constructor(e){e.contextKeyShortcutsExtensions?.forEach((t=>{if(Object.keys(e.contextKeyShortcuts).some((e=>Object.keys(t).includes(e))))throw new Error("Duplicate keys found while adding `contextKeyShortcutsExtensions`.");e.contextKeyShortcuts={...e.contextKeyShortcuts,...t}})),super(e)}async test(e){return!0}async run(e){throw new Error("ActorInitSparql#run is not supported in the browser.")}}t.ActorInitQueryBase=i},78332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MemoryPhysicalQueryPlanLogger=void 0;const n=r(6053);t.MemoryPhysicalQueryPlanLogger=class{constructor(){this.children=new Map}logOperation(e,t,r,n,i,a){const o={actor:i,logicalOperator:e,physicalOperator:t,rawNode:r,children:[],metadata:a};if(this.children.set(r,o.children),this.rootNode){if(!n)throw new Error("Detected more than one parent-less node");const e=this.children.get(n);if(!e)throw new Error("Could not find parent node");e.push(o)}else{if(n)throw new Error("No root node has been set yet, while a parent is being referenced");this.rootNode=o}}toJson(){return this.rootNode?this.planNodeToJson(this.rootNode):{}}planNodeToJson(e){return{logical:e.logicalOperator,physical:e.physicalOperator,...this.getLogicalMetadata(e.rawNode),...e.metadata,...e.children.length>0?{children:e.children.map((e=>this.planNodeToJson(e)))}:{}}}getLogicalMetadata(e){if("type"in e){const t=e;switch(t.type){case"pattern":return{pattern:this.quadToString(t)};case"project":return{variables:t.variables.map((e=>e.value))}}}return{}}quadToString(e){return`${(0,n.termToString)(e.subject)} ${(0,n.termToString)(e.predicate)} ${(0,n.termToString)(e.object)}${"DefaultGraph"===e.graph.termType?"":` ${(0,n.termToString)(e.graph)}`}`}}},53451:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngineBase=void 0;const n=r(83814),i=r(78470),a=r(21049),o=r(78332);class s{constructor(e){this.actorInitQuery=e,this.defaultFunctionArgumentsCache={}}async queryBindings(e,t){return this.queryOfType(e,t,"bindings")}async queryQuads(e,t){return this.queryOfType(e,t,"quads")}async queryBoolean(e,t){return this.queryOfType(e,t,"boolean")}async queryVoid(e,t){return this.queryOfType(e,t,"void")}async queryOfType(e,t,r){const n=await this.query(e,t);if(n.resultType===r)return await n.execute();throw new Error(`Query result type '${r}' was expected, while '${n.resultType}' was found.`)}async query(e,t){const r=await this.queryOrExplain(e,t);if("explain"in r)throw new Error("Tried to explain a query when in query-only mode");return r}async explain(e,t,r){return t.explain=r,await this.queryOrExplain(e,t)}async queryOrExplain(e,t){t=t||{};for(const e in t)this.actorInitQuery.contextKeyShortcuts[e]&&(t[this.actorInitQuery.contextKeyShortcuts[e]]=t[e],delete t[e]);let r=new a.ActionContext(t),c={language:"sparql",version:"1.1"};r.has(i.KeysInitQuery.queryFormat)&&(c=r.get(i.KeysInitQuery.queryFormat),r=r.delete(i.KeysInitQuery.queryFormat),"graphql"===c.language&&(r=r.setDefault(i.KeysInitQuery.graphqlSingularizeVariables,{})));const u=r.get(i.KeysInitQuery.baseIRI);r=r.setDefault(i.KeysInitQuery.queryTimestamp,new Date).setDefault(i.KeysRdfResolveQuadPattern.sourceIds,new Map).setDefault(i.KeysCore.log,this.actorInitQuery.logger).setDefault(i.KeysInitQuery.functionArgumentsCache,this.defaultFunctionArgumentsCache).setDefault(i.KeysRdfResolveQuadPattern.hypermediaSourcesAggregatedStores,new Map),r=(await this.actorInitQuery.mediatorContextPreprocess.mediate({context:r})).context;const l=r.get(i.KeysInitQuery.explain);let d;if("string"==typeof e){r=r.set(i.KeysInitQuery.queryString,e);const t=await this.actorInitQuery.mediatorQueryParse.mediate({context:r,query:e,queryFormat:c,baseIRI:u});d=t.operation,t.baseIRI&&(r=r.set(i.KeysInitQuery.baseIRI,t.baseIRI))}else d=e;if("parsed"===l)return{explain:!0,type:l,data:d};r.has(i.KeysInitQuery.initialBindings)&&(d=(0,n.materializeOperation)(d,r.get(i.KeysInitQuery.initialBindings)),r=r.delete(i.KeysInitQuery.queryString));const h=await this.actorInitQuery.mediatorOptimizeQueryOperation.mediate({context:r,operation:d});if(d=h.operation,r=h.context||r,"logical"===l)return{explain:!0,type:l,data:d};let p;r=r.set(i.KeysInitQuery.query,d),"physical"===l&&(p=new o.MemoryPhysicalQueryPlanLogger,r=r.set(i.KeysInitQuery.physicalQueryPlanLogger,p));const f=await this.actorInitQuery.mediatorQueryOperation.mediate({context:r,operation:d});f.context=r;const y=s.internalToFinalResult(f);if(p){switch(y.resultType){case"bindings":case"quads":await(await y.execute()).toArray();break;case"boolean":case"void":await y.execute()}return{explain:!0,type:l,data:p.toJson()}}return y}async getResultMediaTypes(e){return e=a.ActionContext.ensureActionContext(e),(await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeCombiner.mediate({context:e,mediaTypes:!0})).mediaTypes}async getResultMediaTypeFormats(e){return e=a.ActionContext.ensureActionContext(e),(await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeFormatCombiner.mediate({context:e,mediaTypeFormats:!0})).mediaTypeFormats}async resultToString(e,t,r){if(r=a.ActionContext.ensureActionContext(r),!t)switch(e.resultType){case"bindings":t="application/json";break;case"quads":t="application/trig";break;default:t="simple"}const n={...await s.finalToInternalResult(e),context:r};return(await this.actorInitQuery.mediatorQueryResultSerialize.mediate({context:r,handle:n,handleMediaType:t})).handle}invalidateHttpCache(e,t){return t=a.ActionContext.ensureActionContext(t),this.actorInitQuery.mediatorHttpInvalidate.mediate({url:e,context:t})}static internalToFinalResult(e){switch(e.type){case"bindings":return{resultType:"bindings",execute:async()=>e.bindingsStream,metadata:async()=>await e.metadata(),context:e.context};case"quads":return{resultType:"quads",execute:async()=>e.quadStream,metadata:async()=>await e.metadata(),context:e.context};case"boolean":return{resultType:"boolean",execute:async()=>e.execute(),context:e.context};case"void":return{resultType:"void",execute:async()=>e.execute(),context:e.context}}}static async finalToInternalResult(e){switch(e.resultType){case"bindings":return{type:"bindings",bindingsStream:await e.execute(),metadata:async()=>await e.metadata()};case"quads":return{type:"quads",quadStream:await e.execute(),metadata:async()=>await e.metadata()};case"boolean":return{type:"boolean",execute:()=>e.execute()};case"void":return{type:"void",execute:()=>e.execute()}}}}t.QueryEngineBase=s},96226:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryEngineBase=void 0,i(r(4739),t),i(r(13757),t);var a=r(53451);Object.defineProperty(t,"QueryEngineBase",{enumerable:!0,get:function(){return a.QueryEngineBase}})},5309:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationBgpToJoin=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{bgp:(e,t)=>({recurse:!1,result:t.createJoin(e.patterns)})}),context:e.context}}}t.ActorOptimizeQueryOperationBgpToJoin=a},1525:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5309),t)},84778:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationJoinBgp=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{join:(e,t)=>e.input.every((e=>"bgp"===e.type))?{recurse:!1,result:t.createBgp(e.input.flatMap((e=>e.patterns)))}:{recurse:!1,result:e}}),context:e.context}}}t.ActorOptimizeQueryOperationJoinBgp=a},68723:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(84778),t)},30230:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperationJoinConnected=void 0;const n=r(9302),i=r(6789);class a extends n.ActorOptimizeQueryOperation{async test(e){return!0}async run(e){return{operation:i.Util.mapOperation(e.operation,{join:(e,t)=>({recurse:!1,result:a.cluster(e,t)})}),context:e.context}}static cluster(e,t){let r,n=e.input.map((e=>({inScopeVariables:Object.fromEntries(i.Util.inScopeVariables(e).map((e=>[e.value,!0]))),entries:[e]})));do{r=n,n=a.clusterIteration(r)}while(r.length!==n.length);const o=n.map((e=>t.createJoin(e.entries)));return 1===o.length?o[0]:t.createJoin(o,!1)}static clusterIteration(e){const t=[];for(const r of e){let e=!1;for(const n of t)if(a.haveOverlappingVariables(r.inScopeVariables,n.inScopeVariables)){n.entries=[...n.entries,...r.entries],n.inScopeVariables={...n.inScopeVariables,...r.inScopeVariables},e=!0;break}e||t.push({inScopeVariables:r.inScopeVariables,entries:r.entries})}return t}static haveOverlappingVariables(e,t){for(const r of Object.keys(e))if(t[r])return!0;return!1}}t.ActorOptimizeQueryOperationJoinConnected=a},67768:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(30230),t)},83094:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationAsk=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"ask")}async testOperation(e,t){return!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),{bindingsStream:i}=n.ActorQueryOperation.getSafeBindings(r);return{type:"boolean",execute:async()=>1===(await i.take(1).toArray()).length}}}t.ActorQueryOperationAsk=i},8589:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(83094),t)},51238:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationBgpJoin=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"bgp")}async testOperation(e,t){return!0}async runOperation(e,t){return this.mediatorQueryOperation.mediate({operation:a.FACTORY.createJoin(e.patterns),context:t})}}t.ActorQueryOperationBgpJoin=a,a.FACTORY=new i.Factory},44185:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(51238),t)},13804:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationConstruct=void 0;const n=r(83814),i=r(98086),a=r(6789),o=r(86031);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"construct")}static getVariables(e){return(0,i.uniqTerms)([].concat.apply([],e.map((e=>(0,i.getVariables)((0,i.getTermsNested)(e))))))}async testOperation(e,t){return!0}async runOperation(e,t){const r=s.getVariables(e.template),i={type:a.Algebra.types.PROJECT,input:e.input,variables:r},c=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:i,context:t}));return{metadata:()=>c.metadata().then((t=>({...t,order:void 0,cardinality:{type:t.cardinality.type,value:t.cardinality.value*e.template.length},canContainUndefs:!1,availableOrders:void 0}))),quadStream:new o.BindingsToQuadsIterator(e.template,c.bindingsStream),type:"quads"}}}t.ActorQueryOperationConstruct=s},86031:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsToQuadsIterator=void 0;const n=r(89227),i=r(91194),a=r(98086),o=new i.DataFactory;class s extends n.MultiTransformIterator{constructor(e,t){super(t,{autoStart:!1}),this.template=e,this.blankNodeCounter=0}static bindTerm(e,t){return"Variable"===t.termType?e.get(t):t}static bindQuad(e,t){try{return(0,a.mapTermsNested)(t,(t=>{const r=s.bindTerm(e,t);if(!r)throw new Error("Unbound term");return r}))}catch{}}static localizeBlankNode(e,t){return"BlankNode"===t.termType?o.blankNode(`${t.value}${e}`):t}static localizeQuad(e,t){return(0,a.mapTermsNested)(t,(t=>s.localizeBlankNode(e,t)))}bindTemplate(e,t,r){return t.map(s.localizeQuad.bind(null,r)).map((t=>s.bindQuad.bind(null,e)(t))).filter(Boolean)}_createTransformer(e){return new n.ArrayIterator(this.bindTemplate(e,this.template,this.blankNodeCounter++),{autoStart:!1})}}t.BindingsToQuadsIterator=s},32023:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(13804),t),i(r(86031),t)},6159:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDescribeSubject=void 0;const n=r(54036),i=r(83814),a=r(89227),o=r(91194),s=r(6789),c=new o.DataFactory;class u extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"describe")}async testOperation(e,t){return!0}async runOperation(e,t){const r=e.terms.filter((e=>"Variable"!==e.termType)).map((e=>{const t=[c.quad(e,c.variable("__predicate"),c.variable("__object"))];return t.forEach((e=>e.type="pattern")),{input:{type:s.Algebra.types.BGP,patterns:t},template:t,type:"construct"}}));if(r.length!==e.terms.length){let t=[];e.terms.filter((e=>"Variable"===e.termType)).forEach(((e,r)=>{const n=[c.quad(e,c.variable(`__predicate${r}`),c.variable(`__object${r}`))];n.forEach((e=>e.type="pattern")),t=[...t,...n]})),r.push({input:{type:s.Algebra.types.JOIN,input:[e.input,{type:s.Algebra.types.BGP,patterns:t}]},template:t,type:s.Algebra.types.CONSTRUCT})}const o=(await Promise.all(r.map((e=>this.mediatorQueryOperation.mediate({operation:e,context:t}))))).map(i.ActorQueryOperation.getSafeQuads);return{type:"quads",quadStream:new a.UnionIterator(o.map((e=>e.quadStream)),{autoStart:!1}),metadata:()=>Promise.all(o.map((e=>e.metadata()))).then((e=>n.ActorQueryOperationUnion.unionMetadata(e,!1)))}}}t.ActorQueryOperationDescribeSubject=u},26245:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(6159),t)},39794:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDistinctHash=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"distinct")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t}));return{type:"bindings",bindingsStream:r.bindingsStream.filter(await this.newHashFilter(t)),metadata:r.metadata}}async newHashFilter(e){const{hashFunction:t}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:e}),r={};return e=>{const n=t(e);return!(n in r)&&(r[n]=!0)}}}t.ActorQueryOperationDistinctHash=i},51245:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(39794),t)},50487:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationExtend=void 0;const n=r(79550),i=r(83814),a=r(89206);class o extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"extend")}async testOperation(e,t){return Boolean(new a.AsyncEvaluator(e.expression,i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation))),!0}async runOperation(e,t){const{expression:r,input:o,variable:s}=e,c=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:o,context:t}));if((await c.metadata()).variables.some((e=>e.equals(s))))throw new Error(`Illegal binding to variable '${s.value}' that has already been bound`);const u={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},l=new a.AsyncEvaluator(r,u),d=c.bindingsStream.transform({autoStart:!1,transform:async(e,r,i)=>{try{const t=await l.evaluate(e);i(e.set(s,t))}catch(r){(0,a.isExpressionError)(r)?(i(e),this.logWarn(t,`Expression error for extend operation (${r.message})with bindings '${(0,n.bindingsToString)(e)}'`)):d.emit("error",r)}r()}});return{type:"bindings",bindingsStream:d,async metadata(){const e=await c.metadata();return{...e,variables:[...e.variables,s]}}}}}t.ActorQueryOperationExtend=o},97320:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50487),t)},25534:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationFilterSparqlee=void 0;const n=r(79550),i=r(83814),a=r(89206);class o extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"filter")}async testOperation(e,t){const r={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)};return new a.AsyncEvaluator(e.expression,r),!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),o=i.ActorQueryOperation.getSafeBindings(r);i.ActorQueryOperation.validateQueryOutput(o,"bindings");const s={...i.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},c=new a.AsyncEvaluator(e.expression,s),u=o.bindingsStream.transform({transform:async(e,r,i)=>{try{await c.evaluateAsEBV(e)&&i(e)}catch(r){(0,a.isExpressionError)(r)?this.logWarn(t,"Error occurred while filtering.",(()=>({error:r,bindings:(0,n.bindingsToString)(e)}))):u.emit("error",r)}r()},autoStart:!1});return{type:"bindings",bindingsStream:u,metadata:o.metadata}}}t.ActorQueryOperationFilterSparqlee=o},29403:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25534),t)},85005:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationFromQuad=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"from")}static copyOperation(e,t){const r={};for(const n of Object.keys(e))Array.isArray(e[n])&&"template"!==n?r[n]="variables"===n?e[n]:e[n].map(t):a.ALGEBRA_TYPES.includes(e[n].type)?r[n]=t(e[n]):r[n]=e[n];return r}static applyOperationDefaultGraph(e,t){if("bgp"===e.type&&e.patterns.length>0||"path"===e.type||"pattern"===e.type){if("bgp"===e.type)return a.joinOperations(e.patterns.map((e=>{if("DefaultGraph"!==e.graph.termType)return a.FACTORY.createBgp([e]);const r=t.map((t=>a.FACTORY.createBgp([a.FACTORY.createPattern(e.subject,e.predicate,e.object,t)])));return a.unionOperations(r)})));if("DefaultGraph"!==e.graph.termType)return e;const r=t.map((t=>"path"===e.type?a.FACTORY.createPath(e.subject,e.predicate,e.object,t):a.FACTORY.createPattern(e.subject,e.predicate,e.object,t)));return a.unionOperations(r)}return a.copyOperation(e,(e=>this.applyOperationDefaultGraph(e,t)))}static applyOperationNamedGraph(e,t,r){if("bgp"===e.type&&e.patterns.length>0||"path"===e.type||"pattern"===e.type){const n="bgp"===e.type?e.patterns[0].graph:e.graph;if("DefaultGraph"===n.termType)return{type:i.Algebra.types.BGP,patterns:[]};if("Variable"===n.termType){if(1===t.length){const r=t[0],i={};i[`?${n.value}`]=r;const o=a.FACTORY.createValues([n],[i]);let s;return s="bgp"===e.type?a.FACTORY.createBgp(e.patterns.map((e=>a.FACTORY.createPattern(e.subject,e.predicate,e.object,r)))):"path"===e.type?a.FACTORY.createPath(e.subject,e.predicate,e.object,r):a.FACTORY.createPattern(e.subject,e.predicate,e.object,r),a.FACTORY.createJoin([o,s])}return a.unionOperations(t.map((t=>a.applyOperationNamedGraph(e,[t],r))))}return[...t,...r].some((e=>e.equals(n)))?e:{type:i.Algebra.types.BGP,patterns:[]}}return a.copyOperation(e,(e=>this.applyOperationNamedGraph(e,t,r)))}static joinOperations(e){if(1===e.length)return e[0];if(e.length>1)return a.FACTORY.createJoin(e);throw new Error("A join can only be applied on at least one operation")}static unionOperations(e){if(1===e.length)return e[0];if(e.length>1)return a.FACTORY.createUnion(e);throw new Error("A union can only be applied on at least one operation")}static createOperation(e){let t=e.input;return e.default.length>0&&(t=a.applyOperationDefaultGraph(t,e.default)),(e.named.length>0||e.default.length>0)&&(t=a.applyOperationNamedGraph(t,e.named,e.default)),t}async testOperation(e,t){return!0}async runOperation(e,t){const r=a.createOperation(e);return this.mediatorQueryOperation.mediate({operation:r,context:t})}}t.ActorQueryOperationFromQuad=a,a.FACTORY=new i.Factory,a.ALGEBRA_TYPES=Object.keys(i.Algebra.types).map((e=>i.Algebra.types[e]))},17877:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85005),t)},90323:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationGroup=void 0;const n=r(83814),i=r(89206),a=r(89227),o=r(29749);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"group")}async testOperation(e,t){for(const r of e.aggregates)new i.AsyncEvaluator(r.expression,n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation));return!0}async runOperation(e,t){const{hashFunction:r}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:t}),{input:i,aggregates:s}=e,c=await this.mediatorQueryOperation.mediate({operation:i,context:t}),u=n.ActorQueryOperation.getSafeBindings(c),l=[...e.variables,...s.map((e=>e.variable))],d=n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation);return{type:"bindings",bindingsStream:new a.TransformIterator((()=>new Promise(((t,n)=>{const i=new o.GroupsState(r,e,d);u.bindingsStream.on("end",(async()=>{try{const e=new a.ArrayIterator(await i.collectResults(),{autoStart:!1});t(e)}catch(e){n(e)}})),u.bindingsStream.on("error",n),u.bindingsStream.on("data",(e=>{i.consumeBindings(e).catch(n)}))}))),{autoStart:!1}),metadata:async()=>({...await u.metadata(),variables:l})}}}t.ActorQueryOperationGroup=s},29749:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupsState=void 0;const n=r(79550),i=r(89206),a=new(r(91194).DataFactory),o=new n.BindingsFactory;t.GroupsState=class{constructor(e,t,r){this.hashFunction=e,this.pattern=t,this.sparqleeConfig=r,this.groups=new Map,this.groupsInitializer=new Map,this.groupVariables=new Set(this.pattern.variables.map((e=>e.value))),this.distinctHashes=t.aggregates.some((({distinct:e})=>e))?new Map:null,this.waitCounter=1,this.resultHasBeenCalled=!1}consumeBindings(e){const t=this.resultCheck();if(t)return t;this.waitCounter++;const r=e.filter(((e,t)=>this.groupVariables.has(t.value))),n=this.hashBindings(r);let a,o=this.groupsInitializer.get(n);if(o){const t=o;a=(async()=>{const r=await t;await Promise.all(this.pattern.aggregates.map((async t=>{if(t.distinct){const t=this.hashBindings(e);if(this.distinctHashes.get(n).has(t))return;this.distinctHashes.get(n).add(t)}const i=t.variable.value;await r.aggregators[i].put(e)})))})().then((()=>{this.subtractWaitCounterAndCollect()}))}else o=(async()=>{const t={};if(await Promise.all(this.pattern.aggregates.map((async r=>{const n=r.variable.value;t[n]=new i.AsyncAggregateEvaluator(r,this.sparqleeConfig),await t[n].put(e)}))),this.distinctHashes){const t=this.hashBindings(e);this.distinctHashes.set(n,new Set([t]))}const a={aggregators:t,bindings:r};return this.groups.set(n,a),this.subtractWaitCounterAndCollect(),a})(),this.groupsInitializer.set(n,o),a=o;return a}subtractWaitCounterAndCollect(){0==--this.waitCounter&&this.handleResultCollection()}handleResultCollection(){let e=[...this.groups].map((([e,t])=>{const{bindings:r,aggregators:n}=t;let i=r;for(const e in n){const t=n[e].result();t&&(i=i.set(a.variable(e),t))}return i}));if(0===e.length&&0===this.groupVariables.size){const t=[];for(const e of this.pattern.aggregates){const r=e.variable,n=i.AsyncAggregateEvaluator.emptyValue(e);void 0!==n&&t.push([r,n])}e=[o.bindings(t)]}this.waitResolver(e)}resultCheck(){if(this.resultHasBeenCalled)return Promise.reject(new Error("Calling any function after calling collectResult is invalid."))}collectResults(){const e=this.resultCheck();if(e)return e;this.resultHasBeenCalled=!0;const t=new Promise((e=>{this.waitResolver=e}));return this.subtractWaitCounterAndCollect(),t}hashBindings(e){return this.hashFunction(e)}}},7375:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90323),t)},54017:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationJoin=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"join")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t})));return this.mediatorJoin.mediate({type:"inner",entries:r,context:t})}}t.ActorQueryOperationJoin=i},1513:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(54017),t)},9507:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationLeftJoin=void 0;const n=r(83814),i=r(89206);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"leftjoin")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t}))),a=await this.mediatorJoin.mediate({type:"optional",entries:r,context:t});if(e.expression){const o=(await r[1].output.metadata()).variables,s={...n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)},c=new i.AsyncEvaluator(e.expression,s),u=a.bindingsStream.transform({autoStart:!1,transform:async(e,r,n)=>{if(!o.every((t=>e.has(t.value))))return n(e),r();try{await c.evaluateAsEBV(e)&&n(e)}catch(r){(0,i.isExpressionError)(r)?this.logWarn(t,"Error occurred while filtering.",(()=>({error:r,bindings:e}))):u.emit("error",r)}r()}});a.bindingsStream=u}return a}}t.ActorQueryOperationLeftJoin=a},42678:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(9507),t)},41085:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationMinus=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"minus")}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((async e=>({output:await this.mediatorQueryOperation.mediate({operation:e,context:t}),operation:e}))))).map((({output:e,operation:t})=>({output:n.ActorQueryOperation.getSafeBindings(e),operation:t})));return this.mediatorJoin.mediate({type:"minus",entries:r,context:t})}}t.ActorQueryOperationMinus=i},21530:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41085),t)},2217:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationNop=void 0;const n=r(79550),i=r(83814),a=r(33588),o=r(89227),s=new n.BindingsFactory;class c extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"nop")}async testOperation(e,t){return!0}async runOperation(e,t){return{bindingsStream:new o.SingletonIterator(s.bindings()),metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]}),type:"bindings"}}}t.ActorQueryOperationNop=c},24675:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(2217),t)},46091:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationOrderBySparqlee=void 0;const n=r(83814),i=r(89206),a=r(6789),o=r(81328);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"orderby"),this.window=e.window??Number.POSITIVE_INFINITY}async testOperation(e,t){for(let r of e.expressions)r=this.extractSortExpression(r),new i.AsyncEvaluator(r,n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation));return!0}async runOperation(e,t){const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t}),a=n.ActorQueryOperation.getSafeBindings(r),s={window:this.window},c={...n.ActorQueryOperation.getAsyncExpressionContext(t,this.mediatorQueryOperation)};let{bindingsStream:u}=a;for(let t=e.expressions.length-1;t>=0;t--){let r=e.expressions[t];const n=this.isAscending(r);r=this.extractSortExpression(r);const a=new i.AsyncEvaluator(r,c),l=async(e,t,r)=>{try{r({bindings:e,result:await a.evaluate(e)})}catch(t){(0,i.isExpressionError)(t)||u.emit("error",t),r({bindings:e,result:void 0})}t()},d=u.transform({transform:l}),h=new o.SortIterator(d,((e,t)=>{let r=(0,i.orderTypes)(e.result,t.result);return n||(r*=-1),r}),s);u=h.map((({bindings:e,result:t})=>e))}return{type:"bindings",bindingsStream:u,metadata:a.metadata}}extractSortExpression(e){const{expressionType:t,operator:r}=e;return t!==a.Algebra.expressionTypes.OPERATOR?e:"desc"===r?e.args[0]:e}isAscending(e){const{expressionType:t,operator:r}=e;return t!==a.Algebra.expressionTypes.OPERATOR||"desc"!==r}}t.ActorQueryOperationOrderBySparqlee=s},81328:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SortIterator=void 0;const n=r(89227);class i extends n.TransformIterator{constructor(e,t,r){super(e,r);const n=r&&r.window;this.windowLength=Number.isFinite(n)&&n>0?n:Number.POSITIVE_INFINITY,this.sort=t,this.sorted=[]}_read(e,t){let r,{length:n}=this.sorted;for(;n!==this.windowLength&&(r=this.source.read(),null!==r);){let e,t,i=0,a=n-1;for(;i<=a;)e=Math.trunc((i+a)/2),t=this.sort(r,this.sorted[e]),t<0?i=e+1:t>0?a=e-1:(i=e,a=-1);this.sorted.splice(i,0,r),n++}n===this.windowLength&&this._push(this.sorted.pop()),t()}_flush(e){let{length:t}=this.sorted;for(;t--;)this._push(this.sorted.pop());e()}}t.SortIterator=i},3438:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(46091),t)},18484:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathAlt=void 0;const n=r(26622),i=r(54036),a=r(83814),o=r(89227),s=r(6789);class c extends n.ActorAbstractPath{constructor(e){super(e,s.Algebra.types.ALT)}async runOperation(e,t){const r=e.predicate,s=(await Promise.all(r.input.map((r=>this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,r,e.object,e.graph)}))))).map(a.ActorQueryOperation.getSafeBindings);return{type:"bindings",bindingsStream:new o.UnionIterator(s.map((e=>e.bindingsStream)),{autoStart:!1}),metadata:()=>Promise.all(s.map((e=>e.metadata()))).then((e=>i.ActorQueryOperationUnion.unionMetadata(e,!0)))}}}t.ActorQueryOperationPathAlt=c},956:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(18484),t)},10906:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathInv=void 0;const n=r(26622),i=r(6789);class a extends n.ActorAbstractPath{constructor(e){super(e,i.Algebra.types.INV)}async runOperation(e,t){const r=e.predicate,i=n.ActorAbstractPath.FACTORY.createPath(e.object,r.path,e.subject,e.graph);return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationPathInv=a},60283:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(10906),t)},76814:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathLink=void 0;const n=r(26622),i=r(6789);class a extends n.ActorAbstractPath{constructor(e){super(e,i.Algebra.types.LINK)}async runOperation(e,t){const r=e.predicate,i=n.ActorAbstractPath.FACTORY.createPattern(e.subject,r.iri,e.object,e.graph);return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationPathLink=a},2450:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76814),t)},87665:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathNps=void 0;const n=r(26622),i=r(83814),a=r(6789);class o extends n.ActorAbstractPath{constructor(e){super(e,a.Algebra.types.NPS)}async runOperation(e,t){const r=e.predicate,a=this.generateVariable(e),o=n.ActorAbstractPath.FACTORY.createPattern(e.subject,a,e.object,e.graph),s=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:o,context:t}));return{type:"bindings",bindingsStream:s.bindingsStream.transform({filter:e=>!r.iris.some((t=>t.equals(e.get(a)))),transform(e,t,r){r(e.delete(a)),t()}}),metadata:s.metadata}}}t.ActorQueryOperationPathNps=o},14985:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87665),t)},25455:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathOneOrMore=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(89227),s=r(6789),c=new i.BindingsFactory;class u extends n.ActorAbstractPath{constructor(e){super(e,s.Algebra.types.ONE_OR_MORE_PATH)}async runOperation(e,t){const r=await this.isPathArbitraryLengthDistinct(t,e);if(r.operation)return r.operation;t=r.context;const i=e.predicate;if("Variable"!==e.subject.termType&&"Variable"===e.object.termType){const r=e.object,n=await this.getObjectsPredicateStarEval(e.subject,i.path,r,e.graph,t,!1),a="Variable"===e.graph.termType?[r,e.graph]:[r];return{type:"bindings",bindingsStream:n.bindingsStream,metadata:async()=>({...await n.metadata(),variables:a})}}if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=n.ActorAbstractPath.FACTORY.createDistinct(n.ActorAbstractPath.FACTORY.createPath(e.subject,e.predicate.path,e.object,e.graph)),s=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:r})),c=e.subject,u=e.object,l={},d=new o.MultiTransformIterator(s.bindingsStream,{multiTransform:r=>{const n=r.get(c),a=r.get(u),s="Variable"===e.graph.termType?r.get(e.graph):e.graph;return new o.TransformIterator((async()=>{const r=new o.BufferedIterator;return await this.getSubjectAndObjectBindingsPredicateStar(c,u,n,a,i.path,s,t,l,{},r,{count:0}),r.transform({transform(t,r,n){"Variable"===e.graph.termType&&(t=t.set(e.graph,s)),n(t),r()}})}),{maxBufferSize:128})},autoStart:!1}),h="Variable"===e.graph.termType?[c,u,e.graph]:[c,u];return{type:"bindings",bindingsStream:d,metadata:async()=>({...await s.metadata(),variables:h})}}if("Variable"===e.subject.termType&&"Variable"!==e.object.termType)return this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.object,n.ActorAbstractPath.FACTORY.createOneOrMorePath(n.ActorAbstractPath.FACTORY.createInv(i.path)),e.subject,e.graph)});const s=this.generateVariable(),u=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,i,s,e.graph)}));return{type:"bindings",bindingsStream:u.bindingsStream.transform({filter:t=>e.object.equals(t.get(s)),transform(t,r,n){n("Variable"===e.graph.termType?c.bindings([[e.graph,t.get(e.graph)]]):c.bindings()),r()}}),metadata:async()=>({...await u.metadata(),variables:"Variable"===e.graph.termType?[e.graph]:[]})}}}t.ActorQueryOperationPathOneOrMore=u},53346:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25455),t)},41551:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathSeq=void 0;const n=r(26622),i=r(83814),a=r(6789);class o extends n.ActorAbstractPath{constructor(e){super(e,a.Algebra.types.SEQ)}async runOperation(e,t){const r=e.predicate;let a=e.subject;const o=[],s=await Promise.all(r.input.map(((i,s)=>{const c=s===r.input.length-1?e.object:this.generateVariable(e,`b${s}`),u=n.ActorAbstractPath.FACTORY.createPath(a,i,c,e.graph),l=this.mediatorQueryOperation.mediate({context:t,operation:u});return a=c,s({output:i.ActorQueryOperation.getSafeBindings(await e),operation:t})))),c=i.ActorQueryOperation.getSafeBindings(await this.mediatorJoin.mediate({type:"inner",entries:s,context:t}));return{type:"bindings",bindingsStream:c.bindingsStream.transform({transform(e,t,r){for(const t of o)e=e.delete(t);r(e),t()}}),async metadata(){const e=await c.metadata(),t=e.variables.filter((e=>!o.some((t=>t.value===e.value))));return{...e,variables:t}}}}}t.ActorQueryOperationPathSeq=o},14059:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41551),t)},17520:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathZeroOrMore=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(89227),s=r(6053),c=r(6789),u=new i.BindingsFactory;class l extends n.ActorAbstractPath{constructor(e){super(e,c.Algebra.types.ZERO_OR_MORE_PATH)}async runOperation(e,t){const r=await this.isPathArbitraryLengthDistinct(t,e);if(r.operation)return r.operation;t=r.context;const i=e.predicate,c="Variable"===e.subject.termType,l="Variable"===e.object.termType;if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=this.generateVariable(e),c=n.ActorAbstractPath.FACTORY.createPattern(e.subject,r,e.object,e.graph),u=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:c})),l=e.subject,d=e.object,h=new Set,p={},f=new o.MultiTransformIterator(u.bindingsStream,{multiTransform:r=>{const n=r.get(l),a=r.get(d),c="Variable"===e.graph.termType?r.get(e.graph):e.graph,u=(0,s.termToString)(n)+(0,s.termToString)(c),f=(0,s.termToString)(a)+(0,s.termToString)(c);return new o.TransformIterator((async()=>{if(h.has(u)&&h.has(f))return new o.EmptyIterator;const r=new o.BufferedIterator,s={count:0};return h.has(u)||(h.add(u),await this.getSubjectAndObjectBindingsPredicateStar(l,d,n,n,i.path,c,t,p,{},r,s)),h.has(f)||(h.add(f),await this.getSubjectAndObjectBindingsPredicateStar(l,d,a,a,i.path,c,t,p,{},r,s)),r.transform({transform(t,r,n){"Variable"===e.graph.termType&&(t=t.set(e.graph,c)),n(t),r()}})}))}}),y="Variable"===e.graph.termType?[l,e.object,e.graph]:[l,e.object];return{type:"bindings",bindingsStream:f,metadata:async()=>({...await u.metadata(),variables:y})}}if(!c&&!l){const r=this.generateVariable(),n=await this.getObjectsPredicateStarEval(e.subject,i.path,r,e.graph,t,!0);return{type:"bindings",bindingsStream:n.bindingsStream.transform({filter:t=>e.object.equals(t.get(r)),transform(t,r,n){n("Variable"===e.graph.termType?u.bindings([[e.graph,t.get(e.graph)]]):u.bindings()),r()}}),metadata:async()=>({...await n.metadata(),variables:"Variable"===e.graph.termType?[e.graph]:[]})}}const d=c?e.object:e.subject,h=c?e.subject:e.object,p=c?n.ActorAbstractPath.FACTORY.createInv(i.path):i.path,f=await this.getObjectsPredicateStarEval(d,p,h,e.graph,t,!0),y="Variable"===e.graph.termType?[h,e.graph]:[h];return{type:"bindings",bindingsStream:f.bindingsStream,metadata:async()=>({...await f.metadata(),variables:y})}}}t.ActorQueryOperationPathZeroOrMore=l},54945:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17520),t)},80754:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationPathZeroOrOne=void 0;const n=r(26622),i=r(79550),a=r(83814),o=r(33588),s=r(89227),c=r(6789),u=new i.BindingsFactory;class l extends n.ActorAbstractPath{constructor(e){super(e,c.Algebra.types.ZERO_OR_ONE_PATH)}async runOperation(e,t){const r=e.predicate,i=[];if("Variable"!==e.subject.termType&&"Variable"!==e.object.termType&&e.subject.equals(e.object))return{type:"bindings",bindingsStream:new s.SingletonIterator(u.bindings()),metadata:()=>Promise.resolve({state:new o.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]})};const c=await this.isPathArbitraryLengthDistinct(t,e);if(c.operation)return c.operation;t=c.context;const l=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createPath(e.subject,r.path,e.object,e.graph)}));let d;if("Variable"===e.subject.termType&&"Variable"===e.object.termType){const r=this.generateVariable(e),i=a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({context:t,operation:n.ActorAbstractPath.FACTORY.createFilter(n.ActorAbstractPath.FACTORY.createPattern(e.subject,r,e.object,e.graph),n.ActorAbstractPath.FACTORY.createOperatorExpression("=",[n.ActorAbstractPath.FACTORY.createTermExpression(e.subject),n.ActorAbstractPath.FACTORY.createTermExpression(e.object)]))})).bindingsStream.transform({map:e=>e.delete(r),autoStart:!1});d=new s.UnionIterator([i,l.bindingsStream],{autoStart:!1})}else"Variable"===e.subject.termType&&i.push(u.bindings([[e.subject,e.object]])),"Variable"===e.object.termType&&i.push(u.bindings([[e.object,e.subject]])),d=l.bindingsStream.prepend(i);return{type:"bindings",bindingsStream:d,metadata:l.metadata}}}t.ActorQueryOperationPathZeroOrOne=l},39079:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(80754),t)},22354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationProject=void 0;const n=r(83814),i=r(27057),a=new(r(91194).DataFactory);class o extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"project")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t})),o=await r.metadata(),s=e.variables,c=o.variables.filter((e=>!s.some((t=>e.value===t.value)))),u=s.filter((e=>!o.variables.some((t=>e.value===t.value))));if(u.length>0)throw new Error(`Variables '${u.map((e=>`?${e.value}`))}' are used in the projection result, but are not assigned.`);let l=0===c.length?r.bindingsStream:r.bindingsStream.transform({map(e){for(const t of c)e=e.delete(t);return e},autoStart:!1}),d=0;return l=l.transform({map(e){d++;const t=new Map;return e.map((e=>{if(e instanceof i.BlankNodeBindingsScoped){let r=t.get(e.value);return r||(r=a.blankNode(`${e.value}${d}`),t.set(e.value,r)),r}return e}))},autoStart:!1}),{type:"bindings",bindingsStream:l,metadata:async()=>({...o,variables:s})}}}t.ActorQueryOperationProject=o},82491:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22354),t)},17536:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationQuadpattern=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(91194),s=r(6053),c=r(98086),u=r(6789),l=new n.BindingsFactory,d=new o.DataFactory,h=new u.Factory;class p extends i.ActorQueryOperationTyped{constructor(e){super(e,"pattern")}static isTermVariable(e){return"Variable"===e.termType}static getVariables(e){return(0,c.uniqTerms)((0,c.getTermsNested)(e).filter(p.isTermVariable))}static getDuplicateElementLinks(e){const t={};let r=!1;if((0,c.forEachTermsNested)(e,((e,n)=>{if("Variable"===e.termType){const i=(0,s.termToString)(e),a=(t[i]||(t[i]=[])).push(n);r=r||a>1}})),!r)return;const n={};for(const e in t){const r=t[e],i=r.slice(1);i.length>0&&(n[r[0].join("_")]=i)}return n}static validateMetadata(e){for(const t of["cardinality","canContainUndefs"])if(!(t in e))throw new Error(`Invalid metadata: missing ${t} in ${JSON.stringify(e)}`);return e}static getMetadata(e,t,r){return()=>new Promise(((t,r)=>{e.getProperty("metadata",(e=>t(e))),e.on("error",r)})).then((e=>("canContainUndefs"in e||(e.canContainUndefs=!1),p.quadsMetadataToBindingsMetadata(p.validateMetadata(e),t,r))))}static quadsMetadataToBindingsMetadata(e,t,r){return{...e,order:e.order?p.quadsOrderToBindingsOrder(e.order,t):void 0,availableOrders:e.availableOrders?e.availableOrders.map((e=>({cost:e.cost,terms:p.quadsOrderToBindingsOrder(e.terms,t)}))):void 0,variables:r}}static quadsOrderToBindingsOrder(e,t){const r={};return e.map((e=>{const n=t[e.term];if(n&&!r[n])return r[n]=!0,{term:d.variable(n),direction:e.direction}})).filter((e=>Boolean(e)))}async testOperation(e,t){return!0}async runOperation(e,t){e.context&&(t=t.merge(e.context));let r=e;const n=this.unionDefaultGraph||t.get(a.KeysQueryOperation.unionDefaultGraph);"DefaultGraph"===e.graph.termType&&n&&(r=h.createPattern(e.subject,e.predicate,e.object,d.variable("__comunica:defaultGraph")));const o=await this.mediatorResolveQuadPattern.mediate({pattern:r,context:t}),s=p.getVariables(e),u=(0,c.reduceTermsNested)(e,((e,t,r)=>("Variable"===t.termType&&(e[r.join("_")]=t.value),e)),{}),f=p.getMetadata(o.data,u,s);return{type:"bindings",bindingsStream:new i.ClosableTransformIterator((async()=>{let t=o.data;const r=p.getDuplicateElementLinks(e);return"Variable"!==e.graph.termType||n||(t=t.filter((e=>"DefaultGraph"!==e.graph.termType))),r&&(t=t.filter((e=>{for(const t in r){const n=t.split("_"),i=(0,c.getValueNestedPath)(e,n);for(const n of r[t])if(!i.equals((0,c.getValueNestedPath)(e,n)))return!1}return!0}))),t.map((e=>l.bindings(Object.keys(u).map((t=>{const r=t.split("_"),n=u[t],i=(0,c.getValueNestedPath)(e,r);return[d.variable(n),i]})))))}),{autoStart:!1,onClose:()=>o.data.destroy()}),metadata:f}}}t.ActorQueryOperationQuadpattern=p},63632:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17536),t)},53128:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationReducedHash=void 0;const n=r(83814),i=r(70463);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"reduced")}async testOperation(e,t){return!0}async runOperation(e,t){const r=n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:t}));return{type:"bindings",bindingsStream:r.bindingsStream.filter(await this.newHashFilter(t)),metadata:r.metadata}}async newHashFilter(e){const{hashFunction:t}=await this.mediatorHashBindings.mediate({allowHashCollisions:!0,context:e}),r=new i.LRUCache({max:this.cacheSize});return e=>{const n=t(e);return!r.has(n)&&(r.set(n,!0),!0)}}}t.ActorQueryOperationReducedHash=a},86019:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53128),t)},86013:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationService=void 0;const n=r(79550),i=r(83814),a=r(78470),o=r(33588),s=r(89227),c=new n.BindingsFactory;class u extends i.ActorQueryOperationTypedMediated{constructor(e){super(e,"service")}async testOperation(e,t){if("NamedNode"!==e.name.termType)throw new Error(`${this.name} can only query services by IRI, while a ${e.name.termType} was given.`);return!0}async runOperation(e,t){const r=e.name.value;let n=t.delete(a.KeysRdfResolveQuadPattern.source).delete(a.KeysRdfResolveQuadPattern.sources).delete(a.KeysInitQuery.queryString);const u=this.forceSparqlEndpoint?"sparql":void 0;let l;n=n.set(a.KeysRdfResolveQuadPattern.sources,[{type:u,value:r}]);try{l=i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.input,context:n}))}catch(t){if(!e.silent)throw t;l={bindingsStream:new s.SingletonIterator(c.bindings()),type:"bindings",metadata:async()=>({state:new o.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]})}}return l}}t.ActorQueryOperationService=u},85900:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(86013),t)},60720:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationSlice=void 0;const n=r(83814),i=r(78470);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"slice")}async testOperation(e,t){return!0}async runOperation(e,t){e.length&&(t=t.set(i.KeysQueryOperation.limitIndicator,e.length));const r=await this.mediatorQueryOperation.mediate({operation:e.input,context:t});if("bindings"===r.type)return{type:"bindings",bindingsStream:this.sliceStream(r.bindingsStream,e),metadata:this.sliceMetadata(r,e)};if("quads"===r.type)return{type:"quads",quadStream:this.sliceStream(r.quadStream,e),metadata:this.sliceMetadata(r,e)};throw new Error(`Invalid query output type: Expected 'bindings' or 'quads' but got '${r.type}'`)}sliceStream(e,t){const r=Boolean(t.length)||0===t.length,{start:n}=t,i=r?t.start+t.length-1:Number.POSITIVE_INFINITY;return e.transform({offset:n,limit:Math.max(i-n+1,0),autoStart:!1})}sliceMetadata(e,t){const r=Boolean(t.length)||0===t.length;return()=>e.metadata().then((e=>{const n={...e.cardinality};return Number.isFinite(n.value)&&(n.value=Math.max(0,n.value-t.start),r&&(n.value=Math.min(n.value,t.length))),{...e,cardinality:n}}))}}t.ActorQueryOperationSlice=a},86069:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(60720),t)},36170:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationSparqlEndpoint=void 0;const n=r(79550),i=r(83814),a=r(58392),o=r(58595),s=r(78470),c=r(33588),u=r(89227),l=r(88436),d=r(91194),h=r(6789),p=r(66399),f=new n.BindingsFactory,y=new d.DataFactory;class g extends i.ActorQueryOperation{constructor(e){super(e),this.endpointFetcher=new l.SparqlEndpointFetcher({method:e.forceHttpGet?"GET":"POST",fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.lastContext}),prefixVariableQuestionMark:!0})}async test(e){if(!e.operation)throw new Error("Missing field 'operation' in a query operation action.");const t=(0,a.getContextSourceFirst)(e.context),r=(0,o.getContextDestinationFirst)(e.context),n=t?(0,a.getDataSourceType)(t):void 0,i=r?(0,o.getDataDestinationType)(r):void 0,s=t?(0,a.getDataSourceValue)(t):void 0,c=r?(0,o.getDataDestinationValue)(r):void 0;if(t&&"sparql"===n&&(!r||"sparql"===i&&c===s)||t&&!n&&(!r||!i&&c===s)&&"string"==typeof s&&(this.checkUrlSuffixSparql&&s.endsWith("/sparql")||this.checkUrlSuffixUpdate&&s.endsWith("/update")))return{httpRequests:1};throw new Error(`${this.name} requires a single source with a 'sparql' endpoint to be present in the context or URL ending on /sparql or /update.`)}async run(e){const t=(0,a.getContextSourceFirst)(e.context);if(!t)throw new Error("Illegal state: undefined sparql endpoint source.");const r=(0,a.getDataSourceValue)(t);let n,i,o;this.lastContext=e.context;try{n=e.context.get(s.KeysInitQuery.queryString)??(0,h.toSparql)(e.operation,{sparqlStar:!0}),i=this.endpointFetcher.getQueryType(n),"UNKNOWN"===i&&(i=this.endpointFetcher.getUpdateTypes(n))}catch{}i&&"UNKNOWN"!==i||(o=h.Util.inScopeVariables(e.operation),n=(0,h.toSparql)(g.FACTORY.createProject(e.operation,o)),i="SELECT");const c=this.canOperationContainUndefs(e.operation);switch(i){case"SELECT":return o||(o=h.Util.inScopeVariables(e.operation)),this.executeQuery(r,n,!1,o,c);case"CONSTRUCT":return this.executeQuery(r,n,!0,void 0,!1);case"ASK":return{type:"boolean",execute:()=>this.endpointFetcher.fetchAsk(r,n)};default:return{type:"void",execute:()=>this.endpointFetcher.fetchUpdate(r,n)}}}executeQuery(e,t,r,n,i){const a=r?this.endpointFetcher.fetchTriples(e,t):this.endpointFetcher.fetchBindings(e,t),o=(0,u.wrap)(a,{autoStart:!1}).map((e=>r?e:f.bindings(Object.entries(e).map((([e,t])=>[y.variable(e.slice(1)),t]))))),s=new p.LazyCardinalityIterator(o),l=g.cachifyMetadata((async()=>({state:new c.MetadataValidationState,cardinality:{type:"exact",value:await s.getCardinality()},canContainUndefs:i,variables:n})));return r?{type:"quads",quadStream:s,metadata:l}:{type:"bindings",bindingsStream:s,metadata:l}}canOperationContainUndefs(e){let t=!1;return h.Util.recurseOperation(e,{[h.Algebra.types.LEFT_JOIN]:()=>(t=!0,!1),[h.Algebra.types.VALUES](e){for(const r of e.bindings){const n=Object.keys(r);e.variables.every((e=>n.includes(`?${e.value}`)))||(t=!0)}return!1}}),t}}t.ActorQueryOperationSparqlEndpoint=g,g.FACTORY=new h.Factory},66399:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LazyCardinalityIterator=void 0;const n=r(89227);class i extends n.AsyncIterator{constructor(e){super(),this._source=e,this._count=0,this._buffering=!0,e[n.DESTINATION]=this,e.on("readable",a),e.on("end",a),e.on("error",o),this.readable=e.readable}read(){if(this._buffer)return this._buffer.empty?(this._buffering||this.close(),this.readable=!1,null):this._buffer.shift();let e=null;return this._source.readable&&null!==(e=this._source.read())?this._count+=1:(this.readable=!1,this._source.done&&this.close()),e}getCardinality(){return this._cardinality?this._cardinality:this._error?Promise.reject(this._error):(this._source.done&&this.close(),this.done?this._cardinality=Promise.resolve(this._count):(this._buffer=new n.LinkedList,this._cardinality=new Promise(((e,t)=>{this._source.removeListener("readable",a),this._source.removeListener("end",a);const r=()=>{this._source.removeListener("data",n),this._source.removeListener("end",i),this._source.removeListener("error",o)},n=e=>{this._buffer.push(e),this._count+=1,this.readable=!0},i=()=>{this._buffering=!1,r(),e(this._count)},o=e=>{this._buffering=!1,r(),t(e)};this._source.on("data",n),this._source.on("end",i),this._source.on("error",o)}))),this._cardinality)}close(){this._source.removeListener("readable",a),this._source.removeListener("end",a),this._source.removeListener("error",o),delete this._source[n.DESTINATION],this._source.destroy(),super.close()}}function a(){this[n.DESTINATION].readable=!0}function o(e){this[n.DESTINATION]._error=e,this[n.DESTINATION].emit("error",e)}t.LazyCardinalityIterator=i},71111:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36170),t)},52700:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUnion=void 0;const n=r(83814),i=r(33588),a=r(89227),o=r(98086);class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"union")}static unionVariables(e){return(0,o.uniqTerms)(e.flat())}static unionMetadata(e,t){const r={type:"exact",value:0};for(const t of e){if(!(t.cardinality.value&&Number.isFinite(t.cardinality.value)||0===t.cardinality.value)){r.type="estimate",r.value=Number.POSITIVE_INFINITY;break}"estimate"===t.cardinality.type&&(r.type="estimate"),r.value+=t.cardinality.value}const n={state:new i.MetadataValidationState,cardinality:r,canContainUndefs:e.some((e=>e.canContainUndefs))},a=()=>n.state.invalidate();for(const t of e)t.state.addInvalidateListener(a);return t?(n.variables=s.unionVariables(e.map((e=>e.variables))),n):n}async testOperation(e,t){return!0}async runOperation(e,t){const r=(await Promise.all(e.input.map((e=>this.mediatorQueryOperation.mediate({operation:e,context:t}))))).map(n.ActorQueryOperation.getSafeBindings);return{type:"bindings",bindingsStream:new a.UnionIterator(r.map((e=>e.bindingsStream)),{autoStart:!1}),metadata:()=>Promise.all(r.map((e=>e.metadata()))).then((e=>s.unionMetadata(e,!0)))}}}t.ActorQueryOperationUnion=s},54036:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52700),t)},40433:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationAddRewrite=void 0;const n=r(83814),i=r(91194),a=r(6789),o=new i.DataFactory;class s extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"add"),this.factory=new a.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){const r="DEFAULT"===e.destination?o.defaultGraph():e.destination,n="DEFAULT"===e.source?o.defaultGraph():e.source,i=this.factory.createDeleteInsert(void 0,[this.factory.createPattern(o.variable("s"),o.variable("p"),o.variable("o"),r)],this.factory.createPattern(o.variable("s"),o.variable("p"),o.variable("o"),n));return this.mediatorQueryOperation.mediate({operation:i,context:t})}}t.ActorQueryOperationAddRewrite=s},46270:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(40433),t)},56477:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationClear=void 0;const n=r(83814),i=new(r(91194).DataFactory);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"clear")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r;r="DEFAULT"===e.source?i.defaultGraph():"string"==typeof e.source?e.source:[e.source];const{execute:n}=await this.mediatorUpdateQuads.mediate({deleteGraphs:{graphs:r,requireExistence:!e.silent,dropGraphs:!1},context:t});return{type:"void",execute:n}}}t.ActorQueryOperationClear=a},71103:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(56477),t)},36360:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUpdateCompositeUpdate=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"compositeupdate")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){return{type:"void",execute:()=>(async()=>{for(const r of e.updates){const e=n.ActorQueryOperation.getSafeVoid(await this.mediatorQueryOperation.mediate({operation:r,context:t}));await e.execute()}})()}}}t.ActorQueryOperationUpdateCompositeUpdate=i},56690:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36360),t)},96445:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationCopyRewrite=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"copy"),this.factory=new i.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){if("string"==typeof e.destination&&"string"==typeof e.source&&e.destination===e.source||"string"!=typeof e.destination&&"string"!=typeof e.source&&e.destination.equals(e.source))return Promise.resolve({type:"void",execute:()=>Promise.resolve()});const r=this.factory.createCompositeUpdate([this.factory.createDrop(e.destination,!0),this.factory.createAdd(e.source,e.destination,e.silent)]);return this.mediatorQueryOperation.mediate({operation:r,context:t})}}t.ActorQueryOperationCopyRewrite=a},71852:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96445),t)},78537:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationCreate=void 0;const n=r(83814);class i extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"create")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){const{execute:r}=await this.mediatorUpdateQuads.mediate({createGraphs:{graphs:[e.source],requireNonExistence:!e.silent},context:t});return{type:"void",execute:r}}}t.ActorQueryOperationCreate=i},17166:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(78537),t)},82682:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationUpdateDeleteInsert=void 0;const n=r(32023),i=r(79550),a=r(83814),o=r(89227),s=new i.BindingsFactory;class c extends a.ActorQueryOperationTypedMediated{constructor(e){super(e,"deleteinsert"),this.blankNodeCounter=0}async testOperation(e,t){return a.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){const r=e.where?a.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:e.where,context:t})).bindingsStream:new o.ArrayIterator([s.bindings()],{autoStart:!1});let i,c;e.insert&&(i=new n.BindingsToQuadsIterator(e.insert.map(n.BindingsToQuadsIterator.localizeQuad.bind(null,this.blankNodeCounter)),r.clone()),this.blankNodeCounter++),e.delete&&(c=new n.BindingsToQuadsIterator(e.delete.map(n.BindingsToQuadsIterator.localizeQuad.bind(null,this.blankNodeCounter)),r.clone()),this.blankNodeCounter++);const{execute:u}=await this.mediatorUpdateQuads.mediate({quadStreamInsert:i,quadStreamDelete:c,context:t});return{type:"void",execute:u}}}t.ActorQueryOperationUpdateDeleteInsert=c},6215:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82682),t)},96129:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationDrop=void 0;const n=r(83814),i=new(r(91194).DataFactory);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"drop")}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r;r="DEFAULT"===e.source?i.defaultGraph():"string"==typeof e.source?e.source:[e.source];const{execute:n}=await this.mediatorUpdateQuads.mediate({deleteGraphs:{graphs:r,requireExistence:!e.silent,dropGraphs:!0},context:t});return{type:"void",execute:n}}}t.ActorQueryOperationDrop=a},54322:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96129),t)},46108:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationLoad=void 0;const n=r(83814),i=r(78470),a=r(91194),o=r(6789),s=new a.DataFactory;class c extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"load"),this.factory=new o.Factory,this.constructOperation=this.factory.createConstruct(this.factory.createPattern(s.variable("s"),s.variable("p"),s.variable("o")),[this.factory.createPattern(s.variable("s"),s.variable("p"),s.variable("o"))])}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}async runOperation(e,t){let r=t.set(i.KeysRdfResolveQuadPattern.sources,[e.source.value]);e.silent&&(r=r.set(i.KeysInitQuery.lenient,!0));let n=c.getSafeQuads(await this.mediatorQueryOperation.mediate({operation:this.constructOperation,context:r})).quadStream;e.destination&&(n=n.map((t=>s.quad(t.subject,t.predicate,t.object,e.destination))));const{execute:a}=await this.mediatorUpdateQuads.mediate({quadStreamInsert:n,context:t});return{type:"void",execute:a}}}t.ActorQueryOperationLoad=c},82965:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(46108),t)},68871:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationMoveRewrite=void 0;const n=r(83814),i=r(6789);class a extends n.ActorQueryOperationTypedMediated{constructor(e){super(e,"move"),this.factory=new i.Factory}async testOperation(e,t){return n.ActorQueryOperation.throwOnReadOnly(t),!0}runOperation(e,t){if("string"==typeof e.destination&&"string"==typeof e.source&&e.destination===e.source||"string"!=typeof e.destination&&"string"!=typeof e.source&&e.destination.equals(e.source))return Promise.resolve({type:"void",execute:()=>Promise.resolve()});const r=[this.factory.createDrop(e.destination,!0),this.factory.createAdd(e.source,e.destination,e.silent),this.factory.createDrop(e.source)],n=this.factory.createCompositeUpdate(r);return this.mediatorQueryOperation.mediate({operation:n,context:t})}}t.ActorQueryOperationMoveRewrite=a},69259:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(68871),t)},52132:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationValues=void 0;const n=r(79550),i=r(83814),a=r(33588),o=r(89227),s=r(91194),c=new n.BindingsFactory,u=new s.DataFactory;class l extends i.ActorQueryOperationTyped{constructor(e){super(e,"values")}async testOperation(e,t){return!0}async runOperation(e,t){const r=new o.ArrayIterator(e.bindings.map((e=>c.bindings(Object.entries(e).map((([e,t])=>[u.variable(e.slice(1)),t])))))),n=e.variables;return{type:"bindings",bindingsStream:r,metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:e.bindings.length},canContainUndefs:e.bindings.some((e=>n.some((t=>!(`?${t.value}`in e))))),variables:n})}}}t.ActorQueryOperationValues=l},78251:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52132),t)},70332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParseGraphql=void 0;const n=r(21744),i=r(78470),a=r(67020);class o extends n.ActorQueryParse{constructor(e){super(e),this.graphqlToSparql=new a.Converter({requireContext:!0})}async test(e){if("graphql"!==e.queryFormat?.language)throw new Error("This actor can only parse GraphQL queries");return!0}async run(e){const t=e.context.get(i.KeysInitQuery.jsonLdContext)||{},r={singularizeVariables:e.context.get(i.KeysInitQuery.graphqlSingularizeVariables)};return{operation:await this.graphqlToSparql.graphqlToSparqlAlgebra(e.query,t,r)}}}t.ActorQueryParseGraphql=o},37873:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(70332),t)},44188:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParseSparql=void 0;const n=r(21744),i=r(6789),a=r(2085);class o extends n.ActorQueryParse{constructor(e){super(e),this.prefixes=Object.freeze(this.prefixes)}async test(e){if(e.queryFormat&&"sparql"!==e.queryFormat.language)throw new Error("This actor can only parse SPARQL queries");return!0}async run(e){const t=new a.Parser({prefixes:this.prefixes,baseIRI:e.baseIRI,sparqlStar:!0}).parse(e.query);return{baseIRI:"query"===t.type?t.base:void 0,operation:(0,i.translate)(t,{quads:!0,prefixes:this.prefixes,blankToVariable:!0,baseIRI:e.baseIRI})}}}t.ActorQueryParseSparql=o},93700:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44188),t)},96137:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeJson=void 0;const n=r(42351),i=r(6053),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads","boolean"].includes(e.type))throw new Error("This actor can only handle bindings or quad streams.");return!0}async runHandle(e,t,r){const n=new a.Readable;n._read=()=>{};let o=!0;if("bindings"===e.type){const t=e.bindingsStream;n.push("["),t.on("error",(e=>n.emit("error",e))),t.on("data",(e=>{n.push(o?"\n":",\n"),n.push(JSON.stringify(Object.fromEntries([...e].map((([e,t])=>[e.value,i.termToString(t)]))))),o=!1})),t.on("end",(()=>{n.push(o?"]\n":"\n]\n"),n.push(null)}))}else if("quads"===e.type){const t=e.quadStream;n.push("["),t.on("error",(e=>n.emit("error",e))),t.on("data",(e=>{n.push(o?"\n":",\n"),n.push(JSON.stringify(i.quadToStringQuad(e))),o=!1})),t.on("end",(()=>{n.push(o?"]\n":"\n]\n"),n.push(null)}))}else try{n.push(`${JSON.stringify(await e.execute())}\n`),n.push(null)}catch(e){setTimeout((()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeJson=o},6234:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96137),t)},42455:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeRdf=void 0;const n=r(42351);class i extends n.ActorQueryResultSerialize{constructor(e){super(e)}async testHandle(e,t,r){if("quads"!==e.type)throw new Error(`Actor ${this.name} can only handle quad streams`);const{mediaTypes:n}=await this.mediatorMediaTypeCombiner.mediate({context:r,mediaTypes:!0});if(!(t in n))throw new Error(`Actor ${this.name} can not handle media type ${t}. All available types: ${Object.keys(n)}`);return!0}async runHandle(e,t,r){return(await this.mediatorRdfSerialize.mediate({context:r,handle:{context:r,quadStream:e.quadStream},handleMediaType:t})).handle}async testMediaType(e){return!0}async getMediaTypes(e){return(await this.mediatorMediaTypeCombiner.mediate({context:e,mediaTypes:!0})).mediaTypes}async testMediaTypeFormats(e){return!0}async getMediaTypeFormats(e){return(await this.mediatorMediaTypeFormatCombiner.mediate({context:e,mediaTypeFormats:!0})).mediaTypeFormats}}t.ActorQueryResultSerializeRdf=i},45322:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(42455),t)},52789:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSimple=void 0;const n=r(42351),i=r(6053),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads","boolean","void"].includes(e.type))throw new Error("This actor can only handle bindings streams, quad streams, booleans, or updates.");return!0}static termToString(e){return"Quad"===e.termType?(0,i.termToString)(e):e.value}async runHandle(e,t,r){const n=new a.Readable;let i;if(n._read=()=>{},"bindings"===e.type)i=e.bindingsStream,i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`${[...e].map((([e,t])=>`?${e.value}: ${o.termToString(t)}`)).join("\n")}\n\n`))),i.on("end",(()=>n.push(null)));else if("quads"===e.type)i=e.quadStream,i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`subject: ${o.termToString(e.subject)}\npredicate: ${o.termToString(e.predicate)}\nobject: ${o.termToString(e.object)}\ngraph: ${o.termToString(e.graph)}\n\n`))),i.on("end",(()=>n.push(null)));else if("boolean"===e.type)try{n.push(`${JSON.stringify(await e.execute())}\n`),n.push(null)}catch(e){setTimeout((()=>n.emit("error",e)))}else e.execute().then((()=>{n.push("ok\n"),n.push(null)})).catch((e=>setTimeout((()=>n.emit("error",e)))));return{data:n}}}t.ActorQueryResultSerializeSimple=o},54399:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52789),t)},82703:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlCsv=void 0;const n=r(42351),i=r(51887);class a extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToCsvBindings(e){if(!e)return"";let t=e.value;if("Literal"===e.termType)t=`${t}`;else if("BlankNode"===e.termType)t=`_:${t}`;else if("Quad"===e.termType){let r=a.bindingToCsvBindings(e.object);"Literal"===e.object.termType&&(r=`"${r.replace(/"/gu,'""')}"`),t=`<< ${a.bindingToCsvBindings(e.subject)} ${a.bindingToCsvBindings(e.predicate)} ${r} >>`}else t=`<${t}>`;return/[",\n\r]/u.test(t)&&(t=`"${t.replace(/"/gu,'""')}"`),t}async testHandleChecked(e,t){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t,r){const n=e,o=new i.Readable;o._read=()=>{};const s=await n.metadata();return o.push(`${s.variables.map((e=>e.value)).join(",")}\r\n`),n.bindingsStream.on("error",(e=>{o.emit("error",e)})),n.bindingsStream.on("data",(e=>{o.push(`${s.variables.map((t=>a.bindingToCsvBindings(e.get(t)))).join(",")}\r\n`)})),n.bindingsStream.on("end",(()=>{o.push(null)})),{data:o}}}t.ActorQueryResultSerializeSparqlCsv=a},74295:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82703),t)},87671:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserverHttp=void 0;const n=r(21049);class i extends n.ActionObserver{constructor(e){super(e),this.requests=0,this.bus.subscribeObserver(this),this.httpInvalidator.addInvalidateListener((()=>{this.requests=0}))}onRun(e,t,r){this.requests++}}t.ActionObserverHttp=i},1539:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlJson=void 0;const n=r(42351),i=r(51887);class a extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToJsonBindings(e){if("Literal"===e.termType){const t=e,r={value:t.value,type:"literal"},{language:n}=t,{datatype:i}=t;return n?r["xml:lang"]=n:i&&"http://www.w3.org/2001/XMLSchema#string"!==i.value&&(r.datatype=i.value),r}return"BlankNode"===e.termType?{value:e.value,type:"bnode"}:"Quad"===e.termType?{value:{subject:a.bindingToJsonBindings(e.subject),predicate:a.bindingToJsonBindings(e.predicate),object:a.bindingToJsonBindings(e.object)},type:"triple"}:{value:e.value,type:"uri"}}async testHandleChecked(e,t){if(!["bindings","boolean"].includes(e.type))throw new Error("This actor can only handle bindings streams or booleans.");return!0}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const o={};if("bindings"===e.type){const t=await e.metadata();t.variables.length>0&&(o.vars=t.variables.map((e=>e.value)))}n.push(`{"head": ${JSON.stringify(o)},\n`);let s=!0;if("bindings"===e.type){const t=e.bindingsStream;t.on("error",(e=>{n.emit("error",e)})),t.on("data",(e=>{s?n.push('"results": { "bindings": [\n'):n.push(",\n");const t=Object.fromEntries([...e].map((([e,t])=>[e.value,a.bindingToJsonBindings(t)])));n.push(JSON.stringify(t)),s=!1})),t.on("end",(()=>{s&&n.push('"results": { "bindings": [\n'),n.push("\n]}"),this.emitMetadata&&n.push(`,\n"metadata": { "httpRequests": ${this.httpObserver.requests} }`),n.push("}\n"),n.push(null)}))}else try{n.push(`"boolean":${await e.execute()}\n}\n`),n.push(null)}catch(e){n.once("newListener",(()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeSparqlJson=a},68058:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87671),t),i(r(1539),t)},1816:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlTsv=void 0;const n=r(42351),i=r(2122),a=r(51887);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToTsvBindings(e){return e?(0,i.termToString)(e).replace(/\t/gu,"\\t").replace(/\n/gu,"\\n").replace(/\r/gu,"\\r"):""}async testHandleChecked(e,t){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t,r){const n=e,i=new a.Readable;i._read=()=>{};const s=await n.metadata();return i.push(`${s.variables.map((e=>e.value)).join("\t")}\n`),n.bindingsStream.on("error",(e=>{i.emit("error",e)})),n.bindingsStream.on("data",(e=>{i.push(`${s.variables.map((t=>o.bindingToTsvBindings(e.get(t)))).join("\t")}\n`)})),n.bindingsStream.on("end",(()=>{i.push(null)})),{data:i}}}t.ActorQueryResultSerializeSparqlTsv=o},30865:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1816),t)},87869:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeSparqlXml=void 0;const n=r(42351),i=r(51887),a=r(79530);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingToXmlBindings(e,t){return{name:"binding",attributes:{name:t.value},children:[this.valueToXmlValue(e)]}}static valueToXmlValue(e){let t;switch(e.termType){case"Literal":return t=e.language?{"xml:lang":e.language}:e.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==e.datatype.value?{datatype:e.datatype.value}:{},{name:"literal",attributes:t,children:e.value};case"BlankNode":return{name:"bnode",children:e.value};case"Quad":return{name:"triple",children:[{name:"subject",children:[this.valueToXmlValue(e.subject)]},{name:"predicate",children:[this.valueToXmlValue(e.predicate)]},{name:"object",children:[this.valueToXmlValue(e.object)]}]};default:return{name:"uri",children:e.value}}}async testHandleChecked(e,t){if(!["bindings","boolean"].includes(e.type))throw new Error("This actor can only handle bindings streams or booleans.");return!0}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const s=new a.XmlSerializer((e=>n.push(e)));s.open("sparql",{xmlns:"http://www.w3.org/2005/sparql-results#"});const c=await e.metadata();if(s.add({name:"head",children:c.variables.map((e=>({name:"variable",attributes:{name:e.value}})))}),"bindings"===e.type){s.open("results");const t=e.bindingsStream;t.on("error",(e=>{n.emit("error",e)})),t.on("data",(e=>{s.add({name:"result",children:[...e].map((([e,t])=>o.bindingToXmlBindings(t,e)))})})),t.on("end",(()=>{s.close(),s.close(),setTimeout((()=>n.push(null)))}))}else try{const t=await e.execute();s.add({name:"boolean",children:t.toString()}),s.close(),setTimeout((()=>n.push(null)))}catch(e){setTimeout((()=>n.emit("error",e)))}return{data:n}}}t.ActorQueryResultSerializeSparqlXml=o},79530:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.XmlSerializer=void 0,t.XmlSerializer=class{constructor(e){this.stack=[],this.push=e,this.push('\n')}open(e,t){this.push(`${this.identation()+this.formatTag(e,t,"open")}\n`),this.stack.push(e)}close(){const e=this.stack.pop();if(void 0===e)throw new Error("There is no tag left to close");this.push(`${this.identation()+this.formatTag(e,{},"close")}\n`)}add(e){this.push(this.serializeNode(e))}serializeNode(e){if(void 0===e.children)return`${this.identation()+this.formatTag(e.name,e.attributes,"self-closing")}\n`;if("string"==typeof e.children)return`${this.identation()+this.formatTag(e.name,e.attributes,"open")+this.escape(e.children)+this.formatTag(e.name,{},"close")}\n`;const t=[];t.push(`${this.identation()+this.formatTag(e.name,e.attributes,"open")}\n`),this.stack.push(e.name);for(const r of e.children)t.push(this.serializeNode(r));return this.stack.pop(),t.push(`${this.identation()+this.formatTag(e.name,{},"close")}\n`),t.join("")}identation(){return this.stack.map((e=>" ")).join("")}formatTag(e,t,r){return`<${"close"===r?"/":""}${e}${Object.entries(t||{}).map((e=>` ${e[0]}="${this.escape(e[1])}"`))}${"self-closing"===r?"/":""}>`}escape(e){return e.replace(/["&'<>]/gu,(e=>{switch(e){case"<":return"<";case">":return">";case"&":return"&";case"'":return"'";case'"':return"""}}))}}},33499:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(87869),t)},60179:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserverHttp=void 0;const n=r(21049);class i extends n.ActionObserver{constructor(e){super(e),this.requests=0,this.bus.subscribeObserver(this),this.httpInvalidator.addInvalidateListener((()=>{this.requests=0}))}onRun(e,t,r){this.requests++}}t.ActionObserverHttp=i},41880:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeStats=void 0;const n=r(42351),i=r(51887),a=r(34406);class o extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}async testHandleChecked(e,t){if(!["bindings","quads"].includes(e.type))throw new Error("This actor can only handle bindings streams or quad streams.");return!0}pushHeader(e){const t=["Result","Delay (ms)","HTTP requests"].join(",");e.push(`${t}\n`)}pushStat(e,t,r){const n=[r,this.delay(t),this.httpObserver.requests].join(",");e.push(`${n}\n`)}pushFooter(e,t){const r=["TOTAL",this.delay(t),this.httpObserver.requests].join(",");e.push(`${r}\n`),e.push(null)}async runHandle(e,t,r){const n=new i.Readable;n._read=()=>{};const a="bindings"===e.type?e.bindingsStream:e.quadStream,o=this.now();let s=1;return this.pushHeader(n),a.on("error",(e=>n.emit("error",e))),a.on("data",(()=>this.pushStat(n,o,s++))),a.on("end",(()=>this.pushFooter(n,o))),{data:n}}now(){if("undefined"==typeof performance){const e=a.hrtime();return 1e3*e[0]+e[1]/1e6}return performance.now()}delay(e){return this.now()-e}}t.ActorQueryResultSerializeStats=o},81801:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(60179),t),i(r(41880),t)},25593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeTable=void 0;const n=r(42351),i=r(91194),a=r(6053),o=r(98086),s=r(51887),c=new i.DataFactory,u=o.QUAD_TERM_NAMES.map((e=>c.variable(e)));class l extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e),this.padding=l.repeat(" ",this.columnWidth)}static repeat(e,t){return e.repeat(t)}async testHandleChecked(e,t){if(!["bindings","quads"].includes(e.type))throw new Error("This actor can only handle bindings or quad streams.");return!0}termToString(e){return"Quad"===e.termType?(0,a.termToString)(e):e.value}pad(e){return e.length<=this.columnWidth?e+this.padding.slice(e.length):`${e.slice(0,this.columnWidth-1)}…`}pushHeader(e,t){const r=t.map((e=>this.pad(e.value))).join(" ");e.push(`${r}\n${l.repeat("-",r.length)}\n`)}pushRow(e,t,r){e.push(`${t.map((e=>r.has(e)?this.termToString(r.get(e)):"")).map((e=>this.pad(e))).join(" ")}\n`)}async runHandle(e,t,r){const n=new s.Readable;let i;if(n._read=()=>{},"bindings"===e.type){i=e.bindingsStream;const t=(await e.metadata()).variables;this.pushHeader(n,t),i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>this.pushRow(n,t,e)))}else i=e.quadStream,this.pushHeader(n,u),i.on("error",(e=>n.emit("error",e))),i.on("data",(e=>n.push(`${(0,o.getTerms)(e).map((e=>this.pad(this.termToString(e)))).join(" ")}\n`)));return i.on("end",(()=>n.push(null))),{data:n}}}t.ActorQueryResultSerializeTable=l},68266:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(25593),t)},73102:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeTree=void 0;const n=r(42351),i=r(78470),a=r(21049),o=r(51887),s=r(97977);class c extends n.ActorQueryResultSerializeFixedMediaTypes{constructor(e){super(e)}static bindingsStreamToGraphQl(e,t,r){const n=a.ActionContext.ensureActionContext(t);return new Promise(((t,a)=>{const o=[],c=new s.Converter(r),u={singularizeVariables:n.get(i.KeysInitQuery.graphqlSingularizeVariables)||{}};e.on("error",a),e.on("data",(e=>{o.push(Object.fromEntries([...e].map((([e,t])=>[e.value,t]))))})),e.on("end",(()=>{t(c.bindingsToTree(o,u))}))}))}async testHandleChecked(e){if("bindings"!==e.type)throw new Error("This actor can only handle bindings streams.");return!0}async runHandle(e,t){const r=new o.Readable;r._read=()=>{};const n=e.bindingsStream;return n.on("error",(e=>r.emit("error",e))),c.bindingsStreamToGraphQl(n,e.context,{materializeRdfJsTerms:!0}).then((e=>{r.push(JSON.stringify(e,null," ")),r.push(null)})).catch((e=>r.emit("error",e))),{data:r}}}t.ActorQueryResultSerializeTree=c},93148:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.bindingsStreamToGraphQl=void 0;const a=r(73102),{bindingsStreamToGraphQl:o}=a.ActorQueryResultSerializeTree;t.bindingsStreamToGraphQl=o,i(r(73102),t)},78710:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinEntriesSortCardinality=void 0;const n=r(48955);class i extends n.ActorRdfJoinEntriesSort{constructor(e){super(e)}async test(e){return!0}async run(e){return{entries:[...e.entries].sort(((e,t)=>e.metadata.cardinality.value-t.metadata.cardinality.value))}}}t.ActorRdfJoinEntriesSortCardinality=i},12321:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(78710),t)},1547:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinHash=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"hash",limitEntries:2})}async getOutput(e){const t=await n.ActorRdfJoin.getMetadatas(e.entries),r=n.ActorRdfJoin.overlappingVariables(t);return{result:{type:"bindings",bindingsStream:new i.HashJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,(e=>n.ActorRdfJoin.hash(e,r)),n.ActorRdfJoin.joinBindings),metadata:async()=>await this.constructResultMetadata(e.entries,t,e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinHash=a},55393:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1547),t)},3173:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiBind=void 0;const n=r(83814),i=r(97045),a=r(78470),o=r(89227),s=r(6789);class c extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"bind",canHandleUndefs:!0})}static createBindStream(e,t,r,i,a){const s=e=>{const t=r.map((t=>(0,n.materializeOperation)(t,e,{bindFilter:!1}))),a=t=>t.merge(e);return new o.TransformIterator((async()=>(await i(t,e)).transform({map:a})),{maxBufferSize:128,autoStart:!1})};switch(e){case"depth-first":return new o.MultiTransformIterator(t,{autoStart:!1,multiTransform:s,optional:a});case"breadth-first":return new o.UnionIterator(t.transform({map:s,optional:a}),{autoStart:!1});default:throw new Error(`Received request for unknown bind order: ${e}`)}}async sortJoinEntries(e,t){if(e.some((e=>e.metadata.canContainUndefs)))return e;const r={};for(const t of e)for(const e of t.metadata.variables){let t=r[e.value];t||(t=0),r[e.value]=++t}const n=[];for(const[e,t]of Object.entries(r))t>=2&&n.push(e);if(0===n.length)throw new Error("Bind join can only join entries with at least one common variable");const i=[];for(const t of e){let e=!1;for(const r of t.metadata.variables)if(n.includes(r.value)){e=!0;break}e||i.push(t)}return(await this.mediatorJoinEntriesSort.mediate({entries:e,context:t})).entries.sort(((e,t)=>{const r=i.includes(e);return r===i.includes(t)?0:r?1:-1}))}async getOutput(e){const t=await i.ActorRdfJoin.getEntriesWithMetadatas(e.entries),r=await this.sortJoinEntries(t,e.context);this.logDebug(e.context,"First entry for Bind Join: ",(()=>({entry:r[0].operation,metadata:r[0].metadata})));for(const[e,t]of r.entries())0!==e&&t.output.bindingsStream.close();const o=r[0].output,s=[...r];s.splice(0,1);const u=e.context.set(a.KeysQueryOperation.joinLeftMetadata,r[0].metadata).set(a.KeysQueryOperation.joinRightMetadatas,s.map((e=>e.metadata)));return{result:{type:"bindings",bindingsStream:c.createBindStream(this.bindOrder,o.bindingsStream,s.map((e=>e.operation)),(async(e,t)=>{const r=1===e.length?e[0]:c.FACTORY.createJoin(e);return n.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:r,context:u?.set(a.KeysQueryOperation.joinBindings,t)})).bindingsStream}),!1),metadata:()=>this.constructResultMetadata(r,r.map((e=>e.metadata)),e.context)},physicalPlanMetadata:{bindIndex:t.indexOf(r[0]),bindOrder:this.bindOrder}}}canBindWithOperation(e){let t=!0;return s.Util.recurseOperation(e,{[s.Algebra.types.EXTEND]:()=>(t=!1,!1),[s.Algebra.types.GROUP]:()=>(t=!1,!1),[s.Algebra.types.FILTER]:()=>(t=!1,!1)}),t}async getJoinCoefficients(e,t){const r=await this.sortJoinEntries(e.entries.map(((e,r)=>({...e,metadata:t[r]}))),e.context);t=r.map((e=>e.metadata));const n=i.ActorRdfJoin.getRequestInitialTimes(t),a=i.ActorRdfJoin.getRequestItemTimes(t),o=[...r],s=[...n],c=[...a];if(o.splice(0,1),s.splice(0,1),c.splice(0,1),o.some((e=>!this.canBindWithOperation(e.operation))))throw new Error(`Actor ${this.name} can not bind on Extend, Group, and Filter operations`);const u=await Promise.all(o.map((async t=>(await this.mediatorJoinSelectivity.mediate({entries:[r[0],t],context:e.context})).selectivity*this.selectivityModifier))),l=o.map(((e,t)=>e.metadata.cardinality.value*u[t])).reduce(((e,t)=>e+t),0),d=s.reduce(((e,t,r)=>e+t*u[r]),0),h=c.reduce(((e,t,r)=>e+t*u[r]),0);return{iterations:t[0].cardinality.value*l,persistedItems:0,blockingItems:0,requestTime:n[0]+t[0].cardinality.value*(a[0]+d+l*h)}}}t.ActorRdfJoinMultiBind=c,c.FACTORY=new s.Factory},39474:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(3173),t)},21182:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiEmpty=void 0;const n=r(97045),i=r(33588),a=r(89227);class o extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"multi-empty",canHandleUndefs:!0})}async test(e){if((await n.ActorRdfJoin.getMetadatas(e.entries)).every((e=>n.ActorRdfJoin.getCardinality(e).value>0)))throw new Error(`Actor ${this.name} can only join entries where at least one is empty`);return super.test(e)}async getOutput(e){for(const t of e.entries)t.output.bindingsStream.close();return{result:{bindingsStream:new a.ArrayIterator([],{autoStart:!1}),metadata:async()=>({state:new i.MetadataValidationState,cardinality:{type:"exact",value:0},canContainUndefs:!1,variables:n.ActorRdfJoin.joinVariables(await n.ActorRdfJoin.getMetadatas(e.entries))}),type:"bindings"}}}async getJoinCoefficients(e,t){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinMultiEmpty=o},3771:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(21182),t)},1394:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMultiSmallest=void 0;const n=r(83814),i=r(97045),a=r(6789);class o extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"multi-smallest",limitEntries:3,limitEntriesMin:!0,canHandleUndefs:!0})}async sortJoinEntries(e,t){return(await this.mediatorJoinEntriesSort.mediate({entries:e,context:t})).entries}async getOutput(e){const t=await this.sortJoinEntries(await i.ActorRdfJoin.getEntriesWithMetadatas([...e.entries]),e.context),r=t[0],a=t[1];t.splice(0,2);const s={output:n.ActorQueryOperation.getSafeBindings(await this.mediatorJoin.mediate({type:e.type,entries:[r,a],context:e.context})),operation:o.FACTORY.createJoin([r.operation,a.operation],!1)};return t.push(s),{result:await this.mediatorJoin.mediate({type:e.type,entries:t,context:e.context})}}async getJoinCoefficients(e,t){t=[...t];const r=await this.sortJoinEntries(e.entries.map(((e,r)=>({...e,metadata:t[r]}))),e.context);t=r.map((e=>e.metadata));const n=i.ActorRdfJoin.getRequestInitialTimes(t),a=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value*t.slice(2).reduce(((e,t)=>e*t.cardinality.value),1),persistedItems:0,blockingItems:0,requestTime:n[0]+t[0].cardinality.value*a[0]+n[1]+t[1].cardinality.value*a[1]+t.slice(2).reduce(((e,t,r)=>e+n.slice(2)[r]+t.cardinality.value*a.slice(2)[r]),0)}}}t.ActorRdfJoinMultiSmallest=o,o.FACTORY=new a.Factory},34442:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1394),t)},69046:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinNestedLoop=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"nested-loop",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){return{result:{type:"bindings",bindingsStream:new i.NestedLoopJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,n.ActorRdfJoin.joinBindings,{autoStart:!1}),metadata:async()=>await this.constructResultMetadata(e.entries,await n.ActorRdfJoin.getMetadatas(e.entries),e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinNestedLoop=a},87622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69046),t)},44716:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinNone=void 0;const n=r(79550),i=r(97045),a=r(33588),o=r(89227),s=new n.BindingsFactory;class c extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"none",limitEntries:0})}async test(e){if(e.entries.length>0)throw new Error(`Actor ${this.name} can only join zero entries`);return await this.getJoinCoefficients()}async getOutput(e){return{result:{bindingsStream:new o.ArrayIterator([s.bindings()],{autoStart:!1}),metadata:()=>Promise.resolve({state:new a.MetadataValidationState,cardinality:{type:"exact",value:1},canContainUndefs:!1,variables:[]}),type:"bindings"}}}async getJoinCoefficients(){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinNone=c},64849:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44716),t)},81712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSingle=void 0;const n=r(97045);class i extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"single",limitEntries:1}),this.includeInLogs=!1}async test(e){if(1!==e.entries.length)throw new Error(`Actor ${this.name} can only join a single entry`);return await this.getJoinCoefficients()}async getOutput(e){return{result:e.entries[0].output}}async getJoinCoefficients(){return{iterations:0,persistedItems:0,blockingItems:0,requestTime:0}}}t.ActorRdfJoinSingle=i},85427:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(81712),t)},34849:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSymmetricHash=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"inner",physicalName:"symmetric-hash",limitEntries:2})}async getOutput(e){const t=await n.ActorRdfJoin.getMetadatas(e.entries),r=n.ActorRdfJoin.overlappingVariables(t);return{result:{type:"bindings",bindingsStream:new i.SymmetricHashJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,(e=>a.hash(e,r)),n.ActorRdfJoin.joinBindings),metadata:async()=>await this.constructResultMetadata(e.entries,t,e.context)}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value+t[1].cardinality.value,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinSymmetricHash=a},33023:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34849),t)},92443:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMinusHashUndef=void 0;const n=r(83814),i=r(97045),a=r(30773);class o extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"minus",physicalName:"hash-undef",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){const t=e.entries[1].output,r=e.entries[0].output,o=await i.ActorRdfJoin.getMetadatas(e.entries),s=i.ActorRdfJoin.overlappingVariables(o);if(s.length>0){const e=new a.BindingsIndex(s);return{result:{type:"bindings",bindingsStream:new n.ClosableTransformIterator((async()=>(await new Promise((r=>{t.bindingsStream.on("data",(t=>e.add(t))),t.bindingsStream.on("end",r)})),r.bindingsStream.filter((t=>!e.contains(t))))),{autoStart:!1,onClose(){t.bindingsStream.destroy(),r.bindingsStream.destroy()}}),async metadata(){const e=await r.metadata(),t=await r.metadata();return{...t,canContainUndefs:e.canContainUndefs||t.canContainUndefs}}}}}return t.bindingsStream.destroy(),{result:r}}async getJoinCoefficients(e,t){const r=i.ActorRdfJoin.getRequestInitialTimes(t),n=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:1.01*(t[0].cardinality.value+t[1].cardinality.value),persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*n[0]+r[1]+t[1].cardinality.value*n[1]}}}t.ActorRdfJoinMinusHashUndef=o},30773:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsIndex=void 0;const n=r(6053);class i{constructor(e){this.data={},this.keys=e}static hashTerm(e){return e&&"Variable"!==e.termType?(0,n.termToString)(e):""}add(e){if(this.isBindingsValid(e)){let t=this.data;for(const r of this.keys){const n=i.hashTerm(e.get(r));let a=t[n];a||(a=t[n]={}),t=a}}}contains(e){return!!this.isBindingsValid(e)&&this.containsRecursive(e,this.keys,[this.data])}isBindingsValid(e){let t=!1;for(const r of this.keys)if(e.get(r)){t=!0;break}return t}containsRecursive(e,t,r){if(0===t.length)return!0;let n;[n,...t]=t;for(const a of r){const r=i.hashTerm(e.get(n));if(r){const n=[a[r],a[""]].filter(Boolean);if(0===n.length)continue;if(this.containsRecursive(e,t,n))return!0}else{let r=Object.keys(a).map((e=>a[e]));if(0===r.length&&(r=[{}]),this.containsRecursive(e,t,r))return!0}}return!1}}t.BindingsIndex=i},56419:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(92443),t)},34086:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinMinusHash=void 0;const n=r(83814),i=r(97045);class a extends i.ActorRdfJoin{constructor(e){super(e,{logicalType:"minus",physicalName:"hash",limitEntries:2})}async getOutput(e){const t=e.entries[1].output,r=e.entries[0].output,a=await i.ActorRdfJoin.getMetadatas(e.entries),o=i.ActorRdfJoin.overlappingVariables(a);if(o.length>0){const e={};return{result:{type:"bindings",bindingsStream:new n.ClosableTransformIterator((async()=>(await new Promise((r=>{t.bindingsStream.on("data",(t=>{e[i.ActorRdfJoin.hash(t,o)]=!0})),t.bindingsStream.on("end",r)})),r.bindingsStream.filter((t=>!e[i.ActorRdfJoin.hash(t,o)])))),{autoStart:!1,onClose(){t.bindingsStream.destroy(),r.bindingsStream.destroy()}}),metadata:r.metadata}}}return t.bindingsStream.destroy(),{result:r}}async getJoinCoefficients(e,t){const r=i.ActorRdfJoin.getRequestInitialTimes(t),n=i.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value+t[1].cardinality.value,persistedItems:t[0].cardinality.value,blockingItems:t[0].cardinality.value,requestTime:r[0]+t[0].cardinality.value*n[0]+r[1]+t[1].cardinality.value*n[1]}}}t.ActorRdfJoinMinusHash=a},66927:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34086),t)},89225:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinOptionalBind=void 0;const n=r(39474),i=r(83814),a=r(97045),o=r(78470),s=r(6789);class c extends a.ActorRdfJoin{constructor(e){super(e,{logicalType:"optional",physicalName:"bind",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){e.entries[1].output.bindingsStream.close();const t=e.context.set(o.KeysQueryOperation.joinLeftMetadata,await e.entries[0].output.metadata()).set(o.KeysQueryOperation.joinRightMetadatas,[await e.entries[1].output.metadata()]);return{result:{type:"bindings",bindingsStream:n.ActorRdfJoinMultiBind.createBindStream(this.bindOrder,e.entries[0].output.bindingsStream,[e.entries[1].operation],(async(e,r)=>{const n=e[0];return i.ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({operation:n,context:t?.set(o.KeysQueryOperation.joinBindings,r)})).bindingsStream}),!0),metadata:async()=>await this.constructResultMetadata(e.entries,await a.ActorRdfJoin.getMetadatas(e.entries),e.context,{canContainUndefs:!0})}}}async getJoinCoefficients(e,t){const r=a.ActorRdfJoin.getRequestInitialTimes(t),n=a.ActorRdfJoin.getRequestItemTimes(t);if(e.entries[1].operation.type===s.Algebra.types.EXTEND||e.entries[1].operation.type===s.Algebra.types.GROUP)throw new Error(`Actor ${this.name} can not bind on Extend and Group operations`);const i=(await this.mediatorJoinSelectivity.mediate({entries:e.entries,context:e.context})).selectivity*this.selectivityModifier;return{iterations:t[0].cardinality.value*t[1].cardinality.value*i,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i*(n[0]+r[1]+t[1].cardinality.value*n[1])}}}t.ActorRdfJoinOptionalBind=c},95117:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(89225),t)},90145:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinOptionalNestedLoop=void 0;const n=r(97045),i=r(89727);class a extends n.ActorRdfJoin{constructor(e){super(e,{logicalType:"optional",physicalName:"nested-loop",limitEntries:2,canHandleUndefs:!0})}async getOutput(e){return{result:{type:"bindings",bindingsStream:new i.NestedLoopJoin(e.entries[0].output.bindingsStream,e.entries[1].output.bindingsStream,n.ActorRdfJoin.joinBindings,{optional:!0,autoStart:!1}),metadata:async()=>await this.constructResultMetadata(e.entries,await n.ActorRdfJoin.getMetadatas(e.entries),e.context,{canContainUndefs:!0})}}}async getJoinCoefficients(e,t){const r=n.ActorRdfJoin.getRequestInitialTimes(t),i=n.ActorRdfJoin.getRequestItemTimes(t);return{iterations:t[0].cardinality.value*t[1].cardinality.value,persistedItems:0,blockingItems:0,requestTime:r[0]+t[0].cardinality.value*i[0]+r[1]+t[1].cardinality.value*i[1]}}}t.ActorRdfJoinOptionalNestedLoop=a},36920:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90145),t)},88429:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JoinTypes=t.ActorRdfJoinSelectivityVariableCounting=void 0;const n=r(52185),i=r(6789);class a extends n.ActorRdfJoinSelectivity{constructor(e){super(e)}async test(e){return{accuracy:.5}}static getPatternCost(e){let t=1;return"Variable"===e.subject.termType&&(t+=4),"Variable"!==e.predicate.termType&&e.type!==i.Algebra.types.PATH||(t+=1),"Variable"===e.object.termType&&(t+=2),"Variable"===e.graph.termType&&(t+=1),t/9}static getJoinTypes(e,t){const r=[];return"Variable"===e.subject.termType?(e.subject.equals(t.subject)&&r.push(o.unboundSS),"pattern"===t.type&&e.subject.equals(t.predicate)&&r.push(o.unboundSP),e.subject.equals(t.object)&&r.push(o.unboundSO),e.subject.equals(t.graph)&&r.push(o.unboundSG)):(e.subject.equals(t.subject)&&r.push(o.boundSS),"pattern"===t.type&&e.subject.equals(t.predicate)&&r.push(o.boundSP),e.subject.equals(t.object)&&r.push(o.boundSO),e.subject.equals(t.graph)&&r.push(o.boundSG)),"pattern"===e.type&&("Variable"===e.predicate.termType?(e.predicate.equals(t.subject)&&r.push(o.unboundPS),"pattern"===t.type&&e.predicate.equals(t.predicate)&&r.push(o.unboundPP),e.predicate.equals(t.object)&&r.push(o.unboundPO),e.predicate.equals(t.graph)&&r.push(o.unboundPG)):(e.predicate.equals(t.subject)&&r.push(o.boundPS),"pattern"===t.type&&e.predicate.equals(t.predicate)&&r.push(o.boundPP),e.predicate.equals(t.object)&&r.push(o.boundPO),e.predicate.equals(t.graph)&&r.push(o.boundPG))),"Variable"===e.object.termType?(e.object.equals(t.subject)&&r.push(o.unboundOS),"pattern"===t.type&&e.object.equals(t.predicate)&&r.push(o.unboundOP),e.object.equals(t.object)&&r.push(o.unboundOO),e.object.equals(t.graph)&&r.push(o.unboundOG)):(e.object.equals(t.subject)&&r.push(o.boundOS),"pattern"===t.type&&e.object.equals(t.predicate)&&r.push(o.boundOP),e.object.equals(t.object)&&r.push(o.boundOO),e.object.equals(t.graph)&&r.push(o.boundOG)),"Variable"===e.graph.termType?(e.graph.equals(t.subject)&&r.push(o.unboundGS),"pattern"===t.type&&e.graph.equals(t.predicate)&&r.push(o.unboundGP),e.graph.equals(t.object)&&r.push(o.unboundGO),e.graph.equals(t.graph)&&r.push(o.unboundGG)):(e.graph.equals(t.subject)&&r.push(o.boundGS),"pattern"===t.type&&e.graph.equals(t.predicate)&&r.push(o.boundGP),e.graph.equals(t.object)&&r.push(o.boundGO),e.graph.equals(t.graph)&&r.push(o.boundGG)),r}static getOperationsPairwiseJoinCost(e,t){let r=a.MAX_PAIRWISE_COST;for(const n of a.getJoinTypes(e,t))switch(n){case o.boundSS:r-=4;break;case o.boundSP:r-=6;break;case o.boundSO:r-=2;break;case o.boundSG:case o.boundPS:r-=6;break;case o.boundPP:return 1;case o.boundPO:case o.boundPG:r-=6;break;case o.boundOS:r-=2;break;case o.boundOP:r-=6;break;case o.boundOO:r-=2;break;case o.boundOG:case o.boundGS:case o.boundGP:case o.boundGO:case o.boundGG:r-=6;break;case o.unboundSS:r-=2;break;case o.unboundSP:r-=3;break;case o.unboundSO:r-=1;break;case o.unboundSG:case o.unboundPS:case o.unboundPP:case o.unboundPO:case o.unboundPG:r-=3;break;case o.unboundOS:r-=1;break;case o.unboundOP:r-=3;break;case o.unboundOO:r-=1;break;case o.unboundOG:case o.unboundGS:case o.unboundGP:case o.unboundGO:case o.unboundGG:r-=3}return r/a.MAX_PAIRWISE_COST}static getOperationsJoinCost(e){const t=[];for(const r of e)i.Util.recurseOperation(r,{[i.Algebra.types.PATTERN]:e=>(t.push(e),!1),[i.Algebra.types.PATH]:e=>(t.push(e),!1)});let r=0,n=0;for(const e of t)for(const i of t)e!==i&&(r+=a.getOperationsPairwiseJoinCost(e,i),n++);return 0===n?1:r/n*t.reduce(((e,t)=>e*a.getPatternCost(t)),1)}async run(e){return e.entries.length<=1?{selectivity:1}:{selectivity:a.getOperationsJoinCost(e.entries.map((e=>e.operation)))}}}var o;t.ActorRdfJoinSelectivityVariableCounting=a,a.MAX_PAIRWISE_COST=82,function(e){e[e.boundSS=0]="boundSS",e[e.boundSP=1]="boundSP",e[e.boundSO=2]="boundSO",e[e.boundSG=3]="boundSG",e[e.boundPS=4]="boundPS",e[e.boundPP=5]="boundPP",e[e.boundPO=6]="boundPO",e[e.boundPG=7]="boundPG",e[e.boundOS=8]="boundOS",e[e.boundOP=9]="boundOP",e[e.boundOO=10]="boundOO",e[e.boundOG=11]="boundOG",e[e.boundGS=12]="boundGS",e[e.boundGP=13]="boundGP",e[e.boundGO=14]="boundGO",e[e.boundGG=15]="boundGG",e[e.unboundSS=16]="unboundSS",e[e.unboundSP=17]="unboundSP",e[e.unboundSO=18]="unboundSO",e[e.unboundSG=19]="unboundSG",e[e.unboundPS=20]="unboundPS",e[e.unboundPP=21]="unboundPP",e[e.unboundPO=22]="unboundPO",e[e.unboundPG=23]="unboundPG",e[e.unboundOS=24]="unboundOS",e[e.unboundOP=25]="unboundOP",e[e.unboundOO=26]="unboundOO",e[e.unboundOG=27]="unboundOG",e[e.unboundGS=28]="unboundGS",e[e.unboundGP=29]="unboundGP",e[e.unboundGO=30]="unboundGO",e[e.unboundGG=31]="unboundGG"}(o||(t.JoinTypes=o={}))},41998:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(88429),t)},41865:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateCanContainUndefs=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){if("initialize"===e.mode)return{metadata:{canContainUndefs:!1}};let t=e.accumulatedMetadata.canContainUndefs;return e.appendingMetadata.canContainUndefs&&(t=!0),{metadata:{canContainUndefs:t}}}}t.ActorRdfMetadataAccumulateCanContainUndefs=i},69791:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(41865),t)},63349:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateCardinality=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){if("initialize"===e.mode)return{metadata:{cardinality:{type:"exact",value:0}}};const t={...e.accumulatedMetadata.cardinality};if(t.dataset){if(!e.appendingMetadata.cardinality.dataset)return{metadata:{cardinality:t}};if(t.dataset!==e.appendingMetadata.cardinality.dataset&&e.appendingMetadata.subsetOf===t.dataset)return{metadata:{cardinality:e.appendingMetadata.cardinality}};if(t.dataset===e.appendingMetadata.cardinality.dataset)return{metadata:{cardinality:t}};delete t.dataset}return e.appendingMetadata.cardinality&&Number.isFinite(e.appendingMetadata.cardinality.value)?("estimate"===e.appendingMetadata.cardinality.type&&(t.type="estimate"),t.value+=e.appendingMetadata.cardinality.value):(t.type="estimate",t.value=Number.POSITIVE_INFINITY),{metadata:{cardinality:t}}}}t.ActorRdfMetadataAccumulateCardinality=i},22074:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(63349),t)},4823:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulatePageSize=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){return"initialize"===e.mode?{metadata:{}}:{metadata:{..."pageSize"in e.accumulatedMetadata||"pageSize"in e.appendingMetadata?{pageSize:(e.accumulatedMetadata.pageSize||0)+(e.appendingMetadata.pageSize||0)}:{}}}}}t.ActorRdfMetadataAccumulatePageSize=i},78345:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4823),t)},4352:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulateRequestTime=void 0;const n=r(36254);class i extends n.ActorRdfMetadataAccumulate{constructor(e){super(e)}async test(e){return!0}async run(e){return"initialize"===e.mode?{metadata:{}}:{metadata:{..."requestTime"in e.accumulatedMetadata||"requestTime"in e.appendingMetadata?{requestTime:(e.accumulatedMetadata.requestTime||0)+(e.appendingMetadata.requestTime||0)}:{}}}}}t.ActorRdfMetadataAccumulateRequestTime=i},13905:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(4352),t)},1133:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAll=void 0;const n=r(63460),i=r(51887);class a extends n.ActorRdfMetadata{constructor(e){super(e)}async test(e){return!0}async run(e){const t=new i.Readable({objectMode:!0}),r=new i.Readable({objectMode:!0});return e.quads.on("error",(e=>{t.emit("error",e),r.emit("error",e)})),t._read=r._read=()=>{t._read=r._read=()=>{},e.quads.on("data",(e=>{t.push(e),r.push(e)})),e.quads.on("end",(()=>{t.push(null),r.push(null)}))},{data:t,metadata:r}}}t.ActorRdfMetadataAll=a},59095:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1133),t)},27932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractAllowHttpMethods=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return e.headers?.get("allow")&&(t.allowHttpMethods=e.headers.get("allow")?.split(/, */u)),{metadata:t}}}t.ActorRdfMetadataExtractAllowHttpMethods=i},33394:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(27932),t)},65354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraControls=void 0;const n=r(23058),i=r(19415);class a extends n.ActorRdfMetadataExtract{constructor(e){super(e),this.parsedUriTemplateCache={}}async test(e){return!0}getLinks(e,t){return Object.fromEntries(a.LINK_TYPES.map((r=>{const n=t[r]||t[`${r}Page`],i=n&&n[e];return[r,i&&i.length>0?i[0]:null]})))}parseUriTemplateCached(e){return this.parsedUriTemplateCache[e]||(this.parsedUriTemplateCache[e]=(0,i.parse)(e))}getSearchForms(e){const t=e.search,r=[];if(t)for(const n in t)for(const i of t[n]){const t=(e.template||{})[i]||[];if(1!==t.length)throw new Error(`Expected 1 hydra:template for ${i}`);const a=t[0],o=this.parseUriTemplateCached(a),s=Object.fromEntries(((e.mapping||{})[i]||[]).map((t=>{const r=((e.variable||{})[t]||[])[0],n=((e.property||{})[t]||[])[0];if(!r)throw new Error(`Expected a hydra:variable for ${t}`);if(!n)throw new Error(`Expected a hydra:property for ${t}`);return[n,r]}))),c=e=>o.expand(Object.fromEntries(Object.keys(e).map((t=>[s[t],e[t]]))));r.push({dataset:n,template:a,mappings:s,getUri:c})}return{values:r}}getHydraProperties(e){return new Promise(((t,r)=>{e.on("error",r);const n={};e.on("data",(e=>{if(e.predicate.value.startsWith(a.HYDRA)){const t=e.predicate.value.slice(a.HYDRA.length),r=n[t]||(n[t]={});(r[e.subject.value]||(r[e.subject.value]=[])).push(e.object.value)}})),e.on("end",(()=>t(n)))}))}async run(e){const t={},r=await this.getHydraProperties(e.metadata);return Object.assign(t,this.getLinks(e.url,r)),t.searchForms=this.getSearchForms(r),{metadata:t}}}t.ActorRdfMetadataExtractHydraControls=a,a.HYDRA="http://www.w3.org/ns/hydra/core#",a.LINK_TYPES=["first","next","previous","last"]},88791:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(65354),t)},74276:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraCount=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}run(e){return new Promise(((t,r)=>{e.metadata.on("error",r),e.metadata.on("data",(e=>{this.predicates.includes(e.predicate.value)&&t({metadata:{cardinality:{type:"estimate",value:Number.parseInt(e.object.value,10),dataset:e.subject.value}}})})),e.metadata.on("end",(()=>{t({metadata:{cardinality:{type:"estimate",value:0}}})}))}))}}t.ActorRdfMetadataExtractHydraCount=i},62270:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74276),t)},63255:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractHydraPagesize=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return new Promise(((t,r)=>{e.metadata.on("error",r),e.metadata.on("data",(e=>{this.predicates.includes(e.predicate.value)&&t({metadata:{pageSize:Number.parseInt(e.object.value,10)}})})),e.metadata.on("end",(()=>{t({metadata:{}})}))}))}}t.ActorRdfMetadataExtractHydraPagesize=i},95831:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(63255),t)},70930:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractPatchSparqlUpdate=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return(e.headers?.get("accept-patch")?.includes("application/sparql-update")||e.headers?.get("ms-author-via")?.includes("SPARQL"))&&(t.patchSparqlUpdate=!0),{metadata:t}}}t.ActorRdfMetadataExtractPatchSparqlUpdate=i},31684:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(70930),t)},1519:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractPutAccepted=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){const t={};return e.headers?.get("accept-put")&&(t.putAccepted=e.headers.get("accept-put")?.split(/, */u)),{metadata:t}}}t.ActorRdfMetadataExtractPutAccepted=i},13409:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(1519),t)},33699:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractRequestTime=void 0;const n=r(23058);class i extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return{metadata:{requestTime:e.requestTime}}}}t.ActorRdfMetadataExtractRequestTime=i},25344:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33699),t)},74342:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtractSparqlService=void 0;const n=r(23058),i=r(84690);class a extends n.ActorRdfMetadataExtract{constructor(e){super(e)}async test(e){return!0}async run(e){return new Promise(((t,r)=>{e.metadata.on("error",r);const n={};e.metadata.on("data",(t=>{"http://www.w3.org/ns/sparql-service-description#endpoint"!==t.predicate.value||"BlankNode"!==t.subject.termType&&t.subject.value!==e.url?"http://www.w3.org/ns/sparql-service-description#defaultGraph"===t.predicate.value&&(n.defaultGraph=t.object.value):(n.sparqlService="Literal"===t.object.termType?(0,i.resolve)(t.object.value,e.url):t.object.value,this.inferHttpsEndpoint&&e.url.startsWith("https")&&!n.sparqlService.startsWith("https")&&(n.sparqlService=n.sparqlService.replace("http:","https:")))})),e.metadata.on("end",(()=>{t({metadata:n})}))}))}}t.ActorRdfMetadataExtractSparqlService=a},17609:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74342),t)},76150:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataPrimaryTopic=void 0;const n=r(63460),i=r(51887);class a extends n.ActorRdfMetadata{constructor(e){super(e)}async test(e){if(e.triples)throw new Error("This actor only supports non-triple quad streams.");return!0}async run(e){const t=new i.Readable({objectMode:!0}),r=new i.Readable({objectMode:!0}),n=()=>{t._read=r._read=()=>{},e.quads.on("error",(e=>{t.emit("error",e),r.emit("error",e)}));const n={};let i;const a={};e.quads.on("data",(t=>{"http://rdfs.org/ns/void#subset"===t.predicate.value&&t.object.value===e.url?i=t.subject.value:"http://xmlns.com/foaf/0.1/primaryTopic"===t.predicate.value&&(a[t.object.value]=t.subject.value);let r=n[t.graph.value];r||(r=n[t.graph.value]=[]),r.push(t)})),e.quads.on("end",(()=>{const e=i?a[i]:void 0;for(const i in n)if(i===e){for(const e of n[i])r.push(e);if(this.metadataToData)for(const e of n[i])t.push(e)}else{for(const e of n[i])t.push(e);if(!e&&this.dataToMetadataOnInvalidMetadataGraph)for(const e of n[i])r.push(e)}t.push(null),r.push(null)}))};return t._read=r._read=()=>{n()},{data:t,metadata:r}}}t.ActorRdfMetadataPrimaryTopic=a},8962:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76150),t)},77761:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlMicrodata=void 0;const n=r(44706),i=r(47755);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=e.headers?e.headers.get("content-type"):null,r=t?.includes("xml"),n=new i.MicrodataRdfParser({baseIRI:e.baseIRI,xmlMode:r});n.on("error",e.error),n.on("data",e.emit);const a=n.onEnd;return n.onEnd=()=>{a.call(n),e.end()},{htmlParseListener:n}}}t.ActorRdfParseHtmlMicrodata=a},29438:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77761),t)},96889:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlRdfa=void 0;const n=r(44706),i=r(1481);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=e.headers?e.headers.get("content-type"):null,r=(e.headers&&e.headers.get("content-language"))??void 0,n=t&&t.includes("xml")?"xhtml":"html",a=new i.RdfaParser({baseIRI:e.baseIRI,profile:n,language:r});a.on("error",e.error),a.on("data",e.emit);const o=a.onEnd;return a.onEnd=()=>{o.call(a),e.end()},{htmlParseListener:a}}}t.ActorRdfParseHtmlRdfa=a},75022:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(96889),t)},17191:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtmlScript=void 0;const n=r(44706),i=r(13197);class a extends n.ActorRdfParseHtml{constructor(e){super(e)}async test(e){return!0}async run(e){const t=(await this.mediatorRdfParseMediatypes.mediate({context:e.context,mediaTypes:!0})).mediaTypes;return{htmlParseListener:new i.HtmlScriptListener(this.mediatorRdfParseHandle,e.emit,e.error,e.end,t,e.context,e.baseIRI,e.headers)}}}t.ActorRdfParseHtmlScript=a},13197:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HtmlScriptListener=void 0;const n=r(78470),i=r(51887),a=r(84690);class o{constructor(e,t,r,i,a,o,s,c){this.textChunksJsonLd=[],this.endBarrier=1,this.passedScripts=0,this.isFinalJsonLdProcessing=!1,this.mediatorRdfParseHandle=e,this.cbQuad=t,this.cbError=r,this.cbEnd=i,this.supportedTypes=a,this.context=o.set(n.KeysRdfParseHtmlScript.processingHtmlScript,!0),this.baseIRI=s,this.headers=c,this.onlyFirstScript=!1===o.get(n.KeysRdfParseHtmlScript.extractAllScripts);const u=this.baseIRI.indexOf("#");this.targetScriptId=u>0?this.baseIRI.slice(u+1,this.baseIRI.length):null}static newErrorCoded(e,t){const r=new Error(e);return r.code=t,r}onEnd(){0==--this.endBarrier&&(this.textChunksJsonLd.length>0?(this.handleMediaType="application/ld+json",this.textChunks=this.textChunksJsonLd,this.textChunks.push("]"),this.textChunksJsonLd=[],this.isFinalJsonLdProcessing=!0,this.endBarrier++,this.onTagClose()):(0===this.passedScripts&&this.targetScriptId&&this.cbError(o.newErrorCoded(`Failed to find targeted script id "${this.targetScriptId}"`,"loading document failed")),this.cbEnd()),this.isFinalJsonLdProcessing=!1)}onTagClose(){if(this.handleMediaType)if(this.requiresCustomJsonLdHandling(this.handleMediaType)&&!this.isFinalJsonLdProcessing)this.handleMediaType=void 0,this.textChunks=void 0,this.onEnd();else{const e=new i.Readable({objectMode:!0});e._read=()=>{};const t=this.textChunks,r={context:this.context,handle:{metadata:{baseIRI:this.baseIRI},data:e,headers:this.headers,context:this.context},handleMediaType:this.handleMediaType};this.mediatorRdfParseHandle.mediate(r).then((({handle:r})=>{r.data.on("error",(e=>this.cbError(o.newErrorCoded(e.message,"invalid script element")))).on("data",this.cbQuad).on("end",(()=>this.onEnd()));for(const r of t)e.push(r);e.push(null)})).catch((e=>{this.targetScriptId?this.cbError(o.newErrorCoded(e.message,"loading document failed")):this.onEnd()})),this.handleMediaType=void 0,this.textChunks=void 0}}onTagOpen(e,t){"base"===e&&t.href&&(this.baseIRI=(0,a.resolve)(t.href,this.baseIRI)),"script"!==e||this.targetScriptId&&t.id!==this.targetScriptId?this.handleMediaType=void 0:this.supportedTypes[t.type]?this.onlyFirstScript&&this.passedScripts>0?this.handleMediaType=void 0:(this.passedScripts++,this.handleMediaType=t.type,this.endBarrier++,this.requiresCustomJsonLdHandling(this.handleMediaType)?(this.textChunks=this.textChunksJsonLd,this.textChunks.push(0===this.textChunks.length?"[":",")):this.textChunks=[]):this.targetScriptId&&this.cbError(o.newErrorCoded(`Targeted script "${this.targetScriptId}" does not have a supported type`,"loading document failed"))}onText(e){this.handleMediaType&&this.textChunks.push(e)}requiresCustomJsonLdHandling(e){return!this.onlyFirstScript&&!this.targetScriptId&&"application/ld+json"===e}}t.HtmlScriptListener=o},89518:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17191),t)},52435:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtml=void 0;const n=r(93695),i=r(62304),a=r(51887);class o extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new a.Readable({objectMode:!0});return n._read=async()=>{n._read=()=>{};let t=1;function a(e){n.emit("error",e)}function o(){0==--t&&n.push(null)}const s={baseIRI:e.metadata?.baseIRI??"",context:r,emit:function(e){n.emit("data",e)},end:o,error:a,headers:e.headers};Promise.all(this.busRdfParseHtml.publish(s)).then((async r=>{t+=r.length;const n=[];for(const e of r){const{htmlParseListener:t}=await e.actor.run(s);n.push(t)}const c=new i.Parser({onclosetag(){try{for(const e of n)e.onTagClose()}catch(e){a(e)}},onend(){try{for(const e of n)e.onEnd()}catch(e){a(e)}o()},onopentag(e,t){try{for(const r of n)r.onTagOpen(e,t)}catch(e){a(e)}},ontext(e){try{for(const t of n)t.onText(e)}catch(e){a(e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:!1});e.data.on("error",a).on("data",(e=>c.write(e.toString()))).on("end",(()=>c.end()))})).catch(a)},{data:n}}}t.ActorRdfParseHtml=o},9381:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52435),t)},59562:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseJsonLd=void 0;const n=r(93695),i=r(78470),a=r(72333),o=r(97821);class s extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async testHandle(e,t,r){if(r.has(i.KeysRdfParseHtmlScript.processingHtmlScript)&&"application/ld+json"!==t)throw new Error("JSON-LD in script tags can only have media type 'application/ld+json'");if(!t||!(t in this.mediaTypePriorities)&&!t.endsWith("+json"))throw new Error(`Unrecognized media type: ${t}`);return await this.testHandleChecked(e)}async runHandle(e,t,r){return{data:a.JsonLdParser.fromHttpResponse(e.metadata?.baseIRI??"",t,e.headers,{documentLoader:r.get(i.KeysRdfParseJsonLd.documentLoader)||new o.DocumentLoaderMediated(this.mediatorHttp,r),strictValues:r.get(i.KeysRdfParseJsonLd.strictValues),...r.get(i.KeysRdfParseJsonLd.parserOptions)}).import(e.data)}}}t.ActorRdfParseJsonLd=s},97821:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DocumentLoaderMediated=void 0;const n=r(80389),i=r(1838),a=r(29038);class o extends i.FetchDocumentLoader{constructor(e,t){super(o.createFetcher(e,t)),this.mediatorHttp=e,this.context=t}static createFetcher(e,t){return async(r,i)=>{const o=await e.mediate({input:r,init:i,context:t});return o.json=async()=>JSON.parse(await a(n.ActorHttp.toNodeReadable(o.body))),o}}}t.DocumentLoaderMediated=o},79852:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(59562),t),i(r(97821),t)},22751:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseN3=void 0;const n=r(93695),i=r(66641);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){e.data.on("error",(e=>n.emit("error",e)));const n=e.data.pipe(new i.StreamParser({baseIRI:e.metadata?.baseIRI,format:t.endsWith("n3")?t:`${t}*`}));return{data:n,metadata:{triples:"text/turtle"===t||"application/n-triples"===t||"text/n3"===t}}}}t.ActorRdfParseN3=a},44500:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22751),t)},93566:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseRdfXml=void 0;const n=r(93695),i=r(94607);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){e.data.on("error",(e=>n.emit("error",e)));const n=e.data.pipe(new i.RdfXmlParser({baseIRI:e.metadata?.baseIRI}));return{data:n,metadata:{triples:!0}}}}t.ActorRdfParseRdfXml=a},71422:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93566),t)},93415:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseShaclc=void 0;const n=r(93695),i=r(51887),a=r(13411),o=r(29038),s=r(54169);class c extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new s.PrefixWrappingIterator(o(e.data).then((r=>(0,a.parse)(r,{extendedSyntax:"text/shaclc-ext"===t,baseIRI:e.metadata?.baseIRI})))),c=new i.Readable({objectMode:!0});return n.on("prefix",((...e)=>c.emit("prefix",...e))),{data:c.wrap(n),metadata:{triples:!0}}}}t.ActorRdfParseShaclc=c},54169:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PrefixWrappingIterator=void 0;const n=r(89227);class i extends n.WrappingIterator{constructor(e){super(e?.then((e=>(this.prefixes=e.prefixes,e))))}read(){if(this.prefixes){for(const e of Object.entries(this.prefixes))this.emit("prefix",...e);delete this.prefixes}return super.read()}}t.PrefixWrappingIterator=i},38688:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93415),t)},22079:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseXmlRdfa=void 0;const n=r(93695),i=r(1481);class a extends n.ActorRdfParseFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=(e.headers&&e.headers.get("content-language"))??void 0;e.data.on("error",(e=>a.emit("error",e)));const a=e.data.pipe(new i.RdfaParser({baseIRI:e.metadata?.baseIRI,profile:"xml",language:n}));return{data:a,metadata:{triples:!0}}}}t.ActorRdfParseXmlRdfa=a},47385:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(22079),t)},18625:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksNext=void 0;const n=r(67315);class i extends n.ActorRdfResolveHypermediaLinks{constructor(e){super(e)}async test(e){if(!e.metadata.next)throw new Error(`Actor ${this.name} requires a 'next' metadata entry.`);return!0}async run(e){return{links:[{url:e.metadata.next}]}}}t.ActorRdfResolveHypermediaLinksNext=i},62120:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(18625),t)},34716:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksQueueFifo=void 0;const n=r(15115),i=r(6642);class a extends n.ActorRdfResolveHypermediaLinksQueue{constructor(e){super(e)}async test(e){return!0}async run(e){return{linkQueue:new i.LinkQueueFifo}}}t.ActorRdfResolveHypermediaLinksQueueFifo=a},6642:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkQueueFifo=void 0,t.LinkQueueFifo=class{constructor(){this.links=[]}push(e){return this.links.push(e),!0}getSize(){return this.links.length}isEmpty(){return 0===this.links.length}pop(){return this.links.shift()}peek(){return this.links[0]}}},67506:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34716),t),i(r(6642),t)},67497:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaNone=void 0;const n=r(62515),i=r(71580),a=r(92608);class o extends i.ActorRdfResolveHypermedia{constructor(e){super(e,"file")}async testMetadata(e){return{filterFactor:0}}async run(e){return this.logInfo(e.context,`Identified as file source: ${e.url}`),{source:new n.RdfJsQuadSource(await(0,a.storeStream)(e.quads))}}}t.ActorRdfResolveHypermediaNone=o},2458:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(67497),t)},9466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaQpf=void 0;const n=r(71580),i=r(49078);class a extends n.ActorRdfResolveHypermedia{constructor(e){super(e,"qpf")}async testMetadata(e){const{searchForm:t}=this.createSource(e.url,e.metadata,e.context);if(e.handledDatasets&&e.handledDatasets[t.dataset])throw new Error(`Actor ${this.name} can only be applied for the first page of a QPF dataset.`);return{filterFactor:1}}async run(e){this.logInfo(e.context,`Identified as qpf source: ${e.url}`);const t=this.createSource(e.url,e.metadata,e.context,e.quads);return{source:t,dataset:t.searchForm.dataset}}createSource(e,t,r,n){return new i.RdfSourceQpf(this.mediatorMetadata,this.mediatorMetadataExtract,this.mediatorDereferenceRdf,this.subjectUri,this.predicateUri,this.objectUri,this.graphUri,e,t,r,n)}}t.ActorRdfResolveHypermediaQpf=a},49078:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfSourceQpf=void 0;const n=r(89227),i=r(91194),a=r(6053),o=r(98086),s=new i.DataFactory;function c(e){return"DefaultGraph"===e.termType?"|":(0,a.termToString)(e)}t.RdfSourceQpf=class{constructor(e,t,r,i,a,o,c,u,l,d,h){this.mediatorMetadata=e,this.mediatorMetadataExtract=t,this.mediatorDereferenceRdf=r,this.subjectUri=i,this.predicateUri=a,this.objectUri=o,this.graphUri=c,this.url=u,this.context=d,this.cachedQuads={};const p=this.getSearchForm(l);if(!p)throw new Error("Illegal state: found no TPF/QPF search form anymore in metadata.");if(this.searchForm=p,this.defaultGraph=l.defaultGraph?s.namedNode(l.defaultGraph):void 0,h){let e=(0,n.wrap)(h);this.defaultGraph&&(e=this.reverseMapQuadsToDefaultGraph(e)),e.setProperty("metadata",l),this.cacheQuads(e,s.variable(""),s.variable(""),s.variable(""),s.variable(""))}}getSearchForm(e){if(!e.searchForms||!e.searchForms.values)return;const{searchForms:t}=e;for(const e of t.values){if(this.graphUri&&this.subjectUri in e.mappings&&this.predicateUri in e.mappings&&this.objectUri in e.mappings&&this.graphUri in e.mappings&&4===Object.keys(e.mappings).length)return e;if(this.subjectUri in e.mappings&&this.predicateUri in e.mappings&&this.objectUri in e.mappings&&3===Object.keys(e.mappings).length)return e}}createFragmentUri(e,t,r,n,i){const s={},c=[{uri:this.subjectUri,term:t},{uri:this.predicateUri,term:r},{uri:this.objectUri,term:n},{uri:this.graphUri,term:i}];for(const e of c)e.uri&&"Variable"!==e.term.termType&&("Quad"!==e.term.termType||(0,o.everyTermsNested)(e.term,(e=>"Variable"!==e.termType)))&&(s[e.uri]=(0,a.termToString)(e.term));return e.getUri(s)}match(e,t,r,i){let a=!1;if("DefaultGraph"===i.termType)if(this.defaultGraph)a=!0,i=this.defaultGraph;else if(4===Object.keys(this.searchForm.mappings).length&&!this.defaultGraph){const e=new n.ArrayIterator([],{autoStart:!1});return e.setProperty("metadata",{requestTime:0,cardinality:{type:"exact",value:0},first:null,next:null,last:null,canContainUndefs:!1}),e}const c=this.getCachedQuads(e,t,r,i);if(c)return c;const u=new n.TransformIterator((async()=>{let c=this.createFragmentUri(this.searchForm,e,t,r,i);const l=await this.mediatorDereferenceRdf.mediate({context:this.context,url:c});c=l.url;const d=await this.mediatorMetadata.mediate({context:this.context,url:c,quads:l.data,triples:l.metadata?.triples}),h=this.mediatorMetadataExtract.mediate({context:this.context,url:c,metadata:d.metadata,requestTime:l.requestTime}).then((({metadata:e})=>u.setProperty("metadata",{...e,canContainUndefs:!1,subsetOf:this.url}))),p=s.defaultGraph();let f=(0,n.wrap)(d.data).transform({filter:n=>!!(0,o.matchPattern)(n,e,t,r,i)||a&&(0,o.matchPattern)(n,e,t,r,p)});return(a||"Variable"===i.termType)&&(f=this.reverseMapQuadsToDefaultGraph(f)),f.on("error",(()=>{})),await h,f}),{autoStart:!1});return this.cacheQuads(u,e,t,r,i),this.getCachedQuads(e,t,r,i)}reverseMapQuadsToDefaultGraph(e){const t=s.defaultGraph();return e.map((e=>(0,o.mapTerms)(e,((e,r)=>"graph"===r&&e.equals(this.defaultGraph)?t:e))))}getPatternId(e,t,r,n){return JSON.stringify({s:"Variable"===e.termType?"":c(e),p:"Variable"===t.termType?"":c(t),o:"Variable"===r.termType?"":c(r),g:"Variable"===n.termType?"":c(n)})}cacheQuads(e,t,r,n,i){const a=this.getPatternId(t,r,n,i);this.cachedQuads[a]=e.clone()}getCachedQuads(e,t,r,n){const i=this.getPatternId(e,t,r,n),a=this.cachedQuads[i];if(a)return a.clone()}}},14952:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(9466),t)},64389:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaSparql=void 0;const n=r(71580),i=r(1985);class a extends n.ActorRdfResolveHypermedia{constructor(e){super(e,"sparql")}async testMetadata(e){if(!(e.forceSourceType||e.metadata.sparqlService||this.checkUrlSuffix&&e.url.endsWith("/sparql")))throw new Error(`Actor ${this.name} could not detect a SPARQL service description or URL ending on /sparql.`);return{filterFactor:1}}async run(e){return this.logInfo(e.context,`Identified ${e.url} as sparql source with service URL: ${e.metadata.sparqlService||e.url}`),{source:new i.RdfSourceSparql(e.metadata.sparqlService||e.url,e.context,this.mediatorHttp,this.forceHttpGet,this.cacheSize)}}}t.ActorRdfResolveHypermediaSparql=a},1985:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfSourceSparql=void 0;const n=r(79550),i=r(89227),a=r(88436),o=r(70463),s=r(91194),c=r(98086),u=r(6789),l=new s.DataFactory,d=new n.BindingsFactory,h=l.variable("count");class p{constructor(e,t,r,n,i){this.url=e,this.context=t,this.mediatorHttp=r,this.endpointFetcher=new a.SparqlEndpointFetcher({method:n?"GET":"POST",fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.context}),prefixVariableQuestionMark:!0}),this.cache=i>0?new o.LRUCache({max:i}):void 0}static replaceBlankNodes(e){const t=(0,c.getVariables)((0,c.getTerms)(e)).map((e=>e.value)),r={};let n=!1;const i=(0,c.mapTermsNested)(e,(e=>{if("BlankNode"===e.termType){let i=e.value;if(r[i])i=r[i];else{if(t.includes(i)){let e=0;for(;t.includes(`${i}${e}`);)++e;i+=e}r[e.value]=i,t.push(i)}return n=!0,l.variable(i)}return e}));return n?i:e}static patternToBgp(e){return p.FACTORY.createBgp([p.FACTORY.createPattern(e.subject,e.predicate,e.object,e.graph)])}static patternToSelectQuery(e){const t=(0,c.getVariables)((0,c.getTerms)(e));return(0,u.toSparql)(p.FACTORY.createProject(p.patternToBgp(e),t),{sparqlStar:!0})}static patternToCountQuery(e){return(0,u.toSparql)(p.FACTORY.createProject(p.FACTORY.createExtend(p.FACTORY.createGroup(p.patternToBgp(e),[],[p.FACTORY.createBoundAggregate(l.variable("var0"),"count",p.FACTORY.createWildcardExpression(),!1)]),l.variable("count"),p.FACTORY.createTermExpression(l.variable("var0"))),[l.variable("count")]),{sparqlStar:!0})}async queryBindings(e,t){const r=await this.endpointFetcher.fetchBindings(e,t);return(0,i.wrap)(r,{autoStart:!1,maxBufferSize:Number.POSITIVE_INFINITY}).map((e=>d.bindings(Object.entries(e).map((([e,t])=>[l.variable(e.slice(1)),t])))))}match(e,t,r,n){const a=p.replaceBlankNodes(p.FACTORY.createPattern(e,t,r,n)),o=p.patternToCountQuery(a),s=p.patternToSelectQuery(a);new Promise((async(e,t)=>{try{const t=this.cache?.get(o);if(void 0!==t)return e(t);const r=await this.queryBindings(this.url,o);r.on("data",(t=>{const r=t.get(h),n={type:"estimate",value:Number.POSITIVE_INFINITY};if(r){const e=Number.parseInt(r.value,10);Number.isNaN(e)||(n.type="exact",n.value=e,this.cache?.set(o,n))}return e(n)})),r.on("error",(()=>e({type:"estimate",value:Number.POSITIVE_INFINITY}))),r.on("end",(()=>e({type:"estimate",value:Number.POSITIVE_INFINITY})))}catch(e){t(e)}})).then((e=>u.setProperty("metadata",{cardinality:e,canContainUndefs:!1}))).catch((()=>u.setProperty("metadata",{cardinality:{type:"estimate",value:Number.POSITIVE_INFINITY},canContainUndefs:!1})));const u=new i.TransformIterator((async()=>this.queryBindings(this.url,s)),{autoStart:!1}).transform({map:e=>(0,c.mapTermsNested)(a,(t=>{if("Variable"===t.termType){const r=e.get(t);return r||u.destroy(new Error(`The endpoint ${this.url} failed to provide a binding for ${t.value}.`)),r}return t})),autoStart:!1});return u}}t.RdfSourceSparql=p,p.FACTORY=new u.Factory},14579:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(64389),t)},27839:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternFederated=void 0;const n=r(58392),i=r(86571);class a extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e),this.emptyPatterns=new Map,e.mediatorRdfMetadataAccumulate||(this.mediatorRdfMetadataAccumulate={async mediate(e){if("initialize"===e.mode)return{metadata:{cardinality:{type:"exact",value:0},canContainUndefs:!1}};const t={...e.accumulatedMetadata},r=e.appendingMetadata;return r.cardinality&&Number.isFinite(r.cardinality.value)?("estimate"===r.cardinality.type&&(t.cardinality.type="estimate"),t.cardinality.value+=r.cardinality.value):(t.cardinality.type="estimate",t.cardinality.value=Number.POSITIVE_INFINITY),(t.requestTime||r.requestTime)&&(t.requestTime=t.requestTime||0,r.requestTime=r.requestTime||0,t.requestTime+=r.requestTime),(t.pageSize||r.pageSize)&&(t.pageSize=t.pageSize||0,r.pageSize=r.pageSize||0,t.pageSize+=r.pageSize),r.canContainUndefs&&(t.canContainUndefs=!0),{metadata:t}}})}async test(e){if(!(0,n.getContextSources)(e.context))throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a sources array.`);return!0}async getSource(e){return new i.FederatedQuadSource(this.mediatorResolveQuadPattern,this.mediatorRdfMetadataAccumulate,e,this.emptyPatterns,this.skipEmptyPatterns)}}t.ActorRdfResolveQuadPatternFederated=a},86571:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FederatedQuadSource=void 0;const n=r(83814),i=r(58392),a=r(78470),o=r(27057),s=r(33588),c=r(89227),u=r(91194),l=r(98086),d=r(6789),h=new u.DataFactory;class p{constructor(e,t,r,n,i){if(this.mediatorResolveQuadPattern=e,this.mediatorRdfMetadataAccumulate=t,this.sources=r.get(a.KeysRdfResolveQuadPattern.sources),this.contextDefault=r.delete(a.KeysRdfResolveQuadPattern.sources),this.emptyPatterns=n,this.sourceIds=r.get(a.KeysRdfResolveQuadPattern.sourceIds)??new Map,this.skipEmptyPatterns=i,this.algebraFactory=new d.Factory,this.skipEmptyPatterns)for(const e of this.sources)this.emptyPatterns.has(e)||this.emptyPatterns.set(e,[])}static isTermBound(e){return"Variable"!==e.termType}static isSubPatternOf(e,t){return(!p.isTermBound(t.subject)||t.subject.equals(e.subject))&&(!p.isTermBound(t.predicate)||t.predicate.equals(e.predicate))&&(!p.isTermBound(t.object)||t.object.equals(e.object))&&(!p.isTermBound(t.graph)||t.graph.equals(e.graph))}static skolemizeTerm(e,t){return"BlankNode"===e.termType?new o.BlankNodeScoped(`bc_${t}_${e.value}`,h.namedNode(`${p.SKOLEM_PREFIX}${t}:${e.value}`)):e}static skolemizeQuad(e,t){return(0,l.mapTermsNested)(e,(e=>p.skolemizeTerm(e,t)))}static deskolemizeTerm(e,t){if("BlankNode"===e.termType&&"skolemized"in e&&(e=e.skolemized),"NamedNode"===e.termType&&e.value.startsWith(p.SKOLEM_PREFIX)){const r=e.value.indexOf(":",p.SKOLEM_PREFIX.length);if(e.value.slice(p.SKOLEM_PREFIX.length,r)===t){const t=e.value.slice(r+1,e.value.length);return h.blankNode(t)}return null}return e}static deskolemizeQuad(e,t){return(0,l.mapTermsNested)(e,(e=>p.deskolemizeTerm(e,t)||e))}isSourceEmpty(e,t){if(!this.skipEmptyPatterns)return!1;const r=this.emptyPatterns.get(e);if(r)for(const e of r)if(p.isSubPatternOf(t,e))return!0;return!1}getSourceId(e){let t=this.sourceIds.get(e);return void 0===t&&(t=`${this.sourceIds.size}`,this.sourceIds.set(e,t)),t}match(e,t,r,o){const u=async()=>{if(l.size===this.sources.length){let e=(await this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault})).metadata;for(const t of l.values())e={...t,...(await this.mediatorRdfMetadataAccumulate.mediate({mode:"append",accumulatedMetadata:e,appendingMetadata:t,context:this.contextDefault})).metadata};e.state=new s.MetadataValidationState;const t=h.getProperty("metadata");h.setProperty("metadata",e),t?.state.invalidate()}},l=new Map,d=Promise.all(this.sources.map((async(n,d)=>{const f=this.getSourceId(n),y=p.deskolemizeTerm(e,f),g=p.deskolemizeTerm(t,f),m=p.deskolemizeTerm(r,f),b=p.deskolemizeTerm(o,f);let v,_,w=(0,i.getDataSourceContext)(n,this.contextDefault);w=w.set(a.KeysRdfResolveQuadPattern.source,n),y&&g&&m&&b&&!this.isSourceEmpty(n,v=this.algebraFactory.createPattern(y,g,m,b))?_=await this.mediatorResolveQuadPattern.mediate({pattern:v,context:w}):(_={data:new c.ArrayIterator([],{autoStart:!1})},_.data.setProperty("metadata",{state:new s.MetadataValidationState,...(await this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault})).metadata}));const T=()=>{_.data.getProperty("metadata",(e=>{l.set(`${d}`,e),this.skipEmptyPatterns&&!e.cardinality?.value&&v&&!this.isSourceEmpty(n,v)&&this.emptyPatterns.get(n).push(v),u().catch((e=>h.emit("error",e))),e.state?.addInvalidateListener((()=>{l.delete(`${d}`),T()}))}))};T();const S=_.data.map((e=>p.skolemizeQuad(e,f)));return S.on("error",(e=>h.emit("error",e))),S})));d.catch((e=>h.emit("error",e)));const h=new n.ClosableTransformIterator((async()=>new c.UnionIterator(await d)),{autoStart:!1,onClose(){d.then((e=>{for(const t of e)t.destroy()}),(()=>{}))}});return 0===this.sources.length&&this.mediatorRdfMetadataAccumulate.mediate({mode:"initialize",context:this.contextDefault}).then((e=>h.setProperty("metadata",{state:new s.MetadataValidationState,...e.metadata}))).catch((e=>h.emit("error",e))),h}}t.FederatedQuadSource=p,p.SKOLEM_PREFIX="urn:comunica_skolem:source_"},87779:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(27839),t),i(r(86571),t)},45989:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternHypermedia=void 0;const n=r(58392),i=r(70463),a=r(65437);class o extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e),this.cache=this.cacheSize?new i.LRUCache({max:this.cacheSize}):void 0;const t=this.cache;t&&this.httpInvalidator.addInvalidateListener((({url:e})=>e?t.delete(e):t.clear())),e.mediatorMetadataAccumulate||(this.mediatorMetadataAccumulate={mediate:async e=>({metadata:{...e.accumulatedMetadata,...e.appendingMetadata}})})}async test(e){if(!(0,n.hasContextSingleSource)(e.context))throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a single source.`);return!0}getSource(e,t){const r=(0,n.getContextSource)(e),i=(0,n.getContextSourceUrl)(r);let o;return this.cache&&this.cache.has(i)?o=this.cache.get(i):(o=new a.MediatedQuadSource(this.cacheSize,i,(0,n.getDataSourceType)(r),this.maxIterators,this.aggregateStore,{mediatorMetadata:this.mediatorMetadata,mediatorMetadataExtract:this.mediatorMetadataExtract,mediatorMetadataAccumulate:this.mediatorMetadataAccumulate,mediatorDereferenceRdf:this.mediatorDereferenceRdf,mediatorRdfResolveHypermedia:this.mediatorRdfResolveHypermedia,mediatorRdfResolveHypermediaLinks:this.mediatorRdfResolveHypermediaLinks,mediatorRdfResolveHypermediaLinksQueue:this.mediatorRdfResolveHypermediaLinksQueue}),this.cache&&this.cache.set(i,o)),Promise.resolve(o)}}t.ActorRdfResolveQuadPatternHypermedia=o},51661:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedRdfSourcesAsyncRdfIterator=void 0;const n=r(33588),i=r(89227),a=r(70463);class o extends i.BufferedIterator{constructor(e,t,r,n,i,a,o,s){if(super({autoStart:!0,...s}),this.started=!1,this.currentIterators=[],this.iteratorsPendingCreation=0,this.accumulatedMetadata=Promise.resolve(void 0),this.cacheSize=e,this.subject=t,this.predicate=r,this.object=n,this.graph=i,this.firstUrl=a,this.maxIterators=o,this.maxIterators<=0)throw new Error(`LinkedRdfSourcesAsyncRdfIterator.maxIterators must be larger than zero, but got ${this.maxIterators}`)}_end(e){for(const e of this.currentIterators)e.destroy();super._end(e)}setSourcesState(e){e?this.sourcesState=e:(this.sourcesState={sources:new a.LRUCache({max:this.cacheSize})},this.getSourceCached({url:this.firstUrl},{}).catch((e=>this.destroy(e))))}getSourceCached(e,t){let r=this.sourcesState.sources.get(e.url);return r||(r=this.getSource(e,t),(e.url===this.firstUrl||this.shouldStoreSourcesStates())&&this.sourcesState.sources.set(e.url,r),r)}shouldStoreSourcesStates(){return!0}_read(e,t){if(this.started){for(const t of this.currentIterators){for(;e>0;){const r=t.read();if(null===r)break;e--,this._push(r)}if(e<=0)break}e>=0&&this.canStartNewIterator()?this.getSourceCached({url:this.firstUrl},{}).then((e=>{this.startIteratorsForNextUrls(e.handledDatasets,!1),t()})).catch((e=>this.destroy(e))):t()}else this.started=!0,this.sourcesState||this.setSourcesState(),this.getSourceCached({url:this.firstUrl},{}).then((e=>{this.startIterator(e,!0),t()})).catch((e=>setTimeout((()=>this.destroy(e)))))}canStartNewIterator(){return this.currentIterators.length+this.iteratorsPendingCreation0}startIterator(e,t){const r=e.source.match(this.subject,this.predicate,this.object,this.graph);this.currentIterators.push(r);let i=!1;r._destination=this,r.on("error",(e=>this.destroy(e))),r.on("readable",(()=>this._fillBuffer())),r.on("end",(()=>{this.currentIterators.splice(this.currentIterators.indexOf(r),1),i&&this.startIteratorsForNextUrls(e.handledDatasets,!0)})),r.getProperty("metadata",(t=>{this.accumulatedMetadata=this.accumulatedMetadata.then((r=>(async()=>(r||(r=e.metadata),this.accumulateMetadata(r,t)))().then((r=>{const a={...e.metadata,...t,...r};return a.state=new n.MetadataValidationState,this.updateMetadata(a),this.getSourceLinks(a).then((e=>Promise.all(e))).then((async t=>{const r=await this.getLinkQueue();for(const n of t)r.push(n,e.link);i=!0,this.startIteratorsForNextUrls(e.handledDatasets,!0)})).catch((e=>this.destroy(e))),a})))).catch((e=>(this.destroy(e),{})))}))}updateMetadata(e){const t=this.getProperty("metadata");this.setProperty("metadata",e),t?.state.invalidate()}isRunning(){return!this.done}startIteratorsForNextUrls(e,t){this.getLinkQueue().then((r=>{for(;this.canStartNewIterator()&&this.isRunning();){const t=r.pop();if(!t)break;this.iteratorsPendingCreation++,this.getSourceCached(t,e).then((e=>{this.iteratorsPendingCreation--,this.startIterator(e,!1)})).catch((e=>this.destroy(e)))}t&&this.isCloseable(r)&&this.close()})).catch((e=>this.destroy(e)))}isCloseable(e){return e.isEmpty()&&!this.areIteratorsRunning()}}t.LinkedRdfSourcesAsyncRdfIterator=o},74704:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatedLinkedRdfSourcesAsyncRdfIterator=void 0;const n=r(91194),i=r(51887),a=r(51661),o=new n.DataFactory;class s extends a.LinkedRdfSourcesAsyncRdfIterator{constructor(e,t,r,n,i,a,o,s,c,u,l){super(e,n,i,a,o,s,c,u?{maxBufferSize:Number.POSITIVE_INFINITY}:void 0),this.wasForcefullyClosed=!1,this.context=t,this.forceSourceType=r,this.mediatorDereferenceRdf=l.mediatorDereferenceRdf,this.mediatorMetadata=l.mediatorMetadata,this.mediatorMetadataExtract=l.mediatorMetadataExtract,this.mediatorMetadataAccumulate=l.mediatorMetadataAccumulate,this.mediatorRdfResolveHypermedia=l.mediatorRdfResolveHypermedia,this.mediatorRdfResolveHypermediaLinks=l.mediatorRdfResolveHypermediaLinks,this.mediatorRdfResolveHypermediaLinksQueue=l.mediatorRdfResolveHypermediaLinksQueue,this.handledUrls={[s]:!0},this.aggregatedStore=u}close(){this.aggregatedStore?this.getLinkQueue().then((e=>{this.isCloseable(e)?(this.aggregatedStore?.end(),super.close()):this.wasForcefullyClosed=!0})).catch((e=>super.destroy(e))):super.close()}destroy(e){this.aggregatedStore?this.getLinkQueue().then((t=>{e||this.isCloseable(t)?(this.aggregatedStore?.end(),super.destroy(e)):this.wasForcefullyClosed=!0})).catch((e=>super.destroy(e))):super.destroy(e)}isCloseable(e){return(this.wasForcefullyClosed||e.isEmpty())&&!this.areIteratorsRunning()}canStartNewIterator(){return!this.wasForcefullyClosed&&this.aggregatedStore&&this.aggregatedStore.hasRunningIterators()||super.canStartNewIterator()}isRunning(){return this.aggregatedStore&&this.aggregatedStore.hasRunningIterators()||!this.done}shouldStoreSourcesStates(){return void 0===this.aggregatedStore}getLinkQueue(){return this.linkQueue||(this.linkQueue=this.mediatorRdfResolveHypermediaLinksQueue.mediate({firstUrl:this.firstUrl,context:this.context}).then((e=>e.linkQueue))),this.linkQueue}async getSourceLinks(e){try{const{links:t}=await this.mediatorRdfResolveHypermediaLinks.mediate({context:this.context,metadata:e});return t.filter((e=>!this.handledUrls[e.url]&&(this.handledUrls[e.url]=!0,!0)))}catch{return[]}}async getSource(e,t){let r=this.context;e.context&&(r=r.merge(e.context));let n,a,o=e.url;try{const t=await this.mediatorDereferenceRdf.mediate({context:r,url:o});o=t.url;const i=await this.mediatorMetadata.mediate({context:r,url:o,quads:t.data,triples:t.metadata?.triples});i.data.on("error",(()=>{})),a=(await this.mediatorMetadataExtract.mediate({context:r,url:o,metadata:i.metadata,headers:t.headers,requestTime:t.requestTime})).metadata,n=i.data,e.transform&&(n=await e.transform(n))}catch(e){n=new i.Readable,n.read=()=>(setTimeout((()=>n.emit("error",e))),null),a={}}this.aggregatedStore?.setBaseMetadata(a,!1),this.aggregatedStore?.containedSources.add(e.url),this.aggregatedStore?.import(n);const{source:s,dataset:c}=await this.mediatorRdfResolveHypermedia.mediate({context:r,forceSourceType:this.forceSourceType,handledDatasets:t,metadata:a,quads:n,url:o});return c&&(t[c]=!0),{link:e,source:s,metadata:a,handledDatasets:t}}startIterator(e,t){if(this.aggregatedStore&&!this.aggregatedStore.containedSources.has(e.link.url)){this.aggregatedStore?.containedSources.add(e.link.url);const r=e.source.match(o.variable("s"),o.variable("p"),o.variable("o"),o.variable("g"),this.context);this.aggregatedStore.import(r).on("end",(()=>{super.startIterator(e,t)}))}else super.startIterator(e,t)}async accumulateMetadata(e,t){return(await this.mediatorMetadataAccumulate.mediate({mode:"append",accumulatedMetadata:e,appendingMetadata:t,context:this.context})).metadata}updateMetadata(e){super.updateMetadata(e),this.aggregatedStore?.setBaseMetadata(e,!0)}}t.MediatedLinkedRdfSourcesAsyncRdfIterator=s},65437:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatedQuadSource=void 0;const n=r(78470),i=r(74704),a=r(91353);class o{constructor(e,t,r,n,i,a){this.cacheSize=e,this.firstUrl=t,this.forceSourceType=r,this.maxIterators=n,this.aggregateStore=i,this.mediators=a}static nullifyVariables(e){return e&&"Variable"!==e.termType?e:void 0}match(e,t,r,s,c){let u;if(this.aggregateStore){const i=c.get(n.KeysRdfResolveQuadPattern.hypermediaSourcesAggregatedStores);if(i&&(u=i.get(this.firstUrl),u||(u=new a.StreamingStoreMetadata(void 0,((e,t)=>l.accumulateMetadata(e,t))),i.set(this.firstUrl,u)),u.started))return u.match(o.nullifyVariables(e),o.nullifyVariables(t),o.nullifyVariables(r),o.nullifyVariables(s))}const l=new i.MediatedLinkedRdfSourcesAsyncRdfIterator(this.cacheSize,c,this.forceSourceType,e,t,r,s,this.firstUrl,this.maxIterators,u,this.mediators);return this.sourcesState?l.setSourcesState(this.sourcesState):(l.setSourcesState(),this.sourcesState=l.sourcesState),u&&(u.started=!0),l}}t.MediatedQuadSource=o},91353:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamingStoreMetadata=void 0;const n=r(83814),i=r(33588),a=r(47720);class o extends a.StreamingStore{constructor(e,t){super(e),this.started=!1,this.containedSources=new Set,this.runningIterators=new Set,this.baseMetadata={state:new i.MetadataValidationState,cardinality:{type:"exact",value:0},canContainUndefs:!1},this.metadataAccumulator=t}import(e){return this.ended||super.import(e),e}hasRunningIterators(){return this.runningIterators.size>0}match(e,t,r,a){const o=super.match(e,t,r,a),s=new n.ClosableTransformIterator(o,{autoStart:!1,onClose:()=>{this.runningIterators.delete(s)}});let c=this.getStore().countQuads(e,t,r,a);const u={state:new i.MetadataValidationState,cardinality:{type:"estimate",value:c},canContainUndefs:!1};return s.setProperty("metadata",u),s.setProperty("lastCount",c),o.on("quad",(()=>{s.setProperty("lastCount",++c),this.updateMetadataState(s,c)})),this.runningIterators.add(s),s}setBaseMetadata(e,t){if(this.baseMetadata={...e},this.baseMetadata.cardinality={type:"exact",value:0},t)for(const e of this.runningIterators){const t=e.getProperty("lastCount");this.updateMetadataState(e,t)}}updateMetadataState(e,t){const r={state:new i.MetadataValidationState,cardinality:{type:"estimate",value:t},canContainUndefs:!1};this.metadataAccumulator(this.baseMetadata,r).then((t=>{t.state=new i.MetadataValidationState;const r=e.getProperty("metadata");e.setProperty("metadata",t),r?.state.invalidate()})).catch((()=>{}))}}t.StreamingStoreMetadata=o},32008:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(45989),t),i(r(65437),t)},74344:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternRdfJsSource=void 0;const n=r(58392),i=r(419);class a extends n.ActorRdfResolveQuadPatternSource{constructor(e){super(e)}async test(e){if(!(0,n.hasContextSingleSourceOfType)("rdfjsSource",e.context))throw new Error(`${this.name} requires a single source with an rdfjsSource to be present in the context.`);const t=(0,n.getContextSource)(e.context);if(!t||"string"==typeof t||!("match"in t)&&!t.value.match)throw new Error(`${this.name} received an invalid rdfjsSource.`);return!0}async getSource(e){const t=(0,n.getContextSource)(e);return new i.RdfJsQuadSource("match"in t?t:t.value)}}t.ActorRdfResolveQuadPatternRdfJsSource=a},35468:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfJsQuadSource=void 0;const n=r(33588),i=r(89227),a=r(91194),o=r(98086),s=new a.DataFactory;class c{constructor(e){this.source=e}static nullifyVariables(e,t){return!e||"Variable"===e.termType||!t&&"Quad"===e.termType&&(0,o.someTermsNested)(e,(e=>"Variable"===e.termType))?void 0:e}static hasDuplicateVariables(e){const t=(0,o.filterTermsNested)(e,(e=>"Variable"===e.termType));return t.length>1&&(0,o.uniqTerms)(t).length"Quad"===e.termType))&&(l=l.filter((e=>(0,o.matchPatternComplete)(e,d)))),this.setMetadata(l,e,t,r,n).catch((e=>l.destroy(e))),l}async setMetadata(e,t,r,i,a){const u=Boolean(this.source.features?.quotedTripleFiltering);let l;if(this.source.countQuads)l=await this.source.countQuads(c.nullifyVariables(t,u),c.nullifyVariables(r,u),c.nullifyVariables(i,u),c.nullifyVariables(a,u));else{let e=0;l=await new Promise(((n,o)=>{const s=this.source.match(c.nullifyVariables(t,u),c.nullifyVariables(r,u),c.nullifyVariables(i,u),c.nullifyVariables(a,u));s.on("error",o),s.on("end",(()=>n(e))),s.on("data",(()=>e++))}))}const d=s.quad(t,r,i,a),h=!u&&(0,o.someTerms)(d,(e=>"Quad"===e.termType))||c.hasDuplicateVariables(d);e.setProperty("metadata",{state:new n.MetadataValidationState,cardinality:{type:h?"estimate":"exact",value:l},canContainUndefs:!1})}}t.RdfJsQuadSource=c},62515:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(74344),t),i(r(35468),t),i(r(419),t)},55836:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternStringSource=void 0;const n=r(58392),i=r(78470),a=r(70463),o=r(92608),s=r(51887);class c extends n.ActorRdfResolveQuadPattern{constructor(e){super(e),this.cache=this.cacheSize?new a.LRUCache({max:this.cacheSize}):void 0}async test(e){const t=(0,n.getContextSource)(e.context);if(!t)throw new Error(`Actor ${this.name} can only resolve quad pattern queries against a source.`);if(!this.isStringSource(t.valueOf()))throw new Error(`Actor ${this.name} can only resolve stringSource quad pattern`);return!0}run(e){const t=(0,n.getContextSource)(e.context);let r=this.cache?.get(t);return r||(r=this.getRdfSource(e.context,t),this.cache&&this.cache.set(t,r)),r.then((t=>this.mediatorRdfResolveQuadPattern.mediate({pattern:e.pattern,context:e.context.set(i.KeysRdfResolveQuadPattern.source,{value:t,type:"rdfjsSource"})})))}async getRdfSource(e,t){const r=new s.Readable({objectMode:!0});r._read=()=>{},r.push(t.value),r.push(null);const n={context:e,handle:{metadata:{baseIRI:t.baseIRI},data:r,context:e},handleMediaType:t.mediaType},i=await this.mediatorRdfParse.mediate(n);return await(0,o.storeStream)(i.handle.data)}isStringSource(e){return"type"in e?e.type===c.sourceType:"string"==typeof e.value&&"mediaType"in e}}t.ActorRdfResolveQuadPatternStringSource=c,c.sourceType="stringSource"},87798:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(55836),t)},71597:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeJsonLd=void 0;const n=r(51072),i=r(82694);class a extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new i.JsonLdSerializer({space:" ".repeat(this.jsonStringifyIndentSpaces)});let a;return"pipe"in e.quadStream?(e.quadStream.on("error",(e=>n.emit("error",e))),a=e.quadStream.pipe(n)):a=n.import(e.quadStream),{data:a}}}t.ActorRdfSerializeJsonLd=a},21336:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(71597),t)},24668:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeN3=void 0;const n=r(51072),i=r(66641);class a extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new i.StreamWriter({format:t});let a;return"pipe"in e.quadStream?(e.quadStream.on("error",(e=>n.emit("error",e))),a=e.quadStream.pipe(n)):a=n.import(e.quadStream),{data:a,triples:"text/turtle"===t||"application/n-triples"===t||"text/n3"===t}}}t.ActorRdfSerializeN3=a},97021:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(24668),t)},57285:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeShaclc=void 0;const n=r(51072),i=r(92248),a=r(51887),o=r(30890);class s extends n.ActorRdfSerializeFixedMediaTypes{constructor(e){super(e)}async runHandle(e,t,r){const n=new a.Readable;n._read=()=>{};try{const r={};e.quadStream.on("prefix",((e,t)=>{r[e]=t}));const{text:a}=await(0,o.write)(await(0,i.default)(e.quadStream),{errorOnUnused:!0,extendedSyntax:"text/shaclc-ext"===t,prefixes:r});n.push(a),n.push(null)}catch(e){n._read=()=>{n.emit("error",e)}}return{data:n,triples:!0}}}t.ActorRdfSerializeShaclc=s},76752:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(57285),t)},38537:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaPatchSparqlUpdate=void 0;const n=r(28250),i=r(86164);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"patchSparqlUpdate")}async testMetadata(e){if(!e.forceDestinationType&&!e.metadata.patchSparqlUpdate)throw new Error(`Actor ${this.name} could not detect a destination with 'application/sparql-update' as 'Accept-Patch' header.`);if(!e.forceDestinationType&&!e.exists)throw new Error(`Actor ${this.name} can only patch a destination that already exists.`);return!0}async run(e){return this.logInfo(e.context,`Identified as patchSparqlUpdate destination: ${e.url}`),{destination:new i.QuadDestinationPatchSparqlUpdate(e.url,e.context,this.mediatorHttp)}}}t.ActorRdfUpdateHypermediaPatchSparqlUpdate=a},86164:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationPatchSparqlUpdate=void 0;const n=r(80389),i=r(58595),a=r(96279),o=r(2122),s=r(51887);t.QuadDestinationPatchSparqlUpdate=class{constructor(e,t,r){this.url=e,this.context=t,this.mediatorHttp=r}insert(e){return this.wrapSparqlUpdateRequest("INSERT",e)}async delete(e){return this.wrapSparqlUpdateRequest("DELETE",e)}async wrapSparqlUpdateRequest(e,t){const r=t.map((e=>{let t=`${(0,o.termToString)(e.subject)} ${(0,o.termToString)(e.predicate)} ${(0,o.termToString)(e.object)} .`;return t="DefaultGraph"!==e.graph.termType?` GRAPH ${(0,o.termToString)(e.graph)} { ${t} }\n`:` ${t}\n`,t})).prepend([`${e} DATA {\n`]).append(["}"]),c=new s.Readable;c._read=()=>!0,r.on("data",(e=>c.push(e))),r.on("end",(()=>c.push(null)));const u=new a.Headers({"content-type":"application/sparql-update"}),l=await this.mediatorHttp.mediate({context:this.context,init:{headers:u,method:"PATCH",body:n.ActorHttp.toWebReadableStream(c)},input:this.url});await(0,i.validateHttpResponse)(this.url,l)}async deleteGraphs(e,t,r){throw new Error("Patch-based SPARQL Update destinations don't support named graphs")}async createGraphs(e,t){throw new Error("Patch-based SPARQL Update destinations don't support named graphs")}}},54612:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(38537),t),i(r(86164),t)},29278:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaPutLdp=void 0;const n=r(28250),i=r(47607);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"putLdp")}async testMetadata(e){if(!e.forceDestinationType){if(!e.metadata.allowHttpMethods||!e.metadata.allowHttpMethods.includes("PUT"))throw new Error(`Actor ${this.name} could not detect a destination with 'Allow: PUT' header.`);if(e.exists)throw new Error(`Actor ${this.name} can only put on a destination that does not already exists.`)}return!0}async run(e){return this.logInfo(e.context,`Identified as putLdp destination: ${e.url}`),{destination:new i.QuadDestinationPutLdp(e.url,e.context,e.metadata.putAccepted||[],this.mediatorHttp,this.mediatorRdfSerializeMediatypes,this.mediatorRdfSerialize)}}}t.ActorRdfUpdateHypermediaPutLdp=a},47607:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationPutLdp=void 0;const n=r(80389),i=r(58595),a=r(96279);t.QuadDestinationPutLdp=class{constructor(e,t,r,n,i,a){this.url=e,this.context=t,this.mediaTypes=r,this.mediatorHttp=n,this.mediatorRdfSerializeMediatypes=i,this.mediatorRdfSerialize=a}insert(e){return this.wrapRdfUpdateRequest("INSERT",e)}async delete(e){throw new Error("Put-based LDP destinations don't support deletions")}async wrapRdfUpdateRequest(e,t){const{mediaTypes:r}=await this.mediatorRdfSerializeMediatypes.mediate({context:this.context,mediaTypes:!0}),o=this.mediaTypes.filter((e=>e in r)),s=o.length>0?o[0]:Object.keys(r).sort(((e,t)=>r[t]-r[e]))[0],{handle:{data:c}}=await this.mediatorRdfSerialize.mediate({context:this.context,handle:{quadStream:t,context:this.context},handleMediaType:s}),u=new a.Headers({"content-type":s}),l=await this.mediatorHttp.mediate({context:this.context,init:{headers:u,method:"PUT",body:n.ActorHttp.toWebReadableStream(c)},input:this.url});await(0,i.validateHttpResponse)(this.url,l)}async deleteGraphs(e,t,r){throw new Error("Put-based LDP destinations don't support named graphs")}async createGraphs(e,t){throw new Error("Put-based LDP destinations don't support named graphs")}}},17344:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29278),t),i(r(47607),t)},48976:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermediaSparql=void 0;const n=r(28250),i=r(945);class a extends n.ActorRdfUpdateHypermedia{constructor(e){super(e,"sparql")}async testMetadata(e){if(!(e.forceDestinationType||e.metadata.sparqlService||this.checkUrlSuffixSparql&&e.url.endsWith("/sparql")||this.checkUrlSuffixUpdate&&e.url.endsWith("/update")))throw new Error(`Actor ${this.name} could not detect a SPARQL service description or URL ending on /sparql or /update.`);return!0}async run(e){return this.logInfo(e.context,`Identified as sparql destination: ${e.url}`),{destination:new i.QuadDestinationSparql(e.metadata.sparqlService||e.url,e.context,this.mediatorHttp)}}}t.ActorRdfUpdateHypermediaSparql=a},945:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuadDestinationSparql=void 0;const n=r(88436),i=r(2122),a=r(29038);t.QuadDestinationSparql=class{constructor(e,t,r){this.url=e,this.context=t,this.mediatorHttp=r,this.endpointFetcher=new n.SparqlEndpointFetcher({fetch:(e,t)=>this.mediatorHttp.mediate({input:e,init:t,context:this.context}),prefixVariableQuestionMark:!0})}insert(e){return this.wrapSparqlUpdateRequest("INSERT",e)}async delete(e){return this.wrapSparqlUpdateRequest("DELETE",e)}async wrapSparqlUpdateRequest(e,t){const r=t.map((e=>{let t=`${(0,i.termToString)(e.subject)} ${(0,i.termToString)(e.predicate)} ${(0,i.termToString)(e.object)} .`;return t="DefaultGraph"!==e.graph.termType?` GRAPH ${(0,i.termToString)(e.graph)} { ${t} }\n`:` ${t}\n`,t})).prepend([`${e} DATA {\n`]).append(["}"]),n=await a(r);await this.endpointFetcher.fetchUpdate(this.url,n)}async deleteGraphs(e,t,r){const n=Array.isArray(e)?e:[e],i=[];for(const e of n){let n;n="string"==typeof e?e:"DefaultGraph"===e.termType?"DEFAULT":`GRAPH <${e.value}>`,i.push(`${r?"DROP":"CLEAR"} ${t?"":"SILENT "}${n}`)}await this.endpointFetcher.fetchUpdate(this.url,i.join("; "))}async createGraphs(e,t){const r=[];for(const n of e)r.push(`CREATE${t?"":" SILENT"} GRAPH <${n.value}>`);await this.endpointFetcher.fetchUpdate(this.url,r.join("; "))}}},61908:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(48976),t),i(r(945),t)},50617:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsHypermedia=void 0;const n=r(58595),i=r(70463);class a extends n.ActorRdfUpdateQuadsDestination{constructor(e){super(e),this.cache=this.cacheSize?new i.LRUCache({max:this.cacheSize}):void 0;const t=this.cache;t&&this.httpInvalidator.addInvalidateListener((({url:e})=>e?t.delete(e):t.clear()))}async test(e){if(!(0,n.getContextDestinationUrl)((0,n.getContextDestination)(e.context)))throw new Error(`Actor ${this.name} can only update quads against a single destination URL.`);return!0}getDestination(e){const t=(0,n.getContextDestination)(e);let r=(0,n.getContextDestinationUrl)(t);if(this.cache&&this.cache.has(r))return this.cache.get(r);const i=(async()=>{let i,a;try{const t=await this.mediatorDereferenceRdf.mediate({context:e,url:r,acceptErrors:!0});a=t.exists,r=t.url;const n=await this.mediatorMetadata.mediate({context:e,url:r,quads:t.data,triples:t.metadata?.triples});i=(await this.mediatorMetadataExtract.mediate({context:e,url:r,metadata:n.metadata,headers:t.headers,requestTime:t.requestTime})).metadata}catch{i={},a=!1}const{destination:o}=await this.mediatorRdfUpdateHypermedia.mediate({context:e,url:r,metadata:i,exists:a,forceDestinationType:(0,n.getDataDestinationType)(t)});return o})();return this.cache&&this.cache.set(r,i),i}}t.ActorRdfUpdateQuadsHypermedia=a},14054:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50617),t)},77428:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsRdfJsStore=void 0;const n=r(58595),i=r(65024);class a extends n.ActorRdfUpdateQuadsDestination{constructor(e){super(e)}async test(e){const t=(0,n.getContextDestination)(e.context);if(!t||"string"==typeof t||!("remove"in t)&&"value"in t&&!t.value.remove)throw new Error(`${this.name} received an invalid rdfjsStore.`);return!0}async getDestination(e){const t=(0,n.getContextDestination)(e);return new i.RdfJsQuadDestination("remove"in t?t:t.value)}}t.ActorRdfUpdateQuadsRdfJsStore=a},65024:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfJsQuadDestination=void 0;const n=r(91194),i=r(6053),a=new n.DataFactory;t.RdfJsQuadDestination=class{constructor(e){this.store=e}promisifyEventEmitter(e){return new Promise(((t,r)=>{e.on("end",t),e.on("error",r)}))}delete(e){return this.promisifyEventEmitter(this.store.remove(e))}insert(e){return this.promisifyEventEmitter(this.store.import(e))}async deleteGraphs(e,t,r){switch(e){case"ALL":await this.promisifyEventEmitter(this.store.deleteGraph(a.defaultGraph()));case"NAMED":const t=this.store.match(),r={};t.on("data",(e=>{"DefaultGraph"!==e.graph.termType&&(r[(0,i.termToString)(e.graph)]=!0)})),await this.promisifyEventEmitter(t),await Promise.all(Object.keys(r).map((e=>this.promisifyEventEmitter(this.store.deleteGraph((0,i.stringToTerm)(e))))));break;default:for(const t of Array.isArray(e)?e:[e])await this.promisifyEventEmitter(this.store.deleteGraph(t))}}async createGraphs(e,t){if(t)for(const t of e){const e=this.store.match(void 0,void 0,void 0,t);await new Promise(((r,n)=>{e.once("data",(()=>{n(new Error(`Unable to create graph ${t.value} as it already exists`))})),e.on("end",r),e.on("error",n)}))}}}},2340:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(77428),t)},35681:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Bindings=void 0;const n=r(27623),i=r(49836);class a{constructor(e,t){this.type="bindings",this.dataFactory=e,this.entries=t}has(e){return this.entries.has("string"==typeof e?e:e.value)}get(e){return this.entries.get("string"==typeof e?e:e.value)}set(e,t){return new a(this.dataFactory,this.entries.set("string"==typeof e?e:e.value,t))}delete(e){return new a(this.dataFactory,this.entries.delete("string"==typeof e?e:e.value))}keys(){return this.mapIterable(this.iteratorToIterable(this.entries.keys()),(e=>this.dataFactory.variable(e)))}values(){return this.iteratorToIterable(this.entries.values())}forEach(e){this.entries.forEach(((t,r)=>e(t,this.dataFactory.variable(r))))}get size(){return this.entries.size}[Symbol.iterator](){return this.mapIterable(this.iteratorToIterable(this.entries.entries()),(([e,t])=>[this.dataFactory.variable(e),t]))[Symbol.iterator]()}equals(e){if(!e)return!1;if(this===e)return!0;if(this.size!==e.size)return!1;for(const t of this.keys())if(!this.get(t)?.equals(e.get(t)))return!1;return!0}filter(e){return new a(this.dataFactory,(0,n.Map)(this.entries.filter(((t,r)=>e(t,this.dataFactory.variable(r))))))}map(e){return new a(this.dataFactory,(0,n.Map)(this.entries.map(((t,r)=>e(t,this.dataFactory.variable(r))))))}merge(e){const t=new Set([...this.iteratorToIterable(this.entries.keys()),...[...e.keys()].map((e=>e.value))]),r=[];for(const n of t){const t=this.entries.get(n),i=e.get(this.dataFactory.variable(n));if(t&&i&&!t.equals(i))return;const a=t||i;r.push([n,a])}return new a(this.dataFactory,(0,n.Map)(r))}mergeWith(e,t){const r=new Set([...this.iteratorToIterable(this.entries.keys()),...[...t.keys()].map((e=>e.value))]),i=[];for(const n of r){const r=this.dataFactory.variable(n),a=this.entries.get(n),o=t.get(r);let s;s=a&&o&&!a.equals(o)?e(a,o,r):a||o,i.push([n,s])}return new a(this.dataFactory,(0,n.Map)(i))}toString(){return(0,i.bindingsToString)(this)}*mapIterable(e,t){for(const r of e)yield t(r)}iteratorToIterable(e){return{[Symbol.iterator]:()=>e}}}t.Bindings=a},49239:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BindingsFactory=void 0;const n=r(27623),i=r(91194),a=r(35681);t.BindingsFactory=class{constructor(e=new i.DataFactory){this.dataFactory=e}bindings(e=[]){return new a.Bindings(this.dataFactory,(0,n.Map)(e.map((([e,t])=>[e.value,t]))))}fromBindings(e){return this.bindings([...e])}fromRecord(e){return this.bindings(Object.entries(e).map((([e,t])=>[this.dataFactory.variable(e),t])))}}},49836:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.bindingsToString=void 0;const n=r(6053);t.bindingsToString=function(e){const t={};for(const r of e.keys())t[r.value]=(0,n.termToString)(e.get(r));return JSON.stringify(t,null," ")}},79550:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35681),t),i(r(49239),t),i(r(49836),t)},73313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorContextPreprocess=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorContextPreprocess=i},20846:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(73313),t)},42292:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceRdf=void 0;const n=r(14402);class i extends n.ActorDereferenceParse{constructor(e){super(e)}}t.ActorDereferenceRdf=i},20961:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(42292),t)},34313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereference=void 0;const n=r(67005);class i extends n.ActorDereferenceBase{constructor(e){super(e)}async handleDereferenceErrors(e,t,r,n=0){return this.dereferenceErrorHandler(e,t,{url:e.url,exists:!1,headers:r,requestTime:n})}}t.ActorDereference=i},67005:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceBase=t.isHardError=t.emptyReadable=void 0;const n=r(78470),i=r(21049),a=r(51887);function o(){const e=new a.Readable;return e.push(null),e}function s(e){return!e.get(n.KeysInitQuery.lenient)}t.emptyReadable=o,t.isHardError=s;class c extends i.Actor{constructor(e){super(e)}async dereferenceErrorHandler(e,t,r){if(s(e.context))throw t;return this.logError(e.context,t.message),{...r,data:o()}}}t.ActorDereferenceBase=c},16898:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorDereferenceParse=t.getMediaTypeFromExtension=void 0;const n=r(51887),i=r(67005);function a(e,t){const r=e.lastIndexOf(".");return r>=0&&t?.[e.slice(r+1)]||""}t.getMediaTypeFromExtension=a;class o extends i.ActorDereferenceBase{constructor(e){super(e)}async test(e){return!0}handleDereferenceStreamErrors(e,t){return(0,i.isHardError)(e.context)||(t.on("error",(r=>{this.logError(e.context,r.message,(()=>({url:e.url}))),t.push(null)})),t=t.pipe(new n.PassThrough({objectMode:!0}))),t}async run(e){const{context:t}=e,r=await this.mediatorDereference.mediate({...e,mediaTypes:async()=>(await(this.mediatorParseMediatypes?.mediate({context:t,mediaTypes:!0})))?.mediaTypes});let n;try{n=(await this.mediatorParse.mediate({context:t,handle:{context:t,...r,metadata:await this.getMetadata(r)},handleMediaType:r.mediaType||a(r.url,this.mediaMappings)||e.mediaType})).handle,n.data=this.handleDereferenceStreamErrors(e,n.data)}catch(t){await(r.data.close?.()),n=await this.dereferenceErrorHandler(e,t,{})}return{...r,...n}}}t.ActorDereferenceParse=o},14402:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(34313),t),i(r(16898),t),i(r(67005),t)},90927:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHashBindings=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorHashBindings=i},47582:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90927),t)},8221:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpInvalidate=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorHttpInvalidate=i},37152:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttpInvalidateListenable=void 0;const n=r(8221);class i extends n.ActorHttpInvalidate{constructor(e){super(e),this.invalidateListeners=[],this.invalidateListeners=[]}addInvalidateListener(e){this.invalidateListeners.push(e)}async test(e){return!0}async run(e){for(const t of this.invalidateListeners)t(e);return{}}}t.ActorHttpInvalidateListenable=i},90178:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(8221),t),i(r(37152),t)},14145:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorHttp=void 0;const n=r(21049),i=r(88146);globalThis.ReadableStream||(globalThis.ReadableStream=r(25919).ReadableStream);const a=r(58607),o=r(87809);class s extends n.Actor{constructor(e){super(e)}static toNodeReadable(e){return a(e)||null===e?e:new i.ReadableWebToNodeStream(e)}static toWebReadableStream(e){return o(e)}static headersToHash(e){const t={};return e.forEach(((e,r)=>{t[r]=e})),t}}t.ActorHttp=s},80389:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(14145),t)},97327:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorInit=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorInit=i},40104:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(97327),t)},5227:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorOptimizeQueryOperation=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorOptimizeQueryOperation=i},9302:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5227),t)},44346:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperation=void 0;const n=r(78470),i=r(21049),a=r(27057),o=r(87804);let s=0;class c extends i.Actor{constructor(e){super(e)}static getSafeBindings(e){return c.validateQueryOutput(e,"bindings"),e}static getSafeQuads(e){return c.validateQueryOutput(e,"quads"),e}static getSafeBoolean(e){return c.validateQueryOutput(e,"boolean"),e}static getSafeVoid(e){return c.validateQueryOutput(e,"void"),e}static cachifyMetadata(e){let t;return()=>(t||(t=e(),t.then((e=>e.state.addInvalidateListener((()=>{t=void 0})))).catch((()=>{}))),t)}static validateQueryOutput(e,t){if(e.type!==t)throw new Error(`Invalid query output type: Expected '${t}' but got '${e.type}'`)}static getBaseExpressionContext(e){const t=e.get(n.KeysInitQuery.queryTimestamp),r=e.get(n.KeysInitQuery.baseIRI),i=e.get(n.KeysInitQuery.functionArgumentsCache)||{};if(e.has(n.KeysInitQuery.extensionFunctionCreator)&&e.has(n.KeysInitQuery.extensionFunctions))throw new Error("Illegal simultaneous usage of extensionFunctionCreator and extensionFunctions in context");let a=e.get(n.KeysInitQuery.extensionFunctionCreator);const o=e.get(n.KeysInitQuery.extensionFunctions);return o&&(a=e=>o[e.value]),{now:t,baseIRI:r,extensionFunctionCreator:a,functionArgumentsCache:i}}static getExpressionContext(e,t){return{...this.getBaseExpressionContext(e),bnode:e=>new a.BlankNodeBindingsScoped(e||"BNODE_"+s++)}}static getAsyncExpressionContext(e,t){return{...this.getBaseExpressionContext(e),bnode:e=>Promise.resolve(new a.BlankNodeBindingsScoped(e||"BNODE_"+s++)),exists:c.createExistenceResolver(e,t)}}static createExistenceResolver(e,t){return async(r,n)=>{const i=(0,o.materializeOperation)(r.input,n),a=await t.mediate({operation:i,context:e}),s=c.getSafeBindings(a);return new Promise(((e,t)=>{s.bindingsStream.on("end",(()=>{e(!1)})),s.bindingsStream.on("error",t),s.bindingsStream.on("data",(()=>{s.bindingsStream.close(),e(!0)}))})).then((e=>r.not?!e:e))}}static throwOnReadOnly(e){if(e.get(n.KeysQueryOperation.readOnly))throw new Error("Attempted a write operation in read-only mode")}}t.ActorQueryOperation=c},3312:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationTyped=void 0;const n=r(78470),i=r(44346);class a extends i.ActorQueryOperation{constructor(e,t){if(super({...e,operationName:t}),!this.operationName)throw new Error('A valid "operationName" argument must be provided.')}async test(e){if(!e.operation)throw new Error("Missing field 'operation' in a query operation action.");if(e.operation.type!==this.operationName)throw new Error(`Actor ${this.name} only supports ${this.operationName} operations, but got ${e.operation.type}`);const t=e.operation;return this.testOperation(t,e.context)}async run(e){const t=e.context.get(n.KeysInitQuery.physicalQueryPlanLogger);t&&(t.logOperation(e.operation.type,void 0,e.operation,e.context.get(n.KeysInitQuery.physicalQueryPlanNode),this.name,{}),e.context=e.context.set(n.KeysInitQuery.physicalQueryPlanNode,e.operation));const r=e.operation,a=e.context.set(n.KeysQueryOperation.operation,r),o=await this.runOperation(r,a);return"metadata"in o&&(o.metadata=i.ActorQueryOperation.cachifyMetadata(o.metadata)),o}}t.ActorQueryOperationTyped=a},95748:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryOperationTypedMediated=void 0;const n=r(3312);class i extends n.ActorQueryOperationTyped{constructor(e,t){super(e,t)}}t.ActorQueryOperationTypedMediated=i},87804:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.materializeOperation=t.materializeTerm=void 0;const n=r(79550),i=r(6053),a=r(98086),o=r(6789),s=new n.BindingsFactory;function c(e,t){if("Variable"===e.termType){const r=t.get(e);if(r)return r}return"Quad"===e.termType&&(0,a.someTermsNested)(e,(e=>"Variable"===e.termType))?(0,a.mapTermsNested)(e,(e=>c(e,t))):e}t.materializeTerm=c,t.materializeOperation=function e(t,r,n={}){return n={strictTargetVariables:"strictTargetVariables"in n&&n.strictTargetVariables,bindFilter:!("bindFilter"in n)||n.bindFilter},o.Util.mapOperation(t,{path:(e,t)=>({recurse:!1,result:t.createPath(c(e.subject,r),e.predicate,c(e.object,r),c(e.graph,r))}),pattern:(e,t)=>({recurse:!1,result:t.createPattern(c(e.subject,r),c(e.predicate,r),c(e.object,r),c(e.graph,r))}),extend(t){if(r.has(t.variable)){if(n.strictTargetVariables)throw new Error(`Tried to bind variable ${(0,i.termToString)(t.variable)} in a BIND operator.`);return{recurse:!0,result:e(t.input,r,n)}}return{recurse:!0,result:t}},group(e,t){if(n.strictTargetVariables){for(const t of e.variables)if(r.has(t))throw new Error(`Tried to bind variable ${(0,i.termToString)(t)} in a GROUP BY operator.`);return{recurse:!0,result:e}}const a=e.variables.filter((e=>!r.has(e)));return{recurse:!0,result:t.createGroup(e.input,a,e.aggregates)}},project(t,a){if(n.strictTargetVariables){for(const e of t.variables)if(r.has(e))throw new Error(`Tried to bind variable ${(0,i.termToString)(e)} in a SELECT operator.`);return{recurse:!0,result:t}}const o=t.variables.filter((e=>!r.has(e))),c=s.bindings(t.variables.map((e=>{const t=r.get(e);if(t)return[e,t]})).filter((e=>Boolean(e))));return{recurse:!1,result:a.createProject(e(t.input,c,n),o)}},values(e,t){if(!n.strictTargetVariables){const n=e.variables.filter((e=>!r.has(e))),a=e.bindings.map((e=>{const t={...e};let n=!0;return r.forEach(((e,r)=>{const a=(0,i.termToString)(r);a in t&&(e.equals(t[a])||(n=!1),delete t[a])})),n?t:void 0})).filter(Boolean);return{recurse:!0,result:t.createValues(n,a)}}for(const t of e.variables)if(r.has(t))throw new Error(`Tried to bind variable ${(0,i.termToString)(t)} in a VALUES operator.`);return{recurse:!1,result:e}},expression(e,t){if(!n.bindFilter)return{recurse:!1,result:e};if("term"===e.expressionType)return{recurse:!1,result:t.createTermExpression(c(e.term,r))};if("aggregate"===e.expressionType&&"variable"in e&&r.has(e.variable)){if(n.strictTargetVariables)throw new Error(`Tried to bind ${(0,i.termToString)(e.variable)} in a ${e.aggregator} aggregate.`);return{recurse:!0,result:e}}return{recurse:!0,result:e}}})}},58235:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BusQueryOperation=void 0;const n=r(21049);class i extends n.BusIndexed{constructor(e){super({...e,actorIdentifierFields:["operationName"],actionIdentifierFields:["operation","type"]})}}t.BusQueryOperation=i},7914:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClosableTransformIterator=void 0;const n=r(89227);class i extends n.TransformIterator{constructor(e,t){super(e,t),this.onClose=t.onClose}_end(e){this.onClose(),super._end(e)}}t.ClosableTransformIterator=i},83814:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(44346),t),i(r(3312),t),i(r(95748),t),i(r(87804),t),i(r(58235),t),i(r(7914),t)},79018:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryParse=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorQueryParse=i},21744:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(79018),t)},36519:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerialize=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorQueryResultSerialize=i},55313:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorQueryResultSerializeFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e,t){return!0}}t.ActorQueryResultSerializeFixedMediaTypes=i},42351:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36519),t),i(r(55313),t)},7215:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinEntriesSort=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfJoinEntriesSort=i},48955:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(7215),t)},75074:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoinSelectivity=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfJoinSelectivity=i},52185:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(75074),t)},53409:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfJoin=void 0;const n=r(83814),i=r(78470),a=r(21049),o=r(33588),s=r(91194),c=r(6053),u=new s.DataFactory;class l extends a.Actor{constructor(e,t){super(e),this.includeInLogs=!0,this.logicalType=t.logicalType,this.physicalName=t.physicalName,this.limitEntries=t.limitEntries??Number.POSITIVE_INFINITY,this.limitEntriesMin=t.limitEntriesMin??!1,this.canHandleUndefs=t.canHandleUndefs??!1}static hash(e,t){return t.filter((t=>e.has(t))).map((t=>(0,c.termToString)(e.get(t)))).join("")}static overlappingVariables(e){const t=e.map((e=>e.variables));let r=t[0];for(const e of t.slice(1))r=r.filter((t=>e.some((e=>e.value===t.value))));return r}static joinVariables(e){return[...new Set(e.flatMap((e=>e.variables.map((e=>e.value)))))].map((e=>u.variable(e)))}static joinBindings(...e){if(0===e.length)return null;if(1===e.length)return e[0];let t=e[0];for(const r of e.slice(1)){const e=t.merge(r);if(!e)return null;t=e}return t}static getCardinality(e){return e.cardinality}static async getMetadatas(e){return await Promise.all(e.map((e=>e.output.metadata())))}static async getEntriesWithMetadatas(e){const t=await l.getMetadatas(e);return e.map(((e,r)=>({...e,metadata:t[r]})))}static getRequestInitialTimes(e){return e.map((e=>e.pageSize?0:e.requestTime||0))}static getRequestItemTimes(e){return e.map((e=>e.pageSize?(e.requestTime||0)/e.pageSize:0))}async constructResultMetadata(e,t,r,n={}){let i;n.cardinality?i=n.cardinality:(i=t.reduce(((e,t)=>{const r=l.getCardinality(t);return{type:"estimate"===r.type?"estimate":e.type,value:e.value*r.value}}),{type:"exact",value:1}),i.value*=(await this.mediatorJoinSelectivity.mediate({entries:e,context:r})).selectivity);const a=new o.MetadataValidationState,s=()=>a.invalidate();for(const e of t)e.state.addInvalidateListener(s);return{state:a,...n,cardinality:{type:i.type,value:i.value},canContainUndefs:n.canContainUndefs??t.some((e=>e.canContainUndefs)),variables:l.joinVariables(t)}}async test(e){if(e.type!==this.logicalType)throw new Error(`${this.name} can only handle logical joins of type '${this.logicalType}', while '${e.type}' was given.`);if(e.entries.length<=1)throw new Error(`${this.name} requires at least two join entries.`);if(this.limitEntriesMin?e.entries.lengththis.limitEntries)throw new Error(`${this.name} requires ${this.limitEntries} join entries at ${this.limitEntriesMin?"least":"most"}. The input contained ${e.entries.length}.`);for(const t of e.entries)if("bindings"!==t.output.type)throw new Error(`Invalid type of a join entry: Expected 'bindings' but got '${t.output.type}'`);const t=await l.getMetadatas(e.entries);if(!this.canHandleUndefs)for(const e of t)if(e.canContainUndefs)throw new Error(`Actor ${this.name} can not join streams containing undefs`);return await this.getJoinCoefficients(e,t)}async run(e){let t;e.context.has(i.KeysInitQuery.physicalQueryPlanLogger)&&(t=e.context.get(i.KeysInitQuery.physicalQueryPlanNode),e.context=e.context.set(i.KeysInitQuery.physicalQueryPlanNode,e));const r=e.context.get(i.KeysInitQuery.physicalQueryPlanLogger);let a;this.includeInLogs&&r&&(a={},r.logOperation(`join-${this.logicalType}`,this.physicalName,e,t,this.name,a));const{result:o,physicalPlanMetadata:s}=await this.getOutput(e),c=await l.getMetadatas(e.entries);return a&&(Object.assign(a,s),a.cardinalities=c.map(l.getCardinality),a.joinCoefficients=await this.getJoinCoefficients(e,c)),o.metadata=n.ActorQueryOperation.cachifyMetadata(o.metadata),o}}t.ActorRdfJoin=l},97045:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53409),t)},69088:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataAccumulate=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadataAccumulate=i},36254:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69088),t)},17481:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadataExtract=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadataExtract=i},23058:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(17481),t)},50112:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfMetadata=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfMetadata=i},63460:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(50112),t)},93762:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseHtml=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfParseHtml=i},44706:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(93762),t)},5904:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParse=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorRdfParse=i},24932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfParseFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e){return!0}}t.ActorRdfParseFixedMediaTypes=i},93695:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(5904),t),i(r(24932),t)},11499:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinksQueue=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveHypermediaLinksQueue=i},81603:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},31746:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkQueueWrapper=void 0,t.LinkQueueWrapper=class{constructor(e){this.linkQueue=e}push(e,t){return this.linkQueue.push(e,t)}getSize(){return this.linkQueue.getSize()}isEmpty(){return this.linkQueue.isEmpty()}pop(){return this.linkQueue.pop()}peek(){return this.linkQueue.peek()}}},15115:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(11499),t),i(r(81603),t),i(r(31746),t)},48782:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermediaLinks=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveHypermediaLinks=i},67315:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(48782),t)},52838:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveHypermedia=void 0;const n=r(21049);class i extends n.Actor{constructor(e,t){super(e),this.sourceType=t}async test(e){if(e.forceSourceType&&this.sourceType!==e.forceSourceType)throw new Error(`Actor ${this.name} is not able to handle source type ${e.forceSourceType}.`);return this.testMetadata(e)}}t.ActorRdfResolveHypermedia=i},71580:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52838),t)},90:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPattern=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfResolveQuadPattern=i},1795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfResolveQuadPatternSource=void 0;const n=r(90);class i extends n.ActorRdfResolveQuadPattern{constructor(e){super(e)}async test(e){return!0}async run(e){const t=await this.getSource(e.context,e.pattern);return await this.getOutput(t,e.pattern,e.context)}async getOutput(e,t,r){return{data:e.match(t.subject,t.predicate,t.object,t.graph,r)}}}t.ActorRdfResolveQuadPatternSource=i},58392:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90),t),i(r(1795),t),i(r(18165),t)},18165:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hasContextSingleSourceOfType=t.hasContextSingleSource=t.getContextSourceUrl=t.getContextSourceFirst=t.getContextSource=t.getContextSources=t.getDataSourceContext=t.getDataSourceValue=t.getDataSourceType=t.isDataSourceRawType=void 0;const n=r(78470),i=r(21049);function a(e){return"string"==typeof e||"match"in e}function o(e){return"string"==typeof e?"":"match"in e?"rdfjsSource":e.type}function s(e){return a(e)?e:e.value}function c(e){return e.get(n.KeysRdfResolveQuadPattern.source)}t.isDataSourceRawType=a,t.getDataSourceType=o,t.getDataSourceValue=s,t.getDataSourceContext=function(e,t){return a(e)||!e.context?t:t.merge(i.ActionContext.ensureActionContext(e.context))},t.getContextSources=function(e){return e.get(n.KeysRdfResolveQuadPattern.sources)},t.getContextSource=c,t.getContextSourceFirst=function(e){if(e.has(n.KeysRdfResolveQuadPattern.source))return e.get(n.KeysRdfResolveQuadPattern.source);const t=e.get(n.KeysRdfResolveQuadPattern.sources);return 1===t?.length?t[0]:void 0},t.getContextSourceUrl=function(e){if(e){let t=s(e);if("string"==typeof t){const e=t.indexOf("#");return e>=0&&(t=t.slice(0,e)),t}}},t.hasContextSingleSource=function(e){const t=c(e);return Boolean(t&&(a(t)||t.value))},t.hasContextSingleSourceOfType=function(e,t){const r=c(t);return Boolean(r&&o(r)===e&&s(r))}},40994:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerialize=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTyped{constructor(e){super(e)}}t.ActorRdfSerialize=i},56466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfSerializeFixedMediaTypes=void 0;const n=r(89208);class i extends n.ActorAbstractMediaTypedFixed{constructor(e){super(e)}async testHandleChecked(e){return!0}}t.ActorRdfSerializeFixedMediaTypes=i},51072:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(40994),t),i(r(56466),t)},75938:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateHypermedia=void 0;const n=r(21049);class i extends n.Actor{constructor(e,t){super(e),this.destinationType=t}async test(e){if(e.forceDestinationType&&this.destinationType!==e.forceDestinationType)throw new Error(`Actor ${this.name} is not able to handle destination type ${e.forceDestinationType}.`);return this.testMetadata(e)}}t.ActorRdfUpdateHypermedia=i},28250:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(75938),t)},88143:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuads=void 0;const n=r(21049);class i extends n.Actor{constructor(e){super(e)}}t.ActorRdfUpdateQuads=i},49864:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActorRdfUpdateQuadsDestination=t.deskolemize=t.deskolemizeStream=void 0;const n=r(87779),i=r(78470),a=r(88143);function o(e,t){return e?.map((e=>n.FederatedQuadSource.deskolemizeQuad(e,t)))}function s(e){const t=e.context.get(i.KeysRdfUpdateQuads.destination),r=e.context.get(i.KeysRdfResolveQuadPattern.sourceIds)?.get(t);return r?{...e,quadStreamInsert:o(e.quadStreamInsert,r),quadStreamDelete:o(e.quadStreamDelete,r)}:e}t.deskolemizeStream=o,t.deskolemize=s;class c extends a.ActorRdfUpdateQuads{async test(e){return!0}async run(e){const t=await this.getDestination(e.context);return await this.getOutput(t,s(e),e.context)}async getOutput(e,t,r){return{execute:()=>Promise.all([t.quadStreamInsert?e.insert(t.quadStreamInsert):Promise.resolve(),t.quadStreamDelete?e.delete(t.quadStreamDelete):Promise.resolve(),t.deleteGraphs?e.deleteGraphs(t.deleteGraphs.graphs,t.deleteGraphs.requireExistence,t.deleteGraphs.dropGraphs):Promise.resolve(),t.createGraphs?e.createGraphs(t.createGraphs.graphs,t.createGraphs.requireNonExistence):Promise.resolve()]).then((()=>{}))}}}t.ActorRdfUpdateQuadsDestination=c},93744:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateHttpResponse=void 0;const n=r(80389),i=r(29038);t.validateHttpResponse=async function(e,t){if(t.status>=400){let r="empty response";if(t.body){const e=n.ActorHttp.toNodeReadable(t.body);r=await i(e)}throw new Error(`Could not update ${e} (HTTP status ${t.status}):\n${r}`)}await(t.body?.cancel())}},58595:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(88143),t),i(r(49864),t),i(r(93744),t),i(r(71180),t)},71180:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getContextDestinationUrl=t.getContextDestinationFirst=t.getContextDestination=t.getDataDestinationContext=t.getDataDestinationValue=t.getDataDestinationType=t.isDataDestinationRawType=void 0;const n=r(78470);function i(e){return"string"==typeof e||"remove"in e}function a(e){return i(e)?e:e.value}t.isDataDestinationRawType=i,t.getDataDestinationType=function(e){return"string"==typeof e?"":"remove"in e?"rdfjsStore":e.type},t.getDataDestinationValue=a,t.getDataDestinationContext=function(e,t){return"string"==typeof e||"remove"in e||!e.context?t:t.merge(e.context)},t.getContextDestination=function(e){return e.get(n.KeysRdfUpdateQuads.destination)},t.getContextDestinationFirst=function(e){if(e.has(n.KeysRdfUpdateQuads.destination))return e.get(n.KeysRdfUpdateQuads.destination)},t.getContextDestinationUrl=function(e){if(e){let t=a(e);if("string"==typeof t){const e=t.indexOf("#");return e>=0&&(t=t.slice(0,e)),t}}}},6180:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KeysRdfUpdateQuads=t.KeysRdfResolveQuadPattern=t.KeysRdfParseHtmlScript=t.KeysRdfParseJsonLd=t.KeysQueryOperation=t.KeysInitQuery=t.KeysHttpProxy=t.KeysHttpMemento=t.KeysHttpWayback=t.KeysHttp=t.KeysCore=void 0;const n=r(21049);t.KeysCore={log:n.CONTEXT_KEY_LOGGER},t.KeysHttp={includeCredentials:new n.ActionContextKey("@comunica/bus-http:include-credentials"),auth:new n.ActionContextKey("@comunica/bus-http:auth"),fetch:new n.ActionContextKey("@comunica/bus-http:fetch"),httpTimeout:new n.ActionContextKey("@comunica/bus-http:http-timeout"),httpBodyTimeout:new n.ActionContextKey("@comunica/bus-http:http-body-timeout"),httpRetryCount:new n.ActionContextKey("@comunica/bus-http:http-retry-count"),httpRetryDelay:new n.ActionContextKey("@comunica/bus-http:http-retry-delay"),httpRetryOnServerError:new n.ActionContextKey("@comunica/bus-http:http-retry-on-server-error")},t.KeysHttpWayback={recoverBrokenLinks:new n.ActionContextKey("@comunica/bus-http:recover-broken-links")},t.KeysHttpMemento={datetime:new n.ActionContextKey("@comunica/actor-http-memento:datetime")},t.KeysHttpProxy={httpProxyHandler:new n.ActionContextKey("@comunica/actor-http-proxy:httpProxyHandler")},t.KeysInitQuery={initialBindings:new n.ActionContextKey("@comunica/actor-init-query:initialBindings"),queryFormat:new n.ActionContextKey("@comunica/actor-init-query:queryFormat"),graphqlSingularizeVariables:new n.ActionContextKey("@comunica/actor-init-query:singularizeVariables"),lenient:new n.ActionContextKey("@comunica/actor-init-query:lenient"),queryString:new n.ActionContextKey("@comunica/actor-init-query:queryString"),query:new n.ActionContextKey("@comunica/actor-init-query:query"),baseIRI:new n.ActionContextKey("@comunica/actor-init-query:baseIRI"),functionArgumentsCache:new n.ActionContextKey("@comunica/actor-init-query:functionArgumentsCache"),queryTimestamp:new n.ActionContextKey("@comunica/actor-init-query:queryTimestamp"),extensionFunctionCreator:new n.ActionContextKey("@comunica/actor-init-query:extensionFunctionCreator"),extensionFunctions:new n.ActionContextKey("@comunica/actor-init-query:extensionFunctions"),cliArgsHandlers:new n.ActionContextKey("@comunica/actor-init-query:cliArgsHandlers"),explain:new n.ActionContextKey("@comunica/actor-init-query:explain"),physicalQueryPlanLogger:new n.ActionContextKey("@comunica/actor-init-query:physicalQueryPlanLogger"),physicalQueryPlanNode:new n.ActionContextKey("@comunica/actor-init-query:physicalQueryPlanNode"),jsonLdContext:new n.ActionContextKey("@context")},t.KeysQueryOperation={operation:new n.ActionContextKey("@comunica/bus-query-operation:operation"),joinLeftMetadata:new n.ActionContextKey("@comunica/bus-query-operation:joinLeftMetadata"),joinRightMetadatas:new n.ActionContextKey("@comunica/bus-query-operation:joinRightMetadatas"),joinBindings:new n.ActionContextKey("@comunica/bus-query-operation:joinBindings"),readOnly:new n.ActionContextKey("@comunica/bus-query-operation:readOnly"),isPathArbitraryLengthDistinctKey:new n.ActionContextKey("@comunica/bus-query-operation:isPathArbitraryLengthDistinct"),limitIndicator:new n.ActionContextKey("@comunica/bus-query-operation:limitIndicator"),unionDefaultGraph:new n.ActionContextKey("@comunica/bus-query-operation:unionDefaultGraph")},t.KeysRdfParseJsonLd={documentLoader:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:documentLoader"),strictValues:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:strictValues"),parserOptions:new n.ActionContextKey("@comunica/actor-rdf-parse-jsonld:parserOptions")},t.KeysRdfParseHtmlScript={processingHtmlScript:new n.ActionContextKey("@comunica/actor-rdf-parse-html-script:processingHtmlScript"),extractAllScripts:new n.ActionContextKey("extractAllScripts")},t.KeysRdfResolveQuadPattern={sources:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:sources"),source:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:source"),sourceIds:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:sourceIds"),hypermediaSourcesAggregatedStores:new n.ActionContextKey("@comunica/bus-rdf-resolve-quad-pattern:hypermediaSourcesAggregatedStores")},t.KeysRdfUpdateQuads={destination:new n.ActionContextKey("@comunica/bus-rdf-update-quads:destination")}},78470:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(6180),t)},81662:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionContextKey=t.ActionContext=void 0;const n=r(27623);class i{constructor(e={}){this.map=(0,n.Map)(e)}setDefault(e,t){return this.has(e)?this:this.set(e,t)}set(e,t){return this.setRaw(e.name,t)}setRaw(e,t){return new i(this.map.set(e,t))}delete(e){return new i(this.map.delete(e.name))}get(e){return this.getRaw(e.name)}getRaw(e){return this.map.get(e)}getSafe(e){if(!this.has(e))throw new Error(`Context entry ${e.name} is required but not available`);return this.get(e)}has(e){return this.hasRaw(e.name)}hasRaw(e){return this.map.has(e)}merge(...e){let t=this;for(const r of e)for(const e of r.keys())t=t.set(e,r.get(e));return t}keys(){return[...this.map.keys()].map((e=>new a(e)))}toJS(){return this.map.toJS()}toString(){return`ActionContext(${JSON.stringify(this.map.toJS())})`}[Symbol.for("nodejs.util.inspect.custom")](){return`ActionContext(${JSON.stringify(this.map.toJS(),null," ")})`}static ensureActionContext(e){return e instanceof i?e:new i((0,n.Map)(e||{}))}}t.ActionContext=i;class a{constructor(e){this.name=e}}t.ActionContextKey=a},13650:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActionObserver=void 0,t.ActionObserver=class{constructor(e){Object.assign(this,e)}}},47405:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Actor=void 0;const n=r(13832);class i{constructor(e){this.beforeActors=[],Object.assign(this,e),this.bus.subscribe(this),this.beforeActors.length>0&&this.bus.addDependencies(this,this.beforeActors)}static getContextLogger(e){return e.get(n.CONTEXT_KEY_LOGGER)}runObservable(e){const t=this.run(e);return this.bus.onRun(this,e,t),t}async initialize(){return!0}async deinitialize(){return!0}getDefaultLogData(e,t){const r=t?t():{};return r.actor=this.name,r}logTrace(e,t,r){const n=i.getContextLogger(e);n&&n.trace(t,this.getDefaultLogData(e,r))}logDebug(e,t,r){const n=i.getContextLogger(e);n&&n.debug(t,this.getDefaultLogData(e,r))}logInfo(e,t,r){const n=i.getContextLogger(e);n&&n.info(t,this.getDefaultLogData(e,r))}logWarn(e,t,r){const n=i.getContextLogger(e);n&&n.warn(t,this.getDefaultLogData(e,r))}logError(e,t,r){const n=i.getContextLogger(e);n&&n.error(t,this.getDefaultLogData(e,r))}logFatal(e,t,r){const n=i.getContextLogger(e);n&&n.fatal(t,this.getDefaultLogData(e,r))}}t.Actor=i},56910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Bus=void 0,t.Bus=class{constructor(e){this.actors=[],this.observers=[],this.dependencyLinks=new Map,Object.assign(this,e)}subscribe(e){this.actors.push(e),this.reorderForDependencies()}subscribeObserver(e){this.observers.push(e)}unsubscribe(e){const t=this.actors.indexOf(e);return t>=0&&(this.actors.splice(t,1),!0)}unsubscribeObserver(e){const t=this.observers.indexOf(e);return t>=0&&(this.observers.splice(t,1),!0)}publish(e){return this.actors.map((t=>({actor:t,reply:t.test(e)})))}onRun(e,t,r){for(const n of this.observers)n.onRun(e,t,r)}addDependencies(e,t){for(const r of t){let t=this.dependencyLinks.get(r);t||(t=[],this.dependencyLinks.set(r,t)),t.push(e)}this.reorderForDependencies()}reorderForDependencies(){if(this.dependencyLinks.size>0){const e=[];for(const t of this.dependencyLinks.keys()){const r=this.actors.indexOf(t);r>=0&&(this.actors.splice(r,1),e.push(t))}for(;e.length>0;){let t=-1;for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BusIndexed=void 0;const n=r(56910);class i extends n.Bus{constructor(e){super(e),this.actorsIndex={}}subscribe(e){const t=this.getActorIdentifier(e)||"_undefined_";let r=this.actorsIndex[t];r||(r=this.actorsIndex[t]=[]),r.push(e),super.subscribe(e)}unsubscribe(e){const t=this.getActorIdentifier(e)||"_undefined_",r=this.actorsIndex[t];if(r){const n=r.indexOf(e);n>=0&&r.splice(n,1),0===r.length&&delete this.actorsIndex[t]}return super.unsubscribe(e)}publish(e){const t=this.getActionIdentifier(e);return t?[...this.actorsIndex[t]||[],...this.actorsIndex._undefined_||[]].map((t=>({actor:t,reply:t.test(e)}))):super.publish(e)}getActorIdentifier(e){return this.actorIdentifierFields.reduce(((e,t)=>e[t]),e)}getActionIdentifier(e){return this.actionIdentifierFields.reduce(((e,t)=>e[t]),e)}}t.BusIndexed=i},13832:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CONTEXT_KEY_LOGGER=void 0;const n=r(81662);t.CONTEXT_KEY_LOGGER=new n.ActionContextKey("@comunica/core:log")},39014:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Mediator=void 0,t.Mediator=class{constructor(e){Object.assign(this,e)}publish(e){const t=this.bus.publish(e);if(0===t.length)throw new Error(`No actors are able to reply to a message in the bus ${this.bus.name}`);return t}async mediateActor(e){return await this.mediateWith(e,this.publish(e))}async mediate(e){return(await this.mediateActor(e)).runObservable(e)}}},21049:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=void 0;const a=r(24331).Logger;t.Logger=a,i(r(81662),t),i(r(56910),t),i(r(52430),t),i(r(13832),t),i(r(13650),t),i(r(47405),t),i(r(39014),t)},77265:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNodeBindingsScoped=void 0,t.BlankNodeBindingsScoped=class{constructor(e){this.termType="BlankNode",this.singleBindingsScope=!0,this.value=e}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},61705:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNodeScoped=void 0,t.BlankNodeScoped=class{constructor(e,t){this.termType="BlankNode",this.value=e,this.skolemized=t}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},27057:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(61705),t),i(r(77265),t)},3120:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Aggregator=t.AggregatorComponent=void 0;const n=r(6053),i=r(34932),a=r(8399),o=r(96251);t.AggregatorComponent=class{static emptyValue(){}constructor(e,t){this.sharedContext=t,this.separator=e.separator||" ",this.termTransformer=new i.TermTransformer(t.superTypeProvider)}termToNumericOrError(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a numeric literal`);if(!(0,o.isSubTypeOf)(e.datatype.value,a.TypeAlias.SPARQL_NUMERIC,this.sharedContext.superTypeProvider))throw new Error(`Term datatype ${e.datatype.value} with value ${e.value} has type ${e.termType} and is not a numeric literal`);return this.termTransformer.transformLiteral(e)}},t.Aggregator=class{constructor(e,t){this.aggregatorComponent=t,this.variableValues=new Map,this.distinct=e.distinct}static emptyValue(e){return e.emptyValue()}result(){return this.aggregatorComponent.result()}put(e,t=""){this.canSkip(e,t)||(this.aggregatorComponent.put(e),this.addSeen(e,t))}canSkip(e,t){const r=this.variableValues.get(t);return this.distinct&&void 0!==r&&r.has(n.termToString(e))}addSeen(e,t){this.distinct&&(this.variableValues.has(t)||this.variableValues.set(t,new Set),this.variableValues.get(t).add(n.termToString(e)))}}},27661:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Average=void 0;const n=r(57358),i=r(64640),a=r(36389),o=r(8399),s=r(3120);class c extends s.AggregatorComponent{constructor(){super(...arguments),this.summer=i.regularFunctions[o.RegularOperator.ADDITION],this.divider=i.regularFunctions[o.RegularOperator.DIVISION],this.state=void 0}static emptyValue(){return(0,a.integer)(0).toRDF()}put(e){if(void 0===this.state){const t=this.termToNumericOrError(e);this.state={sum:t,count:1}}else{const t=this.termToNumericOrError(e);this.state.sum=this.summer.apply([this.state.sum,t],this.sharedContext),this.state.count++}}result(){if(void 0===this.state)return c.emptyValue();const e=new n.IntegerLiteral(this.state.count);return this.divider.apply([this.state.sum,e],this.sharedContext).toRDF()}}t.Average=c},37712:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Count=void 0;const n=r(36389),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}static emptyValue(){return(0,n.integer)(0).toRDF()}put(e){void 0===this.state&&(this.state=0),this.state++}result(){return void 0===this.state?a.emptyValue():(0,n.integer)(this.state).toRDF()}}t.Count=a},3041:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GroupConcat=void 0;const n=r(36389),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}static emptyValue(){return(0,n.string)("").toRDF()}put(e){void 0===this.state?this.state=e.value:this.state+=this.separator+e.value}result(){return void 0===this.state?a.emptyValue():(0,n.string)(this.state).toRDF()}}t.GroupConcat=a},4900:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Max=void 0;const n=r(34964),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a literal`);(void 0===this.state||-1===(0,n.orderTypes)(this.state,e))&&(this.state=e)}result(){return void 0===this.state?a.emptyValue():this.state}}t.Max=a},30422:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Min=void 0;const n=r(34964),i=r(3120);class a extends i.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){if("Literal"!==e.termType)throw new Error(`Term with value ${e.value} has type ${e.termType} and is not a literal`);(void 0===this.state||1===(0,n.orderTypes)(this.state,e))&&(this.state=e)}result(){return void 0===this.state?a.emptyValue():this.state}}t.Min=a},56258:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Sample=void 0;const n=r(3120);class i extends n.AggregatorComponent{constructor(){super(...arguments),this.state=void 0}put(e){void 0===this.state&&(this.state=e)}result(){return void 0===this.state?i.emptyValue():this.state}}t.Sample=i},80244:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Sum=void 0;const n=r(64640),i=r(36389),a=r(8399),o=r(3120);class s extends o.AggregatorComponent{constructor(){super(...arguments),this.state=void 0,this.summer=n.regularFunctions[a.RegularOperator.ADDITION]}static emptyValue(){return(0,i.integer)(0).toRDF()}put(e){if(void 0===this.state)this.state=this.termToNumericOrError(e);else{const t=this.termToNumericOrError(e);this.state=this.summer.apply([this.state,t],this.sharedContext)}}result(){return void 0===this.state?s.emptyValue():this.state.toRDF()}}t.Sum=s},37254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WildcardCountAggregator=void 0;const n=r(6053),i=r(36389);t.WildcardCountAggregator=class{constructor(e){this.bindingValues=new Map,this.counter=0,this.distinct=e.distinct}putBindings(e){this.handleDistinct(e)||(this.counter+=1)}static emptyValue(){return(0,i.integer)(0).toRDF()}result(){return(0,i.integer)(this.counter).toRDF()}handleDistinct(e){if(this.distinct){const t=[...e];t.sort(((e,t)=>e[0].value.localeCompare(t[0].value)));const r=t.map((([e])=>e.value)).join(","),i=t.map((([,e])=>n.termToString(e))).join(","),a=this.bindingValues.get(r),o=void 0!==a&&a.has(i);return a||this.bindingValues.set(r,new Set),this.bindingValues.get(r).add(i),o}return!1}}},86441:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.aggregators=void 0;const n=r(27661),i=r(37712),a=r(3041),o=r(4900),s=r(30422),c=r(56258),u=r(80244);t.aggregators={count:i.Count,sum:u.Sum,min:s.Min,max:o.Max,avg:n.Average,group_concat:a.GroupConcat,sample:c.Sample}},45997:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AggregateEvaluator=void 0;const n=r(58272),i=r(64481);class a extends n.BaseAggregateEvaluator{constructor(e,t,r){super(e,i.SyncEvaluator.completeContext(t||{}),r),this.evaluator=new i.SyncEvaluator(e.expression,t)}put(e){if(!this.errorOccurred)if(this.isWildcard)this.wildcardAggregator.putBindings(e);else try{const t=this.evaluator.evaluate(e);this.aggregator.put(t)}catch(e){this.safeThrow(e)}}safeThrow(e){if(this.throwError)throw e;this.errorOccurred=!0}}t.AggregateEvaluator=a},3694:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncAggregateEvaluator=void 0;const n=r(72407),i=r(58272);class a extends i.BaseAggregateEvaluator{constructor(e,t,r){super(e,n.AsyncEvaluator.completeContext(t||{}),r),this.evaluator=new n.AsyncEvaluator(e.expression,t),this.errorOccurred=!1}async put(e){if(!this.errorOccurred)if(this.isWildcard)this.wildcardAggregator.putBindings(e);else try{const t=await this.evaluator.evaluate(e);if(!t||this.errorOccurred)return;this.aggregator.put(t)}catch(e){this.safeThrow(e)}}safeThrow(e){if(this.throwError)throw e;this.errorOccurred=!0}}t.AsyncAggregateEvaluator=a},72407:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncEvaluator=void 0;const n=r(70463),i=r(84765),a=r(90799),o=r(44029);class s{static completeContext(e){const t=e.now||new Date(Date.now());return{now:t,baseIRI:e.baseIRI||void 0,functionArgumentsCache:e.functionArgumentsCache||{},superTypeProvider:{cache:e.typeCache||new n.LRUCache({max:1e3}),discoverer:e.getSuperType||(()=>"term")},extensionFunctionCreator:e.extensionFunctionCreator,exists:e.exists,aggregate:e.aggregate,bnode:e.bnode,defaultTimeZone:e.defaultTimeZone||(0,a.extractTimeZone)(t)}}constructor(e,t={}){this.algExpr=e;const r=t.extensionFunctionCreator||(()=>{}),n=s.completeContext(t),a=new i.AlgebraTransformer({type:"async",creator:r,...n});this.expr=a.transformAlgebra(e),this.evaluator=new o.AsyncRecursiveEvaluator(n,a)}async evaluate(e){return(await this.evaluator.evaluate(this.expr,e)).toRDF()}async evaluateAsEBV(e){return(await this.evaluator.evaluate(this.expr,e)).coerceEBV()}async evaluateAsInternal(e){return await this.evaluator.evaluate(this.expr,e)}}t.AsyncEvaluator=s},64481:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncEvaluator=void 0;const n=r(70463),i=r(84765),a=r(90799),o=r(44749);class s{static completeContext(e){const t=e.now||new Date(Date.now());return{now:t,baseIRI:e.baseIRI||void 0,functionArgumentsCache:e.functionArgumentsCache||{},superTypeProvider:{cache:e.typeCache||new n.LRUCache({max:1e3}),discoverer:e.getSuperType||(()=>"term")},extensionFunctionCreator:e.extensionFunctionCreator,exists:e.exists,aggregate:e.aggregate,bnode:e.bnode,defaultTimeZone:e.defaultTimeZone||(0,a.extractTimeZone)(t)}}constructor(e,t={}){this.algExpr=e,this.context=t;const r=t.extensionFunctionCreator||(()=>{}),n=s.completeContext(t),a=new i.AlgebraTransformer({type:"sync",creator:r,...n});this.expr=a.transformAlgebra(e),this.evaluator=new o.SyncRecursiveEvaluator(n,a)}evaluate(e){return this.evaluator.evaluate(this.expr,e).toRDF()}evaluateAsEBV(e){return this.evaluator.evaluate(this.expr,e).coerceEBV()}evaluateAsInternal(e){return this.evaluator.evaluate(this.expr,e)}}t.SyncEvaluator=s},44029:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncRecursiveEvaluator=void 0;const n=r(57358),i=r(34932),a=r(75218),o=r(26847);class s extends o.BaseExpressionEvaluator{constructor(e,t){super(t||new i.TermTransformer(e.superTypeProvider)),this.context=e,this.subEvaluators={[n.ExpressionType.Term]:this.term.bind(this),[n.ExpressionType.Variable]:this.variable.bind(this),[n.ExpressionType.Operator]:this.evalOperator.bind(this),[n.ExpressionType.SpecialOperator]:this.evalSpecialOperator.bind(this),[n.ExpressionType.Named]:this.evalNamed.bind(this),[n.ExpressionType.Existence]:this.evalExistence.bind(this),[n.ExpressionType.Aggregate]:this.evalAggregate.bind(this),[n.ExpressionType.AsyncExtension]:this.evalAsyncExtension.bind(this)}}async evaluate(e,t){const r=this.subEvaluators[e.expressionType];if(!r)throw new a.InvalidExpressionType(e);return r.bind(this)(e,t)}async evalOperator(e,t){const r=e.args.map((e=>this.evaluate(e,t))),n=await Promise.all(r);return e.apply(n)}async evalSpecialOperator(e,t){const r=this.evaluate.bind(this),n={args:e.args,mapping:t,superTypeProvider:this.context.superTypeProvider,now:this.context.now,baseIRI:this.context.baseIRI,functionArgumentsCache:this.context.functionArgumentsCache,evaluate:r,bnode:this.context.bnode,defaultTimeZone:this.context.defaultTimeZone};return e.applyAsync(n)}async _evalAsyncArgs(e,t){const r=e.map((e=>this.evaluate(e,t)));return await Promise.all(r)}async evalNamed(e,t){return e.apply(await this._evalAsyncArgs(e.args,t))}async evalAsyncExtension(e,t){return await e.apply(await this._evalAsyncArgs(e.args,t))}async evalExistence(e,t){if(!this.context.exists)throw new a.NoExistenceHook;return new n.BooleanLiteral(await this.context.exists(e.expression,t))}async evalAggregate(e,t){if(!this.context.aggregate)throw new a.NoAggregator;return this.termTransformer.transformRDFTermUnsafe(await this.context.aggregate(e.expression))}}t.AsyncRecursiveEvaluator=s},58272:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseAggregateEvaluator=void 0;const n=r(6789),i=r(86441),a=r(3120),o=r(37254),s=r(75218);t.BaseAggregateEvaluator=class{constructor(e,t,r){this.throwError=!1,this.isWildcard=!1,this.errorOccurred=!1,this.expression=e,this.aggregator=new a.Aggregator(e,new i.aggregators[e.aggregator](e,t)),this.throwError=r||!1,this.isWildcard=e.expression.expressionType===n.Algebra.expressionTypes.WILDCARD,this.isWildcard&&(this.wildcardAggregator=new o.WildcardCountAggregator(e))}static emptyValue(e,t=!1){let r;if(r=e.expression.expressionType===n.Algebra.expressionTypes.WILDCARD?o.WildcardCountAggregator.emptyValue():a.Aggregator.emptyValue(i.aggregators[e.aggregator]),void 0===r&&t)throw new s.EmptyAggregateError;return r}result(){if(!this.errorOccurred)return this.isWildcard?this.wildcardAggregator.result():this.aggregator.result()}}},26847:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseExpressionEvaluator=void 0;const n=r(36389),i=r(75218);t.BaseExpressionEvaluator=class{constructor(e){this.termTransformer=e}term(e,t){return e}variable(e,t){const r=t.get((0,n.expressionToVar)(e));if(!r)throw new i.UnboundVariableError(e.name,t);return this.termTransformer.transformRDFTermUnsafe(r)}}},44749:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncRecursiveEvaluator=void 0;const n=r(57358),i=r(34932),a=r(75218),o=r(26847);class s extends o.BaseExpressionEvaluator{constructor(e,t){super(t||new i.TermTransformer(e.superTypeProvider)),this.context=e,this.subEvaluators={[n.ExpressionType.Term]:this.term.bind(this),[n.ExpressionType.Variable]:this.variable.bind(this),[n.ExpressionType.Operator]:this.evalOperator.bind(this),[n.ExpressionType.SpecialOperator]:this.evalSpecialOperator.bind(this),[n.ExpressionType.Named]:this.evalNamed.bind(this),[n.ExpressionType.Existence]:this.evalExistence.bind(this),[n.ExpressionType.Aggregate]:this.evalAggregate.bind(this),[n.ExpressionType.SyncExtension]:this.evalSyncExtension.bind(this)}}evaluate(e,t){const r=this.subEvaluators[e.expressionType];if(!r)throw new a.InvalidExpressionType(e);return r.bind(this)(e,t)}evalOperator(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalSpecialOperator(e,t){const r=this.evaluate.bind(this),n={args:e.args,mapping:t,superTypeProvider:this.context.superTypeProvider,now:this.context.now,baseIRI:this.context.baseIRI,functionArgumentsCache:this.context.functionArgumentsCache,evaluate:r,bnode:this.context.bnode,defaultTimeZone:this.context.defaultTimeZone};return e.applySynchronously(n)}evalNamed(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalSyncExtension(e,t){const r=e.args.map((e=>this.evaluate(e,t)));return e.apply(r)}evalExistence(e,t){if(!this.context.exists)throw new a.NoExistenceHook;return new n.BooleanLiteral(this.context.exists(e.expression,t))}evalAggregate(e,t){if(!this.context.aggregate)throw new a.NoAggregator;return this.termTransformer.transformRDFTermUnsafe(this.context.aggregate(e.expression))}}t.SyncRecursiveEvaluator=s},19667:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Aggregate=void 0;const n=r(29846);t.Aggregate=class{constructor(e,t){this.name=e,this.expression=t,this.expressionType=n.ExpressionType.Aggregate}}},48524:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncExtension=void 0;const n=r(29846);t.AsyncExtension=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.AsyncExtension}}},40940:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Existence=void 0;const n=r(29846);t.Existence=class{constructor(e){this.expression=e,this.expressionType=n.ExpressionType.Existence}}},29846:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.asTermType=t.ExpressionType=void 0,function(e){e.Aggregate="aggregate",e.Existence="existence",e.Named="named",e.Operator="operator",e.SpecialOperator="specialOperator",e.Term="term",e.Variable="variable",e.AsyncExtension="asyncExtension",e.SyncExtension="syncExtension"}(r||(t.ExpressionType=r={})),t.asTermType=function(e){if("namedNode"===e||"literal"===e||"blankNode"===e||"quad"===e)return e}},6821:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Named=void 0;const n=r(29846);t.Named=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.Named}}},61923:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Operator=void 0;const n=r(29846);t.Operator=class{constructor(e,t){this.args=e,this.apply=t,this.expressionType=n.ExpressionType.Operator}}},4160:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SpecialOperator=void 0;const n=r(29846);t.SpecialOperator=class{constructor(e,t,r){this.args=e,this.applyAsync=t,this.applySynchronously=r,this.expressionType=n.ExpressionType.SpecialOperator}}},32466:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SyncExtension=void 0;const n=r(29846);t.SyncExtension=class{constructor(e,t,r){this.name=e,this.args=t,this.apply=r,this.expressionType=n.ExpressionType.SyncExtension}}},36719:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNonLexicalLiteral=t.NonLexicalLiteral=t.YearMonthDurationLiteral=t.DayTimeDurationLiteral=t.DurationLiteral=t.DateLiteral=t.TimeLiteral=t.DateTimeLiteral=t.StringLiteral=t.LangStringLiteral=t.BooleanLiteral=t.DoubleLiteral=t.FloatLiteral=t.DecimalLiteral=t.IntegerLiteral=t.NumericLiteral=t.Literal=t.isLiteralTermExpression=t.Quad=t.BlankNode=t.NamedNode=t.Term=void 0;const n=r(91194),i=r(34932),a=r(8399),o=r(8399),s=r(75218),c=r(6521),u=r(96251),l=r(29846),d=new n.DataFactory;class h{constructor(){this.expressionType=l.ExpressionType.Term}str(){throw new s.InvalidArgumentTypes([this],a.RegularOperator.STR)}coerceEBV(){throw new s.EBVCoercionError(this)}}t.Term=h,t.NamedNode=class extends h{constructor(e){super(),this.value=e,this.termType="namedNode"}toRDF(){return d.namedNode(this.value)}str(){return this.value}},t.BlankNode=class extends h{constructor(e){super(),this.termType="blankNode",this.value="string"==typeof e?d.blankNode(e):e}toRDF(){return this.value}},t.Quad=class extends h{constructor(e,t){super(),this.termType="quad",this.transformer=new i.TermTransformer(t),this.valueTerm=e}toRDF(){return this.valueTerm}get subject(){return this.transformer.transformRDFTermUnsafe(this.RDFsubject)}get predicate(){return this.transformer.transformRDFTermUnsafe(this.RDFpredicate)}get object(){return this.transformer.transformRDFTermUnsafe(this.RDFobject)}get RDFsubject(){return this.toRDF().subject}get RDFpredicate(){return this.toRDF().predicate}get RDFobject(){return this.toRDF().object}},t.isLiteralTermExpression=function(e){if("literal"===e.termType)return e};class p extends h{constructor(e,t,r,n){super(),this.typedValue=e,this.dataType=t,this.strValue=r,this.language=n,this.termType="literal"}toRDF(){return d.literal(this.strValue||this.str(),this.language||d.namedNode(this.dataType))}str(){return this.strValue||this.typedValue.toString()}}t.Literal=p;class f extends p{constructor(e,t,r,n){super(e,t,r,n),this.typedValue=e,this.strValue=r,this.language=n}coerceEBV(){return Boolean(this.typedValue)}toRDF(){const e=super.toRDF();return Number.isFinite(this.typedValue)||(e.value=e.value.replace("Infinity","INF")),e}str(){return this.strValue||this.specificFormatter(this.typedValue)}}t.NumericLiteral=f,t.IntegerLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_INTEGER,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toFixed(0)}},t.DecimalLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_DECIMAL,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toString()}},t.FloatLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_FLOAT,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){return e.toString()}},t.DoubleLiteral=class extends f{constructor(e,t,r,n){super(e,t||o.TypeURL.XSD_DOUBLE,r,n),this.typedValue=e,this.strValue=r,this.language=n}specificFormatter(e){if(!Number.isFinite(e))return e>0?"INF":e<0?"-INF":"NaN";const t=e.toExponential(),[r,n]=t.split("e"),i=n.replace(/\+/u,"");return`${r.includes(".")?r:`${r}.0`}E${i}`}},t.BooleanLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_BOOLEAN,t),this.typedValue=e,this.strValue=t}coerceEBV(){return this.typedValue}},t.LangStringLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.RDF_LANG_STRING,e,t),this.typedValue=e,this.language=t}coerceEBV(){return this.str().length>0}},t.StringLiteral=class extends p{constructor(e,t){super(e,t||o.TypeURL.XSD_STRING,e),this.typedValue=e}coerceEBV(){return this.str().length>0}},t.DateTimeLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DATE_TIME,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDateTime)(this.typedValue)}},t.TimeLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_TIME,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeTime)(this.typedValue)}},t.DateLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DATE,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDate)(this.typedValue)}};class y extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_DURATION,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDuration)(this.typedValue)}}t.DurationLiteral=y,t.DayTimeDurationLiteral=class extends y{constructor(e,t,r){super(e,t,r||o.TypeURL.XSD_DAY_TIME_DURATION),this.typedValue=e,this.strValue=t}},t.YearMonthDurationLiteral=class extends p{constructor(e,t,r){super(e,r||o.TypeURL.XSD_YEAR_MONTH_DURATION,t),this.typedValue=e,this.strValue=t}str(){return(0,c.serializeDuration)(this.typedValue,"P0M")}};class g extends p{constructor(e,t,r,n,i){super({toString:()=>"undefined"},t,n,i),this.openWorldType=r}coerceEBV(){if((0,u.isSubTypeOf)(this.dataType,o.TypeURL.XSD_BOOLEAN,this.openWorldType)||(0,u.isSubTypeOf)(this.dataType,o.TypeAlias.SPARQL_NUMERIC,this.openWorldType))return!1;throw new s.EBVCoercionError(this)}toRDF(){return d.literal(this.str(),this.language||d.namedNode(this.dataType))}str(){return this.strValue||""}}t.NonLexicalLiteral=g,t.isNonLexicalLiteral=function(e){if(e instanceof g)return e}},20332:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0;const n=r(29846);t.Variable=class{constructor(e){this.expressionType=n.ExpressionType.Variable,this.name=e}}},57358:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29846),t),i(r(20332),t),i(r(36719),t),i(r(61923),t),i(r(4160),t),i(r(6821),t),i(r(19667),t),i(r(40940),t),i(r(48524),t),i(r(32466),t)},53390:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SpecialFunction=t.NamedFunction=t.RegularFunction=t.BaseFunction=void 0;const n=r(75218);class i{constructor(e,t){this.operator=e,this.apply=(e,t)=>(this.monomorph(e,t.superTypeProvider,t.functionArgumentsCache)||this.handleInvalidTypes(e))(t)(e),this.arity=t.arity,this.overloads=t.overloads}monomorph(e,t,r){return this.overloads.search(e,t,r)}}t.BaseFunction=i,t.RegularFunction=class extends i{constructor(e,t){super(e,t),this.functionClass="regular"}handleInvalidTypes(e){throw new n.InvalidArgumentTypes(e,this.operator)}},t.NamedFunction=class extends i{constructor(e,t){super(e,t),this.functionClass="named"}handleInvalidTypes(e){throw new n.InvalidArgumentTypes(e,this.operator)}},t.SpecialFunction=class{constructor(e,t){var r;this.operator=e,this.functionClass="special",this.arity=t.arity,this.applySynchronously=t.applySynchronously,this.applyAsync=t.applyAsync,this.checkArity=t.checkArity||(r=this.arity,e=>r===Number.POSITIVE_INFINITY||e.length===r)}}},36389:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.expressionToVar=t.dateTime=t.langString=t.string=t.double=t.float=t.decimal=t.integer=t.bool=t.Builder=t.declare=void 0;const n=r(91194),i=r(57358),a=r(57358),o=r(8399),s=r(8399),c=r(75218),u=r(71243),l=new n.DataFactory;t.declare=function(e){return new d(e)};class d{constructor(e){this.overloadTree=new u.OverloadTree(e),this.collected=!1}collect(){if(this.collected)throw new Error("Builders can only be collected once!");return this.collected=!0,this.overloadTree}static wrapInvalidLexicalProtected(e){return t=>r=>(r.forEach(((e,t)=>{if(e instanceof a.NonLexicalLiteral)throw new c.InvalidLexicalForm(r[t].toRDF())})),e(t)(r))}set(e,t,r=!0){return this.overloadTree.addOverload(e,r?d.wrapInvalidLexicalProtected(t):t),this}copy({from:e,to:t}){const r=this.overloadTree.getImplementationExact(e);if(!r)throw new c.UnexpectedError("Tried to copy implementation, but types not found",{from:e,to:t});return this.set(t,r)}onUnary(e,t,r=!0){return this.set([e],(e=>([r])=>t(e)(r)),r)}onUnaryTyped(e,t,r=!0){return this.set([e],(e=>([r])=>t(e)(r.typedValue)),r)}onBinary(e,t,r=!0){return this.set(e,(e=>([r,n])=>t(e)(r,n)),r)}onBinaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n])=>t(e)(r.typedValue,n.typedValue)),r)}onTernaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n,i])=>t(e)(r.typedValue,n.typedValue,i.typedValue)),r)}onTernary(e,t,r=!0){return this.set(e,(e=>([r,n,i])=>t(e)(r,n,i)),r)}onQuaternaryTyped(e,t,r=!0){return this.set(e,(e=>([r,n,i,a])=>t(e)(r.typedValue,n.typedValue,i.typedValue,a.typedValue)),r)}onTerm1(e,t=!1){return this.set(["term"],(t=>([r])=>e(t)(r)),t)}onTerm3(e){return this.set(["term","term","term"],(t=>([r,n,i])=>e(t)(r,n,i)))}onQuad1(e){return this.set(["quad"],(t=>([r])=>e(t)(r)))}onLiteral1(e,t=!0){return this.set(["literal"],(t=>([r])=>e(t)(r)),t)}onBoolean1(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN],(t=>([r])=>e(t)(r)),t)}onBoolean1Typed(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN],(t=>([r])=>e(t)(r.typedValue)),t)}onString1(e,t=!0){return this.set([o.TypeURL.XSD_STRING],(t=>([r])=>e(t)(r)),t)}onString1Typed(e,t=!0){return this.set([o.TypeURL.XSD_STRING],(t=>([r])=>e(t)(r.typedValue)),t)}onLangString1(e,t=!0){return this.set([o.TypeURL.RDF_LANG_STRING],(t=>([r])=>e(t)(r)),t)}onStringly1(e,t=!0){return this.set([o.TypeAlias.SPARQL_STRINGLY],(t=>([r])=>e(t)(r)),t)}onStringly1Typed(e,t=!0){return this.set([o.TypeAlias.SPARQL_STRINGLY],(t=>([r])=>e(t)(r.typedValue)),t)}onNumeric1(e,t=!0){return this.set([o.TypeAlias.SPARQL_NUMERIC],(t=>([r])=>e(t)(r)),t)}onDateTime1(e,t=!0){return this.set([o.TypeURL.XSD_DATE_TIME],(t=>([r])=>e(t)(r)),t)}numericConverter(e,t=!0){const r=t=>r=>e(t)(r.typedValue);return this.onBinary([s.TypeURL.XSD_INTEGER],(e=>t=>p(r(e)(t))),t).onBinary([s.TypeURL.XSD_DECIMAL],(e=>t=>f(r(e)(t))),t).onBinary([s.TypeURL.XSD_FLOAT],(e=>t=>y(r(e)(t))),t).onBinary([s.TypeURL.XSD_DOUBLE],(e=>t=>g(r(e)(t))),t)}arithmetic(e,t=!0){const r=t=>(r,n)=>e(t)(r.typedValue,n.typedValue);return this.onBinary([s.TypeURL.XSD_INTEGER,s.TypeURL.XSD_INTEGER],(e=>(t,n)=>p(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_DECIMAL,s.TypeURL.XSD_DECIMAL],(e=>(t,n)=>f(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_FLOAT,s.TypeURL.XSD_FLOAT],(e=>(t,n)=>y(r(e)(t,n))),t).onBinary([s.TypeURL.XSD_DOUBLE,s.TypeURL.XSD_DOUBLE],(e=>(t,n)=>g(r(e)(t,n))),t)}numberTest(e){return this.numeric((t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))))}stringTest(e,t=!0){return this.set([o.TypeURL.XSD_STRING,o.TypeURL.XSD_STRING],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}booleanTest(e,t=!0){return this.set([o.TypeURL.XSD_BOOLEAN,o.TypeURL.XSD_BOOLEAN],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}dateTimeTest(e,t=!0){return this.set([o.TypeURL.XSD_DATE_TIME,o.TypeURL.XSD_DATE_TIME],(t=>([r,n])=>h(e(t)(r.typedValue,n.typedValue))),t)}numeric(e){return this.set([o.TypeAlias.SPARQL_NUMERIC,o.TypeAlias.SPARQL_NUMERIC],e)}}function h(e){return new i.BooleanLiteral(e)}function p(e){return new i.IntegerLiteral(e)}function f(e){return new i.DecimalLiteral(e)}function y(e){return new i.FloatLiteral(e)}function g(e){return new i.DoubleLiteral(e)}t.Builder=d,t.bool=h,t.integer=p,t.decimal=f,t.float=y,t.double=g,t.string=function(e){return new i.StringLiteral(e)},t.langString=function(e,t){return new i.LangStringLiteral(e,t)},t.dateTime=function(e,t){return new i.DateTimeLiteral(e,t)},t.expressionToVar=function(e){return l.variable(e.name.slice(1))}},43923:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.namedDefinitions=void 0;const n=r(57358),i=r(57358),a=r(8399),o=r(90799),s=r(75218),c=r(31029),u=r(36389),l={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_STRING).onNumeric1((()=>e=>(0,u.string)((0,u.float)(e.typedValue).str()))).onBoolean1Typed((()=>e=>(0,u.string)((0,u.bool)(e).str()))).onTerm1((()=>e=>(0,u.string)(e.str()))).collect()},d={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_FLOAT).onNumeric1((()=>e=>(0,u.float)(e.typedValue))).onBoolean1Typed((()=>e=>(0,u.float)(e?1:0))).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{const t=(0,c.parseXSDFloat)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_FLOAT);return(0,u.float)(t)}),!1).collect()},h={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DOUBLE).onNumeric1((()=>e=>(0,u.double)(e.typedValue))).onBoolean1Typed((()=>e=>(0,u.double)(e?1:0))).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{const t=(0,c.parseXSDFloat)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_DOUBLE);return(0,u.double)(t)}),!1).collect()},p={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DECIMAL).onNumeric1((()=>e=>{const t=(0,c.parseXSDDecimal)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_DECIMAL);return(0,u.decimal)(t)})).onString1((()=>e=>{const t=e.str(),r=/^([+-])?(\d+(\.\d+)?)$/u.test(t)?(0,c.parseXSDDecimal)(t):void 0;if(void 0===r)throw new s.CastError(e,a.TypeURL.XSD_DECIMAL);return(0,u.decimal)(r)}),!1).onBoolean1Typed((()=>e=>(0,u.decimal)(e?1:0))).collect()},f={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_INTEGER).onBoolean1Typed((()=>e=>(0,u.integer)(e?1:0))).onNumeric1((()=>e=>{const t=(0,c.parseXSDInteger)(e.str());if(void 0===t)throw new s.CastError(e,a.TypeURL.XSD_INTEGER);return(0,u.integer)(t)}),!1).onString1((()=>e=>{const t=e.str(),r=/^\d+$/u.test(t)?(0,c.parseXSDInteger)(t):void 0;if(void 0===r)throw new s.CastError(e,a.TypeURL.XSD_INTEGER);return(0,u.integer)(r)})).collect()},y={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DATE_TIME).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>e)).onUnary(a.TypeURL.XSD_STRING,(()=>e=>(0,u.dateTime)((0,c.parseDateTime)(e.str()),e.str())),!1).onUnary(a.TypeURL.XSD_DATE,(()=>e=>new n.DateTimeLiteral({...e.typedValue,hours:0,minutes:0,seconds:0}))).collect()},g={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_BOOLEAN).onNumeric1((()=>e=>(0,u.bool)(e.coerceEBV())),!0).onUnary(a.TypeURL.XSD_BOOLEAN,(()=>e=>(0,u.bool)(e.coerceEBV())),!0).onUnary(a.TypeURL.XSD_STRING,(()=>e=>{switch(e.str()){case"true":case"1":return(0,u.bool)(!0);case"false":case"0":return(0,u.bool)(!1);default:throw new s.CastError(e,a.TypeURL.XSD_BOOLEAN)}}),!1).collect()},m={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_TIME).onUnary(a.TypeURL.XSD_TIME,(()=>e=>new n.TimeLiteral(e.typedValue,e.strValue))).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>new n.TimeLiteral(e.typedValue))).onStringly1((()=>e=>new n.TimeLiteral((0,c.parseTime)(e.str())))).collect()},b={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DATE).onUnary(a.TypeURL.XSD_DATE,(()=>e=>new n.DateLiteral(e.typedValue,e.strValue))).onUnary(a.TypeURL.XSD_DATE_TIME,(()=>e=>new n.DateLiteral(e.typedValue))).onStringly1((()=>e=>new n.DateLiteral((0,c.parseDate)(e.str())))).collect()},v={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.DurationLiteral(e.typedValue,e.strValue))).onStringly1((()=>e=>new i.DurationLiteral((0,c.parseDuration)(e.str())))).collect()},_={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_DAY_TIME_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.DayTimeDurationLiteral((0,o.trimToDayTimeDuration)(e.typedValue)))).onStringly1((()=>e=>new n.DayTimeDurationLiteral((0,c.parseDayTimeDuration)(e.str())))).collect()},w={arity:1,overloads:(0,u.declare)(a.TypeURL.XSD_YEAR_MONTH_DURATION).onUnary(a.TypeURL.XSD_DURATION,(()=>e=>new n.YearMonthDurationLiteral((0,o.trimToYearMonthDuration)(e.typedValue)))).onStringly1((()=>e=>new n.YearMonthDurationLiteral((0,c.parseYearMonthDuration)(e.str())))).collect()};t.namedDefinitions={[a.TypeURL.XSD_STRING]:l,[a.TypeURL.XSD_FLOAT]:d,[a.TypeURL.XSD_DOUBLE]:h,[a.TypeURL.XSD_DECIMAL]:p,[a.TypeURL.XSD_INTEGER]:f,[a.TypeURL.XSD_DATE_TIME]:y,[a.TypeURL.XSD_DATE]:b,[a.TypeURL.XSD_BOOLEAN]:g,[a.TypeURL.XSD_TIME]:m,[a.TypeURL.XSD_DURATION]:v,[a.TypeURL.XSD_DAY_TIME_DURATION]:_,[a.TypeURL.XSD_YEAR_MONTH_DURATION]:w}},71243:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.OverloadTree=void 0;const n=r(57358),i=r(96251);class a{constructor(e,t){this.identifier=e,this.implementation=void 0,this.generalOverloads=Object.create(null),this.literalOverLoads=[],this.depth=t||0,this.promotionCount=void 0}getSubtree(e){const t=(0,i.asGeneralType)(e);if(t)return this.generalOverloads[t];for(const[t,r]of this.literalOverLoads)if(e===t)return r}getImplementationExact(e){let t=this;for(const r of e)if(t=t.getSubtree(r),!t)return;return t.implementation}search(e,t,r){let i=r[this.identifier],a=0;for(;a({node:e,index:1}))));o.length>0;){const{index:n,node:i}=o.pop();if(n===e.length&&i.implementation)return this.addToCache(r,e,i.implementation),i.implementation;o.push(...i.getSubTreeWithArg(e[n],t).map((e=>({node:e,index:n+1}))))}}addToCache(e,t,r){function i(e,t){return t in e||(e[t]={}),e[t]}let a=i(e,this.identifier);for(const e of t){const t=(0,n.isLiteralTermExpression)(e),r=t?t.dataType:e.termType;a.cache=a.cache||{},a=i(a.cache,r)}a.func=r}addOverload(e,t){this._addOverload([...e],t,0)}_addOverload(e,t,r){const[n,...o]=e;if(!n)return void((void 0===this.promotionCount||r<=this.promotionCount)&&(this.promotionCount=r,this.implementation=t));let s=this.getSubtree(n);if(!s){const e=new a(this.identifier,this.depth+1),t=(0,i.asGeneralType)(n);t&&(this.generalOverloads[t]=e);const r=(0,i.asOverrideType)(n);r&&this.literalOverLoads.push([r,e]),s=e}s._addOverload(o,t,r),i.typePromotion[n]?.forEach((e=>this.addPromotedOverload(e.typeToPromote,t,e.conversionFunction,o,r)))}addPromotedOverload(e,t,r,n,i){let o=this.getSubtree(e);if(!o){const t=new a(this.identifier,this.depth+1);this.literalOverLoads.push([e,t]),o=t}o._addOverload(n,(e=>n=>t(e)([...n.slice(0,this.depth),r(n[this.depth]),...n.slice(this.depth+1,n.length)])),i+1)}getSubTreeWithArg(e,t){const r=[],a=(0,n.isLiteralTermExpression)(e);if(this.generalOverloads.term&&r.push(this.generalOverloads.term),this.generalOverloads[e.termType]&&r.push(this.generalOverloads[e.termType]),a){const e=(0,i.asKnownLiteralType)(a.dataType);let n;n=e?i.superTypeDictTable[e]:(0,i.getSuperTypes)(a.dataType,t);const o=this.literalOverLoads.filter((([e,t])=>e in n)).map((([e,t])=>[n[e],t]));o.sort((([e,t],[r,n])=>e-r)),r.push(...o.map((([e,t])=>t)))}return r}}t.OverloadTree=a},41511:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.definitions=void 0;const n=r(6391),i=r(34485),a=r(91194),o=r(84690),s=r(84791),c=r(60130),u=r(57358),l=r(34932),d=r(8399),h=r(8399),p=r(90799),f=r(75218),y=r(34964),g=r(84595),m=r(53390),b=r(36389),v=r(80242),_=r(64640),w=new a.DataFactory,T={arity:1,overloads:(0,b.declare)(d.RegularOperator.NOT).onTerm1((()=>e=>(0,b.bool)(!e.coerceEBV()))).collect()},S={arity:1,overloads:(0,b.declare)(d.RegularOperator.UPLUS).numericConverter((()=>e=>e)).collect()},O={arity:1,overloads:(0,b.declare)(d.RegularOperator.UMINUS).numericConverter((()=>e=>-e)).collect()},E={arity:2,overloads:(0,b.declare)(d.RegularOperator.MULTIPLICATION).arithmetic((()=>(e,t)=>new n.BigNumber(e).times(t).toNumber())).collect()},x={arity:2,overloads:(0,b.declare)(d.RegularOperator.DIVISION).arithmetic((()=>(e,t)=>new n.BigNumber(e).div(t).toNumber())).onBinaryTyped([h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>{if(0===t)throw new f.ExpressionError("Integer division by 0");return(0,b.decimal)(new n.BigNumber(e).div(t).toNumber())})).collect()},A={arity:2,overloads:(0,b.declare)(d.RegularOperator.ADDITION).arithmetic((()=>(e,t)=>new n.BigNumber(e).plus(t).toNumber())).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateTimeLiteral((0,g.addDurationToDateTime)(e.typedValue,(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.TimeLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)(t.typedValue))))).copy({from:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).collect()},R={arity:2,overloads:(0,b.declare)(d.RegularOperator.SUBTRACTION).arithmetic((()=>(e,t)=>new n.BigNumber(e).minus(t).toNumber())).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],(({defaultTimeZone:e})=>([t,r])=>new u.DayTimeDurationLiteral((0,g.elapsedDuration)(t.typedValue,r.typedValue,e)))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME]}).set([h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateTimeLiteral((0,g.addDurationToDateTime)(e.typedValue,(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.DateLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).copy({from:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DAY_TIME_DURATION],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_YEAR_MONTH_DURATION]}).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>new u.TimeLiteral((0,g.addDurationToDateTime)((0,p.defaultedDateTimeRepresentation)(e.typedValue),(0,p.defaultedDurationRepresentation)((0,p.negateDuration)(t.typedValue)))))).collect()},I={arity:2,overloads:(0,b.declare)(d.RegularOperator.EQUAL).numberTest((()=>(e,t)=>e===t)).stringTest((()=>(e,t)=>0===e.localeCompare(t))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>([e,t])=>(0,b.bool)(e.str()===t.str()&&e.language===t.language))).set([h.TypeAlias.SPARQL_STRINGLY,h.TypeAlias.SPARQL_STRINGLY],(()=>()=>(0,b.bool)(!1))).booleanTest((()=>(e,t)=>e===t)).dateTimeTest((({defaultTimeZone:e})=>(t,r)=>(0,p.toUTCDate)(t,e).getTime()===(0,p.toUTCDate)(r,e).getTime())).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).set(["quad","quad"],(e=>([t,r])=>{const n=new m.RegularFunction(h.RegularOperator.EQUAL,I);return(0,b.bool)(n.apply([t.subject,r.subject],e).coerceEBV()&&n.apply([t.predicate,r.predicate],e).coerceEBV()&&n.apply([t.object,r.object],e).coerceEBV())}),!1).set(["term","term"],(()=>([e,t])=>(0,b.bool)(function(e,t){const r=e.toRDF(),n=t.toRDF(),i=r.equals(n);if(!i&&"Literal"===r.termType&&"Literal"===n.termType)throw new f.RDFEqualTypeError([e,t]);return i}(e,t))),!1).set([h.TypeURL.XSD_DURATION,h.TypeURL.XSD_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(e.typedValue))===(0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(t.typedValue))&&(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(e.typedValue))===(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME],(({defaultTimeZone:e})=>([t,r])=>(0,b.bool)((0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(t.typedValue),e).getTime()===(0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(r.typedValue),e).getTime()))).collect()},P={arity:2,overloads:(0,b.declare)(d.RegularOperator.NOT_EQUAL).set(["term","term"],(e=>([t,r])=>(0,b.bool)(!_.regularFunctions[d.RegularOperator.EQUAL].apply([t,r],e).typedValue))).collect()},D={arity:2,overloads:(0,b.declare)(d.RegularOperator.LT).numberTest((()=>(e,t)=>e(e,t)=>-1===e.localeCompare(t))).booleanTest((()=>(e,t)=>e([e,t])=>(0,b.bool)(-1===(0,y.orderTypes)(e.toRDF(),t.toRDF(),!0))),!1).dateTimeTest((({defaultTimeZone:e})=>(t,r)=>(0,p.toUTCDate)(t,e).getTime()<(0,p.toUTCDate)(r,e).getTime())).copy({from:[h.TypeURL.XSD_DATE_TIME,h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE,h.TypeURL.XSD_DATE]}).set([h.TypeURL.XSD_YEAR_MONTH_DURATION,h.TypeURL.XSD_YEAR_MONTH_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(e.typedValue))<(0,p.yearMonthDurationsToMonths)((0,p.defaultedYearMonthDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_DAY_TIME_DURATION,h.TypeURL.XSD_DAY_TIME_DURATION],(()=>([e,t])=>(0,b.bool)((0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(e.typedValue))<(0,p.dayTimeDurationsToSeconds)((0,p.defaultedDayTimeDurationRepresentation)(t.typedValue))))).set([h.TypeURL.XSD_TIME,h.TypeURL.XSD_TIME],(({defaultTimeZone:e})=>([t,r])=>(0,b.bool)((0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(t.typedValue),e).getTime()<(0,p.toUTCDate)((0,p.defaultedDateTimeRepresentation)(r.typedValue),e).getTime()))).collect()},N={arity:2,overloads:(0,b.declare)(d.RegularOperator.GT).set(["term","term"],(e=>([t,r])=>_.regularFunctions[d.RegularOperator.LT].apply([r,t],e))).collect()},j={arity:2,overloads:(0,b.declare)(d.RegularOperator.LTE).set(["term","term"],(e=>([t,r])=>(0,b.bool)(_.regularFunctions[d.RegularOperator.LT].apply([t,r],e).typedValue||_.regularFunctions[d.RegularOperator.EQUAL].apply([t,r],e).typedValue))).collect()},C={arity:2,overloads:(0,b.declare)(d.RegularOperator.GTE).set(["term","term"],(e=>([t,r])=>_.regularFunctions[d.RegularOperator.LTE].apply([r,t],e))).collect()},M={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_IRI).onTerm1((()=>e=>(0,b.bool)("namedNode"===e.termType))).collect()},L={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_BLANK).onTerm1((()=>e=>(0,b.bool)("blankNode"===e.termType))).collect()},k={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_LITERAL).onTerm1((()=>e=>(0,b.bool)("literal"===e.termType))).collect()},F={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_NUMERIC).onNumeric1((()=>()=>(0,b.bool)(!0))).onTerm1((()=>()=>(0,b.bool)(!1))).collect()},B={arity:1,overloads:(0,b.declare)(d.RegularOperator.STR).onTerm1((()=>e=>(0,b.string)(e.str()))).collect()},U={arity:1,overloads:(0,b.declare)(d.RegularOperator.LANG).onLiteral1((()=>e=>(0,b.string)(e.language||""))).collect()},q={arity:1,overloads:(0,b.declare)(d.RegularOperator.DATATYPE).onLiteral1((()=>e=>new u.NamedNode(e.dataType))).collect()},V={arity:1,overloads:(0,b.declare)(d.RegularOperator.IRI).set(["namedNode"],(e=>t=>{const r=t[0],n=(0,o.resolve)(r.str(),e.baseIRI||"");return new u.NamedNode(n)})).onString1((e=>t=>{const r=(0,o.resolve)(t.str(),e.baseIRI||"");return new u.NamedNode(r)})).collect()},Q={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRDT).set([h.TypeURL.XSD_STRING,"namedNode"],(({superTypeProvider:e})=>([t,r])=>{const n=w.literal(t.typedValue,w.namedNode(r.value));return new l.TermTransformer(e).transformLiteral(n)})).collect()},$={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRLANG).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>new u.LangStringLiteral(e,t.toLowerCase()))).collect()},H={arity:0,overloads:(0,b.declare)(d.RegularOperator.UUID).set([],(()=>()=>new u.NamedNode(`urn:uuid:${c.v4()}`))).collect()},G={arity:0,overloads:(0,b.declare)(d.RegularOperator.STRUUID).set([],(()=>()=>(0,b.string)(c.v4()))).collect()},z={arity:1,overloads:(0,b.declare)(d.RegularOperator.STRLEN).onStringly1((()=>e=>(0,b.integer)([...e.typedValue].length))).collect()},K={arity:[2,3],overloads:(0,b.declare)(d.RegularOperator.SUBSTR).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>(0,b.string)([...e].slice(t-1).join("")))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_INTEGER],(()=>(e,t)=>{const r=[...e.typedValue].slice(t.typedValue-1).join("");return(0,b.langString)(r,e.language)})).onTernaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t,r)=>(0,b.string)([...e].slice(t-1,r+t-1).join("")))).onTernary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_INTEGER,h.TypeURL.XSD_INTEGER],(()=>(e,t,r)=>{const n=[...e.typedValue].slice(t.typedValue-1,r.typedValue+t.typedValue-1).join("");return(0,b.langString)(n,e.language)})).collect()},X={arity:1,overloads:(0,b.declare)(d.RegularOperator.UCASE).onString1Typed((()=>e=>(0,b.string)(e.toUpperCase()))).onLangString1((()=>e=>(0,b.langString)(e.typedValue.toUpperCase(),e.language))).collect()},W={arity:1,overloads:(0,b.declare)(d.RegularOperator.LCASE).onString1Typed((()=>e=>(0,b.string)(e.toLowerCase()))).onLangString1((()=>e=>(0,b.langString)(e.typedValue.toLowerCase(),e.language))).collect()},J={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRSTARTS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.startsWith(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.startsWith(t.typedValue))})).collect()},Y={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRENDS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.endsWith(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.endsWith(t.typedValue))})).collect()},Z={arity:2,overloads:(0,b.declare)(d.RegularOperator.CONTAINS).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(e.includes(t)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);return(0,b.bool)(e.typedValue.includes(t.typedValue))})).collect()},ee={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRBEFORE).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.string)(e.slice(0,Math.max(0,e.indexOf(t)))))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>{const[r,n]=[e.typedValue,t.typedValue],i=e.typedValue.slice(0,Math.max(0,r.indexOf(n)));return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);const[r,n]=[e.typedValue,t.typedValue],i=e.typedValue.slice(0,Math.max(0,r.indexOf(n)));return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).collect()},te={arity:2,overloads:(0,b.declare)(d.RegularOperator.STRAFTER).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.string)(e.slice(e.indexOf(t)).slice(t.length)))).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>{const[r,n]=[e.typedValue,t.typedValue],i=r.slice(r.indexOf(n)).slice(n.length);return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).onBinary([h.TypeURL.RDF_LANG_STRING,h.TypeURL.RDF_LANG_STRING],(()=>(e,t)=>{if(e.language!==t.language)throw new f.IncompatibleLanguageOperation(e,t);const[r,n]=[e.typedValue,t.typedValue],i=r.slice(r.indexOf(n)).slice(n.length);return i||!n?(0,b.langString)(i,e.language):(0,b.string)(i)})).collect()},re={arity:1,overloads:(0,b.declare)(d.RegularOperator.ENCODE_FOR_URI).onStringly1Typed((()=>e=>(0,b.string)(encodeURI(e)))).collect()},ne={arity:2,overloads:(0,b.declare)(d.RegularOperator.LANG_MATCHES).onBinaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(v.langMatches(e,t)))).collect()},ie={arity:[2,3],overloads:(0,b.declare)(d.RegularOperator.REGEX).onBinaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING],(()=>(e,t)=>(0,b.bool)(v.matches(e,t)))).onTernaryTyped([h.TypeAlias.SPARQL_STRINGLY,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r)=>(0,b.bool)(v.matches(e,t,r)))).collect()},ae={arity:[3,4],overloads:(0,b.declare)(d.RegularOperator.REPLACE).onTernaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r)=>(0,b.string)(v.replace(e,t,r)))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>([e,t,r])=>{const n=v.replace(e.typedValue,t.typedValue,r.typedValue);return(0,b.langString)(n,e.language)})).onQuaternaryTyped([h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>(e,t,r,n)=>(0,b.string)(v.replace(e,t,r,n)))).set([h.TypeURL.RDF_LANG_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING,h.TypeURL.XSD_STRING],(()=>([e,t,r,n])=>{const i=v.replace(e.typedValue,t.typedValue,r.typedValue,n.typedValue);return(0,b.langString)(i,e.language)})).collect()},oe={arity:1,overloads:(0,b.declare)(d.RegularOperator.ABS).numericConverter((()=>e=>Math.abs(e))).collect()},se={arity:1,overloads:(0,b.declare)(d.RegularOperator.ROUND).numericConverter((()=>e=>Math.round(e))).collect()},ce={arity:1,overloads:(0,b.declare)(d.RegularOperator.CEIL).numericConverter((()=>e=>Math.ceil(e))).collect()},ue={arity:1,overloads:(0,b.declare)(d.RegularOperator.FLOOR).numericConverter((()=>e=>Math.floor(e))).collect()},le={arity:0,overloads:(0,b.declare)(d.RegularOperator.RAND).set([],(()=>()=>(0,b.double)(Math.random()))).collect()},de={arity:0,overloads:(0,b.declare)(d.RegularOperator.NOW).set([],(e=>()=>new u.DateTimeLiteral((0,p.toDateTimeRepresentation)({date:e.now,timeZone:e.defaultTimeZone})))).collect()},he={arity:1,overloads:(0,b.declare)(d.RegularOperator.YEAR).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.year))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.year))).collect()},pe={arity:1,overloads:(0,b.declare)(d.RegularOperator.MONTH).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.month))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.month))).collect()},fe={arity:1,overloads:(0,b.declare)(d.RegularOperator.DAY).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.day))).set([h.TypeURL.XSD_DATE],(()=>([e])=>(0,b.integer)(e.typedValue.day))).collect()},ye={arity:1,overloads:(0,b.declare)(d.RegularOperator.HOURS).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.hours))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.hours))).collect()},ge={arity:1,overloads:(0,b.declare)(d.RegularOperator.MINUTES).onDateTime1((()=>e=>(0,b.integer)(e.typedValue.minutes))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.minutes))).collect()},me={arity:1,overloads:(0,b.declare)(d.RegularOperator.SECONDS).onDateTime1((()=>e=>(0,b.decimal)(e.typedValue.seconds))).set([h.TypeURL.XSD_TIME],(()=>([e])=>(0,b.integer)(e.typedValue.seconds))).collect()},be={arity:1,overloads:(0,b.declare)(d.RegularOperator.TIMEZONE).onDateTime1((()=>e=>{const t={hours:e.typedValue.zoneHours,minutes:e.typedValue.zoneMinutes};if(void 0===t.hours&&void 0===t.minutes)throw new f.InvalidTimezoneCall(e.str());return new u.DayTimeDurationLiteral(t)})).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME]}).collect()},ve={arity:1,overloads:(0,b.declare)(d.RegularOperator.TZ).onDateTime1((()=>e=>(0,b.string)((0,p.extractRawTimeZone)(e.str())))).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_DATE]}).copy({from:[h.TypeURL.XSD_DATE_TIME],to:[h.TypeURL.XSD_TIME]}).collect()},_e={arity:1,overloads:(0,b.declare)(d.RegularOperator.MD5).onString1Typed((()=>e=>(0,b.string)((0,s.hash)(e)))).collect()},we={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA1).onString1Typed((()=>e=>(0,b.string)((0,i.sha1)().update(e).digest("hex")))).collect()},Te={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA256).onString1Typed((()=>e=>(0,b.string)((0,i.sha256)().update(e).digest("hex")))).collect()},Se={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA384).onString1Typed((()=>e=>(0,b.string)((0,i.sha384)().update(e).digest("hex")))).collect()},Oe={arity:1,overloads:(0,b.declare)(d.RegularOperator.SHA512).onString1Typed((()=>e=>(0,b.string)((0,i.sha512)().update(e).digest("hex")))).collect()},Ee={arity:3,overloads:(0,b.declare)(d.RegularOperator.TRIPLE).onTerm3((e=>(...t)=>new u.Quad(w.quad(t[0].toRDF(),t[1].toRDF(),t[2].toRDF()),e.superTypeProvider))).collect()},xe={arity:1,overloads:(0,b.declare)(d.RegularOperator.SUBJECT).onQuad1((()=>e=>e.subject)).collect()},Ae={arity:1,overloads:(0,b.declare)(d.RegularOperator.PREDICATE).onQuad1((()=>e=>e.predicate)).collect()},Re={arity:1,overloads:(0,b.declare)(d.RegularOperator.OBJECT).onQuad1((()=>e=>e.object)).collect()},Ie={arity:1,overloads:(0,b.declare)(d.RegularOperator.IS_TRIPLE).onTerm1((()=>e=>(0,b.bool)("quad"===e.termType))).collect()};t.definitions={"!":T,uplus:S,uminus:O,"*":E,"/":x,"+":A,"-":R,"=":I,"!=":P,"<":D,">":N,"<=":j,">=":C,isiri:M,isuri:M,isblank:L,isliteral:k,isnumeric:F,str:B,lang:U,datatype:q,iri:V,uri:V,strdt:Q,strlang:$,uuid:H,struuid:G,strlen:z,substr:K,ucase:X,lcase:W,strstarts:J,strends:Y,contains:Z,strbefore:ee,strafter:te,encode_for_uri:re,langmatches:ne,regex:ie,replace:ae,abs:oe,round:se,ceil:ce,floor:ue,rand:le,now:de,year:he,month:pe,day:fe,hours:ye,minutes:ge,seconds:me,timezone:be,tz:ve,md5:_e,sha1:we,sha256:Te,sha384:Se,sha512:Oe,triple:Ee,subject:xe,predicate:Ae,object:Re,istriple:Ie}},21325:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.specialDefinitions=void 0;const n=r(60130),i=r(57358),a=r(8399),o=r(75218),s=r(36389),c=r(64640),u={arity:1,applyAsync:async({args:e,mapping:t})=>l({args:e,mapping:t}),applySynchronously:({args:e,mapping:t})=>l({args:e,mapping:t})};function l({args:e,mapping:t}){const r=e[0];if(r.expressionType!==i.ExpressionType.Variable)throw new o.InvalidArgumentTypes(e,a.SpecialOperator.BOUND);const n=t.has((0,s.expressionToVar)(r));return(0,s.bool)(n)}const d={arity:3,async applyAsync({args:e,mapping:t,evaluate:r}){const n=await r(e[0],t);return r(n.coerceEBV()?e[1]:e[2],t)},applySynchronously({args:e,mapping:t,evaluate:r}){const n=r(e[0],t);return r(n.coerceEBV()?e[1]:e[2],t)}},h={arity:Number.POSITIVE_INFINITY,async applyAsync({args:e,mapping:t,evaluate:r}){const n=[];for(const i of e)try{return await r(i,t)}catch(e){n.push(e)}throw new o.CoalesceError(n)},applySynchronously({args:e,mapping:t,evaluate:r}){const n=[];for(const i of e)try{return r(i,t)}catch(e){n.push(e)}throw new o.CoalesceError(n)}},p={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if((await r(n,t)).coerceEBV())return(0,s.bool)(!0);const e=(await r(i,t)).coerceEBV();return(0,s.bool)(e)}catch(e){if(!(await r(i,t)).coerceEBV())throw e;return(0,s.bool)(!0)}},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(r(n,t).coerceEBV())return(0,s.bool)(!0);const e=r(i,t).coerceEBV();return(0,s.bool)(e)}catch(e){if(!r(i,t).coerceEBV())throw e;return(0,s.bool)(!0)}}},f={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(!(await r(n,t)).coerceEBV())return(0,s.bool)(!1);const e=(await r(i,t)).coerceEBV();return(0,s.bool)(e)}catch(e){if((await r(i,t)).coerceEBV())throw e;return(0,s.bool)(!1)}},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e;try{if(!r(n,t).coerceEBV())return(0,s.bool)(!1);const e=r(i,t).coerceEBV();return(0,s.bool)(e)}catch(e){if(r(i,t).coerceEBV())throw e;return(0,s.bool)(!1)}}},y={arity:2,async applyAsync({args:e,mapping:t,evaluate:r}){const[n,i]=e.map((e=>r(e,t))),[a,o]=await Promise.all([n,i]);return(0,s.bool)(a.toRDF().equals(o.toRDF()))},applySynchronously({args:e,mapping:t,evaluate:r}){const[n,i]=e.map((e=>r(e,t)));return(0,s.bool)(n.toRDF().equals(i.toRDF()))}},g={arity:Number.POSITIVE_INFINITY,checkArity:e=>e.length>0,async applyAsync(e){const{args:t,mapping:r,evaluate:n}=e,[i,...a]=t;return m(await n(i,r),{...e,args:a},[])},applySynchronously(e){const{args:t,mapping:r,evaluate:n}=e,[i,...a]=t;return b(n(i,r),{...e,args:a},[])}};async function m(e,t,r){const{args:n,mapping:i,evaluate:u}=t;if(0===n.length)return r.every((e=>!e))?(0,s.bool)(!1):Promise.reject(new o.InError(r));try{const o=n.shift(),l=await u(o,i);return c.regularFunctions[a.RegularOperator.EQUAL].apply([e,l],t).typedValue?(0,s.bool)(!0):m(e,t,[...r,!1])}catch(n){return m(e,t,[...r,n])}}function b(e,t,r){const{args:n,mapping:i,evaluate:u}=t;if(0===n.length){if(r.every((e=>!e)))return(0,s.bool)(!1);throw new o.InError(r)}try{const o=u(n.shift(),i);return c.regularFunctions[a.RegularOperator.EQUAL].apply([e,o],t).typedValue?(0,s.bool)(!0):b(e,t,[...r,!1])}catch(n){return b(e,t,[...r,n])}}const v={arity:Number.POSITIVE_INFINITY,checkArity:e=>e.length>0,async applyAsync(e){const t=c.specialFunctions[a.SpecialOperator.IN],r=await t.applyAsync(e);return(0,s.bool)(!r.typedValue)},applySynchronously(e){const t=c.specialFunctions[a.SpecialOperator.IN].applySynchronously(e);return(0,s.bool)(!t.typedValue)}},_=(0,s.declare)(a.SpecialOperator.CONCAT).onStringly1((()=>e=>e)).collect(),w={arity:Number.POSITIVE_INFINITY,async applyAsync(e){const{args:t,mapping:r,evaluate:n,functionArgumentsCache:i,superTypeProvider:c}=e,u=t.map((async e=>n(e,r))).map((async r=>{const n=_.search([await r],c,i);if(!n)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.CONCAT);return n(e)([await r])})),l=await Promise.all(u),d=l.map((e=>e.typedValue)).join(""),h=T(l)?l[0].language:void 0;return h?(0,s.langString)(d,h):(0,s.string)(d)},applySynchronously(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:i,functionArgumentsCache:c}=e,u=t.map((e=>n(e,r))).map((r=>{const n=_.search([r],i,c);if(!n)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.CONCAT);return n(e)([r])})),l=u.map((e=>e.typedValue)).join(""),d=T(u)?u[0].language:void 0;return d?(0,s.langString)(l,d):(0,s.string)(l)}};function T(e){return e.length>0&&e.every((t=>t.language===e[0].language))}const S=(0,s.declare)(a.SpecialOperator.BNODE).onString1((()=>e=>e)).collect(),O={arity:Number.POSITIVE_INFINITY,checkArity:e=>0===e.length||1===e.length,async applyAsync(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:s,functionArgumentsCache:c}=e,u=1===t.length?await n(t[0],r):void 0;let l;if(u){const r=S.search([u],s,c);if(!r)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.BNODE);l=r(e)([u]).str()}if(e.bnode){const t=await e.bnode(l);return new i.BlankNode(t)}return E(l)},applySynchronously(e){const{args:t,mapping:r,evaluate:n,superTypeProvider:s,functionArgumentsCache:c}=e,u=1===t.length?n(t[0],r):void 0;let l;if(u){const r=S.search([u],s,c);if(!r)throw new o.InvalidArgumentTypes(t,a.SpecialOperator.BNODE);l=r(e)([u]).str()}if(e.bnode){const t=e.bnode(l);return new i.BlankNode(t)}return E(l)}};function E(e){return new i.BlankNode(e||n.v4())}t.specialDefinitions={bound:u,if:d,coalesce:h,"&&":f,"||":p,sameterm:y,in:g,notin:v,concat:w,bnode:O}},80242:(e,t)=>{"use strict";function r(e){return"*"===e}function n(e,t){return new RegExp(`/${e}/`,"iu").test(`/${t}/`)}Object.defineProperty(t,"__esModule",{value:!0}),t.langMatches=t.replace=t.matches=void 0,t.matches=function(e,t,r){return new RegExp(t,r).test(e)},t.replace=function(e,t,r,n){let i=new RegExp(t,n);return i.global||(i=new RegExp(t,`${n||""}g`)),e.replace(i,r)},t.langMatches=function(e,t){const i=e.split("-"),a=t.split("-");if(!n(a[0],i[0])&&!r(i[0]))return!1;let o=1,s=1;for(;s[e,new a.RegularFunction(e,t)]))),t.specialFunctions=Object.fromEntries(Object.entries(c.specialDefinitions).map((([e,t])=>[e,new a.SpecialFunction(e,t)]))),t.namedFunctions=Object.fromEntries(Object.entries(o.namedDefinitions).map((([e,t])=>[e,new a.NamedFunction(e,t)])));var u=r(71243);Object.defineProperty(t,"OverloadTree",{enumerable:!0,get:function(){return u.OverloadTree}})},89206:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncAggregateEvaluator=t.orderTypes=t.isExpressionError=t.ExpressionError=t.AggregateEvaluator=t.SyncEvaluator=t.AsyncEvaluator=void 0;var n=r(72407);Object.defineProperty(t,"AsyncEvaluator",{enumerable:!0,get:function(){return n.AsyncEvaluator}});var i=r(64481);Object.defineProperty(t,"SyncEvaluator",{enumerable:!0,get:function(){return i.SyncEvaluator}});var a=r(45997);Object.defineProperty(t,"AggregateEvaluator",{enumerable:!0,get:function(){return a.AggregateEvaluator}});var o=r(75218);Object.defineProperty(t,"ExpressionError",{enumerable:!0,get:function(){return o.ExpressionError}}),Object.defineProperty(t,"isExpressionError",{enumerable:!0,get:function(){return o.isExpressionError}});var s=r(34964);Object.defineProperty(t,"orderTypes",{enumerable:!0,get:function(){return s.orderTypes}});var c=r(3694);Object.defineProperty(t,"AsyncAggregateEvaluator",{enumerable:!0,get:function(){return c.AsyncAggregateEvaluator}})},84765:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AlgebraTransformer=void 0;const n=r(6789),i=r(57358),a=r(64640),o=r(8399),s=r(75218),c=r(75218),u=r(34932);class l extends u.TermTransformer{constructor(e){super(e.superTypeProvider),this.algebraConfig=e,this.creatorConfig={type:e.type,creator:e.creator}}transformAlgebra(e){const t=n.Algebra.expressionTypes;switch(e.expressionType){case t.TERM:return this.transformTerm(e);case t.OPERATOR:return this.transformOperator(e);case t.NAMED:return this.transformNamed(e);case t.EXISTENCE:return l.transformExistence(e);case t.AGGREGATE:return l.transformAggregate(e);case t.WILDCARD:return l.transformWildcard(e)}}static transformWildcard(e){return new i.NamedNode(e.wildcard.value)}transformOperator(e){const t=e.operator.toLowerCase();if(o.SpecialOperators.has(t)){const r=t,n=e.args.map((e=>this.transformAlgebra(e))),o=a.specialFunctions[r];if(!o.checkArity(n))throw new s.InvalidArity(n,r);return new i.SpecialOperator(n,o.applyAsync,o.applySynchronously)}if(!o.Operators.has(t))throw new s.UnknownOperator(e.operator);const r=t,n=e.args.map((e=>this.transformAlgebra(e))),c=a.regularFunctions[r];if(!l.hasCorrectArity(n,c.arity))throw new s.InvalidArity(n,r);return new i.Operator(n,(e=>c.apply(e,this.algebraConfig)))}wrapSyncFunction(e,t){return r=>{try{const t=e(r.map((e=>e.toRDF())));return this.transformRDFTermUnsafe(t)}catch(e){throw new c.ExtensionFunctionError(t,e)}}}wrapAsyncFunction(e,t){return async r=>{try{const t=await e(r.map((e=>e.toRDF())));return this.transformRDFTermUnsafe(t)}catch(e){throw new c.ExtensionFunctionError(t,e)}}}transformNamed(e){const t=e.name.value,r=e.args.map((e=>this.transformAlgebra(e)));if(o.NamedOperators.has(t)){const t=e.name.value,n=a.namedFunctions[t];return new i.Named(e.name,r,(e=>n.apply(e,this.algebraConfig)))}if("sync"===this.creatorConfig.type){const t=this.creatorConfig.creator(e.name);if(t){const n=this.wrapSyncFunction(t,e.name.value);return new i.SyncExtension(e.name,r,n)}}else{const t=this.creatorConfig.creator(e.name);if(t){const n=this.wrapAsyncFunction(t,e.name.value);return new i.AsyncExtension(e.name,r,n)}}throw new s.UnknownNamedOperator(e.name.value)}static hasCorrectArity(e,t){return Array.isArray(t)?t.includes(e.length):e.length===t}static transformAggregate(e){const t=e.aggregator;return new i.Aggregate(t,e)}static transformExistence(e){return new i.Existence(e)}}t.AlgebraTransformer=l},34932:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermTransformer=void 0;const n=r(6053),i=r(6789),a=r(57358),o=r(8399),s=r(75218),c=r(75218),u=r(31029),l=r(31029),d=r(96251);t.TermTransformer=class{constructor(e){this.superTypeProvider=e}transformRDFTermUnsafe(e){return this.transformTerm({term:e,type:i.Algebra.types.EXPRESSION,expressionType:i.Algebra.expressionTypes.TERM})}transformTerm(e){if(!e.term)throw new s.InvalidExpression(e);switch(e.term.termType){case"Variable":return new a.Variable(n.termToString(e.term));case"Literal":return this.transformLiteral(e.term);case"NamedNode":return new a.NamedNode(e.term.value);case"BlankNode":return new a.BlankNode(e.term.value);case"Quad":return new a.Quad(e.term,this.superTypeProvider);default:throw new s.InvalidTermType(e)}}transformLiteral(e){if(!e.datatype||[null,void 0,""].includes(e.datatype.value))return e.language?new a.LangStringLiteral(e.value,e.language):new a.StringLiteral(e.value);const t=e.datatype.value,r=(0,d.getSuperTypeDict)(t,this.superTypeProvider);try{if(o.TypeURL.XSD_STRING in r)return new a.StringLiteral(e.value,t);if(o.TypeURL.RDF_LANG_STRING in r)return new a.LangStringLiteral(e.value,e.language);if(o.TypeURL.XSD_YEAR_MONTH_DURATION in r)return new a.YearMonthDurationLiteral((0,u.parseYearMonthDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DAY_TIME_DURATION in r)return new a.DayTimeDurationLiteral((0,u.parseDayTimeDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DURATION in r)return new a.DurationLiteral((0,u.parseDuration)(e.value),e.value,t);if(o.TypeURL.XSD_DATE_TIME in r){const r=new Date(e.value);return Number.isNaN(r.getTime())?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):new a.DateTimeLiteral((0,u.parseDateTime)(e.value),e.value,t)}if(o.TypeURL.XSD_DATE in r)return new a.DateLiteral((0,u.parseDate)(e.value),e.value,t);if(o.TypeURL.XSD_TIME in r)return new a.TimeLiteral((0,u.parseTime)(e.value),e.value,t);if(o.TypeURL.XSD_BOOLEAN in r)return"true"!==e.value&&"false"!==e.value&&"1"!==e.value&&"0"!==e.value?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):new a.BooleanLiteral("true"===e.value||"1"===e.value,e.value);if(o.TypeURL.XSD_DECIMAL in r){const n=l.parseXSDDecimal(e.value);return void 0===n?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):o.TypeURL.XSD_INTEGER in r?new a.IntegerLiteral(n,t,e.value):new a.DecimalLiteral(n,t,e.value)}const n=o.TypeURL.XSD_FLOAT in r,i=o.TypeURL.XSD_DOUBLE in r;if(n||i){const r=l.parseXSDFloat(e.value);return void 0===r?new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value):n?new a.FloatLiteral(r,t,e.value):new a.DoubleLiteral(r,t,e.value)}return new a.Literal(e.value,t,e.value)}catch(r){if(r instanceof Error&&(0,c.isExpressionError)(r))return new a.NonLexicalLiteral(void 0,t,this.superTypeProvider,e.value);throw r}}}},8399:(e,t)=>{"use strict";var r,n,i,a,o;Object.defineProperty(t,"__esModule",{value:!0}),t.NamedOperators=t.SetFunctions=t.SetFunction=t.Operators=t.SpecialOperators=t.RegularOperators=t.SpecialOperator=t.RegularOperator=t.TypeURL=t.TypeAlias=void 0,function(e){e.SPARQL_NUMERIC="SPARQL_NUMERIC",e.SPARQL_STRINGLY="SPARQL_STRINGLY"}(r||(t.TypeAlias=r={})),function(e){e.XSD_ANY_URI="http://www.w3.org/2001/XMLSchema#anyURI",e.XSD_STRING="http://www.w3.org/2001/XMLSchema#string",e.RDF_LANG_STRING="http://www.w3.org/1999/02/22-rdf-syntax-ns#langString",e.XSD_BOOLEAN="http://www.w3.org/2001/XMLSchema#boolean",e.XSD_DATE_TIME="http://www.w3.org/2001/XMLSchema#dateTime",e.XSD_DATE_TIME_STAMP="http://www.w3.org/2001/XMLSchema#dateTimeStamp",e.XSD_DATE="http://www.w3.org/2001/XMLSchema#date",e.XSD_G_MONTH="http://www.w3.org/2001/XMLSchema#gMonth",e.XSD_G_MONTHDAY="http://www.w3.org/2001/XMLSchema#gMonthDay",e.XSD_G_YEAR="http://www.w3.org/2001/XMLSchema#gYear",e.XSD_G_YEAR_MONTH="http://www.w3.org/2001/XMLSchema#gYearMonth",e.XSD_TIME="http://www.w3.org/2001/XMLSchema#time",e.XSD_G_DAY="http://www.w3.org/2001/XMLSchema#gDay",e.XSD_DECIMAL="http://www.w3.org/2001/XMLSchema#decimal",e.XSD_FLOAT="http://www.w3.org/2001/XMLSchema#float",e.XSD_DOUBLE="http://www.w3.org/2001/XMLSchema#double",e.XSD_INTEGER="http://www.w3.org/2001/XMLSchema#integer",e.XSD_NON_POSITIVE_INTEGER="http://www.w3.org/2001/XMLSchema#nonPositiveInteger",e.XSD_NEGATIVE_INTEGER="http://www.w3.org/2001/XMLSchema#negativeInteger",e.XSD_LONG="http://www.w3.org/2001/XMLSchema#long",e.XSD_INT="http://www.w3.org/2001/XMLSchema#int",e.XSD_SHORT="http://www.w3.org/2001/XMLSchema#short",e.XSD_BYTE="http://www.w3.org/2001/XMLSchema#byte",e.XSD_NON_NEGATIVE_INTEGER="http://www.w3.org/2001/XMLSchema#nonNegativeInteger",e.XSD_POSITIVE_INTEGER="http://www.w3.org/2001/XMLSchema#positiveInteger",e.XSD_UNSIGNED_LONG="http://www.w3.org/2001/XMLSchema#unsignedLong",e.XSD_UNSIGNED_INT="http://www.w3.org/2001/XMLSchema#unsignedInt",e.XSD_UNSIGNED_SHORT="http://www.w3.org/2001/XMLSchema#unsignedShort",e.XSD_UNSIGNED_BYTE="http://www.w3.org/2001/XMLSchema#unsignedByte",e.XSD_NORMALIZED_STRING="http://www.w3.org/2001/XMLSchema#normalizedString",e.XSD_TOKEN="http://www.w3.org/2001/XMLSchema#token",e.XSD_LANGUAGE="http://www.w3.org/2001/XMLSchema#language",e.XSD_NM_TOKEN="http://www.w3.org/2001/XMLSchema#NMTOKEN",e.XSD_NAME="http://www.w3.org/2001/XMLSchema#name",e.XSD_NC_NAME="http://www.w3.org/2001/XMLSchema#NCName",e.XSD_ENTITY="http://www.w3.org/2001/XMLSchema#ENTITY",e.XSD_ID="http://www.w3.org/2001/XMLSchema#ID",e.XSD_ID_REF="http://www.w3.org/2001/XMLSchema#IDREF",e.XSD_DURATION="http://www.w3.org/2001/XMLSchema#duration",e.XSD_YEAR_MONTH_DURATION="http://www.w3.org/2001/XMLSchema#yearMonthDuration",e.XSD_DAY_TIME_DURATION="http://www.w3.org/2001/XMLSchema#dayTimeDuration"}(n||(t.TypeURL=n={})),function(e){e.NOT="!",e.UMINUS="uminus",e.UPLUS="uplus",e.EQUAL="=",e.NOT_EQUAL="!=",e.LT="<",e.GT=">",e.LTE="<=",e.GTE=">=",e.MULTIPLICATION="*",e.DIVISION="/",e.ADDITION="+",e.SUBTRACTION="-",e.IS_IRI="isiri",e.IS_URI="isuri",e.IS_BLANK="isblank",e.IS_LITERAL="isliteral",e.IS_NUMERIC="isnumeric",e.STR="str",e.LANG="lang",e.DATATYPE="datatype",e.IRI="iri",e.URI="uri",e.STRDT="strdt",e.STRLANG="strlang",e.UUID="uuid",e.STRUUID="struuid",e.STRLEN="strlen",e.SUBSTR="substr",e.UCASE="ucase",e.LCASE="lcase",e.STRSTARTS="strstarts",e.STRENDS="strends",e.CONTAINS="contains",e.STRBEFORE="strbefore",e.STRAFTER="strafter",e.ENCODE_FOR_URI="encode_for_uri",e.LANG_MATCHES="langmatches",e.REGEX="regex",e.REPLACE="replace",e.ABS="abs",e.ROUND="round",e.CEIL="ceil",e.FLOOR="floor",e.RAND="rand",e.NOW="now",e.YEAR="year",e.MONTH="month",e.DAY="day",e.HOURS="hours",e.MINUTES="minutes",e.SECONDS="seconds",e.TIMEZONE="timezone",e.TZ="tz",e.MD5="md5",e.SHA1="sha1",e.SHA256="sha256",e.SHA384="sha384",e.SHA512="sha512",e.TRIPLE="triple",e.SUBJECT="subject",e.PREDICATE="predicate",e.OBJECT="object",e.IS_TRIPLE="istriple"}(i||(t.RegularOperator=i={})),function(e){e.BOUND="bound",e.IF="if",e.COALESCE="coalesce",e.LOGICAL_OR="||",e.LOGICAL_AND="&&",e.SAME_TERM="sameterm",e.IN="in",e.NOT_IN="notin",e.CONCAT="concat",e.BNODE="bnode"}(a||(t.SpecialOperator=a={})),t.RegularOperators=new Set(Object.values(i)),t.SpecialOperators=new Set(Object.values(a)),t.Operators=new Set([...t.RegularOperators,...t.SpecialOperators]),function(e){e.COUNT="count",e.SUM="sum",e.MIN="min",e.MAX="max",e.AVG="avg",e.GROUP_CONCAT="group_concat",e.SAMPLE="sample"}(o||(t.SetFunction=o={})),t.SetFunctions=new Set(Object.values(o)),t.NamedOperators=new Set([n.XSD_STRING,n.XSD_FLOAT,n.XSD_DOUBLE,n.XSD_DECIMAL,n.XSD_INTEGER,n.XSD_DATE_TIME,n.XSD_DATE,n.XSD_BOOLEAN,n.XSD_TIME,n.XSD_DURATION,n.XSD_DAY_TIME_DURATION,n.XSD_YEAR_MONTH_DURATION])},90799:(e,t)=>{"use strict";function r(e){return{day:e.day||0,hours:e.hours||0,minutes:e.minutes||0,seconds:e.seconds||0}}function n(e){return{year:e.year||0,month:e.month||0}}function i(e){return{...r(e),...n(e)}}function a(e){return{...e,day:e.day||1,hours:e.hours||0,month:e.month||1,year:e.year||0,seconds:e.seconds||0,minutes:e.minutes||0}}function o(e){const t=new Date(e.year,e.month-1,e.day,e.hours,e.minutes,Math.trunc(e.seconds),e.seconds%1*1e3);if(0<=e.year&&e.year<100){const e=1900;t.setFullYear(t.getFullYear()-e)}return t}Object.defineProperty(t,"__esModule",{value:!0}),t.extractTimeZone=t.extractRawTimeZone=t.dayTimeDurationsToSeconds=t.yearMonthDurationsToMonths=t.trimToDayTimeDuration=t.trimToYearMonthDuration=t.toUTCDate=t.toJSDate=t.negateDuration=t.toDateTimeRepresentation=t.defaultedDateTimeRepresentation=t.simplifyDurationRepresentation=t.defaultedDurationRepresentation=t.defaultedYearMonthDurationRepresentation=t.defaultedDayTimeDurationRepresentation=void 0,t.defaultedDayTimeDurationRepresentation=r,t.defaultedYearMonthDurationRepresentation=n,t.defaultedDurationRepresentation=i,t.simplifyDurationRepresentation=function(e){const t=i(e),r={},n=t.year+Math.trunc(t.month/12);n&&(r.year=n,t.month%=12),t.month&&(r.month=t.month);const a=t.day+Math.trunc(t.hours/24)+Math.trunc(t.minutes/1440)+Math.trunc(t.seconds/86400);a&&(r.day=a,t.hours%=24,t.minutes%=1440,t.seconds%=86400);const o=t.hours+Math.trunc(t.minutes/60)+Math.trunc(t.seconds/3600);o&&(r.hours=o,t.minutes%=60,t.seconds%=3600);const s=t.minutes+Math.trunc(t.seconds/60);return s&&(r.minutes=s,t.seconds%=60),t.seconds&&(r.seconds=t.seconds),r},t.defaultedDateTimeRepresentation=a,t.toDateTimeRepresentation=function({date:e,timeZone:t}){return{year:e.getFullYear(),month:e.getMonth()+1,day:e.getDate(),hours:e.getHours(),minutes:e.getMinutes(),seconds:e.getSeconds(),zoneHours:t.zoneHours,zoneMinutes:t.zoneMinutes}},t.negateDuration=function(e){return{year:void 0!==e.year?-1*e.year:void 0,month:void 0!==e.month?-1*e.month:void 0,day:void 0!==e.day?-1*e.day:void 0,hours:void 0!==e.hours?-1*e.hours:void 0,minutes:void 0!==e.minutes?-1*e.minutes:void 0,seconds:void 0!==e.seconds?-1*e.seconds:void 0}},t.toJSDate=o,t.toUTCDate=function(e,t){const r=o(a(e)),n=r.getTimezoneOffset(),i=void 0===e.zoneHours?t.zoneHours:e.zoneHours,s=void 0===e.zoneMinutes?t.zoneMinutes:e.zoneMinutes;return new Date(r.getTime()-60*(n+60*i+s)*1e3)},t.trimToYearMonthDuration=function(e){return{year:e.year,month:e.month}},t.trimToDayTimeDuration=function(e){return{day:e.day,hours:e.hours,minutes:e.minutes,seconds:e.seconds}},t.yearMonthDurationsToMonths=function(e){return 12*e.year+e.month},t.dayTimeDurationsToSeconds=function(e){return 60*(60*(24*e.day+e.hours)+e.minutes)+e.seconds},t.extractRawTimeZone=function(e){return/(Z|([+-]\d\d:\d\d))?$/u.exec(e)[0]},t.extractTimeZone=function(e){return{zoneHours:e.getTimezoneOffset()/60,zoneMinutes:e.getTimezoneOffset()%60}}},75218:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NoExistenceHook=t.NoAggregator=t.ExtensionFunctionError=t.UnknownNamedOperator=t.UnknownOperator=t.InvalidTermType=t.InvalidExpressionType=t.InvalidExpression=t.InvalidArity=t.UnexpectedError=t.ParseError=t.EmptyAggregateError=t.IncompatibleLanguageOperation=t.InvalidTimezoneCall=t.CastError=t.InvalidCompareArgumentTypes=t.InvalidArgumentTypes=t.InError=t.CoalesceError=t.RDFEqualTypeError=t.EBVCoercionError=t.UnboundVariableError=t.InvalidLexicalForm=t.isExpressionError=t.ExpressionError=void 0;class r extends Error{}t.ExpressionError=r,t.isExpressionError=function(e){return e instanceof r},t.InvalidLexicalForm=class extends r{constructor(e){super(`Invalid lexical form '${p(e)}'`),this.arg=e}},t.UnboundVariableError=class extends r{constructor(e,t){super(`Unbound variable '${p(e)}'`),this.variable=e,this.bindings=t}},t.EBVCoercionError=class extends r{constructor(e){super(`Cannot coerce term to EBV '${p(e)}'`),this.arg=e}},t.RDFEqualTypeError=class extends r{constructor(e){super("Equality test for literals with unsupported datatypes"),this.args=e}},t.CoalesceError=class extends r{constructor(e){super("All COALESCE arguments threw errors"),this.errors=e}},t.InError=class extends r{constructor(e){super(`Some argument to IN errorred and none where equal. ${e.map((e=>`(${e.toString()}) `)).join("and ")}`),this.errors=e}},t.InvalidArgumentTypes=class extends r{constructor(e,t){super(`Argument types not valid for operator: '${p(t)}' with '${p(e)}`),this.args=e,this.op=t}},t.InvalidCompareArgumentTypes=class extends r{constructor(e,t){super(`Compared argument types are supported: '${e.termType}' and '${t.termType}'`),this.arg0=e,this.arg1=t}},t.CastError=class extends r{constructor(e,t){super(`Invalid cast: '${p(e)}' to '${p(t)}'`),this.arg=e}},t.InvalidTimezoneCall=class extends r{constructor(e){super(`TIMEZONE call on ${e} which has no timezone`),this.dateString=e}},t.IncompatibleLanguageOperation=class extends r{constructor(e,t){super(`Operation on incompatible language literals '${p(e)}' and '${p(t)}'`),this.arg1=e,this.arg2=t}},t.EmptyAggregateError=class extends r{constructor(){super("Empty aggregate expression")}},t.ParseError=class extends r{constructor(e,t){super(`Failed to parse ${e} as ${t}.`)}};class n extends Error{constructor(e,t){super(`Programmer Error '${e}'`),this.payload=t}}t.UnexpectedError=n;class i extends Error{constructor(e,t){super(`The number of args does not match the arity of the operator '${p(t)}'.`),this.args=e,this.op=t}}t.InvalidArity=i;class a extends Error{constructor(e){super(`Invalid SPARQL Expression '${p(e)}'`)}}t.InvalidExpression=a;class o extends Error{constructor(e){super(`Invalid expression type for SPARQL Expression '${p(e)}'`),this.expr=e}}t.InvalidExpressionType=o;class s extends Error{constructor(e){super(`Invalid term type for term '${p(e)}'`),this.term=e}}t.InvalidTermType=s;class c extends Error{constructor(e){super(`Unknown operator: '${p(e)}`)}}t.UnknownOperator=c;class u extends Error{constructor(e){super(`Unknown named operator: '${p(e)}'`)}}t.UnknownNamedOperator=u;class l extends Error{constructor(e,t){t instanceof Error?super(`Error thrown in ${e}: ${t.message}${t.stack?`\n${t.stack}`:""}`):super(`Error thrown in ${e}`)}}t.ExtensionFunctionError=l;class d extends Error{constructor(e){super(`Aggregate expression ${p(e)} found, but no aggregate hook provided.`)}}t.NoAggregator=d;class h extends Error{constructor(){super("EXISTS found, but no existence hook provided.")}}function p(e){return JSON.stringify(e)}t.NoExistenceHook=h},34964:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.orderTypes=void 0;const n=r(70463),i=r(64640),a=r(34932),o=r(8399),s=r(75218);function c(e,t){return e===t?0:e"term"),cache:s||new n.LRUCache({max:1e3})},defaultTimeZone:{zoneHours:0,zoneMinutes:0}},h=new a.TermTransformer(d.superTypeProvider),p=h.transformLiteral(e),f=h.transformLiteral(t);try{return l.apply([p,f],d).typedValue?0:u.apply([p,f],d).typedValue?1:-1}catch{const e=c(p.dataType,f.dataType);return 0!==e?e:c(p.str(),f.str())}}(t,r,d,h);if(l)throw new s.InvalidCompareArgumentTypes(t,r);return c(t.value,r.value)};const u={Variable:0,BlankNode:1,NamedNode:2,Literal:3,Quad:4,DefaultGraph:5}},31029:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseDayTimeDuration=t.parseYearMonthDuration=t.parseDuration=t.parseTime=t.parseDate=t.parseDateTime=t.parseXSDInteger=t.parseXSDDecimal=t.parseXSDFloat=void 0;const n=r(90799),i=r(75218),a=r(84595);function o(e){if(""===e)return{zoneHours:void 0,zoneMinutes:void 0};if("Z"===e)return{zoneHours:0,zoneMinutes:0};const t=e.replace(/^([+|-])(\d\d):(\d\d)$/gu,"$11!$2!$3").split("!").map((e=>Number(e)));return{zoneHours:t[0]*t[1],zoneMinutes:t[0]*t[2]}}function s(e){const t=e.replace(/^(-)?([123456789]*\d{4})-(\d\d)-(\d\d)(Z|([+-]\d\d:\d\d))?$/gu,"$11!$2!$3!$4!$5");if(t===e)throw new i.ParseError(e,"date");const r=t.split("!"),n=r.slice(0,-1).map((e=>Number(e))),s={year:n[0]*n[1],month:n[2],day:n[3],...o(r[4])};if(!(1<=s.month&&s.month<=12&&1<=s.day&&s.day<=(0,a.maximumDayInMonthFor)(s.year,s.month)))throw new i.ParseError(e,"date");return s}function c(e){const t=e.replace(/^(\d\d):(\d\d):(\d\d(\.\d+)?)(Z|([+-]\d\d:\d\d))?$/gu,"$1!$2!$3!$5");if(t===e)throw new i.ParseError(e,"time");const r=t.split("!"),n=r.slice(0,-1).map((e=>Number(e))),a={hours:n[0],minutes:n[1],seconds:n[2],...o(r[3])};if(a.seconds>=60||a.minutes>=60||a.hours>24||24===a.hours&&(0!==a.minutes||0!==a.seconds))throw new i.ParseError(e,"time");return a}function u(e){const[t,r]=e.split("T"),a=t.replace(/^(-)?P(\d+Y)?(\d+M)?(\d+D)?$/gu,"$11S!$2!$3!$4");if(a===t)throw new i.ParseError(e,"duration");const o=a.split("!");if(void 0!==r){const t=r.replace(/^(\d+H)?(\d+M)?(\d+(\.\d+)?S)?$/gu,"$1!$2!$3");if(""===r||r===t)throw new i.ParseError(e,"duration");o.push(...t.split("!"))}const s=o.map((e=>e.slice(0,-1)));if(!s.slice(1).some((e=>e)))throw new i.ParseError(e,"duration");const c=Number(s[0]);return(0,n.simplifyDurationRepresentation)({year:s[1]?c*Number(s[1]):void 0,month:s[2]?c*Number(s[2]):void 0,day:s[3]?c*Number(s[3]):void 0,hours:s[4]?c*Number(s[4]):void 0,minutes:s[5]?c*Number(s[5]):void 0,seconds:s[6]?c*Number(s[6]):void 0})}t.parseXSDFloat=function(e){const t=Number(e);return Number.isNaN(t)?"NaN"===e?Number.NaN:"INF"===e||"+INF"===e?Number.POSITIVE_INFINITY:"-INF"===e?Number.NEGATIVE_INFINITY:void 0:t},t.parseXSDDecimal=function(e){const t=Number(e);return Number.isNaN(t)?void 0:t},t.parseXSDInteger=function(e){const t=Number.parseInt(e,10);return Number.isNaN(t)?void 0:t},t.parseDateTime=function(e){const[t,r]=e.split("T");return{...s(t),...c(r)}},t.parseDate=s,t.parseTime=function(e){const t=c(e);return t.hours%=24,t},t.parseDuration=u,t.parseYearMonthDuration=function(e){const t=u(e);if(["hours","minutes","seconds","day"].some((e=>Boolean(t[e]))))throw new i.ParseError(e,"yearMonthDuration");return t},t.parseDayTimeDuration=function(e){const t=u(e);if(["year","month"].some((e=>Boolean(t[e]))))throw new i.ParseError(e,"dayTimeDuration");return t}},6521:(e,t)=>{"use strict";function r(e,t=2){return e.toLocaleString(void 0,{minimumIntegerDigits:t,useGrouping:!1})}function n(e){return void 0===e.zoneHours||void 0===e.zoneMinutes?"":0===e.zoneHours&&0===e.zoneMinutes?"Z":`${e.zoneHours>=0?`+${r(e.zoneHours)}`:r(e.zoneHours)}:${r(Math.abs(e.zoneMinutes))}`}function i(e){return`${r(e.year,4)}-${r(e.month)}-${r(e.day)}${n(e)}`}function a(e){return`${r(e.hours)}:${r(e.minutes)}:${r(e.seconds)}${n(e)}`}Object.defineProperty(t,"__esModule",{value:!0}),t.serializeDuration=t.serializeTime=t.serializeDate=t.serializeDateTime=void 0,t.serializeDateTime=function(e){return`${i({year:e.year,month:e.month,day:e.day})}T${a(e)}`},t.serializeDate=i,t.serializeTime=a,t.serializeDuration=function(e,t="PT0S"){if(!Object.values(e).some((e=>0!==(e||0))))return t;const r=`${Object.values(e).some((e=>(e||0)<0))?"-":""}P${e.year?`${Math.abs(e.year)}Y`:""}${e.month?`${Math.abs(e.month)}M`:""}${e.day?`${Math.abs(e.day)}D`:""}`;return e.hours||e.minutes||e.seconds?`${r}T${e.hours?`${Math.abs(e.hours)}H`:""}${e.minutes?`${Math.abs(e.minutes)}M`:""}${e.seconds?`${Math.abs(e.seconds)}S`:""}`:r}},84595:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.elapsedDuration=t.addDurationToDateTime=t.maximumDayInMonthFor=void 0;const n=r(90799);function i(e,t,r=0){const n=e-r,i=t-r,a=Math.floor(n/i);return{intDiv:a,remainder:e-a*i}}function a(e,t){const{intDiv:r,remainder:n}=i(t,13,1),a=e+r;return[1,3,5,7,8,10,12].includes(n)?31:[4,6,9,11].includes(n)?30:2===n&&(0===i(a,400).remainder||0!==i(a,100).remainder&&0===i(a,4).remainder)?29:28}t.maximumDayInMonthFor=a,t.addDurationToDateTime=function(e,t){const r={...e};let n=i(e.month+t.month,13,1);for(r.month=n.remainder,r.year=e.year+t.year+n.intDiv,n=i(e.seconds+t.seconds,60),r.seconds=n.remainder,n=i(e.minutes+t.minutes+n.intDiv,60),r.minutes=n.remainder,n=i(e.hours+t.hours+n.intDiv,24),r.hours=n.remainder,r.day=e.day+t.day+n.intDiv;;){let e;if(r.day<1)r.day+=a(r.year,r.month-1),e=-1;else{if(!(r.day>a(r.year,r.month)))break;r.day-=a(r.year,r.month),e=1}n=i(r.month+e,13,1),r.month=n.remainder,r.year+=n.intDiv}return r},t.elapsedDuration=function(e,t,r){const i=(0,n.toUTCDate)(e,r),a=(0,n.toUTCDate)(t,r),o=i.getTime()-a.getTime();return{day:Math.floor(o/864e5),hours:Math.floor(o%864e5/36e5),minutes:Math.floor(o%36e5/6e4),seconds:o%6e4}}},96251:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.typePromotion=t.isSubTypeOf=t.getSuperTypeDict=t.isInternalSubType=t.asGeneralType=t.asOverrideType=t.asKnownLiteralType=t.asTypeAlias=t.typeAliasCheck=t.extensionTableInit=t.getSuperTypes=t.superTypeDictTable=t.extensionTableInput=void 0;const n=r(57358),i=r(36389),a=r(8399);function o(e,r){const n=r.cache.get(e);if(n)return n;const i=r.discoverer(e);if("term"===i){const t=Object.create(null);return t.__depth=0,t[e]=0,r.cache.set(e,t),t}let a;const s=u(i);return a=s?{...t.superTypeDictTable[s]}:{...o(i,r)},a.__depth++,a[e]=a.__depth,r.cache.set(e,a),a}function s(){for(const[e,r]of Object.entries(t.extensionTableInput)){const n=e;t.superTypeDictTable[n]||c(n,r,t.superTypeDictTable)}}function c(e,r,n){if("term"===r||void 0===r){const t=Object.create(null);return t.__depth=0,t[e]=0,void(n[e]=t)}n[r]||c(r,t.extensionTableInput[r],n),n[e]={...n[r],[e]:n[r].__depth+1,__depth:n[r].__depth+1}}function u(e){if(e in t.superTypeDictTable)return e}function l(e,r){const n=u(e);return n?t.superTypeDictTable[n]:o(e,r)}t.extensionTableInput={[a.TypeURL.XSD_DATE_TIME_STAMP]:a.TypeURL.XSD_DATE_TIME,[a.TypeURL.XSD_DAY_TIME_DURATION]:a.TypeURL.XSD_DURATION,[a.TypeURL.XSD_YEAR_MONTH_DURATION]:a.TypeURL.XSD_DURATION,[a.TypeURL.RDF_LANG_STRING]:a.TypeAlias.SPARQL_STRINGLY,[a.TypeURL.XSD_STRING]:a.TypeAlias.SPARQL_STRINGLY,[a.TypeURL.XSD_NORMALIZED_STRING]:a.TypeURL.XSD_STRING,[a.TypeURL.XSD_TOKEN]:a.TypeURL.XSD_NORMALIZED_STRING,[a.TypeURL.XSD_LANGUAGE]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NM_TOKEN]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NAME]:a.TypeURL.XSD_TOKEN,[a.TypeURL.XSD_NC_NAME]:a.TypeURL.XSD_NAME,[a.TypeURL.XSD_ENTITY]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_ID]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_ID_REF]:a.TypeURL.XSD_NC_NAME,[a.TypeURL.XSD_DOUBLE]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_FLOAT]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_DECIMAL]:a.TypeAlias.SPARQL_NUMERIC,[a.TypeURL.XSD_INTEGER]:a.TypeURL.XSD_DECIMAL,[a.TypeURL.XSD_NON_POSITIVE_INTEGER]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_NEGATIVE_INTEGER]:a.TypeURL.XSD_NON_POSITIVE_INTEGER,[a.TypeURL.XSD_LONG]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_INT]:a.TypeURL.XSD_LONG,[a.TypeURL.XSD_SHORT]:a.TypeURL.XSD_INT,[a.TypeURL.XSD_BYTE]:a.TypeURL.XSD_SHORT,[a.TypeURL.XSD_NON_NEGATIVE_INTEGER]:a.TypeURL.XSD_INTEGER,[a.TypeURL.XSD_POSITIVE_INTEGER]:a.TypeURL.XSD_NON_NEGATIVE_INTEGER,[a.TypeURL.XSD_UNSIGNED_LONG]:a.TypeURL.XSD_NON_NEGATIVE_INTEGER,[a.TypeURL.XSD_UNSIGNED_INT]:a.TypeURL.XSD_UNSIGNED_LONG,[a.TypeURL.XSD_UNSIGNED_SHORT]:a.TypeURL.XSD_UNSIGNED_INT,[a.TypeURL.XSD_UNSIGNED_BYTE]:a.TypeURL.XSD_UNSIGNED_SHORT,[a.TypeURL.XSD_DATE_TIME]:"term",[a.TypeURL.XSD_BOOLEAN]:"term",[a.TypeURL.XSD_DATE]:"term",[a.TypeURL.XSD_G_MONTH]:"term",[a.TypeURL.XSD_G_MONTHDAY]:"term",[a.TypeURL.XSD_G_YEAR]:"term",[a.TypeURL.XSD_G_YEAR_MONTH]:"term",[a.TypeURL.XSD_TIME]:"term",[a.TypeURL.XSD_G_DAY]:"term",[a.TypeURL.XSD_DURATION]:"term",[a.TypeAlias.SPARQL_NUMERIC]:"term",[a.TypeAlias.SPARQL_STRINGLY]:"term",[a.TypeURL.XSD_ANY_URI]:"term"},t.superTypeDictTable=Object.create(null),t.getSuperTypes=o,t.extensionTableInit=s,s(),t.typeAliasCheck=Object.create(null),function(){for(const e of Object.values(a.TypeAlias))t.typeAliasCheck[e]=!0}(),t.asTypeAlias=function(e){if(e in t.typeAliasCheck)return e},t.asKnownLiteralType=u,t.asOverrideType=function(e){if(u(e)||"term"===e)return e},t.asGeneralType=function(e){if("term"===e||(0,n.asTermType)(e))return e},t.isInternalSubType=function(e,r){return"term"!==e&&t.superTypeDictTable[e]&&void 0!==t.superTypeDictTable[e][r]},t.getSuperTypeDict=l,t.isSubTypeOf=function(e,t,r){return"term"!==e&&void 0!==l(e,r)[t]},t.typePromotion={[a.TypeURL.XSD_STRING]:[{typeToPromote:a.TypeURL.XSD_ANY_URI,conversionFunction:e=>(0,i.string)(e.str())}],[a.TypeURL.XSD_DOUBLE]:[{typeToPromote:a.TypeURL.XSD_FLOAT,conversionFunction:e=>(0,i.double)(e.typedValue)},{typeToPromote:a.TypeURL.XSD_DECIMAL,conversionFunction:e=>(0,i.double)(e.typedValue)}],[a.TypeURL.XSD_FLOAT]:[{typeToPromote:a.TypeURL.XSD_DECIMAL,conversionFunction:e=>(0,i.float)(e.typedValue)}]}},37045:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LoggerVoid=void 0;const n=r(24331);class i extends n.Logger{debug(){}error(){}fatal(){}info(){}trace(){}warn(){}}t.LoggerVoid=i},60738:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(37045),t)},85170:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorAll=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}async mediate(e){const t=[];let r;try{r=this.publish(e)}catch{r=[]}for(const e of r)try{await e.reply,t.push(e.actor)}catch{}return(await Promise.all(t.map((t=>t.runObservable(e)))))[0]}async mediateWith(){throw new Error("Unsupported operation: MediatorAll#mediateWith")}}t.MediatorAll=i},95069:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85170),t)},67979:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorCombinePipeline=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}async mediate(e){let t;try{t=this.publish(e)}catch{return e}if(this.filterErrors){const e=[];for(const r of t)try{await r.reply,e.push(r)}catch{}t=e}if(t=await Promise.all(t.map((async({actor:e,reply:t})=>({actor:e,reply:await t})))),this.order){const e=e=>{const t=this.field?e[this.field]:e;if("number"!=typeof t)throw new Error("Cannot order elements that are not numbers.");return t};t=t.sort(((t,r)=>("increasing"===this.order?1:-1)*(e(t.reply)-e(r.reply))))}let r=e;for(const{actor:e}of t)r={...r,...await e.runObservable(r)};return r}mediateWith(){throw new Error("Method not supported.")}}t.MediatorCombinePipeline=i},84190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(67979),t)},12396:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorCombineUnion=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e),this.combiner=this.createCombiner()}async mediate(e){let t;try{t=this.publish(e)}catch{t=[]}await Promise.all(t.map((({reply:e})=>e)));const r=await Promise.all(t.map((t=>t.actor.runObservable(e))));return this.combiner(r)}mediateWith(){throw new Error("Method not supported.")}createCombiner(){return e=>{const t={};return t[this.field]={},[{}].concat(e.map((e=>e[this.field]))).forEach(((e,r,n)=>{t[this.field]={...e,...t[this.field]}})),t}}}t.MediatorCombineUnion=i},21413:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(12396),t)},37966:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorJoinCoefficientsFixed=void 0;const n=r(78470),i=r(21049);class a extends i.Mediator{constructor(e){super(e)}async mediateWith(e,t){const r=[],a=t.map((({reply:e})=>e)).map((e=>e.catch((e=>{r.push(e)})))),o=await Promise.all(a);let s=o.map(((e,t)=>{if(e)return e.iterations*this.cpuWeight+e.persistedItems*this.memoryWeight+e.blockingItems*this.timeWeight+e.requestTime*this.ioWeight}));const c=Math.max(...s.filter((e=>void 0!==e))),u=e.context.get(n.KeysQueryOperation.limitIndicator);u&&(s=s.map(((e,t)=>void 0!==e&&o[t].persistedItems>0&&o[t].iterations>u?e+c:e)));let l=-1,d=Number.POSITIVE_INFINITY;for(const[e,t]of s.entries())void 0!==t&&(-1===l||te.message)).join("\n")}`);const h=t[l].actor;return h.includeInLogs&&i.Actor.getContextLogger(e.context)?.debug(`Determined physical join operator '${h.logicalType}-${h.physicalName}'`,{entries:e.entries.length,variables:await Promise.all(e.entries.map((async e=>(await e.output.metadata()).variables.map((e=>e.value))))),costs:Object.fromEntries(s.map(((e,r)=>[`${t[r].actor.logicalType}-${t[r].actor.physicalName}`,e]))),coefficients:Object.fromEntries(o.map(((e,r)=>[`${t[r].actor.logicalType}-${t[r].actor.physicalName}`,e])))}),h}}t.MediatorJoinCoefficientsFixed=a},78557:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(37966),t)},29064:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorNumber=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e),this.indexPicker=this.createIndexPicker()}createIndexPicker(){switch(this.type){case"min":return e=>e.reduce(((e,t,r)=>{const n=this.getOrDefault(t[this.field],Number.POSITIVE_INFINITY);return null!==n&&(Number.isNaN(e[0])||e[0]>n)?[n,r]:e}),[Number.NaN,-1])[1];case"max":return e=>e.reduce(((e,t,r)=>{const n=this.getOrDefault(t[this.field],Number.NEGATIVE_INFINITY);return null!==n&&(Number.isNaN(e[0])||e[0]e));const n=[];if(this.ignoreErrors){const e={};e[this.field]=null,r=r.map((t=>t.catch((t=>(n.push(t),e)))))}const i=await Promise.all(r),a=this.indexPicker(i);if(a<0)throw new Error(`All actors rejected their test in ${this.name}\n${n.map((e=>e.message)).join("\n")}`);return t[a].actor}}t.MediatorNumber=i},92201:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29064),t)},19465:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MediatorRace=void 0;const n=r(21049);class i extends n.Mediator{constructor(e){super(e)}mediateWith(e,t){return new Promise(((e,r)=>{const n=[];for(const i of t)i.reply.then((()=>{e(i.actor)})).catch((e=>{n.push(e),n.length===t.length&&r(new Error(`${this.name} mediated over all rejecting actors:\n${n.map((e=>e.message)).join("\n")}`))}))}))}}t.MediatorRace=i},7204:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(19465),t)},49648:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MetadataValidationState=void 0,t.MetadataValidationState=class{constructor(){this.invalidateListeners=[],this.valid=!0}addInvalidateListener(e){this.invalidateListeners.push(e)}invalidate(){if(this.valid){this.valid=!1;for(const e of this.invalidateListeners)e()}}}},33588:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(49648),t)},69923:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},80416:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},7378:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},42461:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},61817:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},65622:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},4179:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27188:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},21716:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},96946:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},13518:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},46537:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27293:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},52120:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Logger=void 0;class r{static getLevelOrdinal(e){return r.LEVELS[e]}}t.Logger=r,r.LEVELS={trace:0,debug:1,info:2,warn:3,error:4,fatal:5}},24331:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(69923),t),i(r(80416),t),i(r(7378),t),i(r(42461),t),i(r(61817),t),i(r(65622),t),i(r(4179),t),i(r(27188),t),i(r(21716),t),i(r(96946),t),i(r(13518),t),i(r(46537),t),i(r(27293),t),i(r(52120),t)},95766:(e,t)=>{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,a=s(e),o=a[0],c=a[1],u=new i(function(e,t,r){return 3*(t+r)/4-r}(0,o,c)),l=0,d=c>0?o-4:o;for(r=0;r>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,u[l++]=255&t),1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,a=[],o=16383,s=0,u=n-i;su?u:s+o));return 1===i?(t=e[n-1],a.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],a.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"=")),a.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",o=0;o<64;++o)r[o]=a[o],n[a.charCodeAt(o)]=o;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,a,o=[],s=t;s>18&63]+r[a>>12&63]+r[a>>6&63]+r[63&a]);return o.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},6391:function(e,t,r){var n;!function(i){"use strict";var a,o=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,s=Math.ceil,c=Math.floor,u="[BigNumber Error] ",l=u+"Number primitive has more than 15 significant digits: ",d=1e14,h=14,p=9007199254740991,f=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],y=1e7,g=1e9;function m(e){var t=0|e;return e>0||e===t?t:t-1}function b(e){for(var t,r,n=1,i=e.length,a=e[0]+"";nu^r?1:-1;for(s=(c=i.length)<(u=a.length)?c:u,o=0;oa[o]^r?1:-1;return c==u?0:c>u^r?1:-1}function _(e,t,r,n){if(er||e!==c(e))throw Error(u+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function w(e){var t=e.c.length-1;return m(e.e/h)==t&&e.c[t]%2!=0}function T(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function S(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else tk?m.c=m.e=null:e.e=10;d/=10,u++);return void(u>k?m.c=m.e=null:(m.e=u,m.c=[e]))}g=String(e)}else{if(!o.test(g=String(e)))return i(m,g,f);m.s=45==g.charCodeAt(0)?(g=g.slice(1),-1):1}(u=g.indexOf("."))>-1&&(g=g.replace(".","")),(d=g.search(/e/i))>0?(u<0&&(u=d),u+=+g.slice(d+1),g=g.substring(0,d)):u<0&&(u=g.length)}else{if(_(t,2,V.length,"Base"),10==t&&Q)return K(m=new $(e),N+m.e+1,j);if(g=String(e),f="number"==typeof e){if(0*e!=0)return i(m,g,f,t);if(m.s=1/e<0?(g=g.slice(1),-1):1,$.DEBUG&&g.replace(/^0\.0*|\./,"").length>15)throw Error(l+e)}else m.s=45===g.charCodeAt(0)?(g=g.slice(1),-1):1;for(r=V.slice(0,t),u=d=0,y=g.length;du){u=y;continue}}else if(!s&&(g==g.toUpperCase()&&(g=g.toLowerCase())||g==g.toLowerCase()&&(g=g.toUpperCase()))){s=!0,d=-1,u=0;continue}return i(m,String(e),f,t)}f=!1,(u=(g=n(g,t,10,m.s)).indexOf("."))>-1?g=g.replace(".",""):u=g.length}for(d=0;48===g.charCodeAt(d);d++);for(y=g.length;48===g.charCodeAt(--y););if(g=g.slice(d,++y)){if(y-=d,f&&$.DEBUG&&y>15&&(e>p||e!==c(e)))throw Error(l+m.s*e);if((u=u-d-1)>k)m.c=m.e=null;else if(u=M)?T(c,o):S(c,o,"0");else if(a=(e=K(new $(e),t,r)).e,s=(c=b(e.c)).length,1==n||2==n&&(t<=a||a<=C)){for(;ss){if(--t>0)for(c+=".";t--;c+="0");}else if((t+=a-s)>0)for(a+1==s&&(c+=".");t--;c+="0");return e.s<0&&i?"-"+c:c}function G(e,t){for(var r,n,i=1,a=new $(e[0]);i=10;i/=10,n++);return(r=n+r*h-1)>k?e.c=e.e=null:r=10;u/=10,i++);if((a=t-i)<0)a+=h,o=t,l=g[p=0],y=c(l/m[i-o-1]%10);else if((p=s((a+1)/h))>=g.length){if(!n)break e;for(;g.length<=p;g.push(0));l=y=0,i=1,o=(a%=h)-h+1}else{for(l=u=g[p],i=1;u>=10;u/=10,i++);y=(o=(a%=h)-h+i)<0?0:c(l/m[i-o-1]%10)}if(n=n||t<0||null!=g[p+1]||(o<0?l:l%m[i-o-1]),n=r<4?(y||n)&&(0==r||r==(e.s<0?3:2)):y>5||5==y&&(4==r||n||6==r&&(a>0?o>0?l/m[i-o]:0:g[p-1])%10&1||r==(e.s<0?8:7)),t<1||!g[0])return g.length=0,n?(t-=e.e+1,g[0]=m[(h-t%h)%h],e.e=-t||0):g[0]=e.e=0,e;if(0==a?(g.length=p,u=1,p--):(g.length=p+1,u=m[h-a],g[p]=o>0?c(l/m[i-o]%m[o])*u:0),n)for(;;){if(0==p){for(a=1,o=g[0];o>=10;o/=10,a++);for(o=g[0]+=u,u=1;o>=10;o/=10,u++);a!=u&&(e.e++,g[0]==d&&(g[0]=1));break}if(g[p]+=u,g[p]!=d)break;g[p--]=0,u=1}for(a=g.length;0===g[--a];g.pop());}e.e>k?e.c=e.e=null:e.e=M?T(t,r):S(t,r,"0"),e.s<0?"-"+t:t)}return $.clone=e,$.ROUND_UP=0,$.ROUND_DOWN=1,$.ROUND_CEIL=2,$.ROUND_FLOOR=3,$.ROUND_HALF_UP=4,$.ROUND_HALF_DOWN=5,$.ROUND_HALF_EVEN=6,$.ROUND_HALF_CEIL=7,$.ROUND_HALF_FLOOR=8,$.EUCLID=9,$.config=$.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(u+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(_(r=e[t],0,g,t),N=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(_(r=e[t],0,8,t),j=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(_(r[0],-g,0,t),_(r[1],0,g,t),C=r[0],M=r[1]):(_(r,-g,g,t),C=-(M=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)_(r[0],-g,-1,t),_(r[1],1,g,t),L=r[0],k=r[1];else{if(_(r,-g,g,t),!r)throw Error(u+t+" cannot be zero: "+r);L=-(k=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(u+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw F=!r,Error(u+"crypto unavailable");F=r}else F=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(_(r=e[t],0,9,t),B=r),e.hasOwnProperty(t="POW_PRECISION")&&(_(r=e[t],0,g,t),U=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(u+t+" not an object: "+r);q=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(u+t+" invalid: "+r);Q="0123456789"==r.slice(0,10),V=r}}return{DECIMAL_PLACES:N,ROUNDING_MODE:j,EXPONENTIAL_AT:[C,M],RANGE:[L,k],CRYPTO:F,MODULO_MODE:B,POW_PRECISION:U,FORMAT:q,ALPHABET:V}},$.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!$.DEBUG)return!0;var t,r,n=e.c,i=e.e,a=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===a||-1===a)&&i>=-g&&i<=g&&i===c(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%h)<1&&(t+=h),String(n[0]).length==t){for(t=0;t=d||r!==c(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===a||1===a||-1===a))return!0;throw Error(u+"Invalid BigNumber: "+e)},$.maximum=$.max=function(){return G(arguments,-1)},$.minimum=$.min=function(){return G(arguments,1)},$.random=(a=9007199254740992,O=Math.random()*a&2097151?function(){return c(Math.random()*a)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)},function(e){var t,r,n,i,a,o=0,l=[],d=new $(D);if(null==e?e=N:_(e,0,g),i=s(e/h),F)if(crypto.getRandomValues){for(t=crypto.getRandomValues(new Uint32Array(i*=2));o>>11))>=9e15?(r=crypto.getRandomValues(new Uint32Array(2)),t[o]=r[0],t[o+1]=r[1]):(l.push(a%1e14),o+=2);o=i/2}else{if(!crypto.randomBytes)throw F=!1,Error(u+"crypto unavailable");for(t=crypto.randomBytes(i*=7);o=9e15?crypto.randomBytes(7).copy(t,o):(l.push(a%1e14),o+=7);o=i/7}if(!F)for(;o=10;a/=10,o++);or-1&&(null==o[i+1]&&(o[i+1]=0),o[i+1]+=o[i]/r|0,o[i]%=r)}return o.reverse()}return function(n,i,a,o,s){var c,u,l,d,h,p,f,y,g=n.indexOf("."),m=N,v=j;for(g>=0&&(d=U,U=0,n=n.replace(".",""),p=(y=new $(i)).pow(n.length-g),U=d,y.c=t(S(b(p.c),p.e,"0"),10,a,e),y.e=y.c.length),l=d=(f=t(n,i,a,s?(c=V,e):(c=e,V))).length;0==f[--d];f.pop());if(!f[0])return c.charAt(0);if(g<0?--l:(p.c=f,p.e=l,p.s=o,f=(p=r(p,y,m,v,a)).c,h=p.r,l=p.e),g=f[u=l+m+1],d=a/2,h=h||u<0||null!=f[u+1],h=v<4?(null!=g||h)&&(0==v||v==(p.s<0?3:2)):g>d||g==d&&(4==v||h||6==v&&1&f[u-1]||v==(p.s<0?8:7)),u<1||!f[0])n=h?S(c.charAt(1),-m,c.charAt(0)):c.charAt(0);else{if(f.length=u,h)for(--a;++f[--u]>a;)f[u]=0,u||(++l,f=[1].concat(f));for(d=f.length;!f[--d];);for(g=0,n="";g<=d;n+=c.charAt(f[g++]));n=S(n,l,c.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,a,o,s=0,c=e.length,u=t%y,l=t/y|0;for(e=e.slice();c--;)s=((i=u*(a=e[c]%y)+(n=l*a+(o=e[c]/y|0)*u)%y*y+s)/r|0)+(n/y|0)+l*o,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,a;if(r!=n)a=r>n?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,a,o,s){var u,l,p,f,y,g,b,v,_,w,T,S,O,E,x,A,R,I=n.s==i.s?1:-1,P=n.c,D=i.c;if(!(P&&P[0]&&D&&D[0]))return new $(n.s&&i.s&&(P?!D||P[0]!=D[0]:D)?P&&0==P[0]||!D?0*I:I/0:NaN);for(_=(v=new $(I)).c=[],I=a+(l=n.e-i.e)+1,s||(s=d,l=m(n.e/h)-m(i.e/h),I=I/h|0),p=0;D[p]==(P[p]||0);p++);if(D[p]>(P[p]||0)&&l--,I<0)_.push(1),f=!0;else{for(E=P.length,A=D.length,p=0,I+=2,(y=c(s/(D[0]+1)))>1&&(D=e(D,y,s),P=e(P,y,s),A=D.length,E=P.length),O=A,T=(w=P.slice(0,A)).length;T=s/2&&x++;do{if(y=0,(u=t(D,w,A,T))<0){if(S=w[0],A!=T&&(S=S*s+(w[1]||0)),(y=c(S/x))>1)for(y>=s&&(y=s-1),b=(g=e(D,y,s)).length,T=w.length;1==t(g,w,b,T);)y--,r(g,A=10;I/=10,p++);K(v,a+(v.e=p+l*h-1)+1,o,f)}else v.e=l,v.r=+f;return v}}(),E=/^(-?)0([xbo])(?=\w[\w.]*$)/i,x=/^([^.]+)\.$/,A=/^\.([^.]+)$/,R=/^-?(Infinity|NaN)$/,I=/^\s*\+(?=[\w.])|^\s+|\s+$/g,i=function(e,t,r,n){var i,a=r?t:t.replace(I,"");if(R.test(a))e.s=isNaN(a)?null:a<0?-1:1;else{if(!r&&(a=a.replace(E,(function(e,t,r){return i="x"==(r=r.toLowerCase())?16:"b"==r?2:8,n&&n!=i?e:t})),n&&(i=n,a=a.replace(x,"$1").replace(A,"0.$1")),t!=a))return new $(a,i);if($.DEBUG)throw Error(u+"Not a"+(n?" base "+n:"")+" number: "+t);e.s=null}e.c=e.e=null},P.absoluteValue=P.abs=function(){var e=new $(this);return e.s<0&&(e.s=1),e},P.comparedTo=function(e,t){return v(this,new $(e,t))},P.decimalPlaces=P.dp=function(e,t){var r,n,i,a=this;if(null!=e)return _(e,0,g),null==t?t=j:_(t,0,8),K(new $(a),e+a.e+1,t);if(!(r=a.c))return null;if(n=((i=r.length-1)-m(this.e/h))*h,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},P.dividedBy=P.div=function(e,t){return r(this,new $(e,t),N,j)},P.dividedToIntegerBy=P.idiv=function(e,t){return r(this,new $(e,t),0,1)},P.exponentiatedBy=P.pow=function(e,t){var r,n,i,a,o,l,d,p,f=this;if((e=new $(e)).c&&!e.isInteger())throw Error(u+"Exponent not an integer: "+X(e));if(null!=t&&(t=new $(t)),o=e.e>14,!f.c||!f.c[0]||1==f.c[0]&&!f.e&&1==f.c.length||!e.c||!e.c[0])return p=new $(Math.pow(+X(f),o?e.s*(2-w(e)):+X(e))),t?p.mod(t):p;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new $(NaN);(n=!l&&f.isInteger()&&t.isInteger())&&(f=f.mod(t))}else{if(e.e>9&&(f.e>0||f.e<-1||(0==f.e?f.c[0]>1||o&&f.c[1]>=24e7:f.c[0]<8e13||o&&f.c[0]<=9999975e7)))return a=f.s<0&&w(e)?-0:0,f.e>-1&&(a=1/a),new $(l?1/a:a);U&&(a=s(U/h+2))}for(o?(r=new $(.5),l&&(e.s=1),d=w(e)):d=(i=Math.abs(+X(e)))%2,p=new $(D);;){if(d){if(!(p=p.times(f)).c)break;a?p.c.length>a&&(p.c.length=a):n&&(p=p.mod(t))}if(i){if(0===(i=c(i/2)))break;d=i%2}else if(K(e=e.times(r),e.e+1,1),e.e>14)d=w(e);else{if(0==(i=+X(e)))break;d=i%2}f=f.times(f),a?f.c&&f.c.length>a&&(f.c.length=a):n&&(f=f.mod(t))}return n?p:(l&&(p=D.div(p)),t?p.mod(t):a?K(p,U,j,void 0):p)},P.integerValue=function(e){var t=new $(this);return null==e?e=j:_(e,0,8),K(t,t.e+1,e)},P.isEqualTo=P.eq=function(e,t){return 0===v(this,new $(e,t))},P.isFinite=function(){return!!this.c},P.isGreaterThan=P.gt=function(e,t){return v(this,new $(e,t))>0},P.isGreaterThanOrEqualTo=P.gte=function(e,t){return 1===(t=v(this,new $(e,t)))||0===t},P.isInteger=function(){return!!this.c&&m(this.e/h)>this.c.length-2},P.isLessThan=P.lt=function(e,t){return v(this,new $(e,t))<0},P.isLessThanOrEqualTo=P.lte=function(e,t){return-1===(t=v(this,new $(e,t)))||0===t},P.isNaN=function(){return!this.s},P.isNegative=function(){return this.s<0},P.isPositive=function(){return this.s>0},P.isZero=function(){return!!this.c&&0==this.c[0]},P.minus=function(e,t){var r,n,i,a,o=this,s=o.s;if(t=(e=new $(e,t)).s,!s||!t)return new $(NaN);if(s!=t)return e.s=-t,o.plus(e);var c=o.e/h,u=e.e/h,l=o.c,p=e.c;if(!c||!u){if(!l||!p)return l?(e.s=-t,e):new $(p?o:NaN);if(!l[0]||!p[0])return p[0]?(e.s=-t,e):new $(l[0]?o:3==j?-0:0)}if(c=m(c),u=m(u),l=l.slice(),s=c-u){for((a=s<0)?(s=-s,i=l):(u=c,i=p),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(a=(s=l.length)<(t=p.length))?s:t,s=t=0;t0)for(;t--;l[r++]=0);for(t=d-1;n>s;){if(l[--n]=0;){for(r=0,f=S[i]%_,g=S[i]/_|0,a=i+(o=c);a>i;)r=((u=f*(u=T[--o]%_)+(s=g*u+(l=T[o]/_|0)*f)%_*_+b[a]+r)/v|0)+(s/_|0)+g*l,b[a--]=u%v;b[a]=r}return r?++n:b.splice(0,1),z(e,b,n)},P.negated=function(){var e=new $(this);return e.s=-e.s||null,e},P.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new $(e,t)).s,!i||!t)return new $(NaN);if(i!=t)return e.s=-t,n.minus(e);var a=n.e/h,o=e.e/h,s=n.c,c=e.c;if(!a||!o){if(!s||!c)return new $(i/0);if(!s[0]||!c[0])return c[0]?e:new $(s[0]?n:0*i)}if(a=m(a),o=m(o),s=s.slice(),i=a-o){for(i>0?(o=a,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/d|0,s[t]=d===s[t]?0:s[t]%d;return i&&(s=[i].concat(s),++o),z(e,s,o)},P.precision=P.sd=function(e,t){var r,n,i,a=this;if(null!=e&&e!==!!e)return _(e,1,g),null==t?t=j:_(t,0,8),K(new $(a),e,t);if(!(r=a.c))return null;if(n=(i=r.length-1)*h+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&a.e+1>n&&(n=a.e+1),n},P.shiftedBy=function(e){return _(e,-9007199254740991,p),this.times("1e"+e)},P.squareRoot=P.sqrt=function(){var e,t,n,i,a,o=this,s=o.c,c=o.s,u=o.e,l=N+4,d=new $("0.5");if(1!==c||!s||!s[0])return new $(!c||c<0&&(!s||s[0])?NaN:s?o:1/0);if(0==(c=Math.sqrt(+X(o)))||c==1/0?(((t=b(s)).length+u)%2==0&&(t+="0"),c=Math.sqrt(+t),u=m((u+1)/2)-(u<0||u%2),n=new $(t=c==1/0?"5e"+u:(t=c.toExponential()).slice(0,t.indexOf("e")+1)+u)):n=new $(c+""),n.c[0])for((c=(u=n.e)+l)<3&&(c=0);;)if(a=n,n=d.times(a.plus(r(o,a,l,1))),b(a.c).slice(0,c)===(t=b(n.c)).slice(0,c)){if(n.e0&&y>0){for(a=y%s||s,d=f.substr(0,a);a0&&(d+=l+f.slice(a)),p&&(d="-"+d)}n=h?d+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?h.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):h):d}return(r.prefix||"")+n+(r.suffix||"")},P.toFraction=function(e){var t,n,i,a,o,s,c,l,d,p,y,g,m=this,v=m.c;if(null!=e&&(!(c=new $(e)).isInteger()&&(c.c||1!==c.s)||c.lt(D)))throw Error(u+"Argument "+(c.isInteger()?"out of range: ":"not an integer: ")+X(c));if(!v)return new $(m);for(t=new $(D),d=n=new $(D),i=l=new $(D),g=b(v),o=t.e=g.length-m.e-1,t.c[0]=f[(s=o%h)<0?h+s:s],e=!e||c.comparedTo(t)>0?o>0?t:d:c,s=k,k=1/0,c=new $(g),l.c[0]=0;p=r(c,t,0,1),1!=(a=n.plus(p.times(i))).comparedTo(e);)n=i,i=a,d=l.plus(p.times(a=d)),l=a,t=c.minus(p.times(a=t)),c=a;return a=r(e.minus(n),i,0,1),l=l.plus(a.times(d)),n=n.plus(a.times(i)),l.s=d.s=m.s,y=r(d,i,o*=2,j).minus(m).abs().comparedTo(r(l,n,o,j).minus(m).abs())<1?[d,i]:[l,n],k=s,y},P.toNumber=function(){return+X(this)},P.toPrecision=function(e,t){return null!=e&&_(e,1,g),H(this,e,t,2)},P.toString=function(e){var t,r=this,i=r.s,a=r.e;return null===a?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=a<=C||a>=M?T(b(r.c),a):S(b(r.c),a,"0"):10===e&&Q?t=S(b((r=K(new $(r),N+a+1,j)).c),r.e,"0"):(_(e,2,V.length,"Base"),t=n(S(b(r.c),a,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},P.valueOf=P.toJSON=function(){return X(this)},P._isBigNumber=!0,null!=t&&$.set(t),$}(),a.default=a.BigNumber=a,void 0===(n=function(){return a}.call(t,r,t,e))||(e.exports=n)}()},48834:(e,t,r)=>{"use strict";const n=r(95766),i=r(62333),a="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){return+e!=e&&(e=0),c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const o=2147483647;function s(e){if(e>o)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return u(e,t,r)}function u(e,t,r){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|y(e,t);let n=s(r);const i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(X(e,Uint8Array)){const t=new Uint8Array(e);return p(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(X(e,ArrayBuffer)||e&&X(e.buffer,ArrayBuffer))return p(e,t,r);if("undefined"!=typeof SharedArrayBuffer&&(X(e,SharedArrayBuffer)||e&&X(e.buffer,SharedArrayBuffer)))return p(e,t,r);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|f(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}return void 0!==e.length?"number"!=typeof e.length||W(e.length)?s(0):h(e):"Buffer"===e.type&&Array.isArray(e.data)?h(e.data):void 0}(e);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function l(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return l(e),s(e<0?0:0|f(e))}function h(e){const t=e.length<0?0:0|f(e.length),r=s(t);for(let n=0;n=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|e}function y(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||X(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return G(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return z(e).length;default:if(i)return n?-1:G(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return P(this,t,r);case"utf8":case"utf-8":return x(this,t,r);case"ascii":return R(this,t,r);case"latin1":case"binary":return I(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function m(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function b(e,t,r,n,i){if(0===e.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),W(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:v(e,t,r,n,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):v(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(e,t,r,n,i){let a,o=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;o=2,s/=2,c/=2,r/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(i){let n=-1;for(a=r;as&&(r=s-c),a=r;a>=0;a--){let r=!0;for(let n=0;ni&&(n=i):n=i;const a=t.length;let o;for(n>a/2&&(n=a/2),o=0;o>8,i=r%256,a.push(i),a.push(n);return a}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function x(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+o<=r){let r,n,s,c;switch(o){case 1:t<128&&(a=t);break;case 2:r=e[i+1],128==(192&r)&&(c=(31&t)<<6|63&r,c>127&&(a=c));break;case 3:r=e[i+1],n=e[i+2],128==(192&r)&&128==(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(a=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128==(192&r)&&128==(192&n)&&128==(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(a=c))}}null===a?(a=65533,o=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),i+=o}return function(e){const t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=y,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},a&&(c.prototype[a]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(X(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let a=(i>>>=0)-(n>>>=0),o=(r>>>=0)-(t>>>=0);const s=Math.min(a,o),u=this.slice(n,i),l=e.slice(t,r);for(let e=0;e>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let a=!1;for(;;)switch(n){case"hex":return _(this,e,t,r);case"utf8":case"utf-8":return w(this,e,t,r);case"ascii":case"latin1":case"binary":return T(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return O(this,e,t,r);default:if(a)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),a=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const A=4096;function R(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let n=t;nr)throw new RangeError("Trying to access beyond buffer length")}function j(e,t,r,n,i,a){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function C(e,t,r,n,i){V(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,r}function M(e,t,r,n,i){V(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a>>=8,e[r+6]=a,a>>=8,e[r+5]=a,a>>=8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o>>=8,e[r+2]=o,o>>=8,e[r+1]=o,o>>=8,e[r]=o,r+8}function L(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function k(e,t,r,n,a){return t=+t,r>>>=0,a||L(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function F(e,t,r,n,a){return t=+t,r>>>=0,a||L(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e],i=1,a=0;for(;++a>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||N(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=Y((function(e){Q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||N(e,t,this.length);let n=this[e],i=1,a=0;for(;++a=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||N(e,t,this.length);let n=t,i=1,a=this[e+--n];for(;n>0&&(i*=256);)a+=this[e+--n]*i;return i*=128,a>=i&&(a-=Math.pow(2,8*t)),a},c.prototype.readInt8=function(e,t){return e>>>=0,t||N(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||N(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||N(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||N(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=Y((function(e){Q(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||$(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||N(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||N(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||N(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||N(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){e=+e,t>>>=0,r>>>=0,n||j(this,e,t,r,Math.pow(2,8*r)-1,0);let i=1,a=0;for(this[t]=255&e;++a>>=0,r>>>=0,n||j(this,e,t,r,Math.pow(2,8*r)-1,0);let i=r-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=Y((function(e,t=0){return C(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=Y((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let i=0,a=1,o=0;for(this[t]=255&e;++i>0)-o&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);j(this,e,t,r,n-1,-n)}let i=r-1,a=1,o=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===o&&0!==this[t+i+1]&&(o=1),this[t+i]=(e/a>>0)-o&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||j(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=Y((function(e,t=0){return C(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=Y((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return k(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return k(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return F(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return F(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"==typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function V(e,t,r,n,i,a){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(a+1)}${n}`:`>= -(2${n} ** ${8*(a+1)-1}${n}) and < 2 ** ${8*(a+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){Q(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||$(t,e.length-(r+1))}(n,i,a)}function Q(e,t){if("number"!=typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function $(e,t,r){if(Math.floor(e)!==e)throw Q(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}U("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),U("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),U("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=q(String(r)):"bigint"==typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=q(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const H=/[^+/0-9A-Za-z-_]/g;function G(e,t){let r;t=t||1/0;const n=e.length;let i=null;const a=[];for(let o=0;o55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function z(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(H,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function K(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function X(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function W(e){return e!=e}const J=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function Y(e){return"undefined"==typeof BigInt?Z:e}function Z(){throw new Error("BigInt not supported")}},67026:e=>{"use strict";e.exports=function e(t){return null===t||"object"!=typeof t||null!=t.toJSON?JSON.stringify(t):Array.isArray(t)?"["+t.reduce(((t,r,n)=>t+(0===n?"":",")+e(void 0===r||"symbol"==typeof r?null:r)),"")+"]":"{"+Object.keys(t).sort().reduce(((r,n,i)=>void 0===t[n]||"symbol"==typeof t[n]?r:r+(0===r.length?"":",")+e(n)+":"+e(t[n])),"")+"}"}},43616:function(){!function(e){!function(t){var r="undefined"!=typeof globalThis&&globalThis||void 0!==e&&e||void 0!==r&&r,n="URLSearchParams"in r,i="Symbol"in r&&"iterator"in Symbol,a="FileReader"in r&&"Blob"in r&&function(){try{return new Blob,!0}catch(e){return!1}}(),o="FormData"in r,s="ArrayBuffer"in r;if(s)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1};function l(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function d(e){return"string"!=typeof e&&(e=String(e)),e}function h(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return i&&(t[Symbol.iterator]=function(){return t}),t}function p(e){this.map={},e instanceof p?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function y(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=y(t);return t.readAsArrayBuffer(e),r}function m(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:a&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:o&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:n&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&a&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=m(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=m(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},a&&(this.blob=function(){var e=f(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?f(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=y(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(i),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==t.cache&&"no-cache"!==t.cache)){var a=/([?&])_=[^&]*/;a.test(this.url)?this.url=this.url.replace(a,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function w(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function T(e,t){if(!(this instanceof T))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new p(t.headers),this.url=t.url||"",this._initBody(e)}_.prototype.clone=function(){return new _(this,{body:this._bodyInit})},b.call(_.prototype),b.call(T.prototype),T.prototype.clone=function(){return new T(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},T.error=function(){var e=new T(null,{status:0,statusText:""});return e.type="error",e};var S=[301,302,303,307,308];T.redirect=function(e,t){if(-1===S.indexOf(t))throw new RangeError("Invalid status code");return new T(null,{status:t,headers:{location:e}})},t.DOMException=r.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,n){return new Promise((function(i,o){var c=new _(e,n);if(c.signal&&c.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var u=new XMLHttpRequest;function l(){u.abort()}u.onload=function(){var e,t,r={status:u.status,statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new p,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL");var n="response"in u?u.response:u.responseText;setTimeout((function(){i(new T(n,r))}),0)},u.onerror=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.onabort=function(){setTimeout((function(){o(new t.DOMException("Aborted","AbortError"))}),0)},u.open(c.method,function(e){try{return""===e&&r.location.href?r.location.href:e}catch(t){return e}}(c.url),!0),"include"===c.credentials?u.withCredentials=!0:"omit"===c.credentials&&(u.withCredentials=!1),"responseType"in u&&(a?u.responseType="blob":s&&c.headers.get("Content-Type")&&-1!==c.headers.get("Content-Type").indexOf("application/octet-stream")&&(u.responseType="arraybuffer")),!n||"object"!=typeof n.headers||n.headers instanceof p?c.headers.forEach((function(e,t){u.setRequestHeader(t,e)})):Object.getOwnPropertyNames(n.headers).forEach((function(e){u.setRequestHeader(e,d(n.headers[e]))})),c.signal&&(c.signal.addEventListener("abort",l),u.onreadystatechange=function(){4===u.readyState&&c.signal.removeEventListener("abort",l)}),u.send(void 0===c._bodyInit?null:c._bodyInit)}))}O.polyfill=!0,r.fetch||(r.fetch=O,r.Headers=p,r.Request=_,r.Response=T),t.Headers=p,t.Request=_,t.Response=T,t.fetch=O}({})}("undefined"!=typeof self?self:this)},96279:(e,t,r)=>{var n="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==r.g&&r.g,i=function(){function e(){this.fetch=!1,this.DOMException=n.DOMException}return e.prototype=n,new e}();!function(e){!function(t){var r=void 0!==e&&e||"undefined"!=typeof self&&self||void 0!==r&&r,n="URLSearchParams"in r,i="Symbol"in r&&"iterator"in Symbol,a="FileReader"in r&&"Blob"in r&&function(){try{return new Blob,!0}catch(e){return!1}}(),o="FormData"in r,s="ArrayBuffer"in r;if(s)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1};function l(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function d(e){return"string"!=typeof e&&(e=String(e)),e}function h(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return i&&(t[Symbol.iterator]=function(){return t}),t}function p(e){this.map={},e instanceof p?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function y(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=y(t);return t.readAsArrayBuffer(e),r}function m(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:a&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:o&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:n&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():s&&a&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=m(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):s&&(ArrayBuffer.prototype.isPrototypeOf(e)||u(e))?this._bodyArrayBuffer=m(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},a&&(this.blob=function(){var e=f(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?f(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=y(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(i),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==t.cache&&"no-cache"!==t.cache)){var a=/([?&])_=[^&]*/;a.test(this.url)?this.url=this.url.replace(a,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function w(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function T(e,t){if(!(this instanceof T))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new p(t.headers),this.url=t.url||"",this._initBody(e)}_.prototype.clone=function(){return new _(this,{body:this._bodyInit})},b.call(_.prototype),b.call(T.prototype),T.prototype.clone=function(){return new T(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new p(this.headers),url:this.url})},T.error=function(){var e=new T(null,{status:0,statusText:""});return e.type="error",e};var S=[301,302,303,307,308];T.redirect=function(e,t){if(-1===S.indexOf(t))throw new RangeError("Invalid status code");return new T(null,{status:t,headers:{location:e}})},t.DOMException=r.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,n){return new Promise((function(i,o){var c=new _(e,n);if(c.signal&&c.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var u=new XMLHttpRequest;function l(){u.abort()}u.onload=function(){var e,t,r={status:u.status,statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new p,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL");var n="response"in u?u.response:u.responseText;setTimeout((function(){i(new T(n,r))}),0)},u.onerror=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){o(new TypeError("Network request failed"))}),0)},u.onabort=function(){setTimeout((function(){o(new t.DOMException("Aborted","AbortError"))}),0)},u.open(c.method,function(e){try{return""===e&&r.location.href?r.location.href:e}catch(t){return e}}(c.url),!0),"include"===c.credentials?u.withCredentials=!0:"omit"===c.credentials&&(u.withCredentials=!1),"responseType"in u&&(a?u.responseType="blob":s&&c.headers.get("Content-Type")&&-1!==c.headers.get("Content-Type").indexOf("application/octet-stream")&&(u.responseType="arraybuffer")),!n||"object"!=typeof n.headers||n.headers instanceof p?c.headers.forEach((function(e,t){u.setRequestHeader(t,e)})):Object.getOwnPropertyNames(n.headers).forEach((function(e){u.setRequestHeader(e,d(n.headers[e]))})),c.signal&&(c.signal.addEventListener("abort",l),u.onreadystatechange=function(){4===u.readyState&&c.signal.removeEventListener("abort",l)}),u.send(void 0===c._bodyInit?null:c._bodyInit)}))}O.polyfill=!0,r.fetch||(r.fetch=O,r.Headers=p,r.Request=_,r.Response=T),t.Headers=p,t.Request=_,t.Response=T,t.fetch=O}({})}(i),i.fetch.ponyfill=!0,delete i.fetch.polyfill;var a=n.fetch?n:i;(t=a.fetch).default=a.fetch,t.fetch=a.fetch,t.Headers=a.Headers,t.Request=a.Request,t.Response=a.Response,e.exports=t},16594:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.attributeNames=t.elementNames=void 0,t.elementNames=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((function(e){return[e.toLowerCase(),e]}))),t.attributeNames=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((function(e){return[e.toLowerCase(),e]})))},50606:function(e,t,r){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r");case s.Comment:return"\x3c!--".concat(e.data,"--\x3e");case s.CDATA:return function(e){return"")}(e);case s.Script:case s.Style:case s.Tag:return function(e,t){var r;"foreign"===t.xmlMode&&(e.name=null!==(r=u.elementNames.get(e.name))&&void 0!==r?r:e.name,e.parent&&y.has(e.parent.name)&&(t=n(n({},t),{xmlMode:!1}))),!t.xmlMode&&g.has(e.name)&&(t=n(n({},t),{xmlMode:"foreign"}));var i="<".concat(e.name),a=function(e,t){var r;if(e){var n=!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)?d:t.xmlMode||"utf8"!==t.encodeEntities?c.encodeXML:c.escapeAttribute;return Object.keys(e).map((function(r){var i,a,o=null!==(i=e[r])&&void 0!==i?i:"";return"foreign"===t.xmlMode&&(r=null!==(a=u.attributeNames.get(r))&&void 0!==a?a:r),t.emptyAttrs||t.xmlMode||""!==o?"".concat(r,'="').concat(n(o),'"'):r})).join(" ")}}(e.attribs,t);return a&&(i+=" ".concat(a)),0===e.children.length&&(t.xmlMode?!1!==t.selfClosingTags:t.selfClosingTags&&h.has(e.name))?(t.xmlMode||(i+=" "),i+="/>"):(i+=">",e.children.length>0&&(i+=p(e.children,t)),!t.xmlMode&&h.has(e.name)||(i+=""))),i}(e,t);case s.Text:return function(e,t){var r,n=e.data||"";return!1===(null!==(r=t.encodeEntities)&&void 0!==r?r:t.decodeEntities)||!t.xmlMode&&e.parent&&l.has(e.parent.name)||(n=t.xmlMode||"utf8"!==t.encodeEntities?(0,c.encodeXML)(n):(0,c.escapeText)(n)),n}(e,t)}}t.render=p,t.default=p;var y=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),g=new Set(["svg","math"])},34821:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.Doctype=t.CDATA=t.Tag=t.Style=t.Script=t.Comment=t.Directive=t.Text=t.Root=t.isTag=t.ElementType=void 0,function(e){e.Root="root",e.Text="text",e.Directive="directive",e.Comment="comment",e.Script="script",e.Style="style",e.Tag="tag",e.CDATA="cdata",e.Doctype="doctype"}(r=t.ElementType||(t.ElementType={})),t.isTag=function(e){return e.type===r.Tag||e.type===r.Script||e.type===r.Style},t.Root=r.Root,t.Text=r.Text,t.Directive=r.Directive,t.Comment=r.Comment,t.Script=r.Script,t.Style=r.Style,t.Tag=r.Tag,t.CDATA=r.CDATA,t.Doctype=r.Doctype},79959:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.DomHandler=void 0;var a=r(34821),o=r(75538);i(r(75538),t);var s={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},c=function(){function e(e,t,r){this.dom=[],this.root=new o.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,"function"==typeof t&&(r=t,t=s),"object"==typeof e&&(t=e,e=void 0),this.callback=null!=e?e:null,this.options=null!=t?t:s,this.elementCB=null!=r?r:null}return e.prototype.onparserinit=function(e){this.parser=e},e.prototype.onreset=function(){this.dom=[],this.root=new o.Document(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null},e.prototype.onend=function(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))},e.prototype.onerror=function(e){this.handleCallback(e)},e.prototype.onclosetag=function(){this.lastNode=null;var e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)},e.prototype.onopentag=function(e,t){var r=this.options.xmlMode?a.ElementType.Tag:void 0,n=new o.Element(e,t,void 0,r);this.addNode(n),this.tagStack.push(n)},e.prototype.ontext=function(e){var t=this.lastNode;if(t&&t.type===a.ElementType.Text)t.data+=e,this.options.withEndIndices&&(t.endIndex=this.parser.endIndex);else{var r=new o.Text(e);this.addNode(r),this.lastNode=r}},e.prototype.oncomment=function(e){if(this.lastNode&&this.lastNode.type===a.ElementType.Comment)this.lastNode.data+=e;else{var t=new o.Comment(e);this.addNode(t),this.lastNode=t}},e.prototype.oncommentend=function(){this.lastNode=null},e.prototype.oncdatastart=function(){var e=new o.Text(""),t=new o.CDATA([e]);this.addNode(t),e.parent=t,this.lastNode=e},e.prototype.oncdataend=function(){this.lastNode=null},e.prototype.onprocessinginstruction=function(e,t){var r=new o.ProcessingInstruction(e,t);this.addNode(r)},e.prototype.handleCallback=function(e){if("function"==typeof this.callback)this.callback(e,this.dom);else if(e)throw e},e.prototype.addNode=function(e){var t=this.tagStack[this.tagStack.length-1],r=t.children[t.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),t.children.push(e),r&&(e.prev=r,r.next=e),e.parent=t,this.lastNode=null},e}();t.DomHandler=c,t.default=c},75538:function(e,t,r){"use strict";var n,i=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),a=this&&this.__assign||function(){return a=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0?this.children[this.children.length-1]:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"childNodes",{get:function(){return this.children},set:function(e){this.children=e},enumerable:!1,configurable:!0}),t}(s);t.NodeWithChildren=h;var p=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=o.ElementType.CDATA,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 4},enumerable:!1,configurable:!0}),t}(h);t.CDATA=p;var f=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.type=o.ElementType.Root,t}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 9},enumerable:!1,configurable:!0}),t}(h);t.Document=f;var y=function(e){function t(t,r,n,i){void 0===n&&(n=[]),void 0===i&&(i="script"===t?o.ElementType.Script:"style"===t?o.ElementType.Style:o.ElementType.Tag);var a=e.call(this,n)||this;return a.name=t,a.attribs=r,a.type=i,a}return i(t,e),Object.defineProperty(t.prototype,"nodeType",{get:function(){return 1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"tagName",{get:function(){return this.name},set:function(e){this.name=e},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"attributes",{get:function(){var e=this;return Object.keys(this.attribs).map((function(t){var r,n;return{name:t,value:e.attribs[t],namespace:null===(r=e["x-attribsNamespace"])||void 0===r?void 0:r[t],prefix:null===(n=e["x-attribsPrefix"])||void 0===n?void 0:n[t]}}))},enumerable:!1,configurable:!0}),t}(h);function g(e){return(0,o.isTag)(e)}function m(e){return e.type===o.ElementType.CDATA}function b(e){return e.type===o.ElementType.Text}function v(e){return e.type===o.ElementType.Comment}function _(e){return e.type===o.ElementType.Directive}function w(e){return e.type===o.ElementType.Root}function T(e,t){var r;if(void 0===t&&(t=!1),b(e))r=new u(e.data);else if(v(e))r=new l(e.data);else if(g(e)){var n=t?S(e.children):[],i=new y(e.name,a({},e.attribs),n);n.forEach((function(e){return e.parent=i})),null!=e.namespace&&(i.namespace=e.namespace),e["x-attribsNamespace"]&&(i["x-attribsNamespace"]=a({},e["x-attribsNamespace"])),e["x-attribsPrefix"]&&(i["x-attribsPrefix"]=a({},e["x-attribsPrefix"])),r=i}else if(m(e)){n=t?S(e.children):[];var o=new p(n);n.forEach((function(e){return e.parent=o})),r=o}else if(w(e)){n=t?S(e.children):[];var s=new f(n);n.forEach((function(e){return e.parent=s})),e["x-mode"]&&(s["x-mode"]=e["x-mode"]),r=s}else{if(!_(e))throw new Error("Not implemented yet: ".concat(e.type));var c=new d(e.name,e.data);null!=e["x-name"]&&(c["x-name"]=e["x-name"],c["x-publicId"]=e["x-publicId"],c["x-systemId"]=e["x-systemId"]),r=c}return r.startIndex=e.startIndex,r.endIndex=e.endIndex,null!=e.sourceCodeLocation&&(r.sourceCodeLocation=e.sourceCodeLocation),r}function S(e){for(var t=e.map((function(e){return T(e,!0)})),r=1;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFeed=void 0;var n=r(87559),i=r(65310);t.getFeed=function(e){var t=c(d,e);return t?"feed"===t.name?function(e){var t,r=e.children,n={type:"atom",items:(0,i.getElementsByTagName)("entry",r).map((function(e){var t,r=e.children,n={media:s(r)};l(n,"id","id",r),l(n,"title","title",r);var i=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;i&&(n.link=i);var a=u("summary",r)||u("content",r);a&&(n.description=a);var o=u("updated",r);return o&&(n.pubDate=new Date(o)),n}))};l(n,"id","id",r),l(n,"title","title",r);var a=null===(t=c("link",r))||void 0===t?void 0:t.attribs.href;a&&(n.link=a),l(n,"description","subtitle",r);var o=u("updated",r);return o&&(n.updated=new Date(o)),l(n,"author","email",r,!0),n}(t):function(e){var t,r,n=null!==(r=null===(t=c("channel",e.children))||void 0===t?void 0:t.children)&&void 0!==r?r:[],a={type:e.name.substr(0,3),id:"",items:(0,i.getElementsByTagName)("item",e.children).map((function(e){var t=e.children,r={media:s(t)};l(r,"id","guid",t),l(r,"title","title",t),l(r,"link","link",t),l(r,"description","description",t);var n=u("pubDate",t)||u("dc:date",t);return n&&(r.pubDate=new Date(n)),r}))};l(a,"title","title",n),l(a,"link","link",n),l(a,"description","description",n);var o=u("lastBuildDate",n);return o&&(a.updated=new Date(o)),l(a,"author","managingEditor",n,!0),a}(t):null};var a=["url","type","lang"],o=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function s(e){return(0,i.getElementsByTagName)("media:content",e).map((function(e){for(var t=e.attribs,r={medium:t.medium,isDefault:!!t.isDefault},n=0,i=a;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.uniqueSort=t.compareDocumentPosition=t.DocumentPosition=t.removeSubsets=void 0;var n,i=r(79959);function a(e,t){var r=[],a=[];if(e===t)return 0;for(var o=(0,i.hasChildren)(e)?e:e.parent;o;)r.unshift(o),o=o.parent;for(o=(0,i.hasChildren)(t)?t:t.parent;o;)a.unshift(o),o=o.parent;for(var s=Math.min(r.length,a.length),c=0;cl.indexOf(h)?u===t?n.FOLLOWING|n.CONTAINED_BY:n.FOLLOWING:u===e?n.PRECEDING|n.CONTAINS:n.PRECEDING}t.removeSubsets=function(e){for(var t=e.length;--t>=0;){var r=e[t];if(t>0&&e.lastIndexOf(r,t-1)>=0)e.splice(t,1);else for(var n=r.parent;n;n=n.parent)if(e.includes(n)){e.splice(t,1);break}}return e},function(e){e[e.DISCONNECTED=1]="DISCONNECTED",e[e.PRECEDING=2]="PRECEDING",e[e.FOLLOWING=4]="FOLLOWING",e[e.CONTAINS=8]="CONTAINS",e[e.CONTAINED_BY=16]="CONTAINED_BY"}(n=t.DocumentPosition||(t.DocumentPosition={})),t.compareDocumentPosition=a,t.uniqueSort=function(e){return(e=e.filter((function(e,t,r){return!r.includes(e,t+1)}))).sort((function(e,t){var r=a(e,t);return r&n.PRECEDING?-1:r&n.FOLLOWING?1:0})),e}},64622:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.hasChildren=t.isDocument=t.isComment=t.isText=t.isCDATA=t.isTag=void 0,i(r(87559),t),i(r(16304),t),i(r(57427),t),i(r(17853),t),i(r(65310),t),i(r(42880),t),i(r(57065),t);var a=r(79959);Object.defineProperty(t,"isTag",{enumerable:!0,get:function(){return a.isTag}}),Object.defineProperty(t,"isCDATA",{enumerable:!0,get:function(){return a.isCDATA}}),Object.defineProperty(t,"isText",{enumerable:!0,get:function(){return a.isText}}),Object.defineProperty(t,"isComment",{enumerable:!0,get:function(){return a.isComment}}),Object.defineProperty(t,"isDocument",{enumerable:!0,get:function(){return a.isDocument}}),Object.defineProperty(t,"hasChildren",{enumerable:!0,get:function(){return a.hasChildren}})},65310:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getElementsByTagType=t.getElementsByTagName=t.getElementById=t.getElements=t.testElement=void 0;var n=r(79959),i=r(17853),a={tag_name:function(e){return"function"==typeof e?function(t){return(0,n.isTag)(t)&&e(t.name)}:"*"===e?n.isTag:function(t){return(0,n.isTag)(t)&&t.name===e}},tag_type:function(e){return"function"==typeof e?function(t){return e(t.type)}:function(t){return t.type===e}},tag_contains:function(e){return"function"==typeof e?function(t){return(0,n.isText)(t)&&e(t.data)}:function(t){return(0,n.isText)(t)&&t.data===e}}};function o(e,t){return"function"==typeof t?function(r){return(0,n.isTag)(r)&&t(r.attribs[e])}:function(r){return(0,n.isTag)(r)&&r.attribs[e]===t}}function s(e,t){return function(r){return e(r)||t(r)}}function c(e){var t=Object.keys(e).map((function(t){var r=e[t];return Object.prototype.hasOwnProperty.call(a,t)?a[t](r):o(t,r)}));return 0===t.length?null:t.reduce(s)}t.testElement=function(e,t){var r=c(e);return!r||r(t)},t.getElements=function(e,t,r,n){void 0===n&&(n=1/0);var a=c(e);return a?(0,i.filter)(a,t,r,n):[]},t.getElementById=function(e,t,r){return void 0===r&&(r=!0),Array.isArray(t)||(t=[t]),(0,i.findOne)(o("id",e),t,r)},t.getElementsByTagName=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_name(e),t,r,n)},t.getElementsByTagType=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),(0,i.filter)(a.tag_type(e),t,r,n)}},57427:(e,t)=>{"use strict";function r(e){if(e.prev&&(e.prev.next=e.next),e.next&&(e.next.prev=e.prev),e.parent){var t=e.parent.children,r=t.lastIndexOf(e);r>=0&&t.splice(r,1)}e.next=null,e.prev=null,e.parent=null}Object.defineProperty(t,"__esModule",{value:!0}),t.prepend=t.prependChild=t.append=t.appendChild=t.replaceElement=t.removeElement=void 0,t.removeElement=r,t.replaceElement=function(e,t){var r=t.prev=e.prev;r&&(r.next=t);var n=t.next=e.next;n&&(n.prev=t);var i=t.parent=e.parent;if(i){var a=i.children;a[a.lastIndexOf(e)]=t,e.parent=null}},t.appendChild=function(e,t){if(r(t),t.next=null,t.parent=e,e.children.push(t)>1){var n=e.children[e.children.length-2];n.next=t,t.prev=n}else t.prev=null},t.append=function(e,t){r(t);var n=e.parent,i=e.next;if(t.next=i,t.prev=e,e.next=t,t.parent=n,i){if(i.prev=t,n){var a=n.children;a.splice(a.lastIndexOf(i),0,t)}}else n&&n.children.push(t)},t.prependChild=function(e,t){if(r(t),t.parent=e,t.prev=null,1!==e.children.unshift(t)){var n=e.children[1];n.prev=t,t.next=n}else t.next=null},t.prepend=function(e,t){r(t);var n=e.parent;if(n){var i=n.children;i.splice(i.indexOf(e),0,t)}e.prev&&(e.prev.next=t),t.parent=n,t.prev=e.prev,t.next=e,e.prev=t}},17853:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.findAll=t.existsOne=t.findOne=t.findOneChild=t.find=t.filter=void 0;var n=r(79959);function i(e,t,r,i){for(var a=[],o=[t],s=[0];;)if(s[0]>=o[0].length){if(1===s.length)return a;o.shift(),s.shift()}else{var c=o[0][s[0]++];if(e(c)&&(a.push(c),--i<=0))return a;r&&(0,n.hasChildren)(c)&&c.children.length>0&&(s.unshift(0),o.unshift(c.children))}}t.filter=function(e,t,r,n){return void 0===r&&(r=!0),void 0===n&&(n=1/0),i(e,Array.isArray(t)?t:[t],r,n)},t.find=i,t.findOneChild=function(e,t){return t.find(e)},t.findOne=function e(t,r,i){void 0===i&&(i=!0);for(var a=null,o=0;o0&&(a=e(t,s.children,!0)))}return a},t.existsOne=function e(t,r){return r.some((function(r){return(0,n.isTag)(r)&&(t(r)||e(t,r.children))}))},t.findAll=function(e,t){for(var r=[],i=[t],a=[0];;)if(a[0]>=i[0].length){if(1===i.length)return r;i.shift(),a.shift()}else{var o=i[0][a[0]++];(0,n.isTag)(o)&&(e(o)&&r.push(o),o.children.length>0&&(a.unshift(0),i.unshift(o.children)))}}},87559:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.innerText=t.textContent=t.getText=t.getInnerHTML=t.getOuterHTML=void 0;var i=r(79959),a=n(r(50606)),o=r(34821);function s(e,t){return(0,a.default)(e,t)}t.getOuterHTML=s,t.getInnerHTML=function(e,t){return(0,i.hasChildren)(e)?e.children.map((function(e){return s(e,t)})).join(""):""},t.getText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.isTag)(t)?"br"===t.name?"\n":e(t.children):(0,i.isCDATA)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.textContent=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&!(0,i.isComment)(t)?e(t.children):(0,i.isText)(t)?t.data:""},t.innerText=function e(t){return Array.isArray(t)?t.map(e).join(""):(0,i.hasChildren)(t)&&(t.type===o.ElementType.Tag||(0,i.isCDATA)(t))?e(t.children):(0,i.isText)(t)?t.data:""}},16304:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.prevElementSibling=t.nextElementSibling=t.getName=t.hasAttrib=t.getAttributeValue=t.getSiblings=t.getParent=t.getChildren=void 0;var n=r(79959);function i(e){return(0,n.hasChildren)(e)?e.children:[]}function a(e){return e.parent||null}t.getChildren=i,t.getParent=a,t.getSiblings=function(e){var t=a(e);if(null!=t)return i(t);for(var r=[e],n=e.prev,o=e.next;null!=n;)r.unshift(n),n=n.prev;for(;null!=o;)r.push(o),o=o.next;return r},t.getAttributeValue=function(e,t){var r;return null===(r=e.attribs)||void 0===r?void 0:r[t]},t.hasAttrib=function(e,t){return null!=e.attribs&&Object.prototype.hasOwnProperty.call(e.attribs,t)&&null!=e.attribs[t]},t.getName=function(e){return e.name},t.nextElementSibling=function(e){for(var t=e.next;null!==t&&!(0,n.isTag)(t);)t=t.next;return t},t.prevElementSibling=function(e){for(var t=e.prev;null!==t&&!(0,n.isTag)(t);)t=t.prev;return t}},73094:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXML=t.decodeHTMLStrict=t.decodeHTMLAttribute=t.decodeHTML=t.determineBranch=t.EntityDecoder=t.DecodingMode=t.BinTrieFlags=t.fromCodePoint=t.replaceCodePoint=t.decodeCodePoint=t.xmlDecodeTree=t.htmlDecodeTree=void 0;var s=o(r(35537));t.htmlDecodeTree=s.default;var c=o(r(57424));t.xmlDecodeTree=c.default;var u=a(r(70105));t.decodeCodePoint=u.default;var l,d,h,p,f=r(70105);function y(e){return e>=l.ZERO&&e<=l.NINE}Object.defineProperty(t,"replaceCodePoint",{enumerable:!0,get:function(){return f.replaceCodePoint}}),Object.defineProperty(t,"fromCodePoint",{enumerable:!0,get:function(){return f.fromCodePoint}}),function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(l||(l={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}(d=t.BinTrieFlags||(t.BinTrieFlags={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(h||(h={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(p=t.DecodingMode||(t.DecodingMode={}));var g=function(){function e(e,t,r){this.decodeTree=e,this.emitCodePoint=t,this.errors=r,this.state=h.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=p.Strict}return e.prototype.startEntity=function(e){this.decodeMode=e,this.state=h.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1},e.prototype.write=function(e,t){switch(this.state){case h.EntityStart:return e.charCodeAt(t)===l.NUM?(this.state=h.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=h.NamedEntity,this.stateNamedEntity(e,t));case h.NumericStart:return this.stateNumericStart(e,t);case h.NumericDecimal:return this.stateNumericDecimal(e,t);case h.NumericHex:return this.stateNumericHex(e,t);case h.NamedEntity:return this.stateNamedEntity(e,t)}},e.prototype.stateNumericStart=function(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===l.LOWER_X?(this.state=h.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=h.NumericDecimal,this.stateNumericDecimal(e,t))},e.prototype.addToNumericResult=function(e,t,r,n){if(t!==r){var i=r-t;this.result=this.result*Math.pow(n,i)+parseInt(e.substr(t,i),n),this.consumed+=i}},e.prototype.stateNumericHex=function(e,t){for(var r,n=t;t=l.UPPER_A&&r<=l.UPPER_F||r>=l.LOWER_A&&r<=l.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(i,3);t+=1}return this.addToNumericResult(e,n,t,16),-1},e.prototype.stateNumericDecimal=function(e,t){for(var r=t;t>14;t=l.UPPER_A&&e<=l.UPPER_Z||e>=l.LOWER_A&&e<=l.LOWER_Z||y(e)}(o)))?0:this.emitNotTerminatedNamedEntity();if(0!=(i=((n=r[this.treeIndex])&d.VALUE_LENGTH)>>14)){if(a===l.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==p.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}var o;return-1},e.prototype.emitNotTerminatedNamedEntity=function(){var e,t=this.result,r=(this.decodeTree[t]&d.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed},e.prototype.emitNamedEntityData=function(e,t,r){var n=this.decodeTree;return this.emitCodePoint(1===t?n[e]&~d.VALUE_LENGTH:n[e+1],r),3===t&&this.emitCodePoint(n[e+2],r),r},e.prototype.end=function(){var e;switch(this.state){case h.NamedEntity:return 0===this.result||this.decodeMode===p.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case h.NumericDecimal:return this.emitNumericEntity(0,2);case h.NumericHex:return this.emitNumericEntity(0,3);case h.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case h.EntityStart:return 0}},e}();function m(e){var t="",r=new g(e,(function(e){return t+=(0,u.fromCodePoint)(e)}));return function(e,n){for(var i=0,a=0;(a=e.indexOf("&",a))>=0;){t+=e.slice(i,a),r.startEntity(n);var o=r.write(e,a+1);if(o<0){i=a+r.end();break}i=a+o,a=0===o?i+1:i}var s=t+e.slice(i);return t="",s}}function b(e,t,r,n){var i=(t&d.BRANCH_LENGTH)>>7,a=t&d.JUMP_TABLE;if(0===i)return 0!==a&&n===a?r:-1;if(a){var o=n-a;return o<0||o>=i?-1:e[r+o]-1}for(var s=r,c=s+i-1;s<=c;){var u=s+c>>>1,l=e[u];if(ln))return e[u+i];c=u-1}}return-1}t.EntityDecoder=g,t.determineBranch=b;var v=m(s.default),_=m(c.default);t.decodeHTML=function(e,t){return void 0===t&&(t=p.Legacy),v(e,t)},t.decodeHTMLAttribute=function(e){return v(e,p.Attribute)},t.decodeHTMLStrict=function(e){return v(e,p.Strict)},t.decodeXML=function(e){return _(e,p.Strict)}},70105:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.replaceCodePoint=t.fromCodePoint=void 0;var n=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function i(e){var t;return e>=55296&&e<=57343||e>1114111?65533:null!==(t=n.get(e))&&void 0!==t?t:e}t.fromCodePoint=null!==(r=String.fromCodePoint)&&void 0!==r?r:function(e){var t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)},t.replaceCodePoint=i,t.default=function(e){return(0,t.fromCodePoint)(i(e))}},41029:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.encodeNonAsciiHTML=t.encodeHTML=void 0;var i=n(r(76437)),a=r(29970),o=/[\t\n!-,./:-@[-`\f{-}$\x80-\uFFFF]/g;function s(e,t){for(var r,n="",o=0;null!==(r=e.exec(t));){var s=r.index;n+=t.substring(o,s);var c=t.charCodeAt(s),u=i.default.get(c);if("object"==typeof u){if(s+1{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.getCodePoint=t.xmlReplacer=void 0,t.xmlReplacer=/["&'<>$\x80-\uFFFF]/g;var r=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]);function n(e){for(var n,i="",a=0;null!==(n=t.xmlReplacer.exec(e));){var o=n.index,s=e.charCodeAt(o),c=r.get(s);void 0!==c?(i+=e.substring(a,o)+c,a=o+1):(i+="".concat(e.substring(a,o),"&#x").concat((0,t.getCodePoint)(e,o).toString(16),";"),a=t.xmlReplacer.lastIndex+=Number(55296==(64512&s)))}return i+e.substr(a)}function i(e,t){return function(r){for(var n,i=0,a="";n=e.exec(r);)i!==n.index&&(a+=r.substring(i,n.index)),a+=t.get(n[0].charCodeAt(0)),i=n.index+1;return a+r.substring(i)}}t.getCodePoint=null!=String.prototype.codePointAt?function(e,t){return e.codePointAt(t)}:function(e,t){return 55296==(64512&e.charCodeAt(t))?1024*(e.charCodeAt(t)-55296)+e.charCodeAt(t+1)-56320+65536:e.charCodeAt(t)},t.encodeXML=n,t.escape=n,t.escapeUTF8=i(/[&<>'"]/g,r),t.escapeAttribute=i(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),t.escapeText=i(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]))},35537:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map((function(e){return e.charCodeAt(0)})))},57424:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=new Uint16Array("Ȁaglq\tɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map((function(e){return e.charCodeAt(0)})))},76437:(e,t)=>{"use strict";function r(e){for(var t=1;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decodeXMLStrict=t.decodeHTML5Strict=t.decodeHTML4Strict=t.decodeHTML5=t.decodeHTML4=t.decodeHTMLAttribute=t.decodeHTMLStrict=t.decodeHTML=t.decodeXML=t.DecodingMode=t.EntityDecoder=t.encodeHTML5=t.encodeHTML4=t.encodeNonAsciiHTML=t.encodeHTML=t.escapeText=t.escapeAttribute=t.escapeUTF8=t.escape=t.encodeXML=t.encode=t.decodeStrict=t.decode=t.EncodingMode=t.EntityLevel=void 0;var n,i,a=r(73094),o=r(41029),s=r(29970);function c(e,t){if(void 0===t&&(t=n.XML),("number"==typeof t?t:t.level)===n.HTML){var r="object"==typeof t?t.mode:void 0;return(0,a.decodeHTML)(e,r)}return(0,a.decodeXML)(e)}!function(e){e[e.XML=0]="XML",e[e.HTML=1]="HTML"}(n=t.EntityLevel||(t.EntityLevel={})),function(e){e[e.UTF8=0]="UTF8",e[e.ASCII=1]="ASCII",e[e.Extensive=2]="Extensive",e[e.Attribute=3]="Attribute",e[e.Text=4]="Text"}(i=t.EncodingMode||(t.EncodingMode={})),t.decode=c,t.decodeStrict=function(e,t){var r;void 0===t&&(t=n.XML);var i="number"==typeof t?{level:t}:t;return null!==(r=i.mode)&&void 0!==r||(i.mode=a.DecodingMode.Strict),c(e,i)},t.encode=function(e,t){void 0===t&&(t=n.XML);var r="number"==typeof t?{level:t}:t;return r.mode===i.UTF8?(0,s.escapeUTF8)(e):r.mode===i.Attribute?(0,s.escapeAttribute)(e):r.mode===i.Text?(0,s.escapeText)(e):r.level===n.HTML?r.mode===i.ASCII?(0,o.encodeNonAsciiHTML)(e):(0,o.encodeHTML)(e):(0,s.encodeXML)(e)};var u=r(29970);Object.defineProperty(t,"encodeXML",{enumerable:!0,get:function(){return u.encodeXML}}),Object.defineProperty(t,"escape",{enumerable:!0,get:function(){return u.escape}}),Object.defineProperty(t,"escapeUTF8",{enumerable:!0,get:function(){return u.escapeUTF8}}),Object.defineProperty(t,"escapeAttribute",{enumerable:!0,get:function(){return u.escapeAttribute}}),Object.defineProperty(t,"escapeText",{enumerable:!0,get:function(){return u.escapeText}});var l=r(41029);Object.defineProperty(t,"encodeHTML",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeNonAsciiHTML",{enumerable:!0,get:function(){return l.encodeNonAsciiHTML}}),Object.defineProperty(t,"encodeHTML4",{enumerable:!0,get:function(){return l.encodeHTML}}),Object.defineProperty(t,"encodeHTML5",{enumerable:!0,get:function(){return l.encodeHTML}});var d=r(73094);Object.defineProperty(t,"EntityDecoder",{enumerable:!0,get:function(){return d.EntityDecoder}}),Object.defineProperty(t,"DecodingMode",{enumerable:!0,get:function(){return d.DecodingMode}}),Object.defineProperty(t,"decodeXML",{enumerable:!0,get:function(){return d.decodeXML}}),Object.defineProperty(t,"decodeHTML",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTMLStrict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTMLAttribute",{enumerable:!0,get:function(){return d.decodeHTMLAttribute}}),Object.defineProperty(t,"decodeHTML4",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTML5",{enumerable:!0,get:function(){return d.decodeHTML}}),Object.defineProperty(t,"decodeHTML4Strict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeHTML5Strict",{enumerable:!0,get:function(){return d.decodeHTMLStrict}}),Object.defineProperty(t,"decodeXMLStrict",{enumerable:!0,get:function(){return d.decodeXML}})},22699:e=>{"use strict";var t,r="object"==typeof Reflect?Reflect:null,n=r&&"function"==typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!=e};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,a),n(r)}function a(){"function"==typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}y(e,t,a,{once:!0}),"error"!==t&&function(e,t,r){"function"==typeof e.on&&y(e,"error",t,{once:!0})}(e,i)}))},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var o=10;function s(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?a.defaultMaxListeners:e._maxListeners}function u(e,t,r,n){var i,a,o,u;if(s(r),void 0===(a=e._events)?(a=e._events=Object.create(null),e._eventsCount=0):(void 0!==a.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),a=e._events),o=a[t]),void 0===o)o=a[t]=r,++e._eventsCount;else if("function"==typeof o?o=a[t]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),(i=c(e))>0&&o.length>i&&!o.warned){o.warned=!0;var l=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");l.name="MaxListenersExceededWarning",l.emitter=e,l.type=t,l.count=o.length,u=l,console&&console.warn&&console.warn(u)}return e}function l(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=l.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"==typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(o=t[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var c=a[e];if(void 0===c)return!1;if("function"==typeof c)n(c,this,t);else{var u=c.length,l=f(c,u);for(r=0;r=0;a--)if(r[a]===t||r[a].listener===t){o=r[a].listener,i=a;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},a.prototype.listeners=function(e){return h(this,e,!0)},a.prototype.rawListeners=function(e){return h(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):p.call(e,t)},a.prototype.listenerCount=p,a.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},42598:e=>{"use strict";e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;var n,i,a;if(Array.isArray(t)){if((n=t.length)!=r.length)return!1;for(i=n;0!=i--;)if(!e(t[i],r[i]))return!1;return!0}if(t instanceof Map&&r instanceof Map){if(t.size!==r.size)return!1;for(i of t.entries())if(!r.has(i[0]))return!1;for(i of t.entries())if(!e(i[1],r.get(i[0])))return!1;return!0}if(t instanceof Set&&r instanceof Set){if(t.size!==r.size)return!1;for(i of t.entries())if(!r.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(r)){if((n=t.length)!=r.length)return!1;for(i=n;0!=i--;)if(t[i]!==r[i])return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((n=(a=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(r,a[i]))return!1;for(i=n;0!=i--;){var o=a[i];if(!e(t[o],r[o]))return!1}return!0}return t!=t&&r!=r}},88436:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(587),t)},587:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlEndpointFetcher=void 0,r(84342);const n=r(47948),i=r(2085),a=r(78152),o=r(31709),s=r(29038),c=r(88146),u=r(66641),l=r(58607);class d{constructor(e){e=e||{},this.method=e.method||"POST",this.additionalUrlParams=e.additionalUrlParams||new URLSearchParams,this.defaultHeaders=e.defaultHeaders||new Headers,this.fetchCb=e.fetch,this.sparqlJsonParser=new a.SparqlJsonParser(e),this.sparqlXmlParser=new o.SparqlXmlParser(e),this.sparqlParsers={[d.CONTENTTYPE_SPARQL_JSON]:{parseBooleanStream:e=>this.sparqlJsonParser.parseJsonBooleanStream(e),parseResultsStream:e=>this.sparqlJsonParser.parseJsonResultsStream(e)},[d.CONTENTTYPE_SPARQL_XML]:{parseBooleanStream:e=>this.sparqlXmlParser.parseXmlBooleanStream(e),parseResultsStream:e=>this.sparqlXmlParser.parseXmlResultsStream(e)}},this.timeout=e.timeout}getQueryType(e){const t=new i.Parser({sparqlStar:!0}).parse(e);return"query"===t.type?"DESCRIBE"===t.queryType?"CONSTRUCT":t.queryType:"UNKNOWN"}getUpdateTypes(e){const t=new i.Parser({sparqlStar:!0}).parse(e);if("update"===t.type){const e={};for(const r of t.updates)"type"in r?e[r.type]=!0:e[r.updateType]=!0;return e}return"UNKNOWN"}async fetchBindings(e,t){const[r,n]=await this.fetchRawStream(e,t,d.CONTENTTYPE_SPARQL),i=this.sparqlParsers[r];if(!i)throw new Error("Unknown SPARQL results content type: "+r);return i.parseResultsStream(n)}async fetchAsk(e,t){const[r,n]=await this.fetchRawStream(e,t,d.CONTENTTYPE_SPARQL),i=this.sparqlParsers[r];if(!i)throw new Error("Unknown SPARQL results content type: "+r);return i.parseBooleanStream(n)}async fetchTriples(e,t){return(await this.fetchRawStream(e,t,d.CONTENTTYPE_TURTLE))[1].pipe(new u.StreamParser({format:d.CONTENTTYPE_TURTLE}))}async fetchUpdate(e,t){const r=new n.default,i={};this.defaultHeaders.forEach(((e,t)=>{i[t]=e}));const a={method:"POST",headers:Object.assign(Object.assign({},i),{"content-type":"application/sparql-update"}),body:t,signal:r.signal};await this.handleFetchCall(e,a,{ignoreBody:!0}),r.abort()}async fetchRawStream(e,t,r){let n="POST"===this.method?e:e+"?query="+encodeURIComponent(t);const i=new Headers(this.defaultHeaders);let a;return i.append("Accept",r),"POST"===this.method?(i.append("Content-Type","application/x-www-form-urlencoded"),a=new URLSearchParams,a.set("query",t),this.additionalUrlParams.forEach(((e,t)=>{a.set(t,e)})),i.append("Content-Length",a.toString().length.toString())):""!==this.additionalUrlParams.toString()&&(n+=`&${this.additionalUrlParams.toString()}`),this.handleFetchCall(n,{headers:i,method:this.method,body:a})}async handleFetchCall(e,t,r={}){let i;if(this.timeout){const e=new n.default;t.signal=e.signal,i=setTimeout((()=>e.abort()),this.timeout)}const a=await(this.fetchCb||fetch)(e,t);let o;clearTimeout(i),r.ignoreBody||(o=l(a.body)?a.body:new c.ReadableWebToNodeStream(a.body));let u=a.headers.get("Content-Type")||"";if(u.indexOf(";")>0&&(u=u.substr(0,u.indexOf(";"))),!a.ok){const t=/^[^?]*/u.exec(e)[0];let r="empty response";throw o&&(r=await s(o)),new Error(`Invalid SPARQL endpoint response from ${t} (HTTP status ${a.status}):\n${r}`)}return[u,o]}}d.CONTENTTYPE_SPARQL_JSON="application/sparql-results+json",d.CONTENTTYPE_SPARQL_XML="application/sparql-results+xml",d.CONTENTTYPE_SPARQL=`${d.CONTENTTYPE_SPARQL_JSON};q=1.0,${d.CONTENTTYPE_SPARQL_XML};q=0.7`,d.CONTENTTYPE_TURTLE="text/turtle",t.SparqlEndpointFetcher=d},84342:function(){!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}("undefined"!=typeof self?self:this)},67020:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(10972),t),i(r(65093),t),i(r(20651),t),i(r(57736),t),i(r(27666),t)},65093:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.Converter=void 0;const i=r(47401),a=r(10972),o=r(35119),s=r(20651),c=r(27666);class u{constructor(e){(e=e||{}).variableDelimiter=e.variableDelimiter||"_",e.expressionVariableCounter=e.expressionVariableCounter||0,this.util=new c.Util(e),this.initializeNodeHandlers(e)}static registerNodeHandlers(e,t){e.registerNodeHandler(new a.NodeHandlerDocument(e,t)),e.registerNodeHandler(new a.NodeHandlerDefinitionOperation(e,t)),e.registerNodeHandler(new a.NodeHandlerDefinitionFragment(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionFragmentSpread(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionInlineFragment(e,t)),e.registerNodeHandler(new a.NodeHandlerSelectionField(e,t))}static registerNodeValueHandlers(e,t){e.registerNodeValueHandler(new a.NodeValueHandlerVariable(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerInt(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerFloat(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerString(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerBoolean(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerNull(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerEnum(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerList(e,t)),e.registerNodeValueHandler(new a.NodeValueHandlerObject(e,t))}static registerDirectiveNodeHandlers(e,t){e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerInclude(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerOptional(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerPlural(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerSingle(e,t)),e.registerDirectiveNodeHandler(new o.DirectiveNodeHandlerSkip(e,t))}graphqlToSparqlAlgebra(e,t,r){return n(this,void 0,void 0,(function*(){return this.graphqlToSparqlAlgebraRawContext(e,yield this.util.contextParser.parse(t),r)}))}graphqlToSparqlAlgebraRawContext(e,t,r){r=r||{};const n="string"==typeof e?(0,i.parse)(e):e,a={context:t,fragmentDefinitions:this.indexFragments(n),graph:this.util.dataFactory.defaultGraph(),path:[],singularizeState:s.SingularizeState.PLURAL,singularizeVariables:r.singularizeVariables||{},subject:null,terminalVariables:[],variablesDict:r.variablesDict||{},variablesMetaDict:{}};return this.util.handleNode(n,a)}indexFragments(e){const t={},r=[];for(const n of e.definitions)"FragmentDefinition"===n.kind?t[n.name.value]=n:r.push(n);return e.definitions=r,t}initializeNodeHandlers(e){u.registerNodeHandlers(this.util,e),u.registerNodeValueHandlers(this.util,e),u.registerDirectiveNodeHandlers(this.util,e)}}t.Converter=u},20651:(e,t)=>{"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.SingularizeState=void 0,(r=t.SingularizeState||(t.SingularizeState={}))[r.SINGLE=0]="SINGLE",r[r.PLURAL=1]="PLURAL"},57736:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},27666:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(91194),i=r(1838),a=r(6789);t.Util=class{constructor(e){this.nodeHandlers={},this.nodeValueHandlers={},this.directiveNodeHandlers={},this.settings=e,this.dataFactory=e.dataFactory||new n.DataFactory,this.operationFactory=new a.Factory(this.dataFactory),this.contextParser=new i.ContextParser}registerNodeHandler(e){this.nodeHandlers[e.targetKind]=e}registerNodeValueHandler(e){this.nodeValueHandlers[e.targetKind]=e}registerDirectiveNodeHandler(e){this.directiveNodeHandlers[e.targetKind]=e}handleNode(e,t){const r=this.nodeHandlers[e.kind];if(!r)throw new Error(`Unsupported GraphQL node '${e.kind}'`);return r.handle(e,t)}handleNodeValue(e,t,r){const n=this.nodeValueHandlers[e.kind];if(!n)throw new Error(`Unsupported GraphQL value node '${e.kind}'`);return n.handle(e,t,r)}handleDirectiveNode(e,t){const r=this.directiveNodeHandlers[e.directive.name.value];return r?r.handle(e,t):null}joinOperations(e){if(1===e.length)return e[0];const t=[],r=[];for(const n of e)"bgp"===n.type?t.push(n):r.push(n);if(t.length===e.length)return this.joinOperationsAsBgp(t);if(t.length===e.length-1&&"leftjoin"===r[0].type&&"bgp"===r[0].input[0].type){const e=r[0];return t.push(e.input[0]),this.operationFactory.createLeftJoin(this.joinOperationsAsBgp(t),e.input[1])}return r.length===e.length?this.joinOperationsAsNestedJoin(r):this.joinOperationsAsNestedJoin([this.joinOperationsAsBgp(t),this.joinOperationsAsNestedJoin(r)])}joinOperationsAsBgp(e){return this.operationFactory.createBgp([].concat.apply([],e.map((e=>e.patterns))))}joinOperationsAsNestedJoin(e){return this.operationFactory.createJoin(e)}appendFieldToPath(e,t){return e.concat([t])}getFieldLabel(e){return(e.alias?e.alias:e.name).value}nameToVariable(e,t){return this.dataFactory.variable((t.path.length?t.path.join(this.settings.variableDelimiter)+this.settings.variableDelimiter:"")+e)}valueToNamedNode(e,t){const r=t.expandTerm(e,!0);if(this.settings.requireContext&&!r)throw new Error("No context entry was found for "+e);return this.dataFactory.namedNode(r||e)}getArgument(e,t){if(e)for(const r of e)if(r.name.value===t)return r}newTypePattern(e,t,r){return this.operationFactory.createPattern(e,this.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),this.valueToNamedNode(t.name.value,r.context),r.graph)}createQuadPattern(e,t,r,n,i){const a=this.valueToNamedNode(t.value,i);return i&&i.getContextRaw()[t.value]&&i.getContextRaw()[t.value]["@reverse"]?this.operationFactory.createPattern(r,a,e,n):this.operationFactory.createPattern(e,a,r,n)}createQuadPath(e,t,r,n,i,a){const o=this.valueToNamedNode(t.value,a);let s=this.operationFactory.createLink(o);for(const e of r.values){if("EnumValue"!==e.kind)throw new Error("Invalid value type for 'alt' argument, must be EnumValue, but got "+e.kind);s=this.operationFactory.createAlt([s,this.operationFactory.createLink(this.valueToNamedNode(e.value,a))])}return a&&a.getContextRaw()[t.value]&&a.getContextRaw()[t.value]["@reverse"]?this.operationFactory.createPath(n,s,e,i):this.operationFactory.createPath(e,s,n,i)}}},99798:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerAdapter=void 0,t.NodeHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}getNodeQuadContextSelectionSet(e,t,r){const n={};if(e)for(const t of e.selections)if("Field"===t.kind){const e=t;this.handleNodeQuadContextField(e,r,n,"id","subject"),this.handleNodeQuadContextField(e,r,n,"graph","graph")}return n}handleNodeQuadContextField(e,t,r,n,i){if(!r[i]&&e.name.value===n){if(!r[i]){const a=this.util.getArgument(e.arguments,"_");if(a){const o=this.util.handleNodeValue(a.value,e.name.value,t);if(1!==o.terms.length)throw new Error(`Only single values can be set as ${n}, but got ${o.terms.length} at ${e.name.value}`);r[i]=o.terms[0],o.auxiliaryPatterns&&(r.auxiliaryPatterns||(r.auxiliaryPatterns=[]),r.auxiliaryPatterns.concat(o.auxiliaryPatterns))}}if(!r[i]){const n=this.util.nameToVariable(this.util.getFieldLabel(e),t);t.terminalVariables.push(n),r[i]=n}}}getDirectiveOutputs(e,t,r){const n=[];if(e)for(const i of e){const e=this.util.handleDirectiveNode({directive:i,fieldLabel:t},r);if(e){if(e.ignore)return null;n.push(e)}}return n}handleDirectiveOutputs(e,t){for(const r of e){if(r.ignore)return this.util.operationFactory.createBgp([]);r.operationOverrider&&(t=r.operationOverrider(t))}return t}}},51092:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionAdapter=void 0;const n=r(99798);class i extends n.NodeHandlerAdapter{constructor(e,t,r){super(e,t,r)}}t.NodeHandlerDefinitionAdapter=i},87440:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionFragment=void 0;const n=r(51092);class i extends n.NodeHandlerDefinitionAdapter{constructor(e,t){super("FragmentDefinition",e,t)}handle(e,t){throw new Error("Illegal state: fragment definitions must be indexed and removed before processing")}}t.NodeHandlerDefinitionFragment=i},59329:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDefinitionOperation=void 0;const n=r(51092);class i extends n.NodeHandlerDefinitionAdapter{constructor(e,t){super("OperationDefinition",e,t)}handle(e,t){if("query"!==e.operation)throw new Error("Unsupported definition operation: "+e.operation);if(e.variableDefinitions)for(const r of e.variableDefinitions){const e=r.variable.name.value;r.defaultValue&&(t.variablesDict[e]||(t.variablesDict[e]=r.defaultValue));let n=r.type;const i="NonNullType"===n.kind;i&&(n=n.type);const a="ListType"===n.kind;a&&(n=n.type);const o=n.name.value;t.variablesMetaDict[e]={mandatory:i,list:a,type:o}}const r=this.getDirectiveOutputs(e.directives,e.name?e.name.value:"",t);if(!r)return this.util.operationFactory.createBgp([]);const n=this.util.joinOperations(e.selectionSet.selections.map((e=>this.util.handleNode(e,t))));return this.handleDirectiveOutputs(r,n)}}t.NodeHandlerDefinitionOperation=i},1678:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerDocument=void 0;const n=r(6789),i=r(99798);class a extends i.NodeHandlerAdapter{constructor(e,t){super("Document",e,t)}handle(e,t){const r=e.definitions.map((e=>{const r=this.getNodeQuadContextDefinitionNode(e,Object.assign(Object.assign({},t),{ignoreUnknownVariables:!0})),n=Object.assign(Object.assign({},t),{graph:r.graph||t.graph,subject:r.subject||this.util.dataFactory.blankNode()});let i=this.util.handleNode(e,n);return r&&r.auxiliaryPatterns&&(i=this.util.joinOperations([i,this.util.operationFactory.createBgp(r.auxiliaryPatterns)])),i})),n=this.util.operationFactory.createProject(1===r.length?r[0]:this.util.operationFactory.createUnion(r),t.terminalVariables);return this.translateBlankNodesToVariables(n)}getNodeQuadContextDefinitionNode(e,t){if("OperationDefinition"===e.kind)return this.getNodeQuadContextSelectionSet(e.selectionSet,e.name?e.name.value:"",t);throw new Error(`Unsupported definition: ${e.kind}`)}translateBlankNodesToVariables(e){const t=this,r={},i=Array.from(e.variables).reduce(((e,t)=>(e[t.value]=!0,e)),{});return n.Util.mapOperation(e,{path:(e,t)=>({recurse:!1,result:t.createPath(a(e.subject),e.predicate,a(e.object),a(e.graph))}),pattern:(e,t)=>({recurse:!1,result:t.createPattern(a(e.subject),a(e.predicate),a(e.object),a(e.graph))})});function a(e){if("BlankNode"===e.termType){let a=r[e.value];return a||(a=n.Util.createUniqueVariable(e.value,i,t.util.dataFactory),i[a.value]=!0,r[e.value]=a),a}return e}}}t.NodeHandlerDocument=a},30623:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionAdapter=void 0;const n=r(6789),i=r(20651),a=r(99798);class o extends a.NodeHandlerAdapter{constructor(e,t,r){super(e,t,r)}getNodeQuadContextFieldNode(e,t,r){return this.getNodeQuadContextSelectionSet(e.selectionSet,t,Object.assign(Object.assign({},r),{path:this.util.appendFieldToPath(r.path,t)}))}fieldToOperation(e,t,r,a){const o=r;let s,c=0;if(("id"===t.name.value||"graph"===t.name.value)&&(r=!1,t.arguments))for(const r of t.arguments)"_"===r.name.value&&this.util.handleNodeValue(r.value,t.name.value,e);const u=this.util.getFieldLabel(t);if(e.singularizeState===i.SingularizeState.SINGLE&&(e.singularizeVariables[this.util.nameToVariable(u,e).value]=!0),r){const t=this.handleMetaField(e,u,a);if(t)return t}const l=a?[this.util.operationFactory.createBgp(a)]:[],d=this.getNodeQuadContextFieldNode(t,u,e);let h=d.subject||this.util.nameToVariable(u,e),p=d.graph||e.graph;d.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(d.auxiliaryPatterns));let f=!0,y=null;if(r&&t.arguments&&t.arguments.length)for(const n of t.arguments){if("_"===n.name.value){const i=this.util.handleNodeValue(n.value,t.name.value,e);y=i.terms,l.push(this.util.operationFactory.createBgp(i.terms.map((r=>this.util.createQuadPattern(e.subject,t.name,r,e.graph,e.context))))),i.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(i.auxiliaryPatterns)),r=!1;break}if("graph"===n.name.value){const r=this.util.handleNodeValue(n.value,t.name.value,e);if(1!==r.terms.length)throw new Error(`Only single values can be set as graph, but got ${r.terms.length} at ${t.name.value}`);p=r.terms[0],e=Object.assign(Object.assign({},e),{graph:p}),r.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(r.auxiliaryPatterns));break}if("alt"===n.name.value){let r=n.value;"ListValue"!==r.kind&&(r={kind:"ListValue",values:[r]}),l.push(this.util.createQuadPath(e.subject,t.name,r,h,e.graph,e.context)),f=!1;break}}if(r&&f&&l.push(this.util.operationFactory.createBgp([this.util.createQuadPattern(e.subject,t.name,h,e.graph,e.context)])),t.arguments&&t.arguments.length)for(const r of t.arguments)if("_"===r.name.value||"graph"===r.name.value||"alt"===r.name.value);else if("first"===r.name.value){if("IntValue"!==r.value.kind)throw new Error("Invalid value type for 'first' argument: "+r.value.kind);s=parseInt(r.value.value,10)}else if("offset"===r.name.value){if("IntValue"!==r.value.kind)throw new Error("Invalid value type for 'offset' argument: "+r.value.kind);c=parseInt(r.value.value,10)}else{const t=this.util.handleNodeValue(r.value,r.name.value,e);l.push(this.util.operationFactory.createBgp(t.terms.map((t=>this.util.createQuadPattern(h,r.name,t,e.graph,e.context))))),t.auxiliaryPatterns&&l.push(this.util.operationFactory.createBgp(t.auxiliaryPatterns))}const g=this.getDirectiveOutputs(t.directives,u,e);if(!g)return this.util.operationFactory.createBgp([]);let m=this.util.joinOperations(l);if(t.selectionSet&&t.selectionSet.selections.length){if(y){if(1!==y.length)throw new Error(`Only single values can be set as id, but got ${y.length} at ${t.name.value}`);h=y[0]}const r=Object.assign(Object.assign(Object.assign({},e),o?{path:this.util.appendFieldToPath(e.path,u)}:{}),{graph:p,subject:o?h:e.subject});let n=!1;const i=t.selectionSet.selections.filter((e=>"Field"!==e.kind||"totalCount"!==e.name.value||(n=!0,!1)));let a=this.util.joinOperations(l.concat(i.map((e=>this.util.handleNode(e,r)))));if(n){const t=this.util.dataFactory.variable("var"+this.settings.expressionVariableCounter++),r=this.util.dataFactory.variable(h.value+this.settings.variableDelimiter+"totalCount"),n=this.util.operationFactory.createBoundAggregate(t,"count",this.util.operationFactory.createTermExpression(h),!1),o=this.util.operationFactory.createProject(this.util.operationFactory.createExtend(this.util.operationFactory.createGroup(m,[],[n]),r,this.util.operationFactory.createTermExpression(t)),[r]);e.terminalVariables.push(r),a=i.length?this.util.operationFactory.createJoin([this.util.operationFactory.createProject(a,[]),o]):o}m=a}else r&&"Variable"===h.termType&&e.terminalVariables.push(h);return(c||s)&&(m=this.util.operationFactory.createSlice(this.util.operationFactory.createProject(m,n.Util.inScopeVariables(m)),c,s)),this.handleDirectiveOutputs(g,m)}handleMetaField(e,t,r){if("__typename"===t){const n=this.util.nameToVariable(t,e);return e.terminalVariables.push(n),this.util.operationFactory.createBgp([this.util.operationFactory.createPattern(e.subject,this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),this.util.nameToVariable(t,e),e.graph)].concat(r||[]))}}}t.NodeHandlerSelectionAdapter=o},90080:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionField=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("Field",e,t)}handle(e,t){return this.fieldToOperation(t,e,!0)}}t.NodeHandlerSelectionField=i},42646:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionFragmentSpread=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("FragmentSpread",e,t)}handle(e,t){const r=t.fragmentDefinitions[e.name.value];if(!r)throw new Error("Undefined fragment definition: "+e.name.value);const n={alias:void 0,arguments:void 0,directives:r.directives,kind:"Field",name:e.name,selectionSet:r.selectionSet},i=[this.util.newTypePattern(t.subject,r.typeCondition,t)];return this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),this.fieldToOperation(t,n,!1,i))}}t.NodeHandlerSelectionFragmentSpread=i},19501:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeHandlerSelectionInlineFragment=void 0;const n=r(30623);class i extends n.NodeHandlerSelectionAdapter{constructor(e,t){super("InlineFragment",e,t)}handle(e,t){const r={alias:void 0,arguments:void 0,directives:e.directives,kind:"Field",name:{kind:"Name",value:t.subject.value},selectionSet:e.selectionSet},n=e.typeCondition?[this.util.newTypePattern(t.subject,e.typeCondition,t)]:[];return this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),this.fieldToOperation(t,r,!1,n))}}t.NodeHandlerSelectionInlineFragment=i},43630:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerAdapter=void 0,t.DirectiveNodeHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}getDirectiveConditionalValue(e,t){const r=this.util.getArgument(e.arguments,"if");if(!r)throw new Error(`The directive ${e.name.value} is missing an if-argument.`);const n=this.util.handleNodeValue(r.value,r.name.value,t);if(1!==n.terms.length)throw new Error(`Can not apply the directive ${e.name.value} with a list.`);return n.terms[0]}isDirectiveScopeAll(e){const t=this.util.getArgument(e.arguments,"scope");return t&&"EnumValue"===t.value.kind&&"all"===t.value.value}}},76895:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerInclude=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("include",e,t)}handle(e,t){const r=this.getDirectiveConditionalValue(e.directive,t);return"Literal"===r.termType&&"false"===r.value?{ignore:!0}:{}}}t.DirectiveNodeHandlerInclude=i},83423:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerOptional=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("optional",e,t)}handle(e,t){return{operationOverrider:e=>this.util.operationFactory.createLeftJoin(this.util.operationFactory.createBgp([]),e)}}}t.DirectiveNodeHandlerOptional=i},14254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerPlural=void 0;const n=r(20651),i=r(43630);class a extends i.DirectiveNodeHandlerAdapter{constructor(e,t){super("plural",e,t)}handle(e,t){return this.isDirectiveScopeAll(e.directive)&&(t.singularizeState=n.SingularizeState.PLURAL),delete t.singularizeVariables[this.util.nameToVariable(e.fieldLabel,t).value],{}}}t.DirectiveNodeHandlerPlural=a},83675:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerSingle=void 0;const n=r(20651),i=r(43630);class a extends i.DirectiveNodeHandlerAdapter{constructor(e,t){super("single",e,t)}handle(e,t){return this.isDirectiveScopeAll(e.directive)&&(t.singularizeState=n.SingularizeState.SINGLE),t.singularizeVariables[this.util.nameToVariable(e.fieldLabel,t).value]=!0,{}}}t.DirectiveNodeHandlerSingle=a},80363:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveNodeHandlerSkip=void 0;const n=r(43630);class i extends n.DirectiveNodeHandlerAdapter{constructor(e,t){super("skip",e,t)}handle(e,t){const r=this.getDirectiveConditionalValue(e.directive,t);return"Literal"===r.termType&&"true"===r.value?{ignore:!0}:{}}}t.DirectiveNodeHandlerSkip=i},35119:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(43630),t),i(r(76895),t),i(r(83423),t),i(r(14254),t),i(r(83675),t),i(r(80363),t)},10972:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(35119),t),i(r(14849),t),i(r(99798),t),i(r(51092),t),i(r(87440),t),i(r(59329),t),i(r(1678),t),i(r(30623),t),i(r(90080),t),i(r(42646),t),i(r(19501),t)},33743:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerAdapter=void 0,t.NodeValueHandlerAdapter=class{constructor(e,t,r){this.targetKind=e,this.util=t,this.settings=r}}},75811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerBoolean=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("BooleanValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#boolean")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value?"true":"false",this.datatype)]}}}t.NodeValueHandlerBoolean=i},67931:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerEnum=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("EnumValue",e,t)}handle(e,t,r){return{terms:[this.util.valueToNamedNode(e.value,r.context)]}}}t.NodeValueHandlerEnum=i},28715:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerFloat=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("FloatValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#float")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value,this.datatype)]}}}t.NodeValueHandlerFloat=i},44163:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerInt=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("IntValue",e,t),this.datatype=this.util.dataFactory.namedNode("http://www.w3.org/2001/XMLSchema#integer")}handle(e,t,r){return{terms:[this.util.dataFactory.literal(e.value,this.datatype)]}}}t.NodeValueHandlerInt=i},69864:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerList=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("ListValue",e,t),this.nodeFirst=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),this.nodeRest=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),this.nodeNil=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil")}handle(e,t,r){const n=[];let i=[];for(const a of e.values){const e=this.util.handleNodeValue(a,t,r);for(const t of e.terms)n.push(t);e.auxiliaryPatterns&&(i=i.concat(e.auxiliaryPatterns))}if(this.settings.arraysToRdfLists){const e=this.util.dataFactory.blankNode();let t=e,a=n.length;for(const e of n){i.push(this.util.operationFactory.createPattern(t,this.nodeFirst,e,r.graph));const n=0==--a?this.nodeNil:this.util.dataFactory.blankNode();i.push(this.util.operationFactory.createPattern(t,this.nodeRest,n,r.graph)),t=n}return{terms:[e],auxiliaryPatterns:i}}return{terms:n,auxiliaryPatterns:i}}}t.NodeValueHandlerList=i},39757:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerNull=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("NullValue",e,t),this.nil=this.util.dataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil")}handle(e,t,r){return{terms:[this.nil]}}}t.NodeValueHandlerNull=i},82649:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerObject=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("ObjectValue",e,t)}handle(e,t,r){const n=this.util.dataFactory.blankNode();let i=[];for(const a of e.fields){const e=this.util.handleNodeValue(a.value,t,r);for(const t of e.terms)i.push(this.util.createQuadPattern(n,a.name,t,r.graph,r.context));e.auxiliaryPatterns&&(i=i.concat(e.auxiliaryPatterns))}return{terms:[n],auxiliaryPatterns:i}}}t.NodeValueHandlerObject=i},86842:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerString=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("StringValue",e,t)}handle(e,t,r){const n=r.context.getContextRaw()[t];let i,a;return n&&"string"!=typeof n&&(n["@language"]?i=n["@language"]:n["@type"]&&(a=this.util.dataFactory.namedNode(n["@type"]))),{terms:[this.util.dataFactory.literal(e.value,i||a)]}}}t.NodeValueHandlerString=i},15834:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeValueHandlerVariable=void 0;const n=r(33743);class i extends n.NodeValueHandlerAdapter{constructor(e,t){super("Variable",e,t)}handle(e,t,r){const n=e.name.value,i=r.variablesDict[n],a=r.variablesMetaDict[n];if(!i){if(r.ignoreUnknownVariables||a&&!a.mandatory){const e=this.util.dataFactory.variable(n);return r.terminalVariables.map((e=>e.value)).indexOf(n)<0&&r.terminalVariables.push(e),{terms:[e]}}throw new Error(`Undefined variable: ${n}`)}if("Variable"===i.kind)throw new Error(`Variable refers to another variable: ${n}`);if(a)if(a.list){if("ListValue"!==i.kind)throw new Error(`Expected a list, but got ${i.kind} for ${n}`);if(a.type){const e=i;for(const t of e.values)if(t.kind!==a.type)throw new Error(`Expected ${a.type}, but got ${t.kind} for ${n}`)}}else a.type;return this.util.handleNodeValue(i,t,r)}}t.NodeValueHandlerVariable=i},14849:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(33743),t),i(r(75811),t),i(r(67931),t),i(r(28715),t),i(r(44163),t),i(r(69864),t),i(r(39757),t),i(r(82649),t),i(r(86842),t),i(r(15834),t)},86583:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.printError=w,t.GraphQLError=void 0;var i,a=(i=r(68648))&&i.__esModule?i:{default:i},o=r(97682),s=r(27447),c=r(79941);function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){for(var r=0;r0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),null!=o&&o.stack?(Object.defineProperty(p(b),"stack",{value:o.stack,writable:!0,configurable:!0}),h(b)):(Error.captureStackTrace?Error.captureStackTrace(p(b),f):Object.defineProperty(p(b),"stack",{value:Error().stack,writable:!0,configurable:!0}),b)}return n=f,(i=[{key:"toString",value:function(){return w(this)}},{key:o.SYMBOL_TO_STRING_TAG,get:function(){return"Object"}}])&&d(n.prototype,i),f}(f(Error));function _(e){return void 0===e||0===e.length?void 0:e}function w(e){var t=e.message;if(e.nodes)for(var r=0,n=e.nodes;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.syntaxError=function(e,t,r){return new n.GraphQLError("Syntax Error: ".concat(r),void 0,e,[t])};var n=r(86583)},72678:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=e.prototype.toJSON;"function"==typeof t||(0,n.default)(0),e.prototype.inspect=t,i.default&&(e.prototype[i.default]=t)};var n=a(r(75006)),i=a(r(98019));function a(e){return e&&e.__esModule?e:{default:e}}},61914:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!Boolean(e))throw new Error(t)}},98048:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return c(e,[])};var n,i=(n=r(98019))&&n.__esModule?n:{default:n};function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}var o=10,s=2;function c(e,t){switch(a(e)){case"string":return JSON.stringify(e);case"function":return e.name?"[function ".concat(e.name,"]"):"[function]";case"object":return null===e?"null":function(e,t){if(-1!==t.indexOf(e))return"[Circular]";var r=[].concat(t,[e]),n=function(e){var t=e[String(i.default)];return"function"==typeof t?t:"function"==typeof e.inspect?e.inspect:void 0}(e);if(void 0!==n){var a=n.call(e);if(a!==e)return"string"==typeof a?a:c(a,r)}else if(Array.isArray(e))return function(e,t){if(0===e.length)return"[]";if(t.length>s)return"[Array]";for(var r=Math.min(o,e.length),n=e.length-r,i=[],a=0;a1&&i.push("... ".concat(n," more items")),"["+i.join(", ")+"]"}(e,r);return function(e,t){var r=Object.keys(e);return 0===r.length?"{}":t.length>s?"["+function(e){var t=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if("Object"===t&&"function"==typeof e.constructor){var r=e.constructor.name;if("string"==typeof r&&""!==r)return r}return t}(e)+"]":"{ "+r.map((function(r){return r+": "+c(e[r],t)})).join(", ")+" }"}(e,r)}(e,t);default:return String(e)}}},70882:(e,t,r)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,(n=r(98048))&&n.__esModule;t.default=function(e,t){return e instanceof t}},75006:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!Boolean(e))throw new Error(null!=t?t:"Unexpected invariant triggered.")}},68648:(e,t)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"object"==r(e)&&null!==e}},98019:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):void 0;t.default=r},64560:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isNode=function(e){return null!=e&&"string"==typeof e.kind},t.Token=t.Location=void 0;var n,i=(n=r(72678))&&n.__esModule?n:{default:n},a=function(){function e(e,t,r){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=r}return e.prototype.toJSON=function(){return{start:this.start,end:this.end}},e}();t.Location=a,(0,i.default)(a);var o=function(){function e(e,t,r,n,i,a,o){this.kind=e,this.start=t,this.end=r,this.line=n,this.column=i,this.value=o,this.prev=a,this.next=null}return e.prototype.toJSON=function(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}},e}();t.Token=o,(0,i.default)(o)},49501:(e,t)=>{"use strict";function r(e){for(var t=0;to&&r(t[s-1]);)--s;return t.slice(o,s).join("\n")},t.getBlockStringIndentation=n,t.printBlockString=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=-1===e.indexOf("\n"),i=" "===e[0]||"\t"===e[0],a='"'===e[e.length-1],o="\\"===e[e.length-1],s=!n||a||o||r,c="";return!s||n&&i||(c+="\n"+t),c+=t?e.replace(/\n/g,"\n"+t):e,s&&(c+="\n"),'"""'+c.replace(/"""/g,'\\"""')+'"""'}},29496:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DirectiveLocation=void 0;var r=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});t.DirectiveLocation=r},47401:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Source",{enumerable:!0,get:function(){return n.Source}}),Object.defineProperty(t,"getLocation",{enumerable:!0,get:function(){return i.getLocation}}),Object.defineProperty(t,"printLocation",{enumerable:!0,get:function(){return a.printLocation}}),Object.defineProperty(t,"printSourceLocation",{enumerable:!0,get:function(){return a.printSourceLocation}}),Object.defineProperty(t,"Kind",{enumerable:!0,get:function(){return o.Kind}}),Object.defineProperty(t,"TokenKind",{enumerable:!0,get:function(){return s.TokenKind}}),Object.defineProperty(t,"Lexer",{enumerable:!0,get:function(){return c.Lexer}}),Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return u.parse}}),Object.defineProperty(t,"parseValue",{enumerable:!0,get:function(){return u.parseValue}}),Object.defineProperty(t,"parseType",{enumerable:!0,get:function(){return u.parseType}}),Object.defineProperty(t,"print",{enumerable:!0,get:function(){return l.print}}),Object.defineProperty(t,"visit",{enumerable:!0,get:function(){return d.visit}}),Object.defineProperty(t,"visitInParallel",{enumerable:!0,get:function(){return d.visitInParallel}}),Object.defineProperty(t,"getVisitFn",{enumerable:!0,get:function(){return d.getVisitFn}}),Object.defineProperty(t,"BREAK",{enumerable:!0,get:function(){return d.BREAK}}),Object.defineProperty(t,"Location",{enumerable:!0,get:function(){return h.Location}}),Object.defineProperty(t,"Token",{enumerable:!0,get:function(){return h.Token}}),Object.defineProperty(t,"isDefinitionNode",{enumerable:!0,get:function(){return p.isDefinitionNode}}),Object.defineProperty(t,"isExecutableDefinitionNode",{enumerable:!0,get:function(){return p.isExecutableDefinitionNode}}),Object.defineProperty(t,"isSelectionNode",{enumerable:!0,get:function(){return p.isSelectionNode}}),Object.defineProperty(t,"isValueNode",{enumerable:!0,get:function(){return p.isValueNode}}),Object.defineProperty(t,"isTypeNode",{enumerable:!0,get:function(){return p.isTypeNode}}),Object.defineProperty(t,"isTypeSystemDefinitionNode",{enumerable:!0,get:function(){return p.isTypeSystemDefinitionNode}}),Object.defineProperty(t,"isTypeDefinitionNode",{enumerable:!0,get:function(){return p.isTypeDefinitionNode}}),Object.defineProperty(t,"isTypeSystemExtensionNode",{enumerable:!0,get:function(){return p.isTypeSystemExtensionNode}}),Object.defineProperty(t,"isTypeExtensionNode",{enumerable:!0,get:function(){return p.isTypeExtensionNode}}),Object.defineProperty(t,"DirectiveLocation",{enumerable:!0,get:function(){return f.DirectiveLocation}});var n=r(7811),i=r(27447),a=r(79941),o=r(55325),s=r(49226),c=r(1622),u=r(24665),l=r(33083),d=r(82624),h=r(64560),p=r(92858),f=r(29496)},55325:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Kind=void 0;var r=Object.freeze({NAME:"Name",DOCUMENT:"Document",OPERATION_DEFINITION:"OperationDefinition",VARIABLE_DEFINITION:"VariableDefinition",SELECTION_SET:"SelectionSet",FIELD:"Field",ARGUMENT:"Argument",FRAGMENT_SPREAD:"FragmentSpread",INLINE_FRAGMENT:"InlineFragment",FRAGMENT_DEFINITION:"FragmentDefinition",VARIABLE:"Variable",INT:"IntValue",FLOAT:"FloatValue",STRING:"StringValue",BOOLEAN:"BooleanValue",NULL:"NullValue",ENUM:"EnumValue",LIST:"ListValue",OBJECT:"ObjectValue",OBJECT_FIELD:"ObjectField",DIRECTIVE:"Directive",NAMED_TYPE:"NamedType",LIST_TYPE:"ListType",NON_NULL_TYPE:"NonNullType",SCHEMA_DEFINITION:"SchemaDefinition",OPERATION_TYPE_DEFINITION:"OperationTypeDefinition",SCALAR_TYPE_DEFINITION:"ScalarTypeDefinition",OBJECT_TYPE_DEFINITION:"ObjectTypeDefinition",FIELD_DEFINITION:"FieldDefinition",INPUT_VALUE_DEFINITION:"InputValueDefinition",INTERFACE_TYPE_DEFINITION:"InterfaceTypeDefinition",UNION_TYPE_DEFINITION:"UnionTypeDefinition",ENUM_TYPE_DEFINITION:"EnumTypeDefinition",ENUM_VALUE_DEFINITION:"EnumValueDefinition",INPUT_OBJECT_TYPE_DEFINITION:"InputObjectTypeDefinition",DIRECTIVE_DEFINITION:"DirectiveDefinition",SCHEMA_EXTENSION:"SchemaExtension",SCALAR_TYPE_EXTENSION:"ScalarTypeExtension",OBJECT_TYPE_EXTENSION:"ObjectTypeExtension",INTERFACE_TYPE_EXTENSION:"InterfaceTypeExtension",UNION_TYPE_EXTENSION:"UnionTypeExtension",ENUM_TYPE_EXTENSION:"EnumTypeExtension",INPUT_OBJECT_TYPE_EXTENSION:"InputObjectTypeExtension"});t.Kind=r},1622:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isPunctuatorTokenKind=function(e){return e===a.TokenKind.BANG||e===a.TokenKind.DOLLAR||e===a.TokenKind.AMP||e===a.TokenKind.PAREN_L||e===a.TokenKind.PAREN_R||e===a.TokenKind.SPREAD||e===a.TokenKind.COLON||e===a.TokenKind.EQUALS||e===a.TokenKind.AT||e===a.TokenKind.BRACKET_L||e===a.TokenKind.BRACKET_R||e===a.TokenKind.BRACE_L||e===a.TokenKind.PIPE||e===a.TokenKind.BRACE_R},t.Lexer=void 0;var n=r(59671),i=r(64560),a=r(49226),o=r(49501),s=function(){function e(e){var t=new i.Token(a.TokenKind.SOF,0,0,0,0,null);this.source=e,this.lastToken=t,this.token=t,this.line=1,this.lineStart=0}var t=e.prototype;return t.advance=function(){return this.lastToken=this.token,this.token=this.lookahead()},t.lookahead=function(){var e=this.token;if(e.kind!==a.TokenKind.EOF)do{var t;e=null!==(t=e.next)&&void 0!==t?t:e.next=u(this,e)}while(e.kind===a.TokenKind.COMMENT);return e},e}();function c(e){return isNaN(e)?a.TokenKind.EOF:e<127?JSON.stringify(String.fromCharCode(e)):'"\\u'.concat(("00"+e.toString(16).toUpperCase()).slice(-4),'"')}function u(e,t){for(var r=e.source,o=r.body,s=o.length,c=t.end;c31||9===s));return new i.Token(a.TokenKind.COMMENT,t,u,r,n,o,c.slice(t+1,u))}function h(e,t,r,o,s,u){var l=e.body,d=r,h=t,f=!1;if(45===d&&(d=l.charCodeAt(++h)),48===d){if((d=l.charCodeAt(++h))>=48&&d<=57)throw(0,n.syntaxError)(e,h,"Invalid number, unexpected digit after 0: ".concat(c(d),"."))}else h=p(e,h,d),d=l.charCodeAt(h);if(46===d&&(f=!0,d=l.charCodeAt(++h),h=p(e,h,d),d=l.charCodeAt(h)),69!==d&&101!==d||(f=!0,43!==(d=l.charCodeAt(++h))&&45!==d||(d=l.charCodeAt(++h)),h=p(e,h,d),d=l.charCodeAt(h)),46===d||function(e){return 95===e||e>=65&&e<=90||e>=97&&e<=122}(d))throw(0,n.syntaxError)(e,h,"Invalid number, expected digit but got: ".concat(c(d),"."));return new i.Token(f?a.TokenKind.FLOAT:a.TokenKind.INT,t,h,o,s,u,l.slice(t,h))}function p(e,t,r){var i=e.body,a=t,o=r;if(o>=48&&o<=57){do{o=i.charCodeAt(++a)}while(o>=48&&o<=57);return a}throw(0,n.syntaxError)(e,a,"Invalid number, expected digit but got: ".concat(c(o),"."))}function f(e,t,r,o,s){for(var u,l,d,h,p=e.body,f=t+1,y=f,m=0,b="";f=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function m(e,t,r,n,o){for(var s=e.body,c=s.length,u=t+1,l=0;u!==c&&!isNaN(l=s.charCodeAt(u))&&(95===l||l>=48&&l<=57||l>=65&&l<=90||l>=97&&l<=122);)++u;return new i.Token(a.TokenKind.NAME,t,u,r,n,o,s.slice(t,u))}t.Lexer=s},27447:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getLocation=function(e,t){for(var r,n=/\r\n|[\n\r]/g,i=1,a=t+1;(r=n.exec(e.body))&&r.index{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parse=function(e,t){return new l(e,t).parseDocument()},t.parseValue=function(e,t){var r=new l(e,t);r.expectToken(o.TokenKind.SOF);var n=r.parseValueLiteral(!1);return r.expectToken(o.TokenKind.EOF),n},t.parseType=function(e,t){var r=new l(e,t);r.expectToken(o.TokenKind.SOF);var n=r.parseTypeReference();return r.expectToken(o.TokenKind.EOF),n},t.Parser=void 0;var n=r(59671),i=r(55325),a=r(64560),o=r(49226),s=r(7811),c=r(29496),u=r(1622),l=function(){function e(e,t){var r=(0,s.isSource)(e)?e:new s.Source(e);this._lexer=new u.Lexer(r),this._options=t}var t=e.prototype;return t.parseName=function(){var e=this.expectToken(o.TokenKind.NAME);return{kind:i.Kind.NAME,value:e.value,loc:this.loc(e)}},t.parseDocument=function(){var e=this._lexer.token;return{kind:i.Kind.DOCUMENT,definitions:this.many(o.TokenKind.SOF,this.parseDefinition,o.TokenKind.EOF),loc:this.loc(e)}},t.parseDefinition=function(){if(this.peek(o.TokenKind.NAME))switch(this._lexer.token.value){case"query":case"mutation":case"subscription":return this.parseOperationDefinition();case"fragment":return this.parseFragmentDefinition();case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return this.parseTypeSystemDefinition();case"extend":return this.parseTypeSystemExtension()}else{if(this.peek(o.TokenKind.BRACE_L))return this.parseOperationDefinition();if(this.peekDescription())return this.parseTypeSystemDefinition()}throw this.unexpected()},t.parseOperationDefinition=function(){var e=this._lexer.token;if(this.peek(o.TokenKind.BRACE_L))return{kind:i.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:this.parseSelectionSet(),loc:this.loc(e)};var t,r=this.parseOperationType();return this.peek(o.TokenKind.NAME)&&(t=this.parseName()),{kind:i.Kind.OPERATION_DEFINITION,operation:r,name:t,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},t.parseOperationType=function(){var e=this.expectToken(o.TokenKind.NAME);switch(e.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw this.unexpected(e)},t.parseVariableDefinitions=function(){return this.optionalMany(o.TokenKind.PAREN_L,this.parseVariableDefinition,o.TokenKind.PAREN_R)},t.parseVariableDefinition=function(){var e=this._lexer.token;return{kind:i.Kind.VARIABLE_DEFINITION,variable:this.parseVariable(),type:(this.expectToken(o.TokenKind.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(o.TokenKind.EQUALS)?this.parseValueLiteral(!0):void 0,directives:this.parseDirectives(!0),loc:this.loc(e)}},t.parseVariable=function(){var e=this._lexer.token;return this.expectToken(o.TokenKind.DOLLAR),{kind:i.Kind.VARIABLE,name:this.parseName(),loc:this.loc(e)}},t.parseSelectionSet=function(){var e=this._lexer.token;return{kind:i.Kind.SELECTION_SET,selections:this.many(o.TokenKind.BRACE_L,this.parseSelection,o.TokenKind.BRACE_R),loc:this.loc(e)}},t.parseSelection=function(){return this.peek(o.TokenKind.SPREAD)?this.parseFragment():this.parseField()},t.parseField=function(){var e,t,r=this._lexer.token,n=this.parseName();return this.expectOptionalToken(o.TokenKind.COLON)?(e=n,t=this.parseName()):t=n,{kind:i.Kind.FIELD,alias:e,name:t,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(o.TokenKind.BRACE_L)?this.parseSelectionSet():void 0,loc:this.loc(r)}},t.parseArguments=function(e){var t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(o.TokenKind.PAREN_L,t,o.TokenKind.PAREN_R)},t.parseArgument=function(){var e=this._lexer.token,t=this.parseName();return this.expectToken(o.TokenKind.COLON),{kind:i.Kind.ARGUMENT,name:t,value:this.parseValueLiteral(!1),loc:this.loc(e)}},t.parseConstArgument=function(){var e=this._lexer.token;return{kind:i.Kind.ARGUMENT,name:this.parseName(),value:(this.expectToken(o.TokenKind.COLON),this.parseValueLiteral(!0)),loc:this.loc(e)}},t.parseFragment=function(){var e=this._lexer.token;this.expectToken(o.TokenKind.SPREAD);var t=this.expectOptionalKeyword("on");return!t&&this.peek(o.TokenKind.NAME)?{kind:i.Kind.FRAGMENT_SPREAD,name:this.parseFragmentName(),directives:this.parseDirectives(!1),loc:this.loc(e)}:{kind:i.Kind.INLINE_FRAGMENT,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(e)}},t.parseFragmentDefinition=function(){var e,t=this._lexer.token;return this.expectKeyword("fragment"),!0===(null===(e=this._options)||void 0===e?void 0:e.experimentalFragmentVariables)?{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(t)}:{kind:i.Kind.FRAGMENT_DEFINITION,name:this.parseFragmentName(),typeCondition:(this.expectKeyword("on"),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet(),loc:this.loc(t)}},t.parseFragmentName=function(){if("on"===this._lexer.token.value)throw this.unexpected();return this.parseName()},t.parseValueLiteral=function(e){var t=this._lexer.token;switch(t.kind){case o.TokenKind.BRACKET_L:return this.parseList(e);case o.TokenKind.BRACE_L:return this.parseObject(e);case o.TokenKind.INT:return this._lexer.advance(),{kind:i.Kind.INT,value:t.value,loc:this.loc(t)};case o.TokenKind.FLOAT:return this._lexer.advance(),{kind:i.Kind.FLOAT,value:t.value,loc:this.loc(t)};case o.TokenKind.STRING:case o.TokenKind.BLOCK_STRING:return this.parseStringLiteral();case o.TokenKind.NAME:switch(this._lexer.advance(),t.value){case"true":return{kind:i.Kind.BOOLEAN,value:!0,loc:this.loc(t)};case"false":return{kind:i.Kind.BOOLEAN,value:!1,loc:this.loc(t)};case"null":return{kind:i.Kind.NULL,loc:this.loc(t)};default:return{kind:i.Kind.ENUM,value:t.value,loc:this.loc(t)}}case o.TokenKind.DOLLAR:if(!e)return this.parseVariable()}throw this.unexpected()},t.parseStringLiteral=function(){var e=this._lexer.token;return this._lexer.advance(),{kind:i.Kind.STRING,value:e.value,block:e.kind===o.TokenKind.BLOCK_STRING,loc:this.loc(e)}},t.parseList=function(e){var t=this,r=this._lexer.token;return{kind:i.Kind.LIST,values:this.any(o.TokenKind.BRACKET_L,(function(){return t.parseValueLiteral(e)}),o.TokenKind.BRACKET_R),loc:this.loc(r)}},t.parseObject=function(e){var t=this,r=this._lexer.token;return{kind:i.Kind.OBJECT,fields:this.any(o.TokenKind.BRACE_L,(function(){return t.parseObjectField(e)}),o.TokenKind.BRACE_R),loc:this.loc(r)}},t.parseObjectField=function(e){var t=this._lexer.token,r=this.parseName();return this.expectToken(o.TokenKind.COLON),{kind:i.Kind.OBJECT_FIELD,name:r,value:this.parseValueLiteral(e),loc:this.loc(t)}},t.parseDirectives=function(e){for(var t=[];this.peek(o.TokenKind.AT);)t.push(this.parseDirective(e));return t},t.parseDirective=function(e){var t=this._lexer.token;return this.expectToken(o.TokenKind.AT),{kind:i.Kind.DIRECTIVE,name:this.parseName(),arguments:this.parseArguments(e),loc:this.loc(t)}},t.parseTypeReference=function(){var e,t=this._lexer.token;return this.expectOptionalToken(o.TokenKind.BRACKET_L)?(e=this.parseTypeReference(),this.expectToken(o.TokenKind.BRACKET_R),e={kind:i.Kind.LIST_TYPE,type:e,loc:this.loc(t)}):e=this.parseNamedType(),this.expectOptionalToken(o.TokenKind.BANG)?{kind:i.Kind.NON_NULL_TYPE,type:e,loc:this.loc(t)}:e},t.parseNamedType=function(){var e=this._lexer.token;return{kind:i.Kind.NAMED_TYPE,name:this.parseName(),loc:this.loc(e)}},t.parseTypeSystemDefinition=function(){var e=this.peekDescription()?this._lexer.lookahead():this._lexer.token;if(e.kind===o.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaDefinition();case"scalar":return this.parseScalarTypeDefinition();case"type":return this.parseObjectTypeDefinition();case"interface":return this.parseInterfaceTypeDefinition();case"union":return this.parseUnionTypeDefinition();case"enum":return this.parseEnumTypeDefinition();case"input":return this.parseInputObjectTypeDefinition();case"directive":return this.parseDirectiveDefinition()}throw this.unexpected(e)},t.peekDescription=function(){return this.peek(o.TokenKind.STRING)||this.peek(o.TokenKind.BLOCK_STRING)},t.parseDescription=function(){if(this.peekDescription())return this.parseStringLiteral()},t.parseSchemaDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("schema");var r=this.parseDirectives(!0),n=this.many(o.TokenKind.BRACE_L,this.parseOperationTypeDefinition,o.TokenKind.BRACE_R);return{kind:i.Kind.SCHEMA_DEFINITION,description:t,directives:r,operationTypes:n,loc:this.loc(e)}},t.parseOperationTypeDefinition=function(){var e=this._lexer.token,t=this.parseOperationType();this.expectToken(o.TokenKind.COLON);var r=this.parseNamedType();return{kind:i.Kind.OPERATION_TYPE_DEFINITION,operation:t,type:r,loc:this.loc(e)}},t.parseScalarTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("scalar");var r=this.parseName(),n=this.parseDirectives(!0);return{kind:i.Kind.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:n,loc:this.loc(e)}},t.parseObjectTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("type");var r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseDirectives(!0),o=this.parseFieldsDefinition();return{kind:i.Kind.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o,loc:this.loc(e)}},t.parseImplementsInterfaces=function(){var e;if(!this.expectOptionalKeyword("implements"))return[];if(!0===(null===(e=this._options)||void 0===e?void 0:e.allowLegacySDLImplementsInterfaces)){var t=[];this.expectOptionalToken(o.TokenKind.AMP);do{t.push(this.parseNamedType())}while(this.expectOptionalToken(o.TokenKind.AMP)||this.peek(o.TokenKind.NAME));return t}return this.delimitedMany(o.TokenKind.AMP,this.parseNamedType)},t.parseFieldsDefinition=function(){var e;return!0===(null===(e=this._options)||void 0===e?void 0:e.allowLegacySDLEmptyFields)&&this.peek(o.TokenKind.BRACE_L)&&this._lexer.lookahead().kind===o.TokenKind.BRACE_R?(this._lexer.advance(),this._lexer.advance(),[]):this.optionalMany(o.TokenKind.BRACE_L,this.parseFieldDefinition,o.TokenKind.BRACE_R)},t.parseFieldDefinition=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseArgumentDefs();this.expectToken(o.TokenKind.COLON);var a=this.parseTypeReference(),s=this.parseDirectives(!0);return{kind:i.Kind.FIELD_DEFINITION,description:t,name:r,arguments:n,type:a,directives:s,loc:this.loc(e)}},t.parseArgumentDefs=function(){return this.optionalMany(o.TokenKind.PAREN_L,this.parseInputValueDef,o.TokenKind.PAREN_R)},t.parseInputValueDef=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName();this.expectToken(o.TokenKind.COLON);var n,a=this.parseTypeReference();this.expectOptionalToken(o.TokenKind.EQUALS)&&(n=this.parseValueLiteral(!0));var s=this.parseDirectives(!0);return{kind:i.Kind.INPUT_VALUE_DEFINITION,description:t,name:r,type:a,defaultValue:n,directives:s,loc:this.loc(e)}},t.parseInterfaceTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("interface");var r=this.parseName(),n=this.parseImplementsInterfaces(),a=this.parseDirectives(!0),o=this.parseFieldsDefinition();return{kind:i.Kind.INTERFACE_TYPE_DEFINITION,description:t,name:r,interfaces:n,directives:a,fields:o,loc:this.loc(e)}},t.parseUnionTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("union");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseUnionMemberTypes();return{kind:i.Kind.UNION_TYPE_DEFINITION,description:t,name:r,directives:n,types:a,loc:this.loc(e)}},t.parseUnionMemberTypes=function(){return this.expectOptionalToken(o.TokenKind.EQUALS)?this.delimitedMany(o.TokenKind.PIPE,this.parseNamedType):[]},t.parseEnumTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("enum");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseEnumValuesDefinition();return{kind:i.Kind.ENUM_TYPE_DEFINITION,description:t,name:r,directives:n,values:a,loc:this.loc(e)}},t.parseEnumValuesDefinition=function(){return this.optionalMany(o.TokenKind.BRACE_L,this.parseEnumValueDefinition,o.TokenKind.BRACE_R)},t.parseEnumValueDefinition=function(){var e=this._lexer.token,t=this.parseDescription(),r=this.parseName(),n=this.parseDirectives(!0);return{kind:i.Kind.ENUM_VALUE_DEFINITION,description:t,name:r,directives:n,loc:this.loc(e)}},t.parseInputObjectTypeDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("input");var r=this.parseName(),n=this.parseDirectives(!0),a=this.parseInputFieldsDefinition();return{kind:i.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:n,fields:a,loc:this.loc(e)}},t.parseInputFieldsDefinition=function(){return this.optionalMany(o.TokenKind.BRACE_L,this.parseInputValueDef,o.TokenKind.BRACE_R)},t.parseTypeSystemExtension=function(){var e=this._lexer.lookahead();if(e.kind===o.TokenKind.NAME)switch(e.value){case"schema":return this.parseSchemaExtension();case"scalar":return this.parseScalarTypeExtension();case"type":return this.parseObjectTypeExtension();case"interface":return this.parseInterfaceTypeExtension();case"union":return this.parseUnionTypeExtension();case"enum":return this.parseEnumTypeExtension();case"input":return this.parseInputObjectTypeExtension()}throw this.unexpected(e)},t.parseSchemaExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("schema");var t=this.parseDirectives(!0),r=this.optionalMany(o.TokenKind.BRACE_L,this.parseOperationTypeDefinition,o.TokenKind.BRACE_R);if(0===t.length&&0===r.length)throw this.unexpected();return{kind:i.Kind.SCHEMA_EXTENSION,directives:t,operationTypes:r,loc:this.loc(e)}},t.parseScalarTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("scalar");var t=this.parseName(),r=this.parseDirectives(!0);if(0===r.length)throw this.unexpected();return{kind:i.Kind.SCALAR_TYPE_EXTENSION,name:t,directives:r,loc:this.loc(e)}},t.parseObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("type");var t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseDirectives(!0),a=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===a.length)throw this.unexpected();return{kind:i.Kind.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a,loc:this.loc(e)}},t.parseInterfaceTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("interface");var t=this.parseName(),r=this.parseImplementsInterfaces(),n=this.parseDirectives(!0),a=this.parseFieldsDefinition();if(0===r.length&&0===n.length&&0===a.length)throw this.unexpected();return{kind:i.Kind.INTERFACE_TYPE_EXTENSION,name:t,interfaces:r,directives:n,fields:a,loc:this.loc(e)}},t.parseUnionTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("union");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseUnionMemberTypes();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.UNION_TYPE_EXTENSION,name:t,directives:r,types:n,loc:this.loc(e)}},t.parseEnumTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("enum");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseEnumValuesDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.ENUM_TYPE_EXTENSION,name:t,directives:r,values:n,loc:this.loc(e)}},t.parseInputObjectTypeExtension=function(){var e=this._lexer.token;this.expectKeyword("extend"),this.expectKeyword("input");var t=this.parseName(),r=this.parseDirectives(!0),n=this.parseInputFieldsDefinition();if(0===r.length&&0===n.length)throw this.unexpected();return{kind:i.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:n,loc:this.loc(e)}},t.parseDirectiveDefinition=function(){var e=this._lexer.token,t=this.parseDescription();this.expectKeyword("directive"),this.expectToken(o.TokenKind.AT);var r=this.parseName(),n=this.parseArgumentDefs(),a=this.expectOptionalKeyword("repeatable");this.expectKeyword("on");var s=this.parseDirectiveLocations();return{kind:i.Kind.DIRECTIVE_DEFINITION,description:t,name:r,arguments:n,repeatable:a,locations:s,loc:this.loc(e)}},t.parseDirectiveLocations=function(){return this.delimitedMany(o.TokenKind.PIPE,this.parseDirectiveLocation)},t.parseDirectiveLocation=function(){var e=this._lexer.token,t=this.parseName();if(void 0!==c.DirectiveLocation[t.value])return t;throw this.unexpected(e)},t.loc=function(e){var t;if(!0!==(null===(t=this._options)||void 0===t?void 0:t.noLocation))return new a.Location(e,this._lexer.lastToken,this._lexer.source)},t.peek=function(e){return this._lexer.token.kind===e},t.expectToken=function(e){var t=this._lexer.token;if(t.kind===e)return this._lexer.advance(),t;throw(0,n.syntaxError)(this._lexer.source,t.start,"Expected ".concat(h(e),", found ").concat(d(t),"."))},t.expectOptionalToken=function(e){var t=this._lexer.token;if(t.kind===e)return this._lexer.advance(),t},t.expectKeyword=function(e){var t=this._lexer.token;if(t.kind!==o.TokenKind.NAME||t.value!==e)throw(0,n.syntaxError)(this._lexer.source,t.start,'Expected "'.concat(e,'", found ').concat(d(t),"."));this._lexer.advance()},t.expectOptionalKeyword=function(e){var t=this._lexer.token;return t.kind===o.TokenKind.NAME&&t.value===e&&(this._lexer.advance(),!0)},t.unexpected=function(e){var t=null!=e?e:this._lexer.token;return(0,n.syntaxError)(this._lexer.source,t.start,"Unexpected ".concat(d(t),"."))},t.any=function(e,t,r){this.expectToken(e);for(var n=[];!this.expectOptionalToken(r);)n.push(t.call(this));return n},t.optionalMany=function(e,t,r){if(this.expectOptionalToken(e)){var n=[];do{n.push(t.call(this))}while(!this.expectOptionalToken(r));return n}return[]},t.many=function(e,t,r){this.expectToken(e);var n=[];do{n.push(t.call(this))}while(!this.expectOptionalToken(r));return n},t.delimitedMany=function(e,t){this.expectOptionalToken(e);var r=[];do{r.push(t.call(this))}while(this.expectOptionalToken(e));return r},e}();function d(e){var t=e.value;return h(e.kind)+(null!=t?' "'.concat(t,'"'):"")}function h(e){return(0,u.isPunctuatorTokenKind)(e)?'"'.concat(e,'"'):e}t.Parser=l},92858:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isDefinitionNode=function(e){return i(e)||a(e)||s(e)},t.isExecutableDefinitionNode=i,t.isSelectionNode=function(e){return e.kind===n.Kind.FIELD||e.kind===n.Kind.FRAGMENT_SPREAD||e.kind===n.Kind.INLINE_FRAGMENT},t.isValueNode=function(e){return e.kind===n.Kind.VARIABLE||e.kind===n.Kind.INT||e.kind===n.Kind.FLOAT||e.kind===n.Kind.STRING||e.kind===n.Kind.BOOLEAN||e.kind===n.Kind.NULL||e.kind===n.Kind.ENUM||e.kind===n.Kind.LIST||e.kind===n.Kind.OBJECT},t.isTypeNode=function(e){return e.kind===n.Kind.NAMED_TYPE||e.kind===n.Kind.LIST_TYPE||e.kind===n.Kind.NON_NULL_TYPE},t.isTypeSystemDefinitionNode=a,t.isTypeDefinitionNode=o,t.isTypeSystemExtensionNode=s,t.isTypeExtensionNode=c;var n=r(55325);function i(e){return e.kind===n.Kind.OPERATION_DEFINITION||e.kind===n.Kind.FRAGMENT_DEFINITION}function a(e){return e.kind===n.Kind.SCHEMA_DEFINITION||o(e)||e.kind===n.Kind.DIRECTIVE_DEFINITION}function o(e){return e.kind===n.Kind.SCALAR_TYPE_DEFINITION||e.kind===n.Kind.OBJECT_TYPE_DEFINITION||e.kind===n.Kind.INTERFACE_TYPE_DEFINITION||e.kind===n.Kind.UNION_TYPE_DEFINITION||e.kind===n.Kind.ENUM_TYPE_DEFINITION||e.kind===n.Kind.INPUT_OBJECT_TYPE_DEFINITION}function s(e){return e.kind===n.Kind.SCHEMA_EXTENSION||c(e)}function c(e){return e.kind===n.Kind.SCALAR_TYPE_EXTENSION||e.kind===n.Kind.OBJECT_TYPE_EXTENSION||e.kind===n.Kind.INTERFACE_TYPE_EXTENSION||e.kind===n.Kind.UNION_TYPE_EXTENSION||e.kind===n.Kind.ENUM_TYPE_EXTENSION||e.kind===n.Kind.INPUT_OBJECT_TYPE_EXTENSION}},79941:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.printLocation=function(e){return i(e.source,(0,n.getLocation)(e.source,e.start))},t.printSourceLocation=i;var n=r(27447);function i(e,t){var r=e.locationOffset.column-1,n=o(r)+e.body,i=t.line-1,s=e.locationOffset.line-1,c=t.line+s,u=1===t.line?r:0,l=t.column+u,d="".concat(e.name,":").concat(c,":").concat(l,"\n"),h=n.split(/\r\n|[\n\r]/g),p=h[i];if(p.length>120){for(var f=Math.floor(l/80),y=l%80,g=[],m=0;m{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.print=function(e){return(0,n.visit)(e,{leave:a})};var n=r(82624),i=r(49501),a={Name:function(e){return e.value},Variable:function(e){return"$"+e.name},Document:function(e){return s(e.definitions,"\n\n")+"\n"},OperationDefinition:function(e){var t=e.operation,r=e.name,n=u("(",s(e.variableDefinitions,", "),")"),i=s(e.directives," "),a=e.selectionSet;return r||i||n||"query"!==t?s([t,s([r,n]),i,a]," "):a},VariableDefinition:function(e){var t=e.variable,r=e.type,n=e.defaultValue,i=e.directives;return t+": "+r+u(" = ",n)+u(" ",s(i," "))},SelectionSet:function(e){return c(e.selections)},Field:function(e){var t=e.alias,r=e.name,n=e.arguments,i=e.directives,a=e.selectionSet,o=u("",t,": ")+r,c=o+u("(",s(n,", "),")");return c.length>80&&(c=o+u("(\n",l(s(n,"\n")),"\n)")),s([c,s(i," "),a]," ")},Argument:function(e){return e.name+": "+e.value},FragmentSpread:function(e){return"..."+e.name+u(" ",s(e.directives," "))},InlineFragment:function(e){var t=e.typeCondition,r=e.directives,n=e.selectionSet;return s(["...",u("on ",t),s(r," "),n]," ")},FragmentDefinition:function(e){var t=e.name,r=e.typeCondition,n=e.variableDefinitions,i=e.directives,a=e.selectionSet;return"fragment ".concat(t).concat(u("(",s(n,", "),")")," ")+"on ".concat(r," ").concat(u("",s(i," ")," "))+a},IntValue:function(e){return e.value},FloatValue:function(e){return e.value},StringValue:function(e,t){var r=e.value;return e.block?(0,i.printBlockString)(r,"description"===t?"":" "):JSON.stringify(r)},BooleanValue:function(e){return e.value?"true":"false"},NullValue:function(){return"null"},EnumValue:function(e){return e.value},ListValue:function(e){return"["+s(e.values,", ")+"]"},ObjectValue:function(e){return"{"+s(e.fields,", ")+"}"},ObjectField:function(e){return e.name+": "+e.value},Directive:function(e){return"@"+e.name+u("(",s(e.arguments,", "),")")},NamedType:function(e){return e.name},ListType:function(e){return"["+e.type+"]"},NonNullType:function(e){return e.type+"!"},SchemaDefinition:o((function(e){var t=e.directives,r=e.operationTypes;return s(["schema",s(t," "),c(r)]," ")})),OperationTypeDefinition:function(e){return e.operation+": "+e.type},ScalarTypeDefinition:o((function(e){return s(["scalar",e.name,s(e.directives," ")]," ")})),ObjectTypeDefinition:o((function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["type",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")})),FieldDefinition:o((function(e){var t=e.name,r=e.arguments,n=e.type,i=e.directives;return t+(h(r)?u("(\n",l(s(r,"\n")),"\n)"):u("(",s(r,", "),")"))+": "+n+u(" ",s(i," "))})),InputValueDefinition:o((function(e){var t=e.name,r=e.type,n=e.defaultValue,i=e.directives;return s([t+": "+r,u("= ",n),s(i," ")]," ")})),InterfaceTypeDefinition:o((function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["interface",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")})),UnionTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.types;return s(["union",t,s(r," "),n&&0!==n.length?"= "+s(n," | "):""]," ")})),EnumTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.values;return s(["enum",t,s(r," "),c(n)]," ")})),EnumValueDefinition:o((function(e){return s([e.name,s(e.directives," ")]," ")})),InputObjectTypeDefinition:o((function(e){var t=e.name,r=e.directives,n=e.fields;return s(["input",t,s(r," "),c(n)]," ")})),DirectiveDefinition:o((function(e){var t=e.name,r=e.arguments,n=e.repeatable,i=e.locations;return"directive @"+t+(h(r)?u("(\n",l(s(r,"\n")),"\n)"):u("(",s(r,", "),")"))+(n?" repeatable":"")+" on "+s(i," | ")})),SchemaExtension:function(e){var t=e.directives,r=e.operationTypes;return s(["extend schema",s(t," "),c(r)]," ")},ScalarTypeExtension:function(e){return s(["extend scalar",e.name,s(e.directives," ")]," ")},ObjectTypeExtension:function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["extend type",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")},InterfaceTypeExtension:function(e){var t=e.name,r=e.interfaces,n=e.directives,i=e.fields;return s(["extend interface",t,u("implements ",s(r," & ")),s(n," "),c(i)]," ")},UnionTypeExtension:function(e){var t=e.name,r=e.directives,n=e.types;return s(["extend union",t,s(r," "),n&&0!==n.length?"= "+s(n," | "):""]," ")},EnumTypeExtension:function(e){var t=e.name,r=e.directives,n=e.values;return s(["extend enum",t,s(r," "),c(n)]," ")},InputObjectTypeExtension:function(e){var t=e.name,r=e.directives,n=e.fields;return s(["extend input",t,s(r," "),c(n)]," ")}};function o(e){return function(t){return s([t.description,e(t)],"\n")}}function s(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return null!==(t=null==e?void 0:e.filter((function(e){return e})).join(r))&&void 0!==t?t:""}function c(e){return u("{\n",l(s(e,"\n")),"\n}")}function u(e,t){return null!=t&&""!==t?e+t+(arguments.length>2&&void 0!==arguments[2]?arguments[2]:""):""}function l(e){return u(" ",e.replace(/\n/g,"\n "))}function d(e){return-1!==e.indexOf("\n")}function h(e){return null!=e&&e.some(d)}},7811:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSource=function(e){return(0,o.default)(e,u)},t.Source=void 0;var n=r(97682),i=s(r(98048)),a=s(r(61914)),o=s(r(70882));function s(e){return e&&e.__esModule?e:{default:e}}function c(e,t){for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:"GraphQL request",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{line:1,column:1};"string"==typeof e||(0,a.default)(0,"Body must be a string. Received: ".concat((0,i.default)(e),".")),this.body=e,this.name=t,this.locationOffset=r,this.locationOffset.line>0||(0,a.default)(0,"line in locationOffset is 1-indexed and must be positive."),this.locationOffset.column>0||(0,a.default)(0,"column in locationOffset is 1-indexed and must be positive.")}var t,r;return t=e,(r=[{key:n.SYMBOL_TO_STRING_TAG,get:function(){return"Source"}}])&&c(t.prototype,r),e}();t.Source=u},49226:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TokenKind=void 0;var r=Object.freeze({SOF:"",EOF:"",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});t.TokenKind=r},82624:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.visit=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o,n=void 0,u=Array.isArray(e),l=[e],d=-1,h=[],p=void 0,f=void 0,y=void 0,g=[],m=[],b=e;do{var v=++d===l.length,_=v&&0!==h.length;if(v){if(f=0===m.length?void 0:g[g.length-1],p=y,y=m.pop(),_){if(u)p=p.slice();else{for(var w={},T=0,S=Object.keys(p);T{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SYMBOL_TO_STRING_TAG=t.SYMBOL_ASYNC_ITERATOR=t.SYMBOL_ITERATOR=void 0;var r="function"==typeof Symbol&&null!=Symbol.iterator?Symbol.iterator:"@@iterator";t.SYMBOL_ITERATOR=r;var n="function"==typeof Symbol&&null!=Symbol.asyncIterator?Symbol.asyncIterator:"@@asyncIterator";t.SYMBOL_ASYNC_ITERATOR=n;var i="function"==typeof Symbol&&null!=Symbol.toStringTag?Symbol.toStringTag:"@@toStringTag";t.SYMBOL_TO_STRING_TAG=i},34485:(e,t,r)=>{var n=t;n.utils=r(50212),n.common=r(74495),n.sha=r(45530),n.ripemd=r(91396),n.hmac=r(15047),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},74495:(e,t,r)=>{"use strict";var n=r(50212),i=r(79561);function a(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=a,a.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,a=8;a{"use strict";var n=r(50212),i=r(79561);function a(e,t,r){if(!(this instanceof a))return new a(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=a,a.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(50212),i=r(74495),a=n.rotl32,o=n.sum32,s=n.sum32_3,c=n.sum32_4,u=i.BlockHash;function l(){if(!(this instanceof l))return new l;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function p(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(l,u),t.ripemd160=l,l.blockSize=512,l.outSize=160,l.hmacStrength=192,l.padLength=64,l.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],u=this.h[3],l=this.h[4],b=r,v=n,_=i,w=u,T=l,S=0;S<80;S++){var O=o(a(c(r,d(S,n,i,u),e[f[S]+t],h(S)),g[S]),l);r=l,l=u,u=a(i,10),i=n,n=O,O=o(a(c(b,d(79-S,v,_,w),e[y[S]+t],p(S)),m[S]),T),b=T,T=w,w=a(_,10),_=v,v=O}O=s(this.h[1],i,w),this.h[1]=s(this.h[2],u,T),this.h[2]=s(this.h[3],l,b),this.h[3]=s(this.h[4],r,v),this.h[4]=s(this.h[0],n,_),this.h[0]=O},l.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var f=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],y=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],m=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},45530:(e,t,r)=>{"use strict";t.sha1=r(35079),t.sha224=r(63823),t.sha256=r(68032),t.sha384=r(25328),t.sha512=r(20168)},35079:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(40713),o=n.rotl32,s=n.sum32,c=n.sum32_5,u=a.ft_1,l=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,l),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212),i=r(68032);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(a,i),e.exports=a,a.blockSize=512,a.outSize=224,a.hmacStrength=192,a.padLength=64,a.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},68032:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(40713),o=r(79561),s=n.sum32,c=n.sum32_4,u=n.sum32_5,l=a.ch32,d=a.maj32,h=a.s0_256,p=a.s1_256,f=a.g0_256,y=a.g1_256,g=i.BlockHash,m=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function b(){if(!(this instanceof b))return new b;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=m,this.W=new Array(64)}n.inherits(b,g),e.exports=b,b.blockSize=512,b.outSize=256,b.hmacStrength=192,b.padLength=64,b.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212),i=r(20168);function a(){if(!(this instanceof a))return new a;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(a,i),e.exports=a,a.blockSize=1024,a.outSize=384,a.hmacStrength=192,a.padLength=128,a.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},20168:(e,t,r)=>{"use strict";var n=r(50212),i=r(74495),a=r(79561),o=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,u=n.shr64_lo,l=n.sum64,d=n.sum64_hi,h=n.sum64_lo,p=n.sum64_4_hi,f=n.sum64_4_lo,y=n.sum64_5_hi,g=n.sum64_5_lo,m=i.BlockHash,b=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function v(){if(!(this instanceof v))return new v;m.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=b,this.W=new Array(160)}function _(e,t,r,n,i){var a=e&r^~e&i;return a<0&&(a+=4294967296),a}function w(e,t,r,n,i,a){var o=t&n^~t&a;return o<0&&(o+=4294967296),o}function T(e,t,r,n,i){var a=e&r^e&i^r&i;return a<0&&(a+=4294967296),a}function S(e,t,r,n,i,a){var o=t&n^t&a^n&a;return o<0&&(o+=4294967296),o}function O(e,t){var r=o(e,t,28)^o(t,e,2)^o(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function x(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function A(e,t){var r=o(e,t,1)^o(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function R(e,t){var r=s(e,t,1)^s(e,t,8)^u(e,t,7);return r<0&&(r+=4294967296),r}function I(e,t){var r=s(e,t,19)^s(t,e,29)^u(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(v,m),e.exports=v,v.blockSize=1024,v.outSize=512,v.hmacStrength=192,v.padLength=128,v.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(50212).rotr32;function i(e,t,r){return e&t^~e&r}function a(e,t,r){return e&t^e&r^t&r}function o(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?o(t,r,n):2===e?a(t,r,n):void 0},t.ch32=i,t.maj32=a,t.p32=o,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},50212:(e,t,r)=>{"use strict";var n=r(79561),i=r(91285);function a(e,t){return 55296==(64512&e.charCodeAt(t))&&!(t<0||t+1>=e.length)&&56320==(64512&e.charCodeAt(t+1))}function o(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"==typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!=0&&(e="0"+e),i=0;i>6|192,r[n++]=63&o|128):a(e,i)?(o=65536+((1023&o)<<10)+(1023&e.charCodeAt(++i)),r[n++]=o>>18|240,r[n++]=o>>12&63|128,r[n++]=o>>6&63|128,r[n++]=63&o|128):(r[n++]=o>>12|224,r[n++]=o>>6&63|128,r[n++]=63&o|128)}else for(i=0;i>>0}return o},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=a>>>16&255,r[i+2]=a>>>8&255,r[i+3]=255&a):(r[i+3]=a>>>24,r[i+2]=a>>>16&255,r[i+1]=a>>>8&255,r[i]=255&a)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],a=n+e[t+1]>>>0,o=(a>>0,e[t+1]=a},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,a,o,s){var c=0,u=t;return c+=(u=u+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,a,o,s){return t+n+a+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,a,o,s,c,u){var l=0,d=t;return l+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,a,o,s,c,u){return t+n+a+s+u>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},75233:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var o=a(r(59636)),s=r(73094),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),d=new Set(["dd","dt"]),h=new Set(["rt","rp"]),p=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",d],["dt",d],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",h],["rp",h],["tbody",l],["tfoot",l]]),f=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,s;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:!t.xmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:!t.xmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:o.default)(this.options,this),null===(s=(a=this.cbs).onparserinit)||void 0===s||s.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e){var t,r,n=this.tokenizer.getSectionStart();this.endIndex=n-1,null===(r=(t=this.cbs).ontext)||void 0===r||r.call(t,(0,s.fromCodePoint)(e)),this.startIndex=n},e.prototype.isVoidElement=function(e){return!this.options.xmlMode&&f.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=!this.options.xmlMode&&p.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){var o=this.stack.pop();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,o,!0)}this.isVoidElement(e)||(this.stack.push(e),y.has(e)?this.foreignContext.push(!0):g.has(e)&&this.foreignContext.push(!1)),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,o,s;this.endIndex=t;var c=this.getSlice(e,t);if(this.lowerCaseTagNames&&(c=c.toLowerCase()),(y.has(c)||g.has(c))&&this.foreignContext.pop(),this.isVoidElement(c))this.options.xmlMode||"br"!==c||(null===(n=(r=this.cbs).onopentagname)||void 0===n||n.call(r,"br"),null===(a=(i=this.cbs).onopentag)||void 0===a||a.call(i,"br",{},!0),null===(s=(o=this.cbs).onclosetag)||void 0===s||s.call(o,"br",!1));else{var u=this.stack.lastIndexOf(c);if(-1!==u)if(this.cbs.onclosetag)for(var l=this.stack.length-u;l--;)this.cbs.onclosetag(this.stack.pop(),0!==l);else this.stack.length=u;else this.options.xmlMode||"p"!==c||(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.pop())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,s.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===o.QuoteType.Double?'"':e===o.QuoteType.Single?"'":e===o.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,o;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(o=(a=this.cbs).oncommentend)||void 0===o||o.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,o,s,c,u,l,d,h;this.endIndex=t;var p=this.getSlice(e,t-r);this.options.xmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(o=(a=this.cbs).ontext)||void 0===o||o.call(a,p),null===(c=(s=this.cbs).oncdataend)||void 0===c||c.call(s)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(p,"]]")),null===(h=(d=this.cbs).oncommentend)||void 0===h||h.call(d)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=this.stack.length;r>0;this.cbs.onclosetag(this.stack[--r],!0));}null===(t=(e=this.cbs).onend)||void 0===t||t.call(e)},e.prototype.reset=function(){var e,t,r,n;null===(t=(e=this.cbs).onreset)||void 0===t||t.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,null===(n=(r=this.cbs).onparserinit)||void 0===n||n.call(r,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1},e.prototype.parseComplete=function(e){this.reset(),this.end(e)},e.prototype.getSlice=function(e,t){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,o=r(73094);function s(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||s(e)}function u(e){return e>=n.Zero&&e<=n.Nine}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.BeforeEntity=25]="BeforeEntity",e[e.BeforeNumericEntity=26]="BeforeNumericEntity",e[e.InNamedEntity=27]="InNamedEntity",e[e.InNumericEntity=28]="InNumericEntity",e[e.InHexEntity=29]="InHexEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var l={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},d=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,s=void 0===a||a;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=n,this.decodeEntities=s,this.entityTrie=n?o.xmlDecodeTree:o.htmlDecodeTree}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&(this.state=i.BeforeEntity)},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||s(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==l.TitleEnd[2]?this.state=this.xmlMode||t!==l.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(l.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){s(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||s(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:s(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.baseState=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):s(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):s(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):s(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){s(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&(this.baseState=this.state,this.state=i.BeforeEntity)},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=l.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===l.ScriptEnd[3]?this.startSpecial(l.ScriptEnd,4):t===l.StyleEnd[3]?this.startSpecial(l.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.stateBeforeEntity=function(e){this.entityExcess=1,this.entityResult=0,e===n.Number?this.state=i.BeforeNumericEntity:e===n.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=i.InNamedEntity,this.stateInNamedEntity(e))},e.prototype.stateInNamedEntity=function(e){if(this.entityExcess+=1,this.trieIndex=(0,o.determineBranch)(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0)return this.emitNamedEntity(),void this.index--;this.trieCurrent=this.entityTrie[this.trieIndex];var t=this.trieCurrent&o.BinTrieFlags.VALUE_LENGTH;if(t){var r=(t>>14)-1;if(this.allowLegacyEntity()||e===n.Semi){var i=this.index-this.entityExcess+1;i>this.sectionStart&&this.emitPartial(this.sectionStart,i),this.entityResult=this.trieIndex,this.trieIndex+=r,this.entityExcess=0,this.sectionStart=this.index+1,0===r&&this.emitNamedEntity()}else this.trieIndex+=r}},e.prototype.emitNamedEntity=function(){if(this.state=this.baseState,0!==this.entityResult)switch((this.entityTrie[this.entityResult]&o.BinTrieFlags.VALUE_LENGTH)>>14){case 1:this.emitCodePoint(this.entityTrie[this.entityResult]&~o.BinTrieFlags.VALUE_LENGTH);break;case 2:this.emitCodePoint(this.entityTrie[this.entityResult+1]);break;case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}},e.prototype.stateBeforeNumericEntity=function(e){(32|e)===n.LowerX?(this.entityExcess++,this.state=i.InHexEntity):(this.state=i.InNumericEntity,this.stateInNumericEntity(e))},e.prototype.emitNumericEntity=function(e){var t=this.index-this.entityExcess-1;t+2+Number(this.state===i.InHexEntity)!==this.index&&(t>this.sectionStart&&this.emitPartial(this.sectionStart,t),this.sectionStart=this.index+Number(e),this.emitCodePoint((0,o.replaceCodePoint)(this.entityResult))),this.state=this.baseState},e.prototype.stateInNumericEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=10*this.entityResult+(e-n.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.stateInHexEntity=function(e){e===n.Semi?this.emitNumericEntity(!0):u(e)?(this.entityResult=16*this.entityResult+(e-n.Zero),this.entityExcess++):function(e){return e>=n.UpperA&&e<=n.UpperF||e>=n.LowerA&&e<=n.LowerF}(e)?(this.entityResult=16*this.entityResult+((32|e)-n.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)},e.prototype.allowLegacyEntity=function(){return!this.xmlMode&&(this.baseState===i.Text||this.baseState===i.InSpecialTag)},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index{"use strict";var n=r(48834).Buffer,i=/^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i,a=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/\s|\uFEFF|\xA0/,s=/\r?\n[\x20\x09]+/g,c=/[;,"]/,u=/[;,"]|\s/,l=/^[!#$%&'*+\-\.^_`|~\da-zA-Z]+$/;function d(e){return e.replace(a,"")}function h(e){return o.test(e)}function p(e,t){for(;h(e[t]);)t++;return t}function f(e){return u.test(e)||!l.test(e)}class y{constructor(e){this.refs=[],e&&this.parse(e)}rel(e){for(var t=[],r=e.toLowerCase(),n=0;n{return r=t,n=e,Object.keys(r).length===Object.keys(n).length&&Object.keys(r).every((e=>e in n&&r[e]===n[e]));var r,n}))||this.refs.push(e),this}has(e,t){e=e.toLowerCase();for(var r=0;r",t)))throw new Error("Expected end of URI delimiter at offset "+t);i={uri:e.slice(t+1,u)},t=u,r=2,t++}else if(2===r){if(h(e[t])){t++;continue}if(";"===e[t])r=4,t++;else{if(","!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);r=1,t++}}else{if(4!==r)throw new Error('Unknown parser state "'+r+'"');if(";"===e[t]||h(e[t])){t++;continue}-1===(u=e.indexOf("=",t))&&(u=e.indexOf(";",t)),-1===u&&(u=e.length);var a=d(e.slice(t,u)).toLowerCase(),o="";if('"'===e[t=p(e,t=u+1)])for(t++;t"),e.push(t);return e.join(", ")}}y.isCompatibleEncoding=function(e){return i.test(e)},y.parse=function(e,t){return(new y).parse(e,t)},y.isSingleOccurenceAttr=function(e){return"rel"===e||"type"===e||"media"===e||"title"===e||"title*"===e},y.isTokenAttr=function(e){return"rel"===e||"type"===e||"anchor"===e},y.escapeQuotes=function(e){return e.replace(/"/g,'\\"')},y.expandRelations=function(e){return e.rel.split(" ").map((function(t){var r=Object.assign({},e);return r.rel=t,r}))},y.parseExtendedValue=function(e){var t=/([^']+)?(?:'([^']*)')?(.+)/.exec(e);return{language:t[2].toLowerCase(),encoding:y.isCompatibleEncoding(t[1])?null:t[1].toLowerCase(),value:y.isCompatibleEncoding(t[1])?decodeURIComponent(t[3]):t[3]}},y.formatExtendedAttribute=function(e,t){var r=(t.encoding||"utf-8").toUpperCase();return e+"="+r+"'"+(t.language||"en")+"'"+(n.isBuffer(t.value)&&y.isCompatibleEncoding(r)?t.value.toString(r):n.isBuffer(t.value)?t.value.toString("hex").replace(/[0-9a-f]{2}/gi,"%$1"):encodeURIComponent(t.value))},y.formatAttribute=function(e,t){return Array.isArray(t)?t.map((t=>y.formatAttribute(e,t))).join("; "):"*"===e[e.length-1]||"string"!=typeof t?y.formatExtendedAttribute(e,t):(y.isTokenAttr(e)?t=f(t)?'"'+y.escapeQuotes(t)+'"':y.escapeQuotes(t):f(t)&&(t='"'+(t=(t=encodeURIComponent(t)).replace(/%20/g," ").replace(/%2C/g,",").replace(/%3B/g,";"))+'"'),e+"="+t)},e.exports=y},62333:(e,t)=>{t.read=function(e,t,r,n,i){var a,o,s=8*i-n-1,c=(1<>1,l=-7,d=r?i-1:0,h=r?-1:1,p=e[t+d];for(d+=h,a=p&(1<<-l)-1,p>>=-l,l+=s;l>0;a=256*a+e[t+d],d+=h,l-=8);for(o=a&(1<<-l)-1,a>>=-l,l+=n;l>0;o=256*o+e[t+d],d+=h,l-=8);if(0===a)a=1-u;else{if(a===c)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,n),a-=u}return(p?-1:1)*o*Math.pow(2,a-n)},t.write=function(e,t,r,n,i,a){var o,s,c,u=8*a-i-1,l=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=n?0:a-1,f=n?1:-1,y=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=l):(o=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-o))<1&&(o--,c*=2),(t+=o+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(o++,c/=2),o+d>=l?(s=0,o=l):o+d>=1?(s=(t*c-1)*Math.pow(2,i),o+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),o=0));i>=8;e[r+p]=255&s,p+=f,s/=256,i-=8);for(o=o<0;e[r+p]=255&o,p+=f,o/=256,u-=8);e[r+p-f]|=128*y}},27623:(e,t,r)=>{"use strict";r.r(t),r.d(t,{Collection:()=>E,Iterable:()=>Rn,List:()=>cr,Map:()=>Ft,OrderedMap:()=>Tr,OrderedSet:()=>ln,PairSorting:()=>yn,Range:()=>Gr,Record:()=>gn,Repeat:()=>Sn,Seq:()=>J,Set:()=>Br,Stack:()=>Rr,default:()=>In,fromJS:()=>On,get:()=>ct,getIn:()=>zr,has:()=>st,hasIn:()=>Xr,hash:()=>me,is:()=>pe,isAssociative:()=>O,isCollection:()=>v,isImmutable:()=>j,isIndexed:()=>S,isKeyed:()=>w,isList:()=>sr,isMap:()=>le,isOrdered:()=>M,isOrderedMap:()=>de,isOrderedSet:()=>Mr,isPlainObject:()=>it,isRecord:()=>N,isSeq:()=>P,isSet:()=>Cr,isStack:()=>Ar,isValueObject:()=>he,merge:()=>Ot,mergeDeep:()=>xt,mergeDeepWith:()=>At,mergeWith:()=>Et,remove:()=>lt,removeIn:()=>gt,set:()=>dt,setIn:()=>ft,update:()=>bt,updateIn:()=>ht,version:()=>An});var n="delete",i=5,a=1<>>0;if(""+r!==t||4294967295===r)return NaN;t=r}return t<0?l(e)+t:t}function h(){return!0}function p(e,t,r){return(0===e&&!m(e)||void 0!==r&&e<=-r)&&(void 0===t||void 0!==r&&t>=r)}function f(e,t){return g(e,t,0)}function y(e,t){return g(e,t,t)}function g(e,t,r){return void 0===e?r:m(e)?t===1/0?t:0|Math.max(0,t+e):void 0===t||t===e?e:0|Math.min(t,e)}function m(e){return e<0||0===e&&1/e==-1/0}var b="@@__IMMUTABLE_ITERABLE__@@";function v(e){return Boolean(e&&e[b])}var _="@@__IMMUTABLE_KEYED__@@";function w(e){return Boolean(e&&e[_])}var T="@@__IMMUTABLE_INDEXED__@@";function S(e){return Boolean(e&&e[T])}function O(e){return w(e)||S(e)}var E=function(e){return v(e)?e:J(e)},x=function(e){function t(e){return w(e)?e:Y(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E),A=function(e){function t(e){return S(e)?e:Z(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E),R=function(e){function t(e){return v(e)&&!O(e)?e:ee(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(E);E.Keyed=x,E.Indexed=A,E.Set=R;var I="@@__IMMUTABLE_SEQ__@@";function P(e){return Boolean(e&&e[I])}var D="@@__IMMUTABLE_RECORD__@@";function N(e){return Boolean(e&&e[D])}function j(e){return v(e)||N(e)}var C="@@__IMMUTABLE_ORDERED__@@";function M(e){return Boolean(e&&e[C])}var L=0,k=1,F=2,B="function"==typeof Symbol&&Symbol.iterator,U="@@iterator",q=B||U,V=function(e){this.next=e};function Q(e,t,r,n){var i=0===e?t:1===e?r:[t,r];return n?n.value=i:n={value:i,done:!1},n}function $(){return{value:void 0,done:!0}}function H(e){return!!Array.isArray(e)||!!K(e)}function G(e){return e&&"function"==typeof e.next}function z(e){var t=K(e);return t&&t.call(e)}function K(e){var t=e&&(B&&e[B]||e[U]);if("function"==typeof t)return t}V.prototype.toString=function(){return"[Iterator]"},V.KEYS=L,V.VALUES=k,V.ENTRIES=F,V.prototype.inspect=V.prototype.toSource=function(){return this.toString()},V.prototype[q]=function(){return this};var X=Object.prototype.hasOwnProperty;function W(e){return!(!Array.isArray(e)&&"string"!=typeof e)||e&&"object"==typeof e&&Number.isInteger(e.length)&&e.length>=0&&(0===e.length?1===Object.keys(e).length:e.hasOwnProperty(e.length-1))}var J=function(e){function t(e){return null==e?ae():j(e)?e.toSeq():function(e){var t,r,n=ce(e);if(n)return(r=K(t=e))&&r===t.entries?n.fromEntrySeq():function(e){var t=K(e);return t&&t===e.keys}(e)?n.toSetSeq():n;if("object"==typeof e)return new re(e);throw new TypeError("Expected Array or collection object of values, or keyed object: "+e)}(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.toSeq=function(){return this},t.prototype.toString=function(){return this.__toString("Seq {","}")},t.prototype.cacheResult=function(){return!this._cache&&this.__iterateUncached&&(this._cache=this.entrySeq().toArray(),this.size=this._cache.length),this},t.prototype.__iterate=function(e,t){var r=this._cache;if(r){for(var n=r.length,i=0;i!==n;){var a=r[t?n-++i:i++];if(!1===e(a[1],a[0],this))break}return i}return this.__iterateUncached(e,t)},t.prototype.__iterator=function(e,t){var r=this._cache;if(r){var n=r.length,i=0;return new V((function(){if(i===n)return{value:void 0,done:!0};var a=r[t?n-++i:i++];return Q(e,a[0],a[1])}))}return this.__iteratorUncached(e,t)},t}(E),Y=function(e){function t(e){return null==e?ae().toKeyedSeq():v(e)?w(e)?e.toSeq():e.fromEntrySeq():N(e)?e.toSeq():oe(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.toKeyedSeq=function(){return this},t}(J),Z=function(e){function t(e){return null==e?ae():v(e)?w(e)?e.entrySeq():e.toIndexedSeq():N(e)?e.toSeq().entrySeq():se(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return t(arguments)},t.prototype.toIndexedSeq=function(){return this},t.prototype.toString=function(){return this.__toString("Seq [","]")},t}(J),ee=function(e){function t(e){return(v(e)&&!O(e)?e:Z(e)).toSetSeq()}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return t(arguments)},t.prototype.toSetSeq=function(){return this},t}(J);J.isSeq=P,J.Keyed=Y,J.Set=ee,J.Indexed=Z,J.prototype[I]=!0;var te=function(e){function t(e){this._array=e,this.size=e.length}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e,t){return this.has(e)?this._array[d(this,e)]:t},t.prototype.__iterate=function(e,t){for(var r=this._array,n=r.length,i=0;i!==n;){var a=t?n-++i:i++;if(!1===e(r[a],a,this))break}return i},t.prototype.__iterator=function(e,t){var r=this._array,n=r.length,i=0;return new V((function(){if(i===n)return{value:void 0,done:!0};var a=t?n-++i:i++;return Q(e,a,r[a])}))},t}(Z),re=function(e){function t(e){var t=Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e):[]);this._object=e,this._keys=t,this.size=t.length}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.get=function(e,t){return void 0===t||this.has(e)?this._object[e]:t},t.prototype.has=function(e){return X.call(this._object,e)},t.prototype.__iterate=function(e,t){for(var r=this._object,n=this._keys,i=n.length,a=0;a!==i;){var o=n[t?i-++a:a++];if(!1===e(r[o],o,this))break}return a},t.prototype.__iterator=function(e,t){var r=this._object,n=this._keys,i=n.length,a=0;return new V((function(){if(a===i)return{value:void 0,done:!0};var o=n[t?i-++a:a++];return Q(e,o,r[o])}))},t}(Y);re.prototype[C]=!0;var ne,ie=function(e){function t(e){this._collection=e,this.size=e.length||e.size}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.__iterateUncached=function(e,t){if(t)return this.cacheResult().__iterate(e,t);var r=z(this._collection),n=0;if(G(r))for(var i;!(i=r.next()).done&&!1!==e(i.value,n++,this););return n},t.prototype.__iteratorUncached=function(e,t){if(t)return this.cacheResult().__iterator(e,t);var r=z(this._collection);if(!G(r))return new V($);var n=0;return new V((function(){var t=r.next();return t.done?t:Q(e,n++,t.value)}))},t}(Z);function ae(){return ne||(ne=new te([]))}function oe(e){var t=ce(e);if(t)return t.fromEntrySeq();if("object"==typeof e)return new re(e);throw new TypeError("Expected Array or collection object of [k, v] entries, or keyed object: "+e)}function se(e){var t=ce(e);if(t)return t;throw new TypeError("Expected Array or collection object of values: "+e)}function ce(e){return W(e)?new te(e):H(e)?new ie(e):void 0}var ue="@@__IMMUTABLE_MAP__@@";function le(e){return Boolean(e&&e[ue])}function de(e){return le(e)&&M(e)}function he(e){return Boolean(e&&"function"==typeof e.equals&&"function"==typeof e.hashCode)}function pe(e,t){if(e===t||e!=e&&t!=t)return!0;if(!e||!t)return!1;if("function"==typeof e.valueOf&&"function"==typeof t.valueOf){if((e=e.valueOf())===(t=t.valueOf())||e!=e&&t!=t)return!0;if(!e||!t)return!1}return!!(he(e)&&he(t)&&e.equals(t))}var fe="function"==typeof Math.imul&&-2===Math.imul(4294967295,2)?Math.imul:function(e,t){var r=65535&(e|=0),n=65535&(t|=0);return r*n+((e>>>16)*n+r*(t>>>16)<<16>>>0)|0};function ye(e){return e>>>1&1073741824|3221225471&e}var ge=Object.prototype.valueOf;function me(e){if(null==e)return be(e);if("function"==typeof e.hashCode)return ye(e.hashCode(e));var t,r,n,i=(t=e).valueOf!==ge&&"function"==typeof t.valueOf?t.valueOf(t):t;if(null==i)return be(i);switch(typeof i){case"boolean":return i?1108378657:1108378656;case"number":return function(e){if(e!=e||e===1/0)return 0;var t=0|e;for(t!==e&&(t^=4294967295*e);e>4294967295;)t^=e/=4294967295;return ye(t)}(i);case"string":return i.length>Re?(void 0===(n=De[r=i])&&(n=ve(r),Pe===Ie&&(Pe=0,De={}),Pe++,De[r]=n),n):ve(i);case"object":case"function":return function(e){var t;if(Oe&&void 0!==(t=Se.get(e)))return t;if(void 0!==(t=e[Ae]))return t;if(!we){if(void 0!==(t=e.propertyIsEnumerable&&e.propertyIsEnumerable[Ae]))return t;if(void 0!==(t=function(e){if(e&&e.nodeType>0)switch(e.nodeType){case 1:return e.uniqueID;case 9:return e.documentElement&&e.documentElement.uniqueID}}(e)))return t}if(t=Te(),Oe)Se.set(e,t);else{if(void 0!==_e&&!1===_e(e))throw new Error("Non-extensible objects are not allowed as keys.");if(we)Object.defineProperty(e,Ae,{enumerable:!1,configurable:!1,writable:!1,value:t});else if(void 0!==e.propertyIsEnumerable&&e.propertyIsEnumerable===e.constructor.prototype.propertyIsEnumerable)e.propertyIsEnumerable=function(){return this.constructor.prototype.propertyIsEnumerable.apply(this,arguments)},e.propertyIsEnumerable[Ae]=t;else{if(void 0===e.nodeType)throw new Error("Unable to set a non-enumerable property on object.");e[Ae]=t}}return t}(i);case"symbol":return function(e){var t=Ee[e];return void 0!==t||(t=Te(),Ee[e]=t),t}(i);default:if("function"==typeof i.toString)return ve(i.toString());throw new Error("Value type "+typeof i+" cannot be hashed.")}}function be(e){return null===e?1108378658:1108378659}function ve(e){for(var t=0,r=0;r=0&&(u.get=function(t,r){return(t=d(this,t))>=0&&ts)return{value:void 0,done:!0};var e=i.next();return n||t===k||e.done?e:Q(t,c-1,t===L?void 0:e.value[1],e)}))},u}function qe(e,t,r,n){var i=We(e);return i.__iterateUncached=function(i,a){var o=this;if(a)return this.cacheResult().__iterate(i,a);var s=!0,c=0;return e.__iterate((function(e,a,u){if(!s||!(s=t.call(r,e,a,u)))return c++,i(e,n?a:c-1,o)})),c},i.__iteratorUncached=function(i,a){var o=this;if(a)return this.cacheResult().__iterator(i,a);var s=e.__iterator(F,a),c=!0,u=0;return new V((function(){var e,a,l;do{if((e=s.next()).done)return n||i===k?e:Q(i,u++,i===L?void 0:e.value[1],e);var d=e.value;a=d[0],l=d[1],c&&(c=t.call(r,l,a,o))}while(c);return i===F?e:Q(i,a,l,e)}))},i}function Ve(e,t,r){var n=We(e);return n.__iterateUncached=function(i,a){if(a)return this.cacheResult().__iterate(i,a);var o=0,s=!1;return function e(c,u){c.__iterate((function(a,c){return(!t||u0}function Ge(e,t,r,n){var i=We(e),a=new te(r).map((function(e){return e.size}));return i.size=n?a.max():a.min(),i.__iterate=function(e,t){for(var r,n=this.__iterator(k,t),i=0;!(r=n.next()).done&&!1!==e(r.value,i++,this););return i},i.__iteratorUncached=function(e,i){var a=r.map((function(e){return e=E(e),z(i?e.reverse():e)})),o=0,s=!1;return new V((function(){var r;return s||(r=a.map((function(e){return e.next()})),s=n?r.every((function(e){return e.done})):r.some((function(e){return e.done}))),s?{value:void 0,done:!0}:Q(e,o++,t.apply(null,r.map((function(e){return e.value}))))}))},i}function ze(e,t){return e===t?e:P(e)?t:e.constructor(t)}function Ke(e){if(e!==Object(e))throw new TypeError("Expected [K, V] tuple: "+e)}function Xe(e){return w(e)?x:S(e)?A:R}function We(e){return Object.create((w(e)?Y:S(e)?Z:ee).prototype)}function Je(){return this._iter.cacheResult?(this._iter.cacheResult(),this.size=this._iter.size,this):J.prototype.cacheResult.call(this)}function Ye(e,t){return void 0===e&&void 0===t?0:void 0===e?1:void 0===t?-1:e>t?1:e0;)t[r]=arguments[r+1];if("function"!=typeof e)throw new TypeError("Invalid merger function: "+e);return St(this,t,e)}function St(e,t,r){for(var n=[],i=0;i0;)t[r]=arguments[r+1];return It(e,t)}function Et(e,t){for(var r=[],n=arguments.length-2;n-- >0;)r[n]=arguments[n+2];return It(t,r,e)}function xt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return Rt(e,t)}function At(e,t){for(var r=[],n=arguments.length-2;n-- >0;)r[n]=arguments[n+2];return Rt(t,r,e)}function Rt(e,t,r){return It(e,t,function(e){return function t(r,n,i){return at(r)&&at(n)&&(a=n,o=J(r),s=J(a),S(o)===S(s)&&w(o)===w(s))?It(r,[n],t):e?e(r,n,i):n;var a,o,s}}(r))}function It(e,t,r){if(!at(e))throw new TypeError("Cannot merge into non-data-structure value: "+e);if(j(e))return"function"==typeof r&&e.mergeWith?e.mergeWith.apply(e,[r].concat(t)):e.merge?e.merge.apply(e,t):e.concat.apply(e,t);for(var n=Array.isArray(e),i=e,a=n?A:x,o=n?function(t){i===e&&(i=ut(i)),i.push(t)}:function(t,n){var a=X.call(i,n),o=a&&r?r(i[n],t,n):t;a&&o===i[n]||(i===e&&(i=ut(i)),i[n]=o)},s=0;s0;)t[r]=arguments[r+1];return Rt(this,t,e)}function Nt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return ht(this,e,Wt(),(function(e){return It(e,t)}))}function jt(e){for(var t=[],r=arguments.length-1;r-- >0;)t[r]=arguments[r+1];return ht(this,e,Wt(),(function(e){return Rt(e,t)}))}function Ct(e){var t=this.asMutable();return e(t),t.wasAltered()?t.__ensureOwner(this.__ownerID):this}function Mt(){return this.__ownerID?this:this.__ensureOwner(new u)}function Lt(){return this.__ensureOwner()}function kt(){return this.__altered}var Ft=function(e){function t(t){return null==t?Wt():le(t)&&!M(t)?t:Wt().withMutations((function(r){var n=e(t);tt(n.size),n.forEach((function(e,t){return r.set(t,e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return Wt().withMutations((function(t){for(var r=0;r=e.length)throw new Error("Missing value for key: "+e[r]);t.set(e[r],e[r+1])}}))},t.prototype.toString=function(){return this.__toString("Map {","}")},t.prototype.get=function(e,t){return this._root?this._root.get(0,void 0,e,t):t},t.prototype.set=function(e,t){return Jt(this,e,t)},t.prototype.remove=function(e){return Jt(this,e,s)},t.prototype.deleteAll=function(e){var t=E(e);return 0===t.size?this:this.withMutations((function(e){t.forEach((function(t){return e.remove(t)}))}))},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._root=null,this.__hash=void 0,this.__altered=!0,this):Wt()},t.prototype.sort=function(e){return Tr(Qe(this,e))},t.prototype.sortBy=function(e,t){return Tr(Qe(this,t,e))},t.prototype.map=function(e,t){var r=this;return this.withMutations((function(n){n.forEach((function(i,a){n.set(a,e.call(t,i,a,r))}))}))},t.prototype.__iterator=function(e,t){return new Gt(this,e,t)},t.prototype.__iterate=function(e,t){var r=this,n=0;return this._root&&this._root.iterate((function(t){return n++,e(t[1],t[0],r)}),t),n},t.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Xt(this.size,this._root,e,this.__hash):0===this.size?Wt():(this.__ownerID=e,this.__altered=!1,this)},t}(x);Ft.isMap=le;var Bt=Ft.prototype;Bt[ue]=!0,Bt[n]=Bt.remove,Bt.removeAll=Bt.deleteAll,Bt.setIn=yt,Bt.removeIn=Bt.deleteIn=mt,Bt.update=vt,Bt.updateIn=_t,Bt.merge=Bt.concat=wt,Bt.mergeWith=Tt,Bt.mergeDeep=Pt,Bt.mergeDeepWith=Dt,Bt.mergeIn=Nt,Bt.mergeDeepIn=jt,Bt.withMutations=Ct,Bt.wasAltered=kt,Bt.asImmutable=Lt,Bt["@@transducer/init"]=Bt.asMutable=Mt,Bt["@@transducer/step"]=function(e,t){return e.set(t[0],t[1])},Bt["@@transducer/result"]=function(e){return e.asImmutable()};var Ut=function(e,t){this.ownerID=e,this.entries=t};Ut.prototype.get=function(e,t,r,n){for(var i=this.entries,a=0,o=i.length;a=nr)return function(e,t,r,n){e||(e=new u);for(var i=new $t(e,me(r),[r,n]),a=0;a>>e)&o),s=this.bitmap;return 0==(s&a)?n:this.nodes[tr(s&a-1)].get(e+i,t,r,n)},qt.prototype.update=function(e,t,r,n,c,u,l){void 0===r&&(r=me(n));var d=(0===t?r:r>>>t)&o,h=1<=ir)return function(e,t,r,n,i){for(var o=0,s=new Array(a),c=0;0!==r;c++,r>>>=1)s[c]=1&r?t[o++]:void 0;return s[n]=i,new Vt(e,o+1,s)}(e,g,p,d,b);if(f&&!b&&2===g.length&&Zt(g[1^y]))return g[1^y];if(f&&b&&1===g.length&&Zt(b))return b;var v=e&&e===this.ownerID,_=f?b?p:p^h:p|h,w=f?b?rr(g,y,b,v):function(e,t,r){var n=e.length-1;if(r&&t===n)return e.pop(),e;for(var i=new Array(n),a=0,o=0;o>>e)&o,s=this.nodes[a];return s?s.get(e+i,t,r,n):n},Vt.prototype.update=function(e,t,r,n,a,c,u){void 0===r&&(r=me(n));var l=(0===t?r:r>>>t)&o,d=a===s,h=this.nodes,p=h[l];if(d&&!p)return this;var f=Yt(p,e,t+i,r,n,a,c,u);if(f===p)return this;var y=this.count;if(p){if(!f&&--y>>r)&o,u=(0===r?n:n>>>r)&o,l=c===u?[er(e,t,r+i,n,a)]:(s=new $t(t,n,a),c>1&1431655765))+(e>>2&858993459))+(e>>4)&252645135,127&(e+=e>>8)+(e>>16)}function rr(e,t,r,n){var i=n?e:Ze(e);return i[t]=r,i}var nr=a/4,ir=a/2,ar=a/4,or="@@__IMMUTABLE_LIST__@@";function sr(e){return Boolean(e&&e[or])}var cr=function(e){function t(t){var r=yr();if(null==t)return r;if(sr(t))return t;var n=e(t),o=n.size;return 0===o?r:(tt(o),o>0&&o=0&&e=e.size||t<0)return e.withMutations((function(e){t<0?vr(e,t).set(0,r):vr(e,0,t+1).set(t,r)}));t+=e._origin;var n=e._tail,i=e._root,a={value:!1};return t>=_r(e._capacity)?n=gr(n,e.__ownerID,0,t,r,a):i=gr(i,e.__ownerID,e._level,t,r,a),a.value?e.__ownerID?(e._root=i,e._tail=n,e.__hash=void 0,e.__altered=!0,e):fr(e._origin,e._capacity,e._level,i,n):e}(this,e,t)},t.prototype.remove=function(e){return this.has(e)?0===e?this.shift():e===this.size-1?this.pop():this.splice(e,1):this},t.prototype.insert=function(e,t){return this.splice(e,0,t)},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=this._origin=this._capacity=0,this._level=i,this._root=this._tail=this.__hash=void 0,this.__altered=!0,this):yr()},t.prototype.push=function(){var e=arguments,t=this.size;return this.withMutations((function(r){vr(r,0,t+e.length);for(var n=0;n>>t&o;if(n>=this.array.length)return new lr([],e);var a,s=0===n;if(t>0){var c=this.array[n];if((a=c&&c.removeBefore(e,t-i,r))===c&&s)return this}if(s&&!a)return this;var u=mr(this,e);if(!s)for(var l=0;l>>t&o;if(a>=this.array.length)return this;if(t>0){var s=this.array[a];if((n=s&&s.removeAfter(e,t-i,r))===s&&a===this.array.length-1)return this}var c=mr(this,e);return c.array.splice(a+1),n&&(c.array[a]=n),c};var dr,hr={};function pr(e,t){var r=e._origin,n=e._capacity,o=_r(n),s=e._tail;return function e(c,u,l){return 0===u?function(e,i){var c=i===o?s&&s.array:e&&e.array,u=i>r?0:r-i,l=n-i;return l>a&&(l=a),function(){if(u===l)return hr;var e=t?--l:u++;return c&&c[e]}}(c,l):function(o,s,c){var u,l=o&&o.array,d=c>r?0:r-c>>s,h=1+(n-c>>s);return h>a&&(h=a),function(){for(;;){if(u){var r=u();if(r!==hr)return r;u=null}if(d===h)return hr;var n=t?--h:d++;u=e(l&&l[n],s-i,c+(n<>>r&o,d=e&&l0){var h=e&&e.array[l],p=gr(h,t,r-i,n,a,s);return p===h?e:((u=mr(e,t)).array[l]=p,u)}return d&&e.array[l]===a?e:(s&&c(s),u=mr(e,t),void 0===a&&l===u.array.length-1?u.array.pop():u.array[l]=a,u)}function mr(e,t){return t&&e&&t===e.ownerID?e:new lr(e?e.array.slice():[],t)}function br(e,t){if(t>=_r(e._capacity))return e._tail;if(t<1<0;)r=r.array[t>>>n&o],n-=i;return r}}function vr(e,t,r){void 0!==t&&(t|=0),void 0!==r&&(r|=0);var n=e.__ownerID||new u,a=e._origin,s=e._capacity,c=a+t,l=void 0===r?s:r<0?s+r:a+r;if(c===a&&l===s)return e;if(c>=l)return e.clear();for(var d=e._level,h=e._root,p=0;c+p<0;)h=new lr(h&&h.array.length?[void 0,h]:[],n),p+=1<<(d+=i);p&&(c+=p,a+=p,l+=p,s+=p);for(var f=_r(s),y=_r(l);y>=1<f?new lr([],n):g;if(g&&y>f&&ci;v-=i){var _=f>>>v&o;b=b.array[_]=mr(b.array[_],n)}b.array[f>>>i&o]=g}if(l=y)c-=y,l-=y,d=i,h=null,m=m&&m.removeBefore(n,0,c);else if(c>a||y>>d&o;if(w!==y>>>d&o)break;w&&(p+=(1<a&&(h=h.removeBefore(n,d,c-p)),h&&y>>i<=a&&c.size>=2*o.size?(n=(i=c.filter((function(e,t){return void 0!==e&&u!==t}))).toKeyedSeq().map((function(e){return e[0]})).flip().toMap(),e.__ownerID&&(n.__ownerID=i.__ownerID=e.__ownerID)):(n=o.remove(t),i=u===c.size-1?c.pop():c.set(u,void 0))}else if(l){if(r===c.get(u)[1])return e;n=o,i=c.set(u,[t,r])}else n=o.set(t,c.size),i=c.set(c.size,[t,r]);return e.__ownerID?(e.size=n.size,e._map=n,e._list=i,e.__hash=void 0,e.__altered=!0,e):Sr(n,i)}Tr.isOrderedMap=de,Tr.prototype[C]=!0,Tr.prototype[n]=Tr.prototype.remove;var xr="@@__IMMUTABLE_STACK__@@";function Ar(e){return Boolean(e&&e[xr])}var Rr=function(e){function t(e){return null==e?Nr():Ar(e)?e:Nr().pushAll(e)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.prototype.toString=function(){return this.__toString("Stack [","]")},t.prototype.get=function(e,t){var r=this._head;for(e=d(this,e);r&&e--;)r=r.next;return r?r.value:t},t.prototype.peek=function(){return this._head&&this._head.value},t.prototype.push=function(){var e=arguments;if(0===arguments.length)return this;for(var t=this.size+arguments.length,r=this._head,n=arguments.length-1;n>=0;n--)r={value:e[n],next:r};return this.__ownerID?(this.size=t,this._head=r,this.__hash=void 0,this.__altered=!0,this):Dr(t,r)},t.prototype.pushAll=function(t){if(0===(t=e(t)).size)return this;if(0===this.size&&Ar(t))return t;tt(t.size);var r=this.size,n=this._head;return t.__iterate((function(e){r++,n={value:e,next:n}}),!0),this.__ownerID?(this.size=r,this._head=n,this.__hash=void 0,this.__altered=!0,this):Dr(r,n)},t.prototype.pop=function(){return this.slice(1)},t.prototype.clear=function(){return 0===this.size?this:this.__ownerID?(this.size=0,this._head=void 0,this.__hash=void 0,this.__altered=!0,this):Nr()},t.prototype.slice=function(t,r){if(p(t,r,this.size))return this;var n=f(t,this.size);if(y(r,this.size)!==this.size)return e.prototype.slice.call(this,t,r);for(var i=this.size-n,a=this._head;n--;)a=a.next;return this.__ownerID?(this.size=i,this._head=a,this.__hash=void 0,this.__altered=!0,this):Dr(i,a)},t.prototype.__ensureOwner=function(e){return e===this.__ownerID?this:e?Dr(this.size,this._head,e,this.__hash):0===this.size?Nr():(this.__ownerID=e,this.__altered=!1,this)},t.prototype.__iterate=function(e,t){var r=this;if(t)return new te(this.toArray()).__iterate((function(t,n){return e(t,n,r)}),t);for(var n=0,i=this._head;i&&!1!==e(i.value,n++,this);)i=i.next;return n},t.prototype.__iterator=function(e,t){if(t)return new te(this.toArray()).__iterator(e,t);var r=0,n=this._head;return new V((function(){if(n){var t=n.value;return n=n.next,Q(e,r++,t)}return{value:void 0,done:!0}}))},t}(A);Rr.isStack=Ar;var Ir,Pr=Rr.prototype;function Dr(e,t,r,n){var i=Object.create(Pr);return i.size=e,i._head=t,i.__ownerID=r,i.__hash=n,i.__altered=!1,i}function Nr(){return Ir||(Ir=Dr(0))}Pr[xr]=!0,Pr.shift=Pr.pop,Pr.unshift=Pr.push,Pr.unshiftAll=Pr.pushAll,Pr.withMutations=Ct,Pr.wasAltered=kt,Pr.asImmutable=Lt,Pr["@@transducer/init"]=Pr.asMutable=Mt,Pr["@@transducer/step"]=function(e,t){return e.unshift(t)},Pr["@@transducer/result"]=function(e){return e.asImmutable()};var jr="@@__IMMUTABLE_SET__@@";function Cr(e){return Boolean(e&&e[jr])}function Mr(e){return Cr(e)&&M(e)}function Lr(e,t){if(e===t)return!0;if(!v(t)||void 0!==e.size&&void 0!==t.size&&e.size!==t.size||void 0!==e.__hash&&void 0!==t.__hash&&e.__hash!==t.__hash||w(e)!==w(t)||S(e)!==S(t)||M(e)!==M(t))return!1;if(0===e.size&&0===t.size)return!0;var r=!O(e);if(M(e)){var n=e.entries();return t.every((function(e,t){var i=n.next().value;return i&&pe(i[1],e)&&(r||pe(i[0],t))}))&&n.next().done}var i=!1;if(void 0===e.size)if(void 0===t.size)"function"==typeof e.cacheResult&&e.cacheResult();else{i=!0;var a=e;e=t,t=a}var o=!0,c=t.__iterate((function(t,n){if(r?!e.has(t):i?!pe(t,e.get(n,s)):!pe(e.get(n,s),t))return o=!1,!1}));return o&&e.size===c}function kr(e,t){var r=function(r){e.prototype[r]=t[r]};return Object.keys(t).forEach(r),Object.getOwnPropertySymbols&&Object.getOwnPropertySymbols(t).forEach(r),e}function Fr(e){if(!e||"object"!=typeof e)return e;if(!v(e)){if(!at(e))return e;e=J(e)}if(w(e)){var t={};return e.__iterate((function(e,r){t[r]=Fr(e)})),t}var r=[];return e.__iterate((function(e){r.push(Fr(e))})),r}var Br=function(e){function t(t){return null==t?$r():Cr(t)&&!M(t)?t:$r().withMutations((function(r){var n=e(t);tt(n.size),n.forEach((function(e){return r.add(e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.fromKeys=function(e){return this(x(e).keySeq())},t.intersect=function(e){return(e=E(e).toArray()).length?qr.intersect.apply(t(e.pop()),e):$r()},t.union=function(e){return(e=E(e).toArray()).length?qr.union.apply(t(e.pop()),e):$r()},t.prototype.toString=function(){return this.__toString("Set {","}")},t.prototype.has=function(e){return this._map.has(e)},t.prototype.add=function(e){return Vr(this,this._map.set(e,e))},t.prototype.remove=function(e){return Vr(this,this._map.remove(e))},t.prototype.clear=function(){return Vr(this,this._map.clear())},t.prototype.map=function(e,t){var r=this,n=!1,i=Vr(this,this._map.mapEntries((function(i){var a=i[1],o=e.call(t,a,a,r);return o!==a&&(n=!0),[o,o]}),t));return n?i:this},t.prototype.union=function(){for(var t=[],r=arguments.length;r--;)t[r]=arguments[r];return 0===(t=t.filter((function(e){return 0!==e.size}))).length?this:0!==this.size||this.__ownerID||1!==t.length?this.withMutations((function(r){for(var n=0;n=0&&t=0&&r>>-15,461845907),t=fe(t<<13|t>>>-13,5),t=fe((t=(t+3864292196|0)^e)^t>>>16,2246822507),t=ye((t=fe(t^t>>>13,3266489909))^t>>>16)}(e.__iterate(r?t?function(e,t){n=31*n+un(me(e),me(t))|0}:function(e,t){n=n+un(me(e),me(t))|0}:t?function(e){n=31*n+me(e)|0}:function(e){n=n+me(e)|0}),n)}(this))}});var Jr=E.prototype;Jr[b]=!0,Jr[q]=Jr.values,Jr.toJSON=Jr.toArray,Jr.__toStringMapper=ot,Jr.inspect=Jr.toSource=function(){return this.toString()},Jr.chain=Jr.flatMap,Jr.contains=Jr.includes,kr(x,{flip:function(){return ze(this,Le(this))},mapEntries:function(e,t){var r=this,n=0;return ze(this,this.toSeq().map((function(i,a){return e.call(t,[a,i],n++,r)})).fromEntrySeq())},mapKeys:function(e,t){var r=this;return ze(this,this.toSeq().flip().map((function(n,i){return e.call(t,n,i,r)})).flip())}});var Yr=x.prototype;Yr[_]=!0,Yr[q]=Jr.entries,Yr.toJSON=Wr,Yr.__toStringMapper=function(e,t){return ot(t)+": "+ot(e)},kr(A,{toKeyedSeq:function(){return new Ne(this,!1)},filter:function(e,t){return ze(this,Be(this,e,t,!1))},findIndex:function(e,t){var r=this.findEntry(e,t);return r?r[0]:-1},indexOf:function(e){var t=this.keyOf(e);return void 0===t?-1:t},lastIndexOf:function(e){var t=this.lastKeyOf(e);return void 0===t?-1:t},reverse:function(){return ze(this,Fe(this,!1))},slice:function(e,t){return ze(this,Ue(this,e,t,!1))},splice:function(e,t){var r=arguments.length;if(t=Math.max(t||0,0),0===r||2===r&&!t)return this;e=f(e,e<0?this.count():this.size);var n=this.slice(0,e);return ze(this,1===r?n:n.concat(Ze(arguments,2),this.slice(e+t)))},findLastIndex:function(e,t){var r=this.findLastEntry(e,t);return r?r[0]:-1},first:function(e){return this.get(0,e)},flatten:function(e){return ze(this,Ve(this,e,!1))},get:function(e,t){return(e=d(this,e))<0||this.size===1/0||void 0!==this.size&&e>this.size?t:this.find((function(t,r){return r===e}),void 0,t)},has:function(e){return(e=d(this,e))>=0&&(void 0!==this.size?this.size===1/0||et?-1:0}function un(e,t){return e^t+2654435769+(e<<6)+(e>>2)|0}en.has=Jr.includes,en.contains=en.includes,en.keys=en.values,kr(Y,Yr),kr(Z,Zr),kr(ee,en);var ln=function(e){function t(e){return null==e?fn():Mr(e)?e:fn().withMutations((function(t){var r=R(e);tt(r.size),r.forEach((function(e){return t.add(e)}))}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.of=function(){return this(arguments)},t.fromKeys=function(e){return this(x(e).keySeq())},t.prototype.toString=function(){return this.__toString("OrderedSet {","}")},t}(Br);ln.isOrderedSet=Mr;var dn,hn=ln.prototype;function pn(e,t){var r=Object.create(hn);return r.size=e?e.size:0,r._map=e,r.__ownerID=t,r}function fn(){return dn||(dn=pn(Or()))}hn[C]=!0,hn.zip=Zr.zip,hn.zipWith=Zr.zipWith,hn.zipAll=Zr.zipAll,hn.__empty=fn,hn.__make=pn;var yn={LeftThenRight:-1,RightThenLeft:1},gn=function(e,t){var r;!function(e){if(N(e))throw new Error("Can not call `Record` with an immutable Record as default values. Use a plain javascript object instead.");if(j(e))throw new Error("Can not call `Record` with an immutable Collection as default values. Use a plain javascript object instead.");if(null===e||"object"!=typeof e)throw new Error("Can not call `Record` with a non-object as default values. Use a plain javascript object instead.")}(e);var n=function(a){var o=this;if(a instanceof n)return a;if(!(this instanceof n))return new n(a);if(!r){r=!0;var s=Object.keys(e),c=i._indices={};i._name=t,i._keys=s,i._defaultValues=e;for(var u=0;u2?[]:void 0,{"":e})}function En(e,t,r,n,i,a){if("string"!=typeof r&&!j(r)&&(W(r)||H(r)||it(r))){if(~e.indexOf(r))throw new TypeError("Cannot convert circular structure to Immutable");e.push(r),i&&""!==n&&i.push(n);var o=t.call(a,n,J(r).map((function(n,a){return En(e,t,n,a,i,r)})),i&&i.slice());return e.pop(),i&&i.pop(),o}return r}function xn(e,t){return S(t)?t.toList():w(t)?t.toMap():t.toSet()}var An="4.3.4",Rn=E;const In={version:An,Collection:E,Iterable:E,Seq:J,Map:Ft,OrderedMap:Tr,List:cr,Stack:Rr,Set:Br,OrderedSet:ln,PairSorting:yn,Record:gn,Range:Gr,Repeat:Sn,is:pe,fromJS:On,hash:me,isImmutable:j,isCollection:v,isKeyed:w,isIndexed:S,isAssociative:O,isOrdered:M,isValueObject:he,isPlainObject:it,isSeq:P,isList:sr,isMap:le,isOrderedMap:de,isStack:Ar,isSet:Cr,isOrderedSet:Mr,isRecord:N,get:ct,getIn:zr,has:st,hasIn:Xr,merge:Ot,mergeDeep:xt,mergeWith:Et,mergeDeepWith:At,remove:lt,removeIn:gt,set:dt,setIn:ft,update:bt,updateIn:ht}},91285:e=>{"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},58607:e=>{"use strict";const t=e=>null!==e&&"object"==typeof e&&"function"==typeof e.pipe;t.writable=e=>t(e)&&!1!==e.writable&&"function"==typeof e._write&&"object"==typeof e._writableState,t.readable=e=>t(e)&&!1!==e.readable&&"function"==typeof e._read&&"object"==typeof e._readableState,t.duplex=e=>t.writable(e)&&t.readable(e),t.transform=e=>t.duplex(e)&&"function"==typeof e._transform,e.exports=t},1838:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(36513),t),i(r(80512),t),i(r(36187),t),i(r(17066),t),i(r(51258),t),i(r(41337),t),i(r(56991),t)},36513:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.defaultExpandOptions=t.ContextParser=void 0,r(70155);const n=r(84690),i=r(80512),a=r(36187),o=r(41337),s=r(56991),c=r(67026);class u{constructor(e){e=e||{},this.documentLoader=e.documentLoader||new a.FetchDocumentLoader,this.documentCache={},this.validateContext=!e.skipValidation,this.expandContentTypeToBase=!!e.expandContentTypeToBase,this.remoteContextsDepthLimit=e.remoteContextsDepthLimit||32,this.redirectSchemaOrgHttps=!("redirectSchemaOrgHttps"in e)||!!e.redirectSchemaOrgHttps}static validateLanguage(e,t,r){if("string"!=typeof e)throw new i.ErrorCoded(`The value of an '@language' must be a string, got '${JSON.stringify(e)}'`,r);if(!s.Util.REGEX_LANGUAGE_TAG.test(e)){if(t)throw new i.ErrorCoded(`The value of an '@language' must be a valid language tag, got '${JSON.stringify(e)}'`,r);return!1}return!0}static validateDirection(e,t){if("string"!=typeof e)throw new i.ErrorCoded(`The value of an '@direction' must be a string, got '${JSON.stringify(e)}'`,i.ERROR_CODES.INVALID_BASE_DIRECTION);if(!s.Util.REGEX_DIRECTION_TAG.test(e)){if(t)throw new i.ErrorCoded(`The value of an '@direction' must be 'ltr' or 'rtl', got '${JSON.stringify(e)}'`,i.ERROR_CODES.INVALID_BASE_DIRECTION);return!1}return!0}idifyReverseTerms(e){for(const t of Object.keys(e)){const r=e[t];if(r&&"object"==typeof r&&r["@reverse"]&&!r["@id"]){if("string"!=typeof r["@reverse"]||s.Util.isValidKeyword(r["@reverse"]))throw new i.ErrorCoded(`Invalid @reverse value, must be absolute IRI or blank node: '${r["@reverse"]}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);r["@id"]=r["@reverse"],s.Util.isPotentialKeyword(r["@reverse"])?delete r["@reverse"]:r["@reverse"]=!0}}return e}expandPrefixedTerms(e,t){const r=e.getContextRaw();for(const n of Object.keys(r))if(s.Util.EXPAND_KEYS_BLACKLIST.indexOf(n)<0&&!s.Util.isReservedInternalKeyword(n)){const a=r[n];if(s.Util.isPotentialKeyword(n)&&s.Util.ALIAS_DOMAIN_BLACKLIST.indexOf(n)>=0&&("@type"!==n||"object"==typeof r[n]&&!r[n]["@protected"]&&"@set"!==r[n]["@container"]))throw new i.ErrorCoded(`Keywords can not be aliased to something else.\nTried mapping ${n} to ${JSON.stringify(a)}`,i.ERROR_CODES.KEYWORD_REDEFINITION);if(s.Util.ALIAS_RANGE_BLACKLIST.indexOf(s.Util.getContextValueId(a))>=0)throw new i.ErrorCoded(`Aliasing to certain keywords is not allowed.\nTried mapping ${n} to ${JSON.stringify(a)}`,i.ERROR_CODES.INVALID_KEYWORD_ALIAS);if(a&&s.Util.isPotentialKeyword(s.Util.getContextValueId(a))&&!0===a["@prefix"])throw new i.ErrorCoded(`Tried to use keyword aliases as prefix: '${n}': '${JSON.stringify(a)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);for(;s.Util.isPrefixValue(r[n]);){const i=r[n];let a=!1;if("string"==typeof i)r[n]=e.expandTerm(i,!0),a=a||i!==r[n];else{const o=i["@id"],c=i["@type"],u=!("@prefix"in i)||s.Util.isValidIri(n);if("@id"in i)null!=o&&"string"==typeof o&&(r[n]["@id"]=e.expandTerm(o,!0),a=a||o!==r[n]["@id"]);else if(!s.Util.isPotentialKeyword(n)&&u){const t=e.expandTerm(n,!0);t!==n&&(r[n]["@id"]=t,a=!0)}!c||"string"!=typeof c||"@vocab"===c||i["@container"]&&i["@container"]["@type"]||!u||(r[n]["@type"]=e.expandTerm(c,!0),t&&c===r[n]["@type"]&&(r[n]["@type"]=e.expandTerm(c,!1)),a=a||c!==r[n]["@type"])}if(!a)break}}}normalize(e,{processingMode:t,normalizeLanguageTags:r}){if(r||1===t)for(const t of Object.keys(e))if("@language"===t&&"string"==typeof e[t])e[t]=e[t].toLowerCase();else{const r=e[t];r&&"object"==typeof r&&"string"==typeof r["@language"]&&(r["@language"]=r["@language"].toLowerCase())}}containersToHash(e){for(const t of Object.keys(e)){const r=e[t];if(r&&"object"==typeof r)if("string"==typeof r["@container"])r["@container"]={[r["@container"]]:!0};else if(Array.isArray(r["@container"])){const e={};for(const t of r["@container"])e[t]=!0;r["@container"]=e}}}applyScopedProtected(e,{processingMode:t}){if(t&&t>=1.1&&e["@protected"]){for(const t of Object.keys(e))if(!s.Util.isReservedInternalKeyword(t)&&!s.Util.isPotentialKeyword(t)&&!s.Util.isTermProtected(e,t)){const r=e[t];r&&"object"==typeof r?"@protected"in e[t]||(e[t]["@protected"]=!0):e[t]={"@id":r,"@protected":!0}}delete e["@protected"]}}validateKeywordRedefinitions(e,t,r){for(const n of Object.keys(t))if(s.Util.isTermProtected(e,n)){if("string"==typeof t[n]){const i=s.Util.isSimpleTermDefinitionPrefix(t[n],r);t[n]={"@id":t[n]},i&&(t[n]["@prefix"]=!0,e[n]["@prefix"]=!0)}const a=c(e[n]);if(t[n]["@protected"]=!0,a!==c(t[n]))throw new i.ErrorCoded(`Attempted to override the protected keyword ${n} from ${JSON.stringify(s.Util.getContextValueId(e[n]))} to ${JSON.stringify(s.Util.getContextValueId(t[n]))}`,i.ERROR_CODES.PROTECTED_TERM_REDEFINITION)}}validate(e,{processingMode:t}){for(const r of Object.keys(e)){if(s.Util.isReservedInternalKeyword(r))continue;if(""===r)throw new i.ErrorCoded(`The empty term is not allowed, got: '${r}': '${JSON.stringify(e[r])}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);const n=e[r],a=typeof n;if(s.Util.isPotentialKeyword(r)){switch(r.substr(1)){case"vocab":if(null!==n&&"string"!==a)throw new i.ErrorCoded(`Found an invalid @vocab IRI: ${n}`,i.ERROR_CODES.INVALID_VOCAB_MAPPING);break;case"base":if(null!==n&&"string"!==a)throw new i.ErrorCoded(`Found an invalid @base IRI: ${e[r]}`,i.ERROR_CODES.INVALID_BASE_IRI);break;case"language":null!==n&&u.validateLanguage(n,!0,i.ERROR_CODES.INVALID_DEFAULT_LANGUAGE);break;case"version":if(null!==n&&"number"!==a)throw new i.ErrorCoded(`Found an invalid @version number: ${n}`,i.ERROR_CODES.INVALID_VERSION_VALUE);break;case"direction":null!==n&&u.validateDirection(n,!0);break;case"propagate":if(1===t)throw new i.ErrorCoded(`Found an illegal @propagate keyword: ${n}`,i.ERROR_CODES.INVALID_CONTEXT_ENTRY);if(null!==n&&"boolean"!==a)throw new i.ErrorCoded(`Found an invalid @propagate value: ${n}`,i.ERROR_CODES.INVALID_PROPAGATE_VALUE)}if(s.Util.isValidKeyword(r)&&s.Util.isValidKeyword(s.Util.getContextValueId(n)))throw new i.ErrorCoded(`Illegal keyword alias in term value, found: '${r}': '${s.Util.getContextValueId(n)}'`,i.ERROR_CODES.KEYWORD_REDEFINITION)}else if(null!==n)switch(a){case"string":if(s.Util.getPrefix(n,e)===r)throw new i.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.CYCLIC_IRI_MAPPING);if(s.Util.isValidIriWeak(r)){if("@type"===n)throw new i.ErrorCoded(`IRIs can not be mapped to @type, found: '${r}': '${n}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIri(n)&&n!==new o.JsonLdContextNormalized(e).expandTerm(r))throw new i.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${r}': '${n}'`,i.ERROR_CODES.INVALID_IRI_MAPPING)}break;case"object":if(!(s.Util.isCompactIri(r)||"@id"in n||("@id"===n["@type"]?e["@base"]:e["@vocab"])))throw new i.ErrorCoded(`Missing @id in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);for(const c of Object.keys(n)){const l=n[c];if(l)switch(c){case"@id":if(s.Util.isValidKeyword(l)&&"@type"!==l&&"@id"!==l&&"@graph"!==l&&"@nest"!==l)throw new i.ErrorCoded(`Illegal keyword alias in term value, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIriWeak(r)){if("@type"===l)throw new i.ErrorCoded(`IRIs can not be mapped to @type, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.isValidIri(l)&&l!==new o.JsonLdContextNormalized(e).expandTerm(r))throw new i.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING)}if("string"!=typeof l)throw new i.ErrorCoded(`Detected non-string @id in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_IRI_MAPPING);if(s.Util.getPrefix(l,e)===r)throw new i.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.CYCLIC_IRI_MAPPING);break;case"@type":if("@type"===n["@container"]&&"@id"!==l&&"@vocab"!==l)throw new i.ErrorCoded(`@container: @type only allows @type: @id or @vocab, but got: '${r}': '${l}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);if("string"!=typeof l)throw new i.ErrorCoded(`The value of an '@type' must be a string, got '${JSON.stringify(a)}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);if(!("@id"===l||"@vocab"===l||1!==t&&"@json"===l||1!==t&&"@none"===l||"_"!==l[0]&&s.Util.isValidIri(l)))throw new i.ErrorCoded(`A context @type must be an absolute IRI, found: '${r}': '${l}'`,i.ERROR_CODES.INVALID_TYPE_MAPPING);break;case"@reverse":if("string"==typeof l&&n["@id"]&&n["@id"]!==l)throw new i.ErrorCoded(`Found non-matching @id and @reverse term values in '${r}':'${l}' and '${n["@id"]}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);if("@nest"in n)throw new i.ErrorCoded(`@nest is not allowed in the reverse property '${r}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);break;case"@container":if(1===t&&(Object.keys(l).length>1||s.Util.CONTAINERS_1_0.indexOf(Object.keys(l)[0])<0))throw new i.ErrorCoded(`Invalid term @container for '${r}' ('${Object.keys(l)}') in 1.0, must be only one of ${s.Util.CONTAINERS_1_0.join(", ")}`,i.ERROR_CODES.INVALID_CONTAINER_MAPPING);for(const e of Object.keys(l)){if("@list"===e&&n["@reverse"])throw new i.ErrorCoded(`Term value can not be @container: @list and @reverse at the same time on '${r}'`,i.ERROR_CODES.INVALID_REVERSE_PROPERTY);if(s.Util.CONTAINERS.indexOf(e)<0)throw new i.ErrorCoded(`Invalid term @container for '${r}' ('${e}'), must be one of ${s.Util.CONTAINERS.join(", ")}`,i.ERROR_CODES.INVALID_CONTAINER_MAPPING)}break;case"@language":u.validateLanguage(l,!0,i.ERROR_CODES.INVALID_LANGUAGE_MAPPING);break;case"@direction":u.validateDirection(l,!0);break;case"@prefix":if(null!==l&&"boolean"!=typeof l)throw new i.ErrorCoded(`Found an invalid term @prefix boolean in: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_PREFIX_VALUE);if(!("@id"in n)&&!s.Util.isValidIri(r))throw new i.ErrorCoded(`Invalid @prefix definition for '${r}' ('${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);break;case"@index":if(1===t||!n["@container"]||!n["@container"]["@index"])throw new i.ErrorCoded(`Attempt to add illegal key to value object: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION);break;case"@nest":if(s.Util.isPotentialKeyword(l)&&"@nest"!==l)throw new i.ErrorCoded(`Found an invalid term @nest value in: '${r}': '${JSON.stringify(n)}'`,i.ERROR_CODES.INVALID_NEST_VALUE)}}break;default:throw new i.ErrorCoded(`Found an invalid term value: '${r}': '${n}'`,i.ERROR_CODES.INVALID_TERM_DEFINITION)}}}applyBaseEntry(e,t,r){return"string"==typeof e||(r&&!("@base"in e)&&t.parentContext&&"object"==typeof t.parentContext&&"@base"in t.parentContext&&(e["@base"]=t.parentContext["@base"],t.parentContext["@__baseDocument"]&&(e["@__baseDocument"]=!0)),t.baseIRI&&!t.external&&("@base"in e?null===e["@base"]||"string"!=typeof e["@base"]||s.Util.isValidIri(e["@base"])||(e["@base"]=(0,n.resolve)(e["@base"],t.parentContext&&t.parentContext["@base"]||t.baseIRI)):(e["@base"]=t.baseIRI,e["@__baseDocument"]=!0))),e}normalizeContextIri(e,t){if(!s.Util.isValidIri(e))try{e=(0,n.resolve)(e,t)}catch(t){throw new Error(`Invalid context IRI: ${e}`)}return this.redirectSchemaOrgHttps&&e.startsWith("http://schema.org")&&(e="https://schema.org/"),e}async parseInnerContexts(e,t){for(const r of Object.keys(e)){const n=e[r];if(n&&"object"==typeof n&&"@context"in n&&null!==n["@context"]&&!t.ignoreScopedContexts){if(this.validateContext)try{const i=Object.assign({},e);i[r]=Object.assign({},i[r]),delete i[r]["@context"],await this.parse(n["@context"],Object.assign(Object.assign({},t),{external:!1,parentContext:i,ignoreProtection:!0,ignoreRemoteScopedContexts:!0,ignoreScopedContexts:!0}))}catch(e){throw new i.ErrorCoded(e.message,i.ERROR_CODES.INVALID_SCOPED_CONTEXT)}n["@context"]=(await this.parse(n["@context"],Object.assign(Object.assign({},t),{external:!1,minimalProcessing:!0,ignoreRemoteScopedContexts:!0,parentContext:e}))).getContextRaw()}}return e}async parse(e,r={}){const{baseIRI:n,parentContext:a,external:c,processingMode:l=u.DEFAULT_PROCESSING_MODE,normalizeLanguageTags:d,ignoreProtection:h,minimalProcessing:p}=r;let f=a;const y=r.remoteContexts||{};if(Object.keys(y).length>=this.remoteContextsDepthLimit)throw new i.ErrorCoded("Detected an overflow in remote context inclusions: "+Object.keys(y),i.ERROR_CODES.CONTEXT_OVERFLOW);if(null==e){if(!h&&f&&s.Util.hasProtectedTerms(f))throw new i.ErrorCoded("Illegal context nullification when terms are protected",i.ERROR_CODES.INVALID_CONTEXT_NULLIFICATION);return new o.JsonLdContextNormalized(this.applyBaseEntry({},r,!1))}if("string"==typeof e){const t=this.normalizeContextIri(e,n),i=this.getOverriddenLoad(t,r);if(i)return new o.JsonLdContextNormalized(i);const a=await this.parse(await this.load(t),Object.assign(Object.assign({},r),{baseIRI:t,external:!0,remoteContexts:Object.assign(Object.assign({},y),{[t]:!0})}));return this.applyBaseEntry(a.getContextRaw(),r,!0),a}if(Array.isArray(e)){const t=[],i=await Promise.all(e.map(((e,i)=>{if("string"==typeof e){const a=this.normalizeContextIri(e,n);t[i]=a;return this.getOverriddenLoad(a,r)||this.load(a)}return e})));if(p)return new o.JsonLdContextNormalized(i);const a=await i.reduce(((e,n,i)=>e.then((e=>this.parse(n,Object.assign(Object.assign({},r),{baseIRI:t[i]||r.baseIRI,external:!!t[i]||r.external,parentContext:e.getContextRaw(),remoteContexts:t[i]?Object.assign(Object.assign({},y),{[t[i]]:!0}):y}))))),Promise.resolve(new o.JsonLdContextNormalized(f||{})));return this.applyBaseEntry(a.getContextRaw(),r,!0),a}if("object"==typeof e){if("@context"in e)return await this.parse(e["@context"],r);e=JSON.parse(JSON.stringify(e)),f&&!p&&(f=JSON.parse(JSON.stringify(f)));let a={};if(c&&delete e["@base"],this.applyBaseEntry(e,r,!0),this.containersToHash(e),p)return new o.JsonLdContextNormalized(e);let y={};if("@import"in e){if(!(l>=1.1))throw new i.ErrorCoded("Context importing is not supported in JSON-LD 1.0",i.ERROR_CODES.INVALID_CONTEXT_ENTRY);if("string"!=typeof e["@import"])throw new i.ErrorCoded("An @import value must be a string, but got "+typeof e["@import"],i.ERROR_CODES.INVALID_IMPORT_VALUE);y=await this.loadImportContext(this.normalizeContextIri(e["@import"],n)),delete e["@import"]}a=Object.assign(Object.assign(Object.assign(Object.assign({},a),"object"==typeof f?f:{}),y),e);const g=new o.JsonLdContextNormalized(a);return await this.parseInnerContexts(a,r),(a&&a["@version"]||u.DEFAULT_PROCESSING_MODE)>=1.1&&(e["@vocab"]&&"string"==typeof e["@vocab"]||""===e["@vocab"])&&(f&&"@vocab"in f&&e["@vocab"].indexOf(":")<0?a["@vocab"]=f["@vocab"]+e["@vocab"]:(s.Util.isCompactIri(e["@vocab"])||e["@vocab"]in g.getContextRaw())&&(a["@vocab"]=g.expandTerm(e["@vocab"],!0))),this.idifyReverseTerms(a),this.expandPrefixedTerms(g,this.expandContentTypeToBase),!h&&f&&l>=1.1&&this.validateKeywordRedefinitions(f,a,t.defaultExpandOptions),this.normalize(a,{processingMode:l,normalizeLanguageTags:d}),this.applyScopedProtected(a,{processingMode:l}),this.validateContext&&this.validate(a,{processingMode:l}),g}throw new i.ErrorCoded(`Tried parsing a context that is not a string, array or object, but got ${e}`,i.ERROR_CODES.INVALID_LOCAL_CONTEXT)}async load(e){const t=this.documentCache[e];if(t)return"string"==typeof t?t:Array.isArray(t)?t.slice():Object.assign({},t);let r;try{r=await this.documentLoader.load(e)}catch(t){throw new i.ErrorCoded(`Failed to load remote context ${e}: ${t.message}`,i.ERROR_CODES.LOADING_REMOTE_CONTEXT_FAILED)}if(!("@context"in r))throw new i.ErrorCoded(`Missing @context in remote context at ${e}`,i.ERROR_CODES.INVALID_REMOTE_CONTEXT);return this.documentCache[e]=r["@context"]}getOverriddenLoad(e,t){if(e in(t.remoteContexts||{})){if(t.ignoreRemoteScopedContexts)return e;throw new i.ErrorCoded("Detected a cyclic context inclusion of "+e,i.ERROR_CODES.RECURSIVE_CONTEXT_INCLUSION)}return null}async loadImportContext(e){const t=await this.load(e);if("object"!=typeof t||Array.isArray(t))throw new i.ErrorCoded("An imported context must be a single object: "+e,i.ERROR_CODES.INVALID_REMOTE_CONTEXT);if("@import"in t)throw new i.ErrorCoded("An imported context can not import another context: "+e,i.ERROR_CODES.INVALID_CONTEXT_ENTRY);return this.containersToHash(t),t}}t.ContextParser=u,u.DEFAULT_PROCESSING_MODE=1.1,t.defaultExpandOptions={allowPrefixForcing:!0,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!0}},80512:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ERROR_CODES=t.ErrorCoded=void 0;class r extends Error{constructor(e,t){super(e),this.code=t}}var n;t.ErrorCoded=r,(n=t.ERROR_CODES||(t.ERROR_CODES={})).COLLIDING_KEYWORDS="colliding keywords",n.CONFLICTING_INDEXES="conflicting indexes",n.CYCLIC_IRI_MAPPING="cyclic IRI mapping",n.INVALID_ID_VALUE="invalid @id value",n.INVALID_INDEX_VALUE="invalid @index value",n.INVALID_NEST_VALUE="invalid @nest value",n.INVALID_PREFIX_VALUE="invalid @prefix value",n.INVALID_PROPAGATE_VALUE="invalid @propagate value",n.INVALID_REVERSE_VALUE="invalid @reverse value",n.INVALID_IMPORT_VALUE="invalid @import value",n.INVALID_VERSION_VALUE="invalid @version value",n.INVALID_BASE_IRI="invalid base IRI",n.INVALID_CONTAINER_MAPPING="invalid container mapping",n.INVALID_CONTEXT_ENTRY="invalid context entry",n.INVALID_CONTEXT_NULLIFICATION="invalid context nullification",n.INVALID_DEFAULT_LANGUAGE="invalid default language",n.INVALID_INCLUDED_VALUE="invalid @included value",n.INVALID_IRI_MAPPING="invalid IRI mapping",n.INVALID_JSON_LITERAL="invalid JSON literal",n.INVALID_KEYWORD_ALIAS="invalid keyword alias",n.INVALID_LANGUAGE_MAP_VALUE="invalid language map value",n.INVALID_LANGUAGE_MAPPING="invalid language mapping",n.INVALID_LANGUAGE_TAGGED_STRING="invalid language-tagged string",n.INVALID_LANGUAGE_TAGGED_VALUE="invalid language-tagged value",n.INVALID_LOCAL_CONTEXT="invalid local context",n.INVALID_REMOTE_CONTEXT="invalid remote context",n.INVALID_REVERSE_PROPERTY="invalid reverse property",n.INVALID_REVERSE_PROPERTY_MAP="invalid reverse property map",n.INVALID_REVERSE_PROPERTY_VALUE="invalid reverse property value",n.INVALID_SCOPED_CONTEXT="invalid scoped context",n.INVALID_SCRIPT_ELEMENT="invalid script element",n.INVALID_SET_OR_LIST_OBJECT="invalid set or list object",n.INVALID_TERM_DEFINITION="invalid term definition",n.INVALID_TYPE_MAPPING="invalid type mapping",n.INVALID_TYPE_VALUE="invalid type value",n.INVALID_TYPED_VALUE="invalid typed value",n.INVALID_VALUE_OBJECT="invalid value object",n.INVALID_VALUE_OBJECT_VALUE="invalid value object value",n.INVALID_VOCAB_MAPPING="invalid vocab mapping",n.IRI_CONFUSED_WITH_PREFIX="IRI confused with prefix",n.KEYWORD_REDEFINITION="keyword redefinition",n.LOADING_DOCUMENT_FAILED="loading document failed",n.LOADING_REMOTE_CONTEXT_FAILED="loading remote context failed",n.MULTIPLE_CONTEXT_LINK_HEADERS="multiple context link headers",n.PROCESSING_MODE_CONFLICT="processing mode conflict",n.PROTECTED_TERM_REDEFINITION="protected term redefinition",n.CONTEXT_OVERFLOW="context overflow",n.INVALID_BASE_DIRECTION="invalid base direction",n.RECURSIVE_CONTEXT_INCLUSION="recursive context inclusion",n.INVALID_STREAMING_KEY_ORDER="invalid streaming key order",n.INVALID_EMBEDDED_NODE="invalid embedded node",n.INVALID_ANNOTATION="invalid annotation"},36187:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.FetchDocumentLoader=void 0,r(70155);const n=r(80512),i=r(95480),a=r(84690);t.FetchDocumentLoader=class{constructor(e){this.fetcher=e}async load(e){const t=await(this.fetcher||fetch)(e,{headers:new Headers({accept:"application/ld+json"})});if(t.ok&&t.headers){let r=t.headers.get("Content-Type");if(r){const e=r.indexOf(";");e>0&&(r=r.substr(0,e))}if("application/ld+json"===r)return await t.json();if(t.headers.has("Link")){let r;if(t.headers.forEach(((t,n)=>{if("link"===n){const n=(0,i.parse)(t);for(const t of n.get("type","application/ld+json"))if("alternate"===t.rel){if(r)throw new Error("Multiple JSON-LD alternate links were found on "+e);r=(0,a.resolve)(t.uri,e)}}})),r)return this.load(r)}throw new n.ErrorCoded(`Unsupported JSON-LD media type ${r}`,n.ERROR_CODES.LOADING_DOCUMENT_FAILED)}throw new Error(t.statusText||`Status code: ${t.status}`)}}},17066:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},51258:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},41337:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdContextNormalized=void 0;const n=r(84690),i=r(36513),a=r(80512),o=r(56991);t.JsonLdContextNormalized=class{constructor(e){this.contextRaw=e}getContextRaw(){return this.contextRaw}expandTerm(e,t,r=i.defaultExpandOptions){const s=this.contextRaw[e];if(null===s||s&&null===s["@id"])return null;let c=!0;if(s&&t){const t=o.Util.getContextValueId(s);if(t&&t!==e){if("string"==typeof t&&(o.Util.isValidIri(t)||o.Util.isValidKeyword(t)))return t;o.Util.isPotentialKeyword(t)||(c=!1)}}const u=o.Util.getPrefix(e,this.contextRaw),l=this.contextRaw["@vocab"],d=(!!l||""===l)&&l.indexOf(":")<0,h=this.contextRaw["@base"],p=o.Util.isPotentialKeyword(e);if(u){const t=this.contextRaw[u],n=o.Util.getContextValueId(t);if(n){if("string"!=typeof t&&r.allowPrefixForcing){if("_"!==n[0]&&!p&&!t["@prefix"]&&!(e in this.contextRaw))return e}else if(!o.Util.isSimpleTermDefinitionPrefix(n,r))return e;return n+e.substr(u.length+1)}}else{if(t&&(l||""===l||r.allowVocabRelativeToBase&&h&&d)&&!p&&!o.Util.isCompactIri(e)){if(d){if(r.allowVocabRelativeToBase)return(l||h?(0,n.resolve)(l,h):"")+e;throw new a.ErrorCoded(`Relative vocab expansion for term '${e}' with vocab '${l}' is not allowed.`,a.ERROR_CODES.INVALID_VOCAB_MAPPING)}return l+e}if(!t&&h&&!p&&!o.Util.isCompactIri(e))return(0,n.resolve)(e,h)}if(c)return e;throw new a.ErrorCoded(`Invalid IRI mapping found for context entry '${e}': '${JSON.stringify(s)}'`,a.ERROR_CODES.INVALID_IRI_MAPPING)}compactIri(e,t){if(t&&this.contextRaw["@vocab"]&&e.startsWith(this.contextRaw["@vocab"]))return e.substr(this.contextRaw["@vocab"].length);if(!t&&this.contextRaw["@base"]&&e.startsWith(this.contextRaw["@base"]))return e.substr(this.contextRaw["@base"].length);const r={prefix:"",suffix:e};for(const n in this.contextRaw){const i=this.contextRaw[n];if(i&&!o.Util.isPotentialKeyword(n)){const a=o.Util.getContextValueId(i);if(e.startsWith(a)){const i=e.substr(a.length);if(i)i.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;class r{static isCompactIri(e){return e.indexOf(":")>0&&!(e&&"#"===e[0])}static getPrefix(e,t){if(e&&"#"===e[0])return null;const r=e.indexOf(":");if(r>=0){if(e.length>r+1&&"/"===e.charAt(r+1)&&"/"===e.charAt(r+2))return null;const n=e.substr(0,r);if("_"===n)return null;if(t[n])return n}return null}static getContextValueId(e){if(null===e||"string"==typeof e)return e;return e["@id"]||null}static isSimpleTermDefinitionPrefix(e,t){return!r.isPotentialKeyword(e)&&("_"===e[0]||t.allowPrefixNonGenDelims||r.isPrefixIriEndingWithGenDelim(e))}static isPotentialKeyword(e){return"string"==typeof e&&r.KEYWORD_REGEX.test(e)}static isPrefixIriEndingWithGenDelim(e){return r.ENDS_WITH_GEN_DELIM.test(e)}static isPrefixValue(e){return e&&("string"==typeof e||e&&"object"==typeof e)}static isValidIri(e){return Boolean(e&&r.IRI_REGEX.test(e))}static isValidIriWeak(e){return!!e&&":"!==e[0]&&r.IRI_REGEX_WEAK.test(e)}static isValidKeyword(e){return r.VALID_KEYWORDS[e]}static isTermProtected(e,t){const r=e[t];return!("string"==typeof r)&&r&&r["@protected"]}static hasProtectedTerms(e){for(const t of Object.keys(e))if(r.isTermProtected(e,t))return!0;return!1}static isReservedInternalKeyword(e){return e.startsWith("@__")}}t.Util=r,r.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^ "<>{}|\\\[\]`#]*(#[^#]*)?$/,r.IRI_REGEX_WEAK=/(?::[^:])|\//,r.KEYWORD_REGEX=/^@[a-z]+$/i,r.ENDS_WITH_GEN_DELIM=/[:/?#\[\]@]$/,r.REGEX_LANGUAGE_TAG=/^[a-zA-Z]+(-[a-zA-Z0-9]+)*$/,r.REGEX_DIRECTION_TAG=/^(ltr)|(rtl)$/,r.VALID_KEYWORDS={"@annotation":!0,"@base":!0,"@container":!0,"@context":!0,"@direction":!0,"@graph":!0,"@id":!0,"@import":!0,"@included":!0,"@index":!0,"@json":!0,"@language":!0,"@list":!0,"@nest":!0,"@none":!0,"@prefix":!0,"@propagate":!0,"@protected":!0,"@reverse":!0,"@set":!0,"@type":!0,"@value":!0,"@version":!0,"@vocab":!0},r.EXPAND_KEYS_BLACKLIST=["@base","@vocab","@language","@version","@direction"],r.ALIAS_DOMAIN_BLACKLIST=["@container","@graph","@id","@index","@list","@nest","@none","@prefix","@reverse","@set","@type","@value","@version"],r.ALIAS_RANGE_BLACKLIST=["@context","@preserve"],r.CONTAINERS=["@list","@set","@index","@language","@graph","@id","@type"],r.CONTAINERS_1_0=["@list","@set","@index"]},70155:function(){!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in e,o="ArrayBuffer"in e;if(o)var s=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&s.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function d(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function p(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function f(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function g(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=g(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=g(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=p(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?p(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(y)}),this.text=function(){var e,t,r,n=p(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}v.prototype.clone=function(){return new v(this,{body:this._bodyInit})},m.call(v.prototype),m.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var T=[301,302,303,307,308];w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function S(e,r){return new Promise((function(n,a){var o=new v(e,r);if(o.signal&&o.signal.aborted)return a(new t.DOMException("Aborted","AbortError"));var s=new XMLHttpRequest;function c(){s.abort()}s.onload=function(){var e,t,r={status:s.status,statusText:s.statusText,headers:(e=s.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in s?s.responseURL:r.headers.get("X-Request-URL");var i="response"in s?s.response:s.responseText;n(new w(i,r))},s.onerror=function(){a(new TypeError("Network request failed"))},s.ontimeout=function(){a(new TypeError("Network request failed"))},s.onabort=function(){a(new t.DOMException("Aborted","AbortError"))},s.open(o.method,o.url,!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&i&&(s.responseType="blob"),o.headers.forEach((function(e,t){s.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",c)}),s.send(void 0===o._bodyInit?null:o._bodyInit)}))}S.polyfill=!0,e.fetch||(e.fetch=S,e.Headers=h,e.Request=v,e.Response=w),t.Headers=h,t.Request=v,t.Response=w,t.fetch=S,Object.defineProperty(t,"__esModule",{value:!0})}({})}("undefined"!=typeof self?self:this)},72333:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(23303),t)},8724:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContextTree=void 0;class r{constructor(){this.subTrees={}}getContext(e){if(e.length>0){const[t,...r]=e,n=this.subTrees[t];if(n){const e=n.getContext(r);if(e)return e.then((({context:e,depth:t})=>({context:e,depth:t+1})))}}return this.context?this.context.then((e=>({context:e,depth:0}))):null}setContext(e,t){if(0===e.length)this.context=t;else{const[n,...i]=e;let a=this.subTrees[n];a||(a=this.subTrees[n]=new r),a.setContext(i,t)}}removeContext(e){this.setContext(e,null)}}t.ContextTree=r},23303:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdParser=void 0;const n=r(27609),i=r(1838),a=r(51887),o=r(72786),s=r(89238),c=r(5892),u=r(78593),l=r(16587),d=r(33119),h=r(73249),p=r(6210),f=r(80230),y=r(87044),g=r(44582),m=r(21997),b=r(30636),v=r(78826),_=r(95480),w=r(70254);class T extends a.Transform{constructor(e){super({readableObjectMode:!0}),e=e||{},this.options=e,this.parsingContext=new b.ParsingContext(Object.assign({parser:this},e)),this.util=new v.Util({dataFactory:e.dataFactory,parsingContext:this.parsingContext}),this.jsonParser=new n,this.contextJobs=[],this.typeJobs=[],this.contextAwaitingJobs=[],this.lastDepth=0,this.lastKeys=[],this.lastOnValueJob=Promise.resolve(),this.attachJsonParserListeners(),this.on("end",(()=>{void 0!==this.jsonParser.mode&&this.emit("error",new Error("Unclosed document"))}))}static fromHttpResponse(e,t,r,n){let a,o;if("application/ld+json"!==t){if("application/json"!==t&&!t.endsWith("+json"))throw new i.ErrorCoded(`Unsupported JSON-LD media type ${t}`,i.ERROR_CODES.LOADING_DOCUMENT_FAILED);if(r&&r.has("Link")&&r.forEach(((t,r)=>{if("link"===r){const r=(0,_.parse)(t);for(const t of r.get("rel","http://www.w3.org/ns/json-ld#context")){if(a)throw new i.ErrorCoded("Multiple JSON-LD context link headers were found on "+e,i.ERROR_CODES.MULTIPLE_CONTEXT_LINK_HEADERS);a=t.uri}}})),!a&&!(null==n?void 0:n.ignoreMissingContextLinkHeader))throw new i.ErrorCoded(`Missing context link header for media type ${t} on ${e}`,i.ERROR_CODES.LOADING_DOCUMENT_FAILED)}if(r&&r.has("Content-Type")){const e=r.get("Content-Type"),t=/; *profile=([^"]*)/.exec(e);t&&"http://www.w3.org/ns/json-ld#streaming"===t[1]&&(o=!0)}return new T(Object.assign({baseIRI:e,context:a,streamingProfile:o},n||{}))}import(e){if("pipe"in e){e.on("error",(e=>t.emit("error",e)));const t=e.pipe(new T(this.options));return t}{const t=new a.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new T(this.options));return r}}_transform(e,t,r){this.jsonParser.write(e),this.lastOnValueJob.then((()=>r()),(e=>r(e)))}async newOnValueJob(e,t,r,n){let a=!0;if(n&&r1&&(l=this.parsingContext.validationStack[this.parsingContext.validationStack.length-1].property);for(let t=Math.max(1,this.parsingContext.validationStack.length-1);t=0?this.parsingContext.idStack[e-r-1]:[await this.util.getGraphContainerValue(t,e)];if(a)for(const t of a){this.parsingContext.emittedStack[e]=!0;for(const r of n)this.util.emitQuadChecked(e,i,r.predicate,r.object,t,r.reverse,r.isEmbedded)}else{const r=this.parsingContext.getUnidentifiedGraphBufferSafe(e-await this.util.getDepthOffsetGraph(e,t)-1);for(const e of n)e.reverse?r.push({object:i,predicate:e.predicate,subject:e.object,isEmbedded:e.isEmbedded}):r.push({object:e.object,predicate:e.predicate,subject:i,isEmbedded:e.isEmbedded})}}this.parsingContext.unidentifiedValuesBuffer.splice(e,1),this.parsingContext.literalStack.splice(e,1),this.parsingContext.jsonLiteralStack.splice(e,1)}const a=this.parsingContext.unidentifiedGraphsBuffer[e];if(a){for(const t of r){const r=1!==e||"BlankNode"!==t.termType||this.parsingContext.topLevelProperties?t:this.util.getDefaultGraph();this.parsingContext.emittedStack[e]=!0;for(const t of a)this.parsingContext.emitQuad(e,this.util.dataFactory.quad(t.subject,t.predicate,t.object,r))}this.parsingContext.unidentifiedGraphsBuffer.splice(e,1)}const o=this.parsingContext.annotationsBuffer[e];if(o){o.length>0&&1===e&&this.parsingContext.emitError(new i.ErrorCoded("Annotations can not be made on top-level nodes",i.ERROR_CODES.INVALID_ANNOTATION));const t=this.parsingContext.getAnnotationsBufferSafe(e-1);for(const e of o)t.push(e);delete this.parsingContext.annotationsBuffer[e]}}async validateKey(e,t,r){for(const n of T.ENTRY_HANDLERS)if(await n.validate(this.parsingContext,this.util,e,t,r))return{valid:!0,property:r||n.isPropertyHandler()};return{valid:!1,property:!1}}attachJsonParserListeners(){this.jsonParser.onValue=e=>{const t=this.jsonParser.stack.length,r=new Array(t+1).fill(0).map(((e,r)=>r===t?this.jsonParser.key:this.jsonParser.stack[r].key));if(!this.isParsingContextInner(t)){const n=()=>this.newOnValueJob(r,e,t,!0);if(this.parsingContext.streamingProfile||this.parsingContext.contextTree.getContext(r.slice(0,-1)))this.lastOnValueJob=this.lastOnValueJob.then(n);else if("@context"===r[t]){let e=this.contextJobs[t];e||(e=this.contextJobs[t]=[]),e.push(n)}else"@type"===r[t]||"number"==typeof r[t]&&"@type"===r[t-1]?this.typeJobs.push({job:n,keys:r.slice(0,r.length-1)}):this.contextAwaitingJobs.push({job:n,keys:r});this.parsingContext.streamingProfile||0!==t||(this.lastOnValueJob=this.lastOnValueJob.then((()=>this.executeBufferedJobs())))}},this.jsonParser.onError=e=>{this.emit("error",e)}}isParsingContextInner(e){for(let t=e;t>0;t--)if("@context"===this.jsonParser.stack[t-1].key)return!0;return!1}async executeBufferedJobs(){for(const e of this.contextJobs)if(e)for(const t of e)await t();this.parsingContext.unaliasedKeywordCacheStack.splice(0);for(const e of this.contextAwaitingJobs){if(this.typeJobs.length>0){const t=[],r=[];for(let n=0;ne.keys.length-t.keys.length));for(const e of n)await e.job();const i=r.sort().reverse();for(const e of i)this.typeJobs.splice(e,1)}await e.job()}}}t.JsonLdParser=T,T.DEFAULT_PROCESSING_MODE="1.1",T.ENTRY_HANDLERS=[new o.EntryHandlerArrayValue,new l.EntryHandlerKeywordContext,new h.EntryHandlerKeywordId,new p.EntryHandlerKeywordIncluded,new d.EntryHandlerKeywordGraph,new f.EntryHandlerKeywordNest,new y.EntryHandlerKeywordType,new m.EntryHandlerKeywordValue,new w.EntryHandlerKeywordAnnotation,new s.EntryHandlerContainer,new g.EntryHandlerKeywordUnknownFallback,new u.EntryHandlerPredicate,new c.EntryHandlerInvalidFallback]},30636:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParsingContext=void 0;const n=r(1838),i=r(80512),a=r(8724),o=r(23303);class s{constructor(e){this.contextParser=new n.ContextParser({documentLoader:e.documentLoader,skipValidation:e.skipContextValidation}),this.streamingProfile=!!e.streamingProfile,this.baseIRI=e.baseIRI,this.produceGeneralizedRdf=!!e.produceGeneralizedRdf,this.allowSubjectList=!!e.allowSubjectList,this.processingMode=e.processingMode||o.JsonLdParser.DEFAULT_PROCESSING_MODE,this.strictValues=!!e.strictValues,this.validateValueIndexes=!!e.validateValueIndexes,this.defaultGraph=e.defaultGraph,this.rdfDirection=e.rdfDirection,this.normalizeLanguageTags=e.normalizeLanguageTags,this.streamingProfileAllowOutOfOrderPlainType=e.streamingProfileAllowOutOfOrderPlainType,this.rdfstar=!1!==e.rdfstar,this.rdfstarReverseInEmbedded=e.rdfstarReverseInEmbedded,this.topLevelProperties=!1,this.activeProcessingMode=parseFloat(this.processingMode),this.processingStack=[],this.processingType=[],this.emittedStack=[],this.idStack=[],this.graphStack=[],this.graphContainerTermStack=[],this.listPointerStack=[],this.contextTree=new a.ContextTree,this.literalStack=[],this.validationStack=[],this.unaliasedKeywordCacheStack=[],this.jsonLiteralStack=[],this.unidentifiedValuesBuffer=[],this.unidentifiedGraphsBuffer=[],this.annotationsBuffer=[],this.pendingContainerFlushBuffers=[],this.parser=e.parser,e.context?(this.rootContext=this.parseContext(e.context),this.rootContext.then((e=>this.validateContext(e)))):this.rootContext=Promise.resolve(new n.JsonLdContextNormalized(this.baseIRI?{"@base":this.baseIRI,"@__baseDocument":!0}:{}))}async parseContext(e,t,r){return this.contextParser.parse(e,{baseIRI:this.baseIRI,ignoreProtection:r,normalizeLanguageTags:this.normalizeLanguageTags,parentContext:t,processingMode:this.activeProcessingMode})}validateContext(e){const t=e.getContextRaw()["@version"];if(t){if(this.activeProcessingMode&&t>this.activeProcessingMode)throw new i.ErrorCoded(`Unsupported JSON-LD version '${t}' under active processing mode ${this.activeProcessingMode}.`,i.ERROR_CODES.PROCESSING_MODE_CONFLICT);if(this.activeProcessingMode&&t0&&!1===i.context.getContextRaw()["@propagate"]&&i.depth!==t&&!r);return 0===i.depth&&!1===i.context.getContextRaw()["@propagate"]&&i.depth!==t&&(i.context=new n.JsonLdContextNormalized({})),i}async newOnValueJob(e,t,r,n){await this.parser.newOnValueJob(e,t,r,n)}async handlePendingContainerFlushBuffers(){if(this.pendingContainerFlushBuffers.length>0){for(const e of this.pendingContainerFlushBuffers)await this.parser.flushBuffer(e.depth,e.keys),this.parser.flushStacks(e.depth);return this.pendingContainerFlushBuffers.splice(0,this.pendingContainerFlushBuffers.length),!0}return!1}emitQuad(e,t){1===e&&(this.topLevelProperties=!0),this.parser.push(t)}emitError(e){this.parser.emit("error",e)}emitContext(e){this.parser.emit("context",e)}getUnidentifiedValueBufferSafe(e){let t=this.unidentifiedValuesBuffer[e];return t||(t=[],this.unidentifiedValuesBuffer[e]=t),t}getUnidentifiedGraphBufferSafe(e){let t=this.unidentifiedGraphsBuffer[e];return t||(t=[],this.unidentifiedGraphsBuffer[e]=t),t}getAnnotationsBufferSafe(e){let t=this.annotationsBuffer[e];return t||(t=[],this.annotationsBuffer[e]=t),t}getExpandOptions(){return s.EXPAND_OPTIONS[this.activeProcessingMode]}shiftStack(e,t){const r=this.idStack[e+t];if(r&&(this.idStack[e]=r,this.emittedStack[e]=!0,delete this.idStack[e+t]),this.pendingContainerFlushBuffers.length)for(const r of this.pendingContainerFlushBuffers)r.depth>=e+t&&(r.depth-=t,r.keys.splice(e,t));this.unidentifiedValuesBuffer[e+t]&&(this.unidentifiedValuesBuffer[e]=this.unidentifiedValuesBuffer[e+t],delete this.unidentifiedValuesBuffer[e+t]),this.annotationsBuffer[e+t-1]&&(this.annotationsBuffer[e-1]||(this.annotationsBuffer[e-1]=[]),this.annotationsBuffer[e-1]=[...this.annotationsBuffer[e-1],...this.annotationsBuffer[e+t-1]],delete this.annotationsBuffer[e+t-1])}}t.ParsingContext=s,s.EXPAND_OPTIONS={1:{allowPrefixForcing:!1,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!1},1.1:{allowPrefixForcing:!0,allowPrefixNonGenDelims:!1,allowVocabRelativeToBase:!0}}},78826:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(1838),i=r(91194),a=r(89238),o=r(67026);class s{constructor(e){this.parsingContext=e.parsingContext,this.dataFactory=e.dataFactory||new i.DataFactory,this.rdfFirst=this.dataFactory.namedNode(s.RDF+"first"),this.rdfRest=this.dataFactory.namedNode(s.RDF+"rest"),this.rdfNil=this.dataFactory.namedNode(s.RDF+"nil"),this.rdfType=this.dataFactory.namedNode(s.RDF+"type"),this.rdfJson=this.dataFactory.namedNode(s.RDF+"JSON")}static getContextValue(e,t,r,n){const i=e.getContextRaw()[r];if(!i)return n;const a=i[t];return void 0===a?n:a}static getContextValueContainer(e,t){return s.getContextValue(e,"@container",t,{"@set":!0})}static getContextValueType(e,t){const r=s.getContextValue(e,"@type",t,null);return"@none"===r?null:r}static getContextValueLanguage(e,t){return s.getContextValue(e,"@language",t,e.getContextRaw()["@language"]||null)}static getContextValueDirection(e,t){return s.getContextValue(e,"@direction",t,e.getContextRaw()["@direction"]||null)}static isContextValueReverse(e,t){return!!s.getContextValue(e,"@reverse",t,null)}static getContextValueIndex(e,t){return s.getContextValue(e,"@index",t,e.getContextRaw()["@index"]||null)}static isPropertyReverse(e,t,r){return"@reverse"===r!==s.isContextValueReverse(e,t)}static isPropertyInEmbeddedNode(e){return"@id"===e}static isPropertyInAnnotationObject(e){return"@annotation"===e}static isValidIri(e){return null!==e&&n.Util.isValidIri(e)}static isPrefixArray(e,t){if(e.length>t.length)return!1;for(let r=0;r1)throw new n.ErrorCoded(`Found illegal neighbouring entries next to @set for key: '${t}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);return[]}if("@list"in r){if(Object.keys(r).length>1)throw new n.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${t}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);const e=r["@list"];return Array.isArray(e)?0===e.length?[this.rdfNil]:this.parsingContext.idStack[i+1]||[]:await this.valueToTerm(await this.parsingContext.getContext(a),t,e,i-1,a.slice(0,-1))}if("@reverse"in r&&"boolean"==typeof r["@reverse"])return[];if("@graph"in s.getContextValueContainer(await this.parsingContext.getContext(a),t)){const e=this.parsingContext.graphContainerTermStack[i+1];return e?Object.values(e):[this.dataFactory.blankNode()]}if("@id"in r){if(Object.keys(r).length>1&&(e=await this.parsingContext.getContext(a,0)),"@context"in r&&(e=await this.parsingContext.parseContext(r["@context"],e.getContextRaw())),"@vocab"===r["@type"])return this.nullableTermToArray(this.createVocabOrBaseTerm(e,r["@id"]));{const t=r["@id"];let a;if("object"==typeof t){if(!this.parsingContext.rdfstar)throw new n.ErrorCoded(`Found illegal @id '${r}'`,n.ERROR_CODES.INVALID_ID_VALUE);a=this.parsingContext.idStack[i+1][0]}else a=this.resourceToTerm(e,t);return this.nullableTermToArray(a)}}return this.parsingContext.emittedStack[i+1]||r&&"object"==typeof r&&0===Object.keys(r).length?this.parsingContext.idStack[i+1]||(this.parsingContext.idStack[i+1]=[this.dataFactory.blankNode()]):[];case"string":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,r,null));case"boolean":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,Boolean(r).toString(),this.dataFactory.namedNode(s.XSD_BOOLEAN)));case"number":return this.nullableTermToArray(this.stringValueToTerm(i,await this.getContextSelfOrPropertyScoped(e,t),t,r,this.dataFactory.namedNode(r%1==0&&r<1e21?s.XSD_INTEGER:s.XSD_DOUBLE)));default:return this.parsingContext.emitError(new Error(`Could not determine the RDF type of a ${o}`)),[]}}async getContextSelfOrPropertyScoped(e,t){const r=e.getContextRaw()[t];return r&&"object"==typeof r&&"@context"in r&&(e=await this.parsingContext.parseContext(r,e.getContextRaw(),!0)),e}nullableTermToArray(e){return e?[e]:[]}predicateToTerm(e,t){const r=e.expandTerm(t,!0,this.parsingContext.getExpandOptions());return r?"_"===r[0]&&":"===r[1]?this.parsingContext.produceGeneralizedRdf?this.dataFactory.blankNode(r.substr(2)):null:s.isValidIri(r)?this.dataFactory.namedNode(r):r&&this.parsingContext.strictValues?(this.parsingContext.emitError(new n.ErrorCoded(`Invalid predicate IRI: ${r}`,n.ERROR_CODES.INVALID_IRI_MAPPING)),null):null:null}resourceToTerm(e,t){if(t.startsWith("_:"))return this.dataFactory.blankNode(t.substr(2));const r=e.expandTerm(t,!1,this.parsingContext.getExpandOptions());if(!s.isValidIri(r)){if(!r||!this.parsingContext.strictValues)return null;this.parsingContext.emitError(new Error(`Invalid resource IRI: ${r}`))}return this.dataFactory.namedNode(r)}createVocabOrBaseTerm(e,t){if(t.startsWith("_:"))return this.dataFactory.blankNode(t.substr(2));const r=this.parsingContext.getExpandOptions();let n=e.expandTerm(t,!0,r);if(n===t&&(n=e.expandTerm(t,!1,r)),!s.isValidIri(n)){if(!n||!this.parsingContext.strictValues||n.startsWith("@"))return null;this.parsingContext.emitError(new Error(`Invalid term IRI: ${n}`))}return this.dataFactory.namedNode(n)}intToString(e,t){return"number"==typeof e?Number.isFinite(e)?e%1!=0||t&&t.value===s.XSD_DOUBLE?e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"):Number(e).toString():e>0?"INF":"-INF":e}stringValueToTerm(e,t,r,n,i){const a=s.getContextValueType(t,r);if(a)if("@id"===a){if(!i)return this.resourceToTerm(t,this.intToString(n,i))}else if("@vocab"===a){if(!i)return this.createVocabOrBaseTerm(t,this.intToString(n,i))}else i=this.dataFactory.namedNode(a);if(!i){const a=s.getContextValueLanguage(t,r),o=s.getContextValueDirection(t,r);return o&&this.parsingContext.rdfDirection?this.createLanguageDirectionLiteral(e,this.intToString(n,i),a,o):this.dataFactory.literal(this.intToString(n,i),a)}return this.dataFactory.literal(this.intToString(n,i),i)}createLanguageDirectionLiteral(e,t,r,n){if("i18n-datatype"===this.parsingContext.rdfDirection)return r||(r=""),this.dataFactory.literal(t,this.dataFactory.namedNode(`https://www.w3.org/ns/i18n#${r}_${n}`));{const i=this.dataFactory.blankNode(),a=this.getDefaultGraph();return this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"value"),this.dataFactory.literal(t),a)),r&&this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"language"),this.dataFactory.literal(r),a)),this.parsingContext.emitQuad(e,this.dataFactory.quad(i,this.dataFactory.namedNode(s.RDF+"direction"),this.dataFactory.literal(n),a)),i}}valueToJsonString(e){return o(e)}async unaliasKeyword(e,t,r,i,a){if(Number.isInteger(e))return e;if(!i){const e=this.parsingContext.unaliasedKeywordCacheStack[r];if(e)return e}if(!n.Util.isPotentialKeyword(e)){let r=(a=a||await this.parsingContext.getContext(t)).getContextRaw()[e];r&&"object"==typeof r&&(r=r["@id"]),n.Util.isValidKeyword(r)&&(e=r)}return i?e:this.parsingContext.unaliasedKeywordCacheStack[r]=e}async unaliasKeywordParent(e,t){return await this.unaliasKeyword(t>0&&e[t-1],e,t-1)}async unaliasKeywords(e,t,r,n){const i={};for(const a in e)i[await this.unaliasKeyword(a,t,r+1,!0,n)]=e[a];return i}async isLiteral(e,t){for(let r=t;r>=0;r--){if("@annotation"===await this.unaliasKeyword(e[r],e,r))return!1;if(this.parsingContext.literalStack[r]||this.parsingContext.jsonLiteralStack[r])return!0}return!1}async getDepthOffsetGraph(e,t){for(let r=e-1;r>0;r--)if("@graph"===await this.unaliasKeyword(t[r],t,r)){const n=(await a.EntryHandlerContainer.getContainerHandler(this.parsingContext,t,r)).containers;return a.EntryHandlerContainer.isComplexGraphContainer(n)?-1:e-r-1}return-1}validateReverseSubject(e){if("Literal"===e.termType)throw new n.ErrorCoded(`Found illegal literal in subject position: ${e.value}`,n.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE)}getDefaultGraph(){return this.parsingContext.defaultGraph||this.dataFactory.defaultGraph()}async getGraphContainerValue(e,t){let r=this.getDefaultGraph();const{containers:n,depth:i}=await a.EntryHandlerContainer.getContainerHandler(this.parsingContext,e,t);if("@graph"in n){const t=a.EntryHandlerContainer.getContainerGraphIndex(n,i,e),o=this.parsingContext.graphContainerTermStack[i];if(r=o?o[t]:null,!r){let a=null;if("@id"in n){const t=await this.getContainerKey(e[i],e,i);null!==t&&(a=await this.resourceToTerm(await this.parsingContext.getContext(e),t))}a||(a=this.dataFactory.blankNode()),this.parsingContext.graphContainerTermStack[i]||(this.parsingContext.graphContainerTermStack[i]={}),r=this.parsingContext.graphContainerTermStack[i][t]=a}}return r}async getPropertiesDepth(e,t){let r=t;for(let n=t-1;n>0;n--)if("number"!=typeof e[n]){const t=await this.unaliasKeyword(e[n],e,n);if("@reverse"===t)return n;if("@nest"!==t)return r;r=n}return r}async getContainerKey(e,t,r){const n=await this.unaliasKeyword(e,t,r);return"@none"===n?null:n}validateReverseInEmbeddedNode(e,t,r){if(r&&t&&!this.parsingContext.rdfstarReverseInEmbedded)throw new n.ErrorCoded(`Illegal reverse property in embedded node in ${e}`,n.ERROR_CODES.INVALID_EMBEDDED_NODE)}emitQuadChecked(e,t,r,i,a,o,s){let c;if(o?(this.validateReverseSubject(i),c=this.dataFactory.quad(i,r,t,a)):c=this.dataFactory.quad(t,r,i,a),s){if("DefaultGraph"!==c.graph.termType&&(c=this.dataFactory.quad(c.subject,c.predicate,c.object)),this.parsingContext.idStack[e-1])throw new n.ErrorCoded("Illegal multiple properties in an embedded node",n.ERROR_CODES.INVALID_EMBEDDED_NODE);this.parsingContext.idStack[e-1]=[c]}else this.parsingContext.emitQuad(e,c);const u=this.parsingContext.annotationsBuffer[e];if(u){for(const t of u)this.emitAnnotation(e,c,t);delete this.parsingContext.annotationsBuffer[e]}}emitAnnotation(e,t,r){let n;r.reverse?(this.validateReverseSubject(r.object),n=this.dataFactory.quad(r.object,r.predicate,t)):n=this.dataFactory.quad(t,r.predicate,r.object),this.parsingContext.emitQuad(e,n);for(const t of r.nestedAnnotations)this.emitAnnotation(e,n,t)}}t.Util=s,s.XSD="http://www.w3.org/2001/XMLSchema#",s.XSD_BOOLEAN=s.XSD+"boolean",s.XSD_INTEGER=s.XSD+"integer",s.XSD_DOUBLE=s.XSD+"double",s.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"},61304:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerIdentifier=void 0,t.ContainerHandlerIdentifier=class{canCombineWithGraph(){return!0}async handle(e,t,r,n,i,a){let o;if(t.emittedStack[a+1]&&t.idStack[a+1])o=t.idStack[a+1][0];else{const e=null!==await r.getContainerKey(n[a],n,a)?await r.resourceToTerm(await t.getContext(n),n[a]):r.dataFactory.blankNode();if(!e)return void(t.emittedStack[a]=!1);o=e,t.idStack[a+1]=[o]}let s=t.idStack[a];s||(s=t.idStack[a]=[]),s.some((e=>e.equals(o)))||s.push(o),await t.handlePendingContainerFlushBuffers()||(t.emittedStack[a]=!1)}}},70569:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerIndex=void 0;const n=r(1838),i=r(78593),a=r(78826);t.ContainerHandlerIndex=class{canCombineWithGraph(){return!0}async handle(e,t,r,o,s,c){if(!Array.isArray(s)){const u="@graph"in e,l=await t.getContext(o),d=o[c-1],h=a.Util.getContextValueIndex(l,d);if(h){if(n.Util.isPotentialKeyword(h))throw new n.ErrorCoded(`Keywords can not be used as @index value, got: ${h}`,n.ERROR_CODES.INVALID_TERM_DEFINITION);if("string"!=typeof h)throw new n.ErrorCoded(`@index values must be strings, got: ${h}`,n.ERROR_CODES.INVALID_TERM_DEFINITION);if("object"!=typeof s){if("@id"!==a.Util.getContextValueType(l,d))throw new n.ErrorCoded(`Property-based index containers require nodes as values or strings with @type: @id, but got: ${s}`,n.ERROR_CODES.INVALID_VALUE_OBJECT);const e=r.resourceToTerm(l,s);e&&(t.idStack[c+1]=[e])}const e=r.createVocabOrBaseTerm(l,h);if(e){const n=await r.valueToTerm(l,h,await r.getContainerKey(o[c],o,c),c,o);if(u){const i=await r.getGraphContainerValue(o,c+1);for(const a of n)t.emitQuad(c,r.dataFactory.quad(i,e,a,r.getDefaultGraph()))}else for(const a of n)await i.EntryHandlerPredicate.handlePredicateObject(t,r,o,c+1,e,a,!1,!1,!1)}}const p=u?2:1;await t.newOnValueJob(o.slice(0,o.length-p),s,c-p,!0),await t.handlePendingContainerFlushBuffers()}t.emittedStack[c]=!1}}},82581:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerLanguage=void 0;const n=r(1838);t.ContainerHandlerLanguage=class{canCombineWithGraph(){return!1}async handle(e,t,r,i,a,o){const s=await r.getContainerKey(i[o],i,o);if(Array.isArray(a))a=a.map((e=>({"@value":e,"@language":s})));else{if("string"!=typeof a)throw new n.ErrorCoded(`Got invalid language map value, got '${JSON.stringify(a)}', but expected string`,n.ERROR_CODES.INVALID_LANGUAGE_MAP_VALUE);a={"@value":a,"@language":s}}await t.newOnValueJob(i.slice(0,i.length-1),a,o-1,!0),t.emittedStack[o]=!1}}},54848:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ContainerHandlerType=void 0;const n=r(78593),i=r(78826);t.ContainerHandlerType=class{canCombineWithGraph(){return!1}async handle(e,t,r,a,o,s){if(!Array.isArray(o)){if("string"==typeof o){const e=await t.getContext(a),n="@vocab"===i.Util.getContextValueType(e,a[s-1])?await r.createVocabOrBaseTerm(e,o):await r.resourceToTerm(e,o);if(n){const e={"@id":"NamedNode"===n.termType?n.value:o};await t.newOnValueJob(a.slice(0,a.length-1),e,s-1,!0),t.idStack[s+1]=[n]}}else{const e=!!t.idStack[s+1];e||delete t.idStack[s],await t.newOnValueJob(a.slice(0,a.length-1),o,s-1,!0),e||(t.idStack[s+1]=t.idStack[s])}const e=await r.getContainerKey(a[s],a,s),c=null!==e?r.createVocabOrBaseTerm(await t.getContext(a),e):null;c&&await n.EntryHandlerPredicate.handlePredicateObject(t,r,a,s+1,r.rdfType,c,!1,!1,!1),await t.handlePendingContainerFlushBuffers()}t.emittedStack[s]=!1}}},72786:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerArrayValue=void 0;const n=r(78826),i=r(1838);t.EntryHandlerArrayValue=class{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return this.test(e,t,null,r,n)}async test(e,t,r,n,i){return"number"==typeof n[i]}async handle(e,t,r,i,a,o){let s=await t.unaliasKeywordParent(i,o);if("@list"===s){let r=null,n=0;for(let e=o-2;e>0;e--){const t=i[e];if("string"==typeof t||"number"==typeof t){n=e,r=t;break}}if(null!==r){const s=await t.valueToTerm(await e.getContext(i),r,a,o,i);for(const r of s)await this.handleListElement(e,t,r,a,o,i.slice(0,n),n);0===s.length&&await this.handleListElement(e,t,null,a,o,i.slice(0,n),n)}}else if("@set"===s)await e.newOnValueJob(i.slice(0,-2),a,o-2,!1);else if(void 0!==s&&"@type"!==s){for(let e=o-1;e>0;e--)if("number"!=typeof i[e]){s=await t.unaliasKeyword(i[e],i,e);break}const r=await e.getContext(i.slice(0,-1));if("@list"in n.Util.getContextValueContainer(r,s)){e.emittedStack[o+1]=!0;const r=await t.valueToTerm(await e.getContext(i),s,a,o,i);for(const n of r)await this.handleListElement(e,t,n,a,o,i.slice(0,-1),o-1);0===r.length&&await this.handleListElement(e,t,null,a,o,i.slice(0,-1),o-1)}else e.shiftStack(o,1),await e.newOnValueJob(i.slice(0,-1),a,o-1,!1),e.contextTree.removeContext(i.slice(0,-1))}}async handleListElement(e,t,r,n,a,o,s){let c=e.listPointerStack[a];if(null!==n&&null!==(await t.unaliasKeywords(n,o,a))["@value"]){if(c&&c.value){const r=t.dataFactory.blankNode();e.emitQuad(a,t.dataFactory.quad(c.value,t.rdfRest,r,t.getDefaultGraph())),c.value=r}else{const e=t.dataFactory.blankNode();c={value:e,listRootDepth:s,listId:e}}r&&e.emitQuad(a,t.dataFactory.quad(c.value,t.rdfFirst,r,t.getDefaultGraph()))}else c||(c={listRootDepth:s,listId:t.rdfNil});e.listPointerStack[a]=c,e.rdfstar&&e.annotationsBuffer[a]&&e.emitError(new i.ErrorCoded("Found an illegal annotation inside a list",i.ERROR_CODES.INVALID_ANNOTATION))}}},89238:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerContainer=void 0;const n=r(61304),i=r(70569),a=r(82581),o=r(54848),s=r(78826);class c{static isSimpleGraphContainer(e){return"@graph"in e&&("@set"in e&&2===Object.keys(e).length||1===Object.keys(e).length)}static isComplexGraphContainer(e){return"@graph"in e&&("@set"in e&&Object.keys(e).length>2||!("@set"in e)&&Object.keys(e).length>1)}static getContainerGraphIndex(e,t,r){let n=c.isSimpleGraphContainer(e),i="";for(let e=t;e=0;e--)if("number"!=typeof t[e]){const r=s.Util.getContextValue(a,"@container",t[e],!1);if(r&&c.isSimpleGraphContainer(r))return{containers:r,depth:e+1,fallback:!1};const o=s.Util.getContextValue(a,"@container",t[e-1],!1);if(o){const t="@graph"in o;for(const r in c.CONTAINER_HANDLERS)if(o[r])return t?c.CONTAINER_HANDLERS[r].canCombineWithGraph()?{containers:o,depth:e,fallback:!1}:n:i?n:{containers:o,depth:e,fallback:!1};return n}if(i)return n;i=!0}return n}static async isBufferableContainerHandler(e,t,r){const n=await c.getContainerHandler(e,t,r);return!n.fallback&&!("@graph"in n.containers)}isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!!await this.test(e,t,null,r,n)}async test(e,t,r,n,i){const a=s.Util.getContextValueContainer(await e.getContext(n,2),n[i-1]);for(const e in c.CONTAINER_HANDLERS)if(a[e])return{containers:a,handler:c.CONTAINER_HANDLERS[e]};return null}async handle(e,t,r,n,i,a,o){return o.handler.handle(o.containers,e,t,n,i,a)}}t.EntryHandlerContainer=c,c.CONTAINER_HANDLERS={"@id":new n.ContainerHandlerIdentifier,"@index":new i.ContainerHandlerIndex,"@language":new a.ContainerHandlerLanguage,"@type":new o.ContainerHandlerType}},5892:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerInvalidFallback=void 0,t.EntryHandlerInvalidFallback=class{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!1}async test(e,t,r,n,i){return!0}async handle(e,t,r,n,i,a){e.emittedStack[a]=!1}}},78593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerPredicate=void 0;const n=r(1838),i=r(78826);class a{static async handlePredicateObject(e,t,r,i,a,o,s,c,u){const l=await t.getPropertiesDepth(r,i),d=await t.getDepthOffsetGraph(i,r),h=i-d,p=e.idStack[l];if(p&&!u)for(const n of p)if(d>=0){const r=e.idStack[h-1];if(r)for(const e of r)t.emitQuadChecked(i,n,a,o,e,s,c);else s?(t.validateReverseSubject(o),e.getUnidentifiedGraphBufferSafe(h-1).push({subject:o,predicate:a,object:n,isEmbedded:c})):e.getUnidentifiedGraphBufferSafe(h-1).push({subject:n,predicate:a,object:o,isEmbedded:c})}else{const e=await t.getGraphContainerValue(r,l);t.emitQuadChecked(i,n,a,o,e,s,c)}else if(s&&t.validateReverseSubject(o),u){if(e.rdfstar){e.idStack[i]&&e.emitError(new n.ErrorCoded(`Found an illegal @id inside an annotation: ${e.idStack[i][0].value}`,n.ERROR_CODES.INVALID_ANNOTATION));for(let a=0;a=0;e--){const t=c[e];t.depth>l&&(u.nestedAnnotations.push(t),c.splice(e,1))}}}else e.getUnidentifiedValueBufferSafe(l).push({predicate:a,object:o,reverse:s,isEmbedded:c})}isPropertyHandler(){return!0}isStackProcessor(){return!0}async validate(e,t,r,n,a){const o=r[n];if(o){const a=await e.getContext(r);if(!e.jsonLiteralStack[n]&&await t.predicateToTerm(a,r[n]))return"@json"===i.Util.getContextValueType(a,o)&&(e.jsonLiteralStack[n+1]=!0),!0}return!1}async test(e,t,r,n,i){return n[i]}async handle(e,t,r,o,s,c,u){const l=o[c],d=await e.getContext(o),h=await t.predicateToTerm(d,r);if(h){const u=await t.valueToTerm(d,r,s,c,o);if(u.length)for(let p of u){let u=await t.unaliasKeywordParent(o,c);const f=i.Util.isPropertyReverse(d,l,u);let y=0;for(;"@reverse"===u||"number"==typeof u;)"number"==typeof u?y++:c--,u=await t.unaliasKeywordParent(o,c-y);const g=i.Util.isPropertyInEmbeddedNode(u);t.validateReverseInEmbeddedNode(r,f,g);const m=i.Util.isPropertyInAnnotationObject(u);if(s){const a="@list"in i.Util.getContextValueContainer(d,r);if(a||s["@list"]){if((a&&!Array.isArray(s)&&!s["@list"]||s["@list"]&&!Array.isArray(s["@list"]))&&p!==t.rdfNil){const r=t.dataFactory.blankNode();e.emitQuad(c,t.dataFactory.quad(r,t.rdfRest,t.rdfNil,t.getDefaultGraph())),e.emitQuad(c,t.dataFactory.quad(r,t.rdfFirst,p,t.getDefaultGraph())),p=r}if(f&&!e.allowSubjectList)throw new n.ErrorCoded(`Found illegal list value in subject position at ${r}`,n.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE)}}await a.handlePredicateObject(e,t,o,c,h,p,f,g,m)}}}}t.EntryHandlerPredicate=a},82149:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeyword=void 0,t.EntryHandlerKeyword=class{constructor(e){this.keyword=e}isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,n,i){return!1}async test(e,t,r,n,i){return r===this.keyword}}},70254:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordAnnotation=void 0;const n=r(82149),i=r(1838);class a extends n.EntryHandlerKeyword{constructor(){super("@annotation")}async handle(e,t,r,n,a,o){("string"==typeof a||"object"==typeof a&&a["@value"])&&e.emitError(new i.ErrorCoded(`Found illegal annotation value: ${JSON.stringify(a)}`,i.ERROR_CODES.INVALID_ANNOTATION))}}t.EntryHandlerKeywordAnnotation=a},16587:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordContext=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@context")}isStackProcessor(){return!1}async handle(e,t,r,i,a,o){e.streamingProfile&&(e.processingStack[o]||e.processingType[o]||void 0!==e.idStack[o])&&e.emitError(new n.ErrorCoded("Found an out-of-order context, while streaming is enabled.(disable `streamingProfile`)",n.ERROR_CODES.INVALID_STREAMING_KEY_ORDER));const s=e.getContext(i),c=e.parseContext(a,(await s).getContextRaw());e.contextTree.setContext(i.slice(0,-1),c),e.emitContext(a),await e.validateContext(await c)}}t.EntryHandlerKeywordContext=a},33119:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordGraph=void 0;const n=r(82149);class i extends n.EntryHandlerKeyword{constructor(){super("@graph")}async handle(e,t,r,n,i,a){e.graphStack[a+1]=!0}}t.EntryHandlerKeywordGraph=i},73249:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordId=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@id")}isStackProcessor(){return!1}async handle(e,t,r,i,a,o){if("string"!=typeof a){if(e.rdfstar&&"object"==typeof a){const t=Object.keys(a);1===t.length&&"@id"===t[0]&&e.emitError(new n.ErrorCoded(`Invalid embedded node without property with @id ${a["@id"]}`,n.ERROR_CODES.INVALID_EMBEDDED_NODE))}else e.emitError(new n.ErrorCoded(`Found illegal @id '${a}'`,n.ERROR_CODES.INVALID_ID_VALUE));return}const s=await t.getPropertiesDepth(i,o);if(void 0!==e.idStack[s]&&(e.idStack[s][0].listHead?e.emitError(new n.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${i[o-1]}'`,n.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT)):e.emitError(new n.ErrorCoded(`Found duplicate @ids '${e.idStack[s][0].value}' and '${a}'`,n.ERROR_CODES.COLLIDING_KEYWORDS))),e.rdfstar&&e.annotationsBuffer[o])for(const t of e.annotationsBuffer[o])t.depth===o&&e.emitError(new n.ErrorCoded(`Found an illegal @id inside an annotation: ${a}`,n.ERROR_CODES.INVALID_ANNOTATION));e.idStack[s]=t.nullableTermToArray(await t.resourceToTerm(await e.getContext(i),a))}}t.EntryHandlerKeywordId=a},6210:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordIncluded=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@included")}async handle(e,t,r,i,a,o){"object"!=typeof a&&e.emitError(new n.ErrorCoded(`Found illegal @included '${a}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE));const s=await t.unaliasKeywords(a,i,o,await e.getContext(i));"@value"in s&&e.emitError(new n.ErrorCoded(`Found an illegal @included @value node '${JSON.stringify(a)}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE)),"@list"in s&&e.emitError(new n.ErrorCoded(`Found an illegal @included @list node '${JSON.stringify(a)}'`,n.ERROR_CODES.INVALID_INCLUDED_VALUE)),e.emittedStack[o]=!1}}t.EntryHandlerKeywordIncluded=a},80230:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordNest=void 0;const n=r(1838),i=r(82149);class a extends i.EntryHandlerKeyword{constructor(){super("@nest")}async handle(e,t,r,i,a,o){"object"!=typeof a&&e.emitError(new n.ErrorCoded(`Found invalid @nest entry for '${r}': '${a}'`,n.ERROR_CODES.INVALID_NEST_VALUE)),"@value"in await t.unaliasKeywords(a,i,o,await e.getContext(i))&&e.emitError(new n.ErrorCoded(`Found an invalid @value node for '${r}'`,n.ERROR_CODES.INVALID_NEST_VALUE)),e.emittedStack[o]=!1}}t.EntryHandlerKeywordNest=a},87044:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordType=void 0;const n=r(1838),i=r(78826),a=r(78593),o=r(82149);class s extends o.EntryHandlerKeyword{constructor(){super("@type")}isStackProcessor(){return!1}async handle(e,t,r,o,s,c){const u=o[c],l=await e.getContext(o),d=t.rdfType,h=await t.unaliasKeywordParent(o,c),p=i.Util.isPropertyReverse(l,u,h),f=i.Util.isPropertyInEmbeddedNode(h);t.validateReverseInEmbeddedNode(r,p,f);const y=i.Util.isPropertyInAnnotationObject(h),g=Array.isArray(s)?s:[s];for(const r of g){"string"!=typeof r&&e.emitError(new n.ErrorCoded(`Found illegal @type '${r}'`,n.ERROR_CODES.INVALID_TYPE_VALUE));const i=t.createVocabOrBaseTerm(l,r);i&&await a.EntryHandlerPredicate.handlePredicateObject(e,t,o,c,d,i,p,f,y)}let m=Promise.resolve(l),b=!1;for(const t of g.sort()){const r=i.Util.getContextValue(l,"@context",t,null);r&&(b=!0,m=m.then((t=>e.parseContext(r,t.getContextRaw()))))}!e.streamingProfile||!b&&e.streamingProfileAllowOutOfOrderPlainType||!e.processingStack[c]&&!e.idStack[c]||e.emitError(new n.ErrorCoded("Found an out-of-order type-scoped context, while streaming is enabled.(disable `streamingProfile`)",n.ERROR_CODES.INVALID_STREAMING_KEY_ORDER)),b&&(m=m.then((e=>("@propagate"in e.getContextRaw()||(e.getContextRaw()["@propagate"]=!1),!1===e.getContextRaw()["@propagate"]&&(e.getContextRaw()["@__propagateFallback"]=l.getContextRaw()),e))),e.contextTree.setContext(o.slice(0,o.length-1),m)),e.processingType[c]=!0}}t.EntryHandlerKeywordType=s},44582:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordUnknownFallback=void 0;const n=r(1838);class i{isPropertyHandler(){return!1}isStackProcessor(){return!0}async validate(e,t,r,i,a){const o=await t.unaliasKeyword(r[i],r,i);return!(!n.Util.isPotentialKeyword(o)||!a&&"@list"===o)}async test(e,t,r,i,a){return n.Util.isPotentialKeyword(r)}async handle(e,t,r,a,o,s){const c=i.VALID_KEYWORDS_TYPES[r];void 0!==c?c&&typeof o!==c.type&&e.emitError(new n.ErrorCoded(`Invalid value type for '${r}' with value '${o}'`,c.errorCode)):e.strictValues&&e.emitError(new Error(`Unknown keyword '${r}' with value '${o}'`)),e.emittedStack[s]=!1}}t.EntryHandlerKeywordUnknownFallback=i,i.VALID_KEYWORDS_TYPES={"@index":{type:"string",errorCode:n.ERROR_CODES.INVALID_INDEX_VALUE},"@list":null,"@reverse":{type:"object",errorCode:n.ERROR_CODES.INVALID_REVERSE_VALUE},"@set":null,"@value":null}},21997:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.EntryHandlerKeywordValue=void 0;const n=r(82149);class i extends n.EntryHandlerKeyword{constructor(){super("@value")}async validate(e,t,r,n,i){const a=r[n];return a&&!e.literalStack[n]&&await this.test(e,t,a,r,n)&&(e.literalStack[n]=!0),super.validate(e,t,r,n,i)}async test(e,t,r,n,i){return"@value"===await t.unaliasKeyword(n[i],n.slice(0,n.length-1),i-1,!0)}async handle(e,t,r,n,i,a){e.literalStack[a]=!0,delete e.unidentifiedValuesBuffer[a],delete e.unidentifiedGraphsBuffer[a],e.emittedStack[a]=!1}}t.EntryHandlerKeywordValue=i},82694:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(58158),t),i(r(37354),t)},58158:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JsonLdSerializer=void 0;const n=r(1838),i=r(46342),a=r(37354),o=r(51887);class s extends o.Transform{constructor(e={}){super({objectMode:!0}),this.indentation=0,this.options=e,this.options.baseIRI&&!this.options.context&&(this.options.context={"@base":this.options.baseIRI}),this.options.context?(this.originalContext=this.options.context,this.context=(new n.ContextParser).parse(this.options.context,{baseIRI:this.options.baseIRI})):this.context=Promise.resolve(new n.JsonLdContextNormalized({}))}import(e){const t=new o.PassThrough({objectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new s(this.options));return r}_transform(e,t,r){this.context.then((t=>{this.transformQuad(e,t),r()})).catch(r)}async list(e){const t=await this.context;return{"@list":e.map((e=>a.Util.termToValue(e,t,this.options)))}}_flush(e){return this.opened||this.pushDocumentStart(),this.lastPredicate&&this.endPredicate(),this.lastSubject&&this.endSubject(),this.lastGraph&&"DefaultGraph"!==this.lastGraph.termType&&this.endGraph(),this.endDocument(),e(null,null)}transformQuad(e,t){this.opened||this.pushDocumentStart();const r=this.lastGraph&&"DefaultGraph"!==this.lastGraph.termType&&this.lastGraph.equals(e.subject);if(!(r||this.lastGraph&&e.graph.equals(this.lastGraph))){let r="DefaultGraph"!==e.graph.termType&&this.lastSubject&&this.lastSubject.equals(e.graph);this.lastGraph&&("DefaultGraph"!==this.lastGraph.termType?(this.endPredicate(),this.endSubject(),this.endGraph(!0),r=!1):r?(this.endPredicate(!0),this.lastSubject=null):(this.endPredicate(),this.endSubject(!0))),"DefaultGraph"!==e.graph.termType&&(r||this.pushId(e.graph,!0,t),this.pushSeparator(this.options.space?i.SeparatorType.GRAPH_FIELD_NONCOMPACT:i.SeparatorType.GRAPH_FIELD_COMPACT),this.indentation++),this.lastGraph=e.graph}this.lastSubject&&e.subject.equals(this.lastSubject)||(r?(this.endPredicate(),this.endSubject(),this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END_COMMA),this.lastGraph=e.graph):(this.lastSubject&&(this.endPredicate(),this.endSubject(!0)),this.pushId(e.subject,!0,t)),this.lastSubject=e.subject),this.lastPredicate&&e.predicate.equals(this.lastPredicate)||(this.lastPredicate&&this.endPredicate(!0),this.pushPredicate(e.predicate,t)),this.pushObject(e.object,t)}pushDocumentStart(){this.opened=!0,this.originalContext&&!this.options.excludeContext?(this.pushSeparator(i.SeparatorType.OBJECT_START),this.indentation++,this.pushSeparator(i.SeparatorType.CONTEXT_FIELD),this.pushIndented(JSON.stringify(this.originalContext,null,this.options.space)+","),this.pushSeparator(this.options.space?i.SeparatorType.GRAPH_FIELD_NONCOMPACT:i.SeparatorType.GRAPH_FIELD_COMPACT),this.indentation++):(this.pushSeparator(i.SeparatorType.ARRAY_START),this.indentation++)}pushId(e,t,r){if("Quad"===e.termType)this.pushNestedQuad(e,!0,r);else{const n="BlankNode"===e.termType?"_:"+e.value:r.compactIri(e.value,!1);t?this.pushSeparator(i.SeparatorType.OBJECT_START):(this.push(i.SeparatorType.OBJECT_START.label),this.options.space&&this.push("\n")),this.indentation++,this.pushIndented(this.options.space?`"@id": "${n}",`:`"@id":"${n}",`)}}pushPredicate(e,t){let r=e.value;this.options.useRdfType||r!==a.Util.RDF_TYPE||(r="@type",this.objectOptions=Object.assign(Object.assign({},this.options),{compactIds:!0,vocab:!0}));const n=t.compactIri(r,!0);this.pushIndented(this.options.space?`"${n}": [`:`"${n}":[`),this.indentation++,this.lastPredicate=e}pushObject(e,t){if(this.hadObjectForPredicate?this.pushSeparator(i.SeparatorType.COMMA):this.hadObjectForPredicate=!0,"Quad"===e.termType){const r=this.lastSubject,n=this.lastPredicate;return this.hadObjectForPredicate=!1,this.pushNestedQuad(e,!1,t),this.endSubject(!1),this.hadObjectForPredicate=!0,this.lastPredicate=n,void(this.lastSubject=r)}let r;try{r=e["@list"]?e:a.Util.termToValue(e,t,this.objectOptions||this.options)}catch(e){return this.emit("error",e)}this.pushIndented(JSON.stringify(r,null,this.options.space))}pushNestedQuad(e,t,r){this.pushSeparator(i.SeparatorType.OBJECT_START),this.indentation++,this.pushIndented(this.options.space?'"@id": ':'"@id":',!1),"DefaultGraph"!==e.graph.termType&&this.emit("error",new Error(`Found a nested quad with the non-default graph: ${e.graph.value}`)),this.pushId(e.subject,!1,r),this.pushPredicate(e.predicate,r),this.pushObject(e.object,r),this.endPredicate(!1),this.endSubject(t)}endDocument(){this.opened=!1,this.originalContext&&!this.options.excludeContext?(this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END),this.indentation--,this.pushSeparator(i.SeparatorType.OBJECT_END)):(this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END))}endPredicate(e){this.indentation--,this.pushSeparator(e?i.SeparatorType.ARRAY_END_COMMA:i.SeparatorType.ARRAY_END),this.hadObjectForPredicate=!1,this.objectOptions=null,this.lastPredicate=null}endSubject(e){this.indentation--,this.pushSeparator(e?i.SeparatorType.OBJECT_END_COMMA:i.SeparatorType.OBJECT_END),this.lastSubject=null}endGraph(e){this.indentation--,this.pushSeparator(i.SeparatorType.ARRAY_END),this.indentation--,this.pushSeparator(e?i.SeparatorType.OBJECT_END_COMMA:i.SeparatorType.OBJECT_END),this.lastGraph=null}pushSeparator(e){this.pushIndented(e.label)}pushIndented(e,t=!0){const r=this.getIndentPrefix(),n=e.split("\n").map((e=>r+e)).join("\n");this.push(n),this.options.space&&t&&this.push("\n")}getIndentPrefix(){return this.options.space?this.options.space.repeat(this.indentation):""}}t.JsonLdSerializer=s},46342:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SeparatorType=void 0;class r{constructor(e){this.label=e}}t.SeparatorType=r,r.COMMA=new r(","),r.OBJECT_START=new r("{"),r.OBJECT_END=new r("}"),r.OBJECT_END_COMMA=new r("},"),r.ARRAY_START=new r("["),r.ARRAY_END=new r("]"),r.ARRAY_END_COMMA=new r("],"),r.GRAPH_FIELD_NONCOMPACT=new r('"@graph": ['),r.GRAPH_FIELD_COMPACT=new r('"@graph":['),r.CONTEXT_FIELD=new r('"@context":')},37354:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(1838);class i{static termToValue(e,t,r={compactIds:!1,useNativeTypes:!1}){switch(e.termType){case"NamedNode":const a=t.compactIri(e.value,r.vocab);return r.compactIds?a:{"@id":a};case"DefaultGraph":return r.compactIds?e.value:{"@id":e.value};case"BlankNode":const o=`_:${e.value}`;return r.compactIds?o:{"@id":o};case"Literal":if(e.datatype.value===i.RDF_JSON){let t;try{t=JSON.parse(e.value)}catch(e){throw new n.ErrorCoded("Invalid JSON literal: "+e.message,n.ERROR_CODES.INVALID_JSON_LITERAL)}return{"@value":t,"@type":"@json"}}if("i18n-datatype"===r.rdfDirection&&e.datatype.value.startsWith(i.I18N)){const[t,r]=e.datatype.value.substr(i.I18N.length,e.datatype.value.length).split("_");return Object.assign(Object.assign({"@value":e.value},t?{"@language":t}:{}),r?{"@direction":r}:{})}const s=e.datatype.value===i.XSD_STRING,c={"@value":!s&&r.useNativeTypes?i.stringToNativeType(e.value,e.datatype.value):e.value};return e.language?Object.assign(Object.assign({},c),{"@language":e.language}):s||"string"!=typeof c["@value"]?c:Object.assign(Object.assign({},c),{"@type":e.datatype.value})}}static stringToNativeType(e,t){if(t.startsWith(i.XSD))switch(t.substr(i.XSD.length)){case"boolean":if("true"===e)return!0;if("false"===e)return!1;throw new Error(`Invalid xsd:boolean value '${e}'`);case"integer":case"number":case"int":case"byte":case"long":const t=parseInt(e,10);if(isNaN(t))throw new Error(`Invalid xsd:integer value '${e}'`);return t;case"float":case"double":const r=parseFloat(e);if(isNaN(r))throw new Error(`Invalid xsd:float value '${e}'`);return r}return e}}t.Util=i,i.XSD="http://www.w3.org/2001/XMLSchema#",i.XSD_STRING=i.XSD+"string",i.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",i.RDF_TYPE=i.RDF+"type",i.RDF_JSON=i.RDF+"JSON",i.I18N="https://www.w3.org/ns/i18n#"},47755:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(13807),t),i(r(24558),t),i(r(87565),t),i(r(68285),t),i(r(22865),t),i(r(60161),t),i(r(34625),t),i(r(48123),t),i(r(41822),t),i(r(40786),t)},60161:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},34625:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},48123:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},41822:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MicrodataRdfParser=void 0;const n=r(60883),i=r(51887),a=r(24558),o=r(87565),s=r(68285),c=r(22865),u=r(40786),l=r(3048);class d extends i.Transform{constructor(e){super({readableObjectMode:!0}),this.itemScopeStack=[],this.textBufferStack=[],this.isEmittingReferences=!1,this.pendingItemRefsDomain={},this.pendingItemRefsRangeFinalized={},this.pendingItemRefsRangeCollecting={},e=e||{},this.options=e,this.util=new u.Util(e.dataFactory,e.baseIRI),this.defaultGraph=e.defaultGraph||this.util.dataFactory.defaultGraph(),this.htmlParseListener=e.htmlParseListener,this.vocabRegistry=e.vocabRegistry||l,this.parser=this.initializeParser(!!e.xmlMode)}import(e){const t=new i.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new d(this.options));return r}_transform(e,t,r){this.parser.write(e.toString()),r()}_flush(e){this.parser.end(),e()}getItemScope(e){let t=this.itemScopeStack.length-(e?2:1);for(;t>0&&!this.itemScopeStack[t];)t--;return this.itemScopeStack[t]}getDepth(){return this.itemScopeStack.length}onTagOpen(e,t){if(!this.isEmittingReferences){if("id"in t){const e=t.id;this.pendingItemRefsRangeCollecting[e]={events:[],counter:0,ids:[]}}for(const r of Object.values(this.pendingItemRefsRangeCollecting))r.counter++,r.events.push({type:"open",name:e,attributes:t})}let r;if(this.textBufferStack.push(void 0),"itemscope"in t){let e;if(this.emittingReferencesItemScopeIdGenerator)e=this.emittingReferencesItemScopeIdGenerator();else{e="itemid"in t&&this.util.createSubject(t.itemid)||this.util.dataFactory.blankNode();for(const t of Object.values(this.pendingItemRefsRangeCollecting))t.ids.push(e)}r={subject:e},this.isEmittingReferences&&(r.blockEmission=!0);const n=this.getItemScope();n&&n.vocab&&(r.vocab=n.vocab),this.itemScopeStack.push(r)}else r=this.getItemScope(),this.itemScopeStack.push(void 0);if(r){if("itemtype"in t)for(const e of this.util.createVocabIris(t.itemtype,r,!1))r.vocab||(r.vocab=this.util.deriveVocab(e.value,this.vocabRegistry)),r.blockEmission||this.emitTriple(r.subject,this.util.dataFactory.namedNode(`${u.Util.RDF}type`),e);if("lang"in t&&(r.language=t.lang),"xml:lang"in t&&(r.language=t["xml:lang"]),"itemscope"in t&&!this.isEmittingReferences&&"itemref"in t)for(const e of t.itemref.split(/\s+/u))e in this.pendingItemRefsDomain||(this.pendingItemRefsDomain[e]=[]),this.pendingItemRefsDomain[e].push(r),this.tryToEmitReferences(e,r)}"itemprop"in t&&this.handleItemProperties(t.itemprop,!1,r,e,t),"itemprop-reverse"in t&&this.handleItemProperties(t["itemprop-reverse"],!0,r,e,t)}onText(e){if(!this.isEmittingReferences)for(const t of Object.values(this.pendingItemRefsRangeCollecting))t.events.push({type:"text",data:e});for(const t of this.textBufferStack)t&&t.push(e)}onTagClose(){if(!this.isEmittingReferences)for(const[e,t]of Object.entries(this.pendingItemRefsRangeCollecting))t.counter--,t.events.push({type:"close"}),0===t.counter&&(this.pendingItemRefsRangeFinalized[e]=t,delete this.pendingItemRefsRangeCollecting[e],this.tryToEmitReferences(e));const e=this.getItemScope(!0);if(e){const t=this.getDepth();if(e.predicates&&t in e.predicates)for(const[r,n]of Object.entries(e.predicates[t])){const i=this.util.createLiteral(this.textBufferStack[t].join(""),e);this.emitPredicateTriples(e,n,i,"reverse"===r),delete e.predicates[t][r]}}this.itemScopeStack.pop(),this.textBufferStack.pop()}onEnd(){}initializeParser(e){return new n.Parser({onclosetag:()=>{try{this.onTagClose(),this.htmlParseListener&&this.htmlParseListener.onTagClose()}catch(e){this.emit("error",e)}},onend:()=>{try{this.onEnd(),this.htmlParseListener&&this.htmlParseListener.onEnd()}catch(e){this.emit("error",e)}},onopentag:(e,t)=>{try{this.onTagOpen(e,t),this.htmlParseListener&&this.htmlParseListener.onTagOpen(e,t)}catch(e){this.emit("error",e)}},ontext:e=>{try{this.onText(e),this.htmlParseListener&&this.htmlParseListener.onText(e)}catch(e){this.emit("error",e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:e})}handleItemProperties(e,t,r,n,i){const a=this.getItemScope(!0);if(a){const o=this.getDepth(),s=this.util.createVocabIris(e,a,!0);a.predicates||(a.predicates={}),a.predicates[o]||(a.predicates[o]={});const c=t?"reverse":"forward";a.predicates[o][c]=s;for(const t of this.util.getVocabularyExpansionType(e,a,this.vocabRegistry))s.push(t);if(r&&"itemscope"in i)this.emitPredicateTriples(a,s,r.subject,t),delete a.predicates[o][c];else for(const e of d.ITEM_PROPERTY_HANDLERS)if(e.canHandle(n,i)){const r=e.getObject(i,this.util,a);this.emitPredicateTriples(a,s,r,t),delete a.predicates[o][c]}a.predicates[o][c]&&(this.textBufferStack[o]=[])}}emitPredicateTriples(e,t,r,n){if(!e.blockEmission)for(const i of t)n?"Literal"!==r.termType&&this.emitTriple(r,i,e.subject):this.emitTriple(e.subject,i,r)}emitTriple(e,t,r){this.push(this.util.dataFactory.quad(e,t,r,this.defaultGraph))}tryToEmitReferences(e,t){const r=this.pendingItemRefsRangeFinalized[e];if(r){let n;if(t){n=[t];const r=this.pendingItemRefsDomain[e].indexOf(t);this.pendingItemRefsDomain[e].splice(r,1)}else n=this.pendingItemRefsDomain[e],delete this.pendingItemRefsDomain[e];if(n){const e=this.itemScopeStack,t=this.textBufferStack;this.isEmittingReferences=!0;for(const e of n){this.itemScopeStack=[e],this.textBufferStack=[void 0];const t=[...r.ids];this.emittingReferencesItemScopeIdGenerator=()=>t.shift();for(const e of r.events)switch(e.type){case"open":this.onTagOpen(e.name,e.attributes);break;case"text":this.onText(e.data);break;case"close":this.onTagClose()}}this.emittingReferencesItemScopeIdGenerator=void 0,this.itemScopeStack=e,this.textBufferStack=t,this.isEmittingReferences=!1}}}}t.MicrodataRdfParser=d,d.ITEM_PROPERTY_HANDLERS=[new a.ItemPropertyHandlerContent,new c.ItemPropertyHandlerUrl("a","href"),new c.ItemPropertyHandlerUrl("area","href"),new c.ItemPropertyHandlerUrl("audio","src"),new c.ItemPropertyHandlerUrl("embed","src"),new c.ItemPropertyHandlerUrl("iframe","src"),new c.ItemPropertyHandlerUrl("img","src"),new c.ItemPropertyHandlerUrl("link","href"),new c.ItemPropertyHandlerUrl("object","data"),new c.ItemPropertyHandlerUrl("source","src"),new c.ItemPropertyHandlerUrl("track","src"),new c.ItemPropertyHandlerUrl("video","src"),new o.ItemPropertyHandlerNumber("data","value"),new o.ItemPropertyHandlerNumber("meter","value"),new s.ItemPropertyHandlerTime]},40786:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(91194),i=r(84690);class a{constructor(e,t){this.dataFactory=e||new n.DataFactory,this.baseIRI=t||""}static isValidIri(e){return a.IRI_REGEX.test(e)}createVocabIris(e,t,r){return e.split(/\s+/u).filter((e=>!!e)).map((e=>{if(!a.isValidIri(e)){if(!r)return;e=`${t.vocab||`${this.baseIRI}#`}${e}`}return this.dataFactory.namedNode(e)})).filter((e=>!!e))}getVocabularyExpansionType(e,t,r){const n=e.split(/\s+/u);if(n.includes("subPropertyOf")||n.includes("equivalentProperty"))return[this.dataFactory.namedNode(`${a.RDF}type`)];if(t.vocab&&t.vocab in r&&r[t.vocab].properties){let e=[];for(const[i,a]of Object.entries(r[t.vocab].properties))n.includes(i)&&(e=[...Object.values(a).map((e=>this.dataFactory.namedNode(e)))]);return e}return[]}createSubject(e){if(!a.isValidIri(e))try{e=(0,i.resolve)(e,this.baseIRI)}catch(e){return}return this.dataFactory.namedNode(e)}createLiteral(e,t){return this.dataFactory.literal(e,t.language)}deriveVocab(e,t){let r;for(const n in t)if(e.startsWith(n)){r=n,r.endsWith("/")||(r+="#");break}if(!r){const t=e.indexOf("#");r=t>0?e.slice(0,t+1):(0,i.resolve)(".",e)}return r}}t.Util=a,a.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",a.XSD="http://www.w3.org/2001/XMLSchema#",a.RDFA="http://www.w3.org/ns/rdfa#",a.IRI_REGEX=/^([A-Za-z][\d+-.A-Za-z]*|_):[^ "<>[\\\]`{|}]*$/u},13807:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},24558:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerContent=void 0,t.ItemPropertyHandlerContent=class{canHandle(e,t){return"content"in t}getObject(e,t,r){return t.createLiteral(e.content,r)}}},87565:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerNumber=void 0;const n=r(40786);t.ItemPropertyHandlerNumber=class{constructor(e,t){this.tagName=e,this.attributeName=t}canHandle(e,t){return this.tagName===e&&this.attributeName in t}getObject(e,t,r){const i=e[this.attributeName];let a;return Number.isNaN(Number.parseInt(i,10))||i.includes(".")?Number.isNaN(Number.parseFloat(i))||(a=`${n.Util.XSD}double`):a=`${n.Util.XSD}integer`,t.dataFactory.literal(i,a&&t.dataFactory.namedNode(a))}}},68285:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerTime=void 0;const n=r(40786);class i{canHandle(e,t){return"time"===e&&"datetime"in t}getObject(e,t,r){const a=e.datetime;let o;for(const e of i.TIME_REGEXES)if(e.regex.test(a)){o=t.dataFactory.namedNode(n.Util.XSD+e.type);break}return t.dataFactory.literal(a,o)}}t.ItemPropertyHandlerTime=i,i.TIME_REGEXES=[{regex:/^-?P(\d+Y)?(\d+M)?(\d+D)?(T(\d+H)?(\d+M)?(\d+(\.\d)?S)?)?$/u,type:"duration"},{regex:/^\d+-\d\d-\d\dT\d\d:\d\d:\d\d((Z?)|([+-]\d\d:\d\d))$/u,type:"dateTime"},{regex:/^\d+-\d\d-\d\dZ?$/u,type:"date"},{regex:/^\d\d:\d\d:\d\d((Z?)|([+-]\d\d:\d\d))$/u,type:"time"},{regex:/^\d+-\d\d$/u,type:"gYearMonth"},{regex:/^\d+$/u,type:"gYear"}]},22865:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ItemPropertyHandlerUrl=void 0;const n=r(84690);t.ItemPropertyHandlerUrl=class{constructor(e,t){this.tagName=e,this.attributeName=t}canHandle(e,t){return this.tagName===e&&this.attributeName in t}getObject(e,t,r){return t.dataFactory.namedNode((0,n.resolve)(e[this.attributeName],t.baseIRI))}}},79561:e=>{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},66641:(e,t,r)=>{"use strict";r.r(t),r.d(t,{BlankNode:()=>k,DataFactory:()=>j,DefaultGraph:()=>B,Lexer:()=>m,Literal:()=>L,NamedNode:()=>M,Parser:()=>z,Quad:()=>V,Store:()=>se,StreamParser:()=>le,StreamWriter:()=>de,Term:()=>C,Triple:()=>V,Util:()=>n,Variable:()=>F,Writer:()=>ne,default:()=>he,termFromId:()=>U,termToId:()=>q});var n={};r.r(n),r.d(n,{inDefaultGraph:()=>S,isBlankNode:()=>v,isDefaultGraph:()=>T,isLiteral:()=>_,isNamedNode:()=>b,isVariable:()=>w,prefix:()=>O,prefixes:()=>E});const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",a="http://www.w3.org/2001/XMLSchema#",o="http://www.w3.org/2000/10/swap/",s={xsd:{decimal:`${a}decimal`,boolean:`${a}boolean`,double:`${a}double`,integer:`${a}integer`,string:`${a}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${o}reify#forSome`,forAll:`${o}reify#forAll`},log:{implies:`${o}log#implies`}};var c=r(65089),u=r.n(c),l=r(48834).Buffer;const{xsd:d}=s,h=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,p={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},f=/[\x00-\x20<>\\"\{\}\|\^\`]/,y={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},g=/$0^/;class m{constructor(e){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,e=e||{},this._lineMode=!!e.lineMode){this._n3Mode=!1;for(const e in this)!(e in y)&&this[e]instanceof RegExp&&(this[e]=g)}else this._n3Mode=!1!==e.n3;this._comments=!!e.comments,this._literalClosingPos=0}_tokenizeToEnd(e,t){let r=this._input,n=r.length;for(;;){let e,o;for(;e=this._newline.exec(r);)this._comments&&(o=this._comment.exec(e[0]))&&i("comment",o[1],"",this._line,e[0].length),r=r.substr(e[0].length,r.length),n=r.length,this._line++;if(!e&&(e=this._whitespace.exec(r))&&(r=r.substr(e[0].length,r.length)),this._endOfFile.test(r))return t&&(this._comments&&(o=this._comment.exec(r))&&i("comment",o[1],"",this._line,r.length),r=null,i("eof","","",this._line,0)),this._input=r;const s=this._line,c=r[0];let u="",l="",h="",p=null,y=0,g=!1;switch(c){case"^":if(r.length<3)break;if("^"!==r[1]){this._n3Mode&&(y=1,u="^");break}if(this._previousMarker="^^",r=r.substr(2),"<"!==r[0]){g=!0;break}case"<":if(p=this._unescapedIri.exec(r))u="IRI",l=p[1];else if(p=this._iri.exec(r)){if(l=this._unescape(p[1]),null===l||f.test(l))return a(this);u="IRI"}else r.length>1&&"<"===r[1]?(u="<<",y=2):this._n3Mode&&r.length>1&&"="===r[1]&&(u="inverse",y=2,l=">");break;case">":r.length>1&&">"===r[1]&&(u=">>",y=2);break;case"_":((p=this._blank.exec(r))||t&&(p=this._blank.exec(`${r} `)))&&(u="blank",h="_",l=p[1]);break;case'"':if(p=this._simpleQuotedString.exec(r))l=p[1];else if(({value:l,matchLength:y}=this._parseLiteral(r)),null===l)return a(this);null===p&&0===y||(u="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(p=this._simpleApostropheString.exec(r))l=p[1];else if(({value:l,matchLength:y}=this._parseLiteral(r)),null===l)return a(this);null===p&&0===y||(u="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(p=this._variable.exec(r))&&(u="var",l=p[0]);break;case"@":"literal"===this._previousMarker&&(p=this._langcode.exec(r))?(u="langcode",l=p[1]):(p=this._keyword.exec(r))&&(u=p[0]);break;case".":if(1===r.length?t:r[1]<"0"||r[1]>"9"){u=".",y=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(p=this._number.exec(r)||t&&(p=this._number.exec(`${r} `)))&&(u="literal",l=p[0],h="string"==typeof p[1]?d.double:"string"==typeof p[2]?d.decimal:d.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(p=this._sparqlKeyword.exec(r))?u=p[0].toUpperCase():g=!0;break;case"f":case"t":(p=this._boolean.exec(r))?(u="literal",l=p[0],h=d.boolean):g=!0;break;case"a":(p=this._shortPredicates.exec(r))?(u="abbreviation",l="a"):g=!0;break;case"=":this._n3Mode&&r.length>1&&(u="abbreviation",">"!==r[1]?(y=1,l="="):(y=2,l=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"}":this._lineMode||(y=1,u=c);break;case"{":!this._lineMode&&r.length>=2&&("|"===r[1]?(u="{|",y=2):(u=c,y=1));break;case"|":r.length>=2&&"}"===r[1]&&(u="|}",y=2);break;default:g=!0}if(g&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(p=this._prefix.exec(r))?((p=this._prefixed.exec(r))||t&&(p=this._prefixed.exec(`${r} `)))&&(u="prefixed",h=p[1]||"",l=this._unescape(p[2])):(u="prefix",l=p[1]||"")),"^^"===this._previousMarker)switch(u){case"prefixed":u="type";break;case"IRI":u="typeIRI";break;default:u=""}if(!u)return t||!/^'''|^"""/.test(r)&&/\n|\r/.test(r)?a(this):this._input=r;const m=y||p[0].length,b=i(u,l,h,s,m);this.previousToken=b,this._previousMarker=u,r=r.substr(m,r.length)}function i(t,i,a,o,s){const c=r?n-r.length:n,u={type:t,value:i,prefix:a,line:o,start:c,end:c+s};return e(null,u),u}function a(t){e(t._syntaxError(/^\S*/.exec(r)[0]))}}_unescape(e){let t=!1;const r=e.replace(h,((e,r,n,i)=>{if("string"==typeof r)return String.fromCharCode(Number.parseInt(r,16));if("string"==typeof n){let e=Number.parseInt(n,16);return e<=65535?String.fromCharCode(Number.parseInt(n,16)):String.fromCharCode(55296+((e-=65536)>>10),56320+(1023&e))}return i in p?p[i]:(t=!0,"")}));return t?null:r}_parseLiteral(e){if(e.length>=3){const t=e.match(/^(?:"""|"|'''|'|)/)[0],r=t.length;let n=Math.max(this._literalClosingPos,r);for(;(n=e.indexOf(t,n))>0;){let t=0;for(;"\\"===e[n-t-1];)t++;if(t%2==0){const t=e.substring(r,n),i=t.split(/\r\n|\r|\n/).length-1,a=n+r;if(1===r&&0!==i||3===r&&this._lineMode)break;return this._line+=i,{value:this._unescape(t),matchLength:a}}n++}this._literalClosingPos=e.length-r+1}return{value:"",matchLength:0}}_syntaxError(e){this._input=null;const t=new Error(`Unexpected "${e}" on line ${this._line}.`);return t.context={token:void 0,line:this._line,previousToken:this.previousToken},t}_readStartingBom(e){return e.startsWith("\ufeff")?e.substr(1):e}tokenize(e,t){if(this._line=1,"string"==typeof e){if(this._input=this._readStartingBom(e),"function"!=typeof t){const e=[];let t;if(this._tokenizeToEnd(((r,n)=>r?t=r:e.push(n)),!0),t)throw t;return e}u()((()=>this._tokenizeToEnd(t,!0)))}else this._pendingBuffer=null,"function"==typeof e.setEncoding&&e.setEncoding("utf8"),e.on("data",(e=>{null!==this._input&&0!==e.length&&(this._pendingBuffer&&(e=l.concat([this._pendingBuffer,e]),this._pendingBuffer=null),128&e[e.length-1]?this._pendingBuffer=e:(void 0===this._input?this._input=this._readStartingBom("string"==typeof e?e:e.toString()):this._input+=e,this._tokenizeToEnd(t,!1)))})),e.on("end",(()=>{"string"==typeof this._input&&this._tokenizeToEnd(t,!0)})),e.on("error",t)}}function b(e){return!!e&&"NamedNode"===e.termType}function v(e){return!!e&&"BlankNode"===e.termType}function _(e){return!!e&&"Literal"===e.termType}function w(e){return!!e&&"Variable"===e.termType}function T(e){return!!e&&"DefaultGraph"===e.termType}function S(e){return T(e.graph)}function O(e,t){return E({"":e.value||e},t)("")}function E(e,t){const r=Object.create(null);for(const t in e)n(t,e[t]);function n(e,n){if("string"==typeof n){const i=Object.create(null);r[e]=e=>i[e]||(i[e]=t.namedNode(n+e))}else if(!(e in r))throw new Error(`Unknown prefix: ${e}`);return r[e]}return t=t||j,n}const{rdf:x,xsd:A}=s;let R,I=0;const P=/^"(.*".*)(?="[^"]*$)/,D=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,N={namedNode:function(e){return new M(e)},blankNode:function(e){return new k(e||"n3-"+I++)},variable:function(e){return new F(e)},literal:function(e,t){if("string"==typeof t)return new L(`"${e}"@${t.toLowerCase()}`);let r=t?t.value:"";return""===r&&("boolean"==typeof e?r=A.boolean:"number"==typeof e&&(Number.isFinite(e)?r=Number.isInteger(e)?A.integer:A.double:(r=A.double,Number.isNaN(e)||(e=e>0?"INF":"-INF")))),""===r||r===A.string?new L(`"${e}"`):new L(`"${e}"^^${r}`)},defaultGraph:function(){return R},quad:H,triple:H},j=N;class C{constructor(e){this.id=e}get value(){return this.id}equals(e){return e instanceof C?this.id===e.id:!!e&&this.termType===e.termType&&this.value===e.value}hashCode(){return 0}toJSON(){return{termType:this.termType,value:this.value}}}class M extends C{get termType(){return"NamedNode"}}class L extends C{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const e=this.id;let t=e.lastIndexOf('"')+1;return t>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}}R=new B;class V extends C{constructor(e,t,r,n){super(""),this._subject=e,this._predicate=t,this._object=r,this._graph=n||R}get termType(){return"Quad"}get subject(){return this._subject}get predicate(){return this._predicate}get object(){return this._object}get graph(){return this._graph}toJSON(){return{termType:this.termType,subject:this._subject.toJSON(),predicate:this._predicate.toJSON(),object:this._object.toJSON(),graph:this._graph.toJSON()}}equals(e){return!!e&&this._subject.equals(e.subject)&&this._predicate.equals(e.predicate)&&this._object.equals(e.object)&&this._graph.equals(e.graph)}}function Q(e){return e.replace(P,((e,t)=>`"${t.replace(/"/g,'""')}`))}function $(e){return e.replace(P,((e,t)=>`"${t.replace(/""/g,'"')}`))}function H(e,t,r,n){return new V(e,t,r,n)}let G=0;class z{constructor(e){this._contextStack=[],this._graph=null,e=e||{},this._setBase(e.baseIRI),e.factory&&X(this,e.factory);const t="string"==typeof e.format?e.format.match(/\w*$/)[0].toLowerCase():"",r=/turtle/.test(t),n=/trig/.test(t),i=/triple/.test(t),a=/quad/.test(t),o=this._n3Mode=/n3/.test(t),s=i||a;(this._supportsNamedGraphs=!(r||o))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(r||n||i||o),this._supportsRDFStar=""===t||/star|\*$/.test(t),s&&(this._resolveRelativeIRI=e=>null),this._blankNodePrefix="string"!=typeof e.blankNodePrefix?"":e.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=e.lexer||new m({lineMode:s,n3:o}),this._explicitQuantifiers=!!e.explicitQuantifiers}static _resetBlankNodePrefix(){G=0}_setBase(e){if(e){const t=e.indexOf("#");t>=0&&(e=e.substr(0,t)),this._base=e,this._basePath=e.indexOf("/")<0?e:e.replace(/[^\/?]*(?:\?.*)?$/,""),e=e.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=e[0],this._baseScheme=e[1]}else this._base="",this._basePath=""}_saveContext(e,t,r,n,i){const a=this._n3Mode;this._contextStack.push({type:e,subject:r,predicate:n,object:i,graph:t,inverse:!!a&&this._inversePredicate,blankPrefix:a?this._prefixes._:"",quantified:a?this._quantified:null}),a&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.value}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(e,t){const r=this._contextStack.pop();if(!r||r.type!==e)return this._error(`Unexpected ${t.type}`,t);this._subject=r.subject,this._predicate=r.predicate,this._object=r.object,this._graph=r.graph,this._n3Mode&&(this._inversePredicate=r.inverse,this._prefixes._=r.blankPrefix,this._quantified=r.quantified)}_readInTopContext(e){switch(e.type){case"eof":return null!==this._graph?this._error("Unclosed graph",e):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(e)}}_readEntity(e,t){let r;switch(e.type){case"IRI":case"typeIRI":const t=this._resolveIRI(e.value);if(null===t)return this._error("Invalid IRI",e);r=this._namedNode(t);break;case"type":case"prefixed":const n=this._prefixes[e.prefix];if(void 0===n)return this._error(`Undefined prefix "${e.prefix}:"`,e);r=this._namedNode(n+e.value);break;case"blank":r=this._blankNode(this._prefixes[e.prefix]+e.value);break;case"var":r=this._variable(e.value.substr(1));break;default:return this._error(`Expected entity but got ${e.type}`,e)}return!t&&this._n3Mode&&r.id in this._quantified&&(r=this._quantified[r.id]),r}_readSubject(e){switch(this._predicate=null,e.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",e);case"}":return this._readPunctuation(e);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',e);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',e);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",e);if(0===e.prefix.length)return this._literalValue=e.value,this._completeSubjectLiteral;this._subject=this._literal(e.value,this._namedNode(e.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._subject=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(e){const t=e.type;switch(t){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[e.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${t}`,e):(this._subject=null,"]"===t?this._readBlankNodeTail(e):this._readPunctuation(e));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",e);case"[":if(this._n3Mode)return this._saveContext("blank",this._graph,this._subject,this._subject=this._blankNode(),null),this._readBlankNodeHead;case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",e);default:if(void 0===(this._predicate=this._readEntity(e)))return}return this._readObject}_readObject(e){switch(e.type){case"literal":if(0===e.prefix.length)return this._literalValue=e.value,this._readDataTypeOrLang;this._object=this._literal(e.value,this._namedNode(e.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._object=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(e){return"{"===e.type?this._readGraph(e):this._readPredicate(e)}_readGraph(e){return"{"!==e.type?this._error(`Expected graph but got ${e.type}`,e):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(e){return"]"===e.type?(this._subject=null,this._readBlankNodeTail(e)):(this._predicate=null,this._readPredicate(e))}_readBlankNodeTail(e){if("]"!==e.type)return this._readBlankNodePunctuation(e);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const t=null===this._predicate;return this._restoreContext("blank",e),null!==this._object?this._getContextEndReader():null!==this._predicate?this._readObject:t?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank}_readPredicateAfterBlank(e){switch(e.type){case".":case"}":return this._subject=null,this._readPunctuation(e);default:return this._readPredicate(e)}}_readListItem(e){let t=null,r=null,n=this._readListItem;const i=this._subject,a=this._contextStack,o=a[a.length-1];switch(e.type){case"[":this._saveContext("blank",this._graph,r=this._blankNode(),this.RDF_FIRST,this._subject=t=this._blankNode()),n=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,r=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext("list",e),0!==a.length&&"list"===a[a.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(n=this._readPredicate,this._subject===this.RDF_NIL)return n}else if(n=this._getContextEndReader(),this._object===this.RDF_NIL)return n;r=this.RDF_NIL;break;case"literal":0===e.prefix.length?(this._literalValue=e.value,n=this._readListItemDataTypeOrLang):(t=this._literal(e.value,this._namedNode(e.prefix)),n=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);default:if(void 0===(t=this._readEntity(e)))return}if(null===r&&(this._subject=r=this._blankNode()),null===i?null===o.predicate?o.subject=r:o.object=r:this._emit(i,this.RDF_REST,r,this._graph),null!==t){if(this._n3Mode&&("IRI"===e.type||"prefixed"===e.type))return this._saveContext("item",this._graph,r,this.RDF_FIRST,t),this._subject=t,this._predicate=null,this._getPathReader(this._readListItem);this._emit(r,this.RDF_FIRST,t,this._graph)}return n}_readDataTypeOrLang(e){return this._completeObjectLiteral(e,!1)}_readListItemDataTypeOrLang(e){return this._completeObjectLiteral(e,!0)}_completeLiteral(e){let t=this._literal(this._literalValue);switch(e.type){case"type":case"typeIRI":const r=this._readEntity(e);if(void 0===r)return;t=this._literal(this._literalValue,r),e=null;break;case"langcode":t=this._literal(this._literalValue,e.value),e=null}return{token:e,literal:t}}_completeSubjectLiteral(e){return this._subject=this._completeLiteral(e).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(e,t){const r=this._completeLiteral(e);if(r)return this._object=r.literal,t&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===r.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(r.token))}_readFormulaTail(e){return"}"!==e.type?this._readPunctuation(e):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext("formula",e),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(e){let t,r=this._graph;const n=this._subject,i=this._inversePredicate;switch(e.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",e);if(this._n3Mode)return this._readFormulaTail(e);this._graph=null;case".":this._subject=null,t=this._contextStack.length?this._readSubject:this._readInTopContext,i&&(this._inversePredicate=!1);break;case";":t=this._readPredicate;break;case",":t=this._readObject;break;case"{|":if(!this._supportsRDFStar)return this._error("Unexpected RDF* syntax",e);const a=this._predicate,o=this._object;this._subject=this._quad(n,a,o,this.DEFAULTGRAPH),t=this._readPredicate;break;case"|}":if("Quad"!==this._subject.termType)return this._error("Unexpected asserted triple closing",e);this._subject=null,t=this._readPunctuation;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(r=this._readEntity(e))){t=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,e)}if(null!==n){const e=this._predicate,t=this._object;i?this._emit(t,e,n,r):this._emit(n,e,t,r)}return t}_readBlankNodePunctuation(e){let t;switch(e.type){case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,e)}return this._emit(this._subject,this._predicate,this._object,this._graph),t}_readQuadPunctuation(e){return"."!==e.type?this._error("Expected dot to follow quad",e):this._readInTopContext}_readPrefix(e){return"prefix"!==e.type?this._error("Expected prefix to follow @prefix",e):(this._prefix=e.value,this._readPrefixIRI)}_readPrefixIRI(e){if("IRI"!==e.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,e);const t=this._readEntity(e);return this._prefixes[this._prefix]=t.value,this._prefixCallback(this._prefix,t),this._readDeclarationPunctuation}_readBaseIRI(e){const t="IRI"===e.type&&this._resolveIRI(e.value);return t?(this._setBase(t),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",e)}_readNamedGraphLabel(e){switch(e.type){case"IRI":case"blank":case"prefixed":return this._readSubject(e),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",e)}}_readNamedGraphBlankLabel(e){return"]"!==e.type?this._error("Invalid graph label",e):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(e){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(e)):"."!==e.type?this._error("Expected declaration to end with a dot",e):this._readInTopContext}_readQuantifierList(e){let t;switch(e.type){case"IRI":case"prefixed":if(void 0!==(t=this._readEntity(e,!0)))break;default:return this._error(`Unexpected ${e.type}`,e)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,t,this.QUANTIFIERS_GRAPH)):this._quantified[t.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(e){return","===e.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(e))}_getPathReader(e){return this._afterPath=e,this._readPath}_readPath(e){switch(e.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const t=this._contextStack,r=t.length&&t[t.length-1];if(r&&"item"===r.type){const t=this._subject;this._restoreContext("item",e),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(e)}}_readForwardPath(e){let t,r;const n=this._blankNode();if(void 0!==(r=this._readEntity(e)))return null===this._predicate?(t=this._subject,this._subject=n):(t=this._object,this._object=n),this._emit(t,r,n,this._graph),this._readPath}_readBackwardPath(e){const t=this._blankNode();let r,n;if(void 0!==(r=this._readEntity(e)))return null===this._predicate?(n=this._subject,this._subject=t):(n=this._object,this._object=t),this._emit(t,r,n,this._graph),this._readPath}_readRDFStarTailOrGraph(e){return">>"!==e.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(e))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,e):this._readRDFStarTail(e)}_readRDFStarTail(e){if(">>"!==e.type)return this._error(`Expected >> but got ${e.type}`,e);const t=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext("<<",e),null===this._subject?(this._subject=t,this._readPredicate):(this._object=t,this._getContextEndReader())}_getContextEndReader(){const e=this._contextStack;if(!e.length)return this._readPunctuation;switch(e[e.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(e,t,r,n){this._callback(null,this._quad(e,t,r,n||this.DEFAULTGRAPH))}_error(e,t){const r=new Error(`${e} on line ${t.line}.`);r.context={token:t,line:t.line,previousToken:this._lexer.previousToken},this._callback(r),this._callback=K}_resolveIRI(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)?e:this._resolveRelativeIRI(e)}_resolveRelativeIRI(e){if(!e.length)return this._base;switch(e[0]){case"#":return this._base+e;case"?":return this._base.replace(/(?:\?.*)?$/,e);case"/":return("/"===e[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(e);default:return/^[^/:]*:/.test(e)?null:this._removeDotSegments(this._basePath+e)}}_removeDotSegments(e){if(!/(^|\/)\.\.?($|[/#?])/.test(e))return e;const t=e.length;let r="",n=-1,i=-1,a=0,o="/";for(;n=i&&(r=r.substr(0,a)),"/"!==o)return`${r}/${e.substr(n+1)}`;a=n+1}}}o=e[++n]}return r+e.substring(a)}parse(e,t,r){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${G++}_`,this._prefixCallback=r||K,this._inversePredicate=!1,this._quantified=Object.create(null),!t){const t=[];let r;if(this._callback=(e,n)=>{e?r=e:n&&t.push(n)},this._lexer.tokenize(e).every((e=>this._readCallback=this._readCallback(e))),r)throw r;return t}this._callback=t,this._lexer.tokenize(e,((e,t)=>{null!==e?(this._callback(e),this._callback=K):this._readCallback&&(this._readCallback=this._readCallback(t))}))}}function K(){}function X(e,t){const r=t.namedNode;e._namedNode=r,e._blankNode=t.blankNode,e._literal=t.literal,e._variable=t.variable,e._quad=t.quad,e.DEFAULTGRAPH=t.defaultGraph(),e.RDF_FIRST=r(s.rdf.first),e.RDF_REST=r(s.rdf.rest),e.RDF_NIL=r(s.rdf.nil),e.N3_FORALL=r(s.r.forAll),e.N3_FORSOME=r(s.r.forSome),e.ABBREVIATIONS={a:r(s.rdf.type),"=":r(s.owl.sameAs),">":r(s.log.implies)},e.QUANTIFIERS_GRAPH=r("urn:n3:quantifiers")}X(z.prototype,j);const W=j.defaultGraph(),{rdf:J,xsd:Y}=s,Z=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,ee=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,te={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class re extends C{equals(e){return e===this}}class ne{constructor(e,t){if(this._prefixRegex=/$0^/,e&&"function"!=typeof e.write&&(t=e,e=null),t=t||{},this._lists=t.lists,e)this._outputStream=e,this._endStream=void 0===t.end||!!t.end;else{let e="";this._outputStream={write(t,r,n){e+=t,n&&n()},end:t=>{t&&t(null,e)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(t.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=W,this._prefixIRIs=Object.create(null),t.prefixes&&this.addPrefixes(t.prefixes),t.baseIRI&&(this._baseMatcher=new RegExp(`^${ae(t.baseIRI)}${t.baseIRI.endsWith("/")?"":"[#?]"}`),this._baseLength=t.baseIRI.length))}get _inDefaultGraph(){return W.equals(this._graph)}_write(e,t){this._outputStream.write(e,"utf8",t)}_writeQuad(e,t,r,n,i){try{n.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(W.equals(n)?"":`${this._encodeIriOrBlank(n)} {\n`)),this._graph=n,this._subject=null),e.equals(this._subject)?t.equals(this._predicate)?this._write(`, ${this._encodeObject(r)}`,i):this._write(`;\n ${this._encodePredicate(this._predicate=t)} ${this._encodeObject(r)}`,i):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=e)} ${this._encodePredicate(this._predicate=t)} ${this._encodeObject(r)}`,i)}catch(e){i&&i(e)}}_writeQuadLine(e,t,r,n,i){delete this._prefixMatch,this._write(this.quadToString(e,t,r,n),i)}quadToString(e,t,r,n){return`${this._encodeSubject(e)} ${this._encodeIriOrBlank(t)} ${this._encodeObject(r)}${n&&n.value?` ${this._encodeIriOrBlank(n)} .\n`:" .\n"}`}quadsToString(e){return e.map((e=>this.quadToString(e.subject,e.predicate,e.object,e.graph))).join("")}_encodeSubject(e){return"Quad"===e.termType?this._encodeQuad(e):this._encodeIriOrBlank(e)}_encodeIriOrBlank(e){if("NamedNode"!==e.termType)return this._lists&&e.value in this._lists&&(e=this.list(this._lists[e.value])),"id"in e?e.id:`_:${e.value}`;let t=e.value;this._baseMatcher&&this._baseMatcher.test(t)&&(t=t.substr(this._baseLength)),Z.test(t)&&(t=t.replace(ee,ie));const r=this._prefixRegex.exec(t);return r?r[1]?this._prefixIRIs[r[1]]+r[2]:t:`<${t}>`}_encodeLiteral(e){let t=e.value;if(Z.test(t)&&(t=t.replace(ee,ie)),e.language)return`"${t}"@${e.language}`;if(this._lineMode){if(e.datatype.value===Y.string)return`"${t}"`}else switch(e.datatype.value){case Y.string:return`"${t}"`;case Y.boolean:if("true"===t||"false"===t)return t;break;case Y.integer:if(/^[+-]?\d+$/.test(t))return t;break;case Y.decimal:if(/^[+-]?\d*\.\d+$/.test(t))return t;break;case Y.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(t))return t}return`"${t}"^^${this._encodeIriOrBlank(e.datatype)}`}_encodePredicate(e){return e.value===J.type?"a":this._encodeIriOrBlank(e)}_encodeObject(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}_encodeQuad({subject:e,predicate:t,object:r,graph:n}){return`<<${this._encodeSubject(e)} ${this._encodePredicate(t)} ${this._encodeObject(r)}${T(n)?"":` ${this._encodeIriOrBlank(n)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(e,t,r,n,i){void 0===r?this._writeQuad(e.subject,e.predicate,e.object,e.graph,t):"function"==typeof n?this._writeQuad(e,t,r,W,n):this._writeQuad(e,t,r,n||W,i)}addQuads(e){for(let t=0;t.\n`)}if(r){let e="",t="";for(const r in this._prefixIRIs)e+=e?`|${r}`:r,t+=(t?"|":"")+this._prefixIRIs[r];e=ae(e),this._prefixRegex=new RegExp(`^(?:${t})[^/]*$|^(${e})([_a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(r?"\n":"",t)}blank(e,t){let r,n,i=e;switch(void 0===e?i=[]:e.termType?i=[{predicate:e,object:t}]:"length"in e||(i=[e]),n=i.length){case 0:return new re("[]");case 1:if(r=i[0],!(r.object instanceof re))return new re(`[ ${this._encodePredicate(r.predicate)} ${this._encodeObject(r.object)} ]`);default:let t="[";for(let a=0;a{t=null,e(r,n)});if(this._endStream)try{return this._outputStream.end(t)}catch(e){}t&&t()}}function ie(e){let t=te[e];return void 0===t&&(1===e.length?(t=e.charCodeAt(0).toString(16),t="\\u0000".substr(0,6-t.length)+t):(t=(1024*(e.charCodeAt(0)-55296)+e.charCodeAt(1)+9216).toString(16),t="\\U00000000".substr(0,10-t.length)+t)),t}function ae(e){return e.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&")}var oe=r(51887);class se{constructor(e,t){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,t||!e||e[0]||(t=e,e=null),t=t||{},this._factory=t.factory||j,e&&this.addQuads(e)}get size(){let e=this._size;if(null!==e)return e;e=0;const t=this._graphs;let r,n;for(const i in t)for(const a in r=t[i].subjects)for(const t in n=r[a])e+=Object.keys(n[t]).length;return this._size=e}_addToIndex(e,t,r,n){const i=e[t]||(e[t]={}),a=i[r]||(i[r]={}),o=n in a;return o||(a[n]=null),!o}_removeFromIndex(e,t,r,n){const i=e[t],a=i[r];delete a[n];for(const e in a)return;delete i[r];for(const e in i)return;delete e[t]}*_findInIndex(e,t,r,n,i,a,o,s){let c,u,l;const d=this._entities,h=U(s,this._factory),p={subject:null,predicate:null,object:null};t&&((c=e,e={})[t]=c[t]);for(const t in e)if(u=e[t]){p[i]=U(d[t],this._factory),r&&((c=u,u={})[r]=c[r]);for(const e in u)if(l=u[e]){p[a]=U(d[e],this._factory);const t=n?n in l?[n]:[]:Object.keys(l);for(let e=0;e{r in t||(t[r]=!0,e(U(this._entities[r],this._factory)))}}add(e){return this.addQuad(e),this}addQuad(e,t,r,n){t||(n=e.graph,r=e.object,t=e.predicate,e=e.subject),e=q(e),t=q(t),r=q(r),n=q(n);let i=this._graphs[n];i||(i=this._graphs[n]={subjects:{},predicates:{},objects:{}},Object.freeze(i));const a=this._ids,o=this._entities;e=a[e]||(a[o[++this._id]=e]=this._id),t=a[t]||(a[o[++this._id]=t]=this._id),r=a[r]||(a[o[++this._id]=r]=this._id);const s=this._addToIndex(i.subjects,e,t,r);return this._addToIndex(i.predicates,t,r,e),this._addToIndex(i.objects,r,e,t),this._size=null,s}addQuads(e){for(let t=0;t{this.addQuad(e)})),e}removeQuad(e,t,r,n){t||(n=e.graph,r=e.object,t=e.predicate,e=e.subject),e=q(e),t=q(t),r=q(r),n=q(n);const i=this._ids,a=this._graphs;let o,s,c;if(!((e=i[e])&&(t=i[t])&&(r=i[r])&&(o=a[n])&&(s=o.subjects[e])&&(c=s[t])&&r in c))return!1;for(e in this._removeFromIndex(o.subjects,e,t,r),this._removeFromIndex(o.predicates,t,r,e),this._removeFromIndex(o.objects,r,e,t),null!==this._size&&this._size--,o.subjects)return!0;return delete a[n],!0}removeQuads(e){for(let t=0;t{this.removeQuad(e)})),e}removeMatches(e,t,r,n){const i=new oe.Readable({objectMode:!0});return i._read=()=>{for(const a of this.readQuads(e,t,r,n))i.push(a);i.push(null)},this.remove(i)}deleteGraph(e){return this.removeMatches(null,null,null,e)}getQuads(e,t,r,n){return[...this.readQuads(e,t,r,n)]}*readQuads(e,t,r,n){e=e&&q(e),t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._getGraphs(n),a=this._ids;let o,s,c,u;if(!(ce(e)&&!(s=a[e])||ce(t)&&!(c=a[t])||ce(r)&&!(u=a[r])))for(const e in i)(o=i[e])&&(s?u?yield*this._findInIndex(o.objects,u,s,c,"object","subject","predicate",e):yield*this._findInIndex(o.subjects,s,c,null,"subject","predicate","object",e):c?yield*this._findInIndex(o.predicates,c,u,null,"predicate","object","subject",e):u?yield*this._findInIndex(o.objects,u,null,null,"object","subject","predicate",e):yield*this._findInIndex(o.subjects,null,null,null,"subject","predicate","object",e))}match(e,t,r,n){return new ue(this,e,t,r,n)}countQuads(e,t,r,n){e=e&&q(e),t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._getGraphs(n),a=this._ids;let o,s,c,u,l=0;if(ce(e)&&!(s=a[e])||ce(t)&&!(c=a[t])||ce(r)&&!(u=a[r]))return 0;for(const n in i)(o=i[n])&&(l+=e?r?this._countInIndex(o.objects,u,s,c):this._countInIndex(o.subjects,s,c,u):t?this._countInIndex(o.predicates,c,u,s):this._countInIndex(o.objects,u,s,c));return l}forEach(e,t,r,n,i){this.some((t=>(e(t),!1)),t,r,n,i)}every(e,t,r,n,i){let a=!1;const o=!this.some((t=>(a=!0,!e(t))),t,r,n,i);return a&&o}some(e,t,r,n,i){for(const a of this.readQuads(t,r,n,i))if(e(a))return!0;return!1}getSubjects(e,t,r){const n=[];return this.forSubjects((e=>{n.push(e)}),e,t,r),n}forSubjects(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.predicates,s,c,e):this._loopByKey1(o.subjects,s,e):c?this._loopByKey0(o.objects,c,e):this._loop(o.subjects,e))}getPredicates(e,t,r){const n=[];return this.forPredicates((e=>{n.push(e)}),e,t,r),n}forPredicates(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.objects,c,s,e):this._loopByKey0(o.subjects,s,e):c?this._loopByKey1(o.predicates,c,e):this._loop(o.predicates,e))}getObjects(e,t,r){const n=[];return this.forObjects((e=>{n.push(e)}),e,t,r),n}forObjects(e,t,r,n){t=t&&q(t),r=r&&q(r),n=n&&q(n);const i=this._ids,a=this._getGraphs(n);let o,s,c;if(e=this._uniqueEntities(e),!(ce(t)&&!(s=i[t])||ce(r)&&!(c=i[r])))for(n in a)(o=a[n])&&(s?c?this._loopBy2Keys(o.subjects,s,c,e):this._loopByKey1(o.objects,s,e):c?this._loopByKey0(o.predicates,c,e):this._loop(o.objects,e))}getGraphs(e,t,r){const n=[];return this.forGraphs((e=>{n.push(e)}),e,t,r),n}forGraphs(e,t,r,n){for(const i in this._graphs)this.some((t=>(e(t.graph),!0)),t,r,n,i)}createBlankNode(e){let t,r;if(e)for(t=e=`_:${e}`,r=1;this._ids[t];)t=e+r++;else do{t="_:b"+this._blankNodeIndex++}while(this._ids[t]);return this._ids[t]=++this._id,this._entities[this._id]=t,this._factory.blankNode(t.substr(2))}extractLists({remove:e=!1,ignoreErrors:t=!1}={}){const r={},n=t?()=>!0:(e,t)=>{throw new Error(`${e.value} ${t}`)},i=this.getQuads(null,s.rdf.rest,s.rdf.nil,null),a=e?[...i]:[];return i.forEach((t=>{const i=[];let o,c,u=!1;const l=t.graph;let d=t.subject;for(;d&&!u;){const e=this.getQuads(null,null,d,null),t=this.getQuads(d,null,null,null);let r,h=null,p=null,f=null;for(let i=0;i{switch(e){case"data":t=n;break;case"end":r=n}}},((e,t)=>{e&&this.emit("error",e)||t&&this.push(t)}),((e,t)=>{this.emit("prefix",e,t)})),this._transform=(e,r,n)=>{t(e),n()},this._flush=e=>{r(),e()}}import(e){return e.on("data",(e=>{this.write(e)})),e.on("end",(()=>{this.end()})),e.on("error",(e=>{this.emit("error",e)})),this}}class de extends oe.Transform{constructor(e){super({encoding:"utf8",writableObjectMode:!0});const t=this._writer=new ne({write:(e,t,r)=>{this.push(e),r&&r()},end:e=>{this.push(null),e&&e()}},e);this._transform=(e,r,n)=>{t.addQuad(e,n)},this._flush=e=>{t.end(e)}}import(e){return e.on("data",(e=>{this.write(e)})),e.on("end",(()=>{this.end()})),e.on("error",(e=>{this.emit("error",e)})),e.on("prefix",((e,t)=>{this._writer.addPrefix(e,t)})),this}}const he={Lexer:m,Parser:z,Writer:ne,Store:se,StreamParser:le,StreamWriter:de,Util:n,DataFactory:j,Term:C,NamedNode:M,Literal:L,BlankNode:k,Variable:F,DefaultGraph:B,Quad:V,Triple:V,termFromId:U,termToId:q}},34406:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function o(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"==typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var s,c=[],u=!1,l=-1;function d(){u&&s&&(u=!1,s.length?c=s.concat(c):l=-1,c.length&&h())}function h(){if(!u){var e=o(d);u=!0;for(var t=c.length;t;){for(s=c,c=[];++l1)for(var r=1;r{!function(){var t;t="object"==typeof window&&window?window:r.g,e.exports?e.exports=t.Promise?t.Promise:o:t.Promise||(t.Promise=o);var n=t.setImmediate||function(e){setTimeout(e,1)};function i(e,t){return function(){e.apply(t,arguments)}}var a=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)};function o(e){if("object"!=typeof this)throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=null,this._value=null,this._deferreds=[],h(e,i(c,this),i(u,this))}function s(e){var t=this;null!==this._state?n((function(){var r=t._state?e.onFulfilled:e.onRejected;if(null!==r){var n;try{n=r(t._value)}catch(t){return void e.reject(t)}e.resolve(n)}else(t._state?e.resolve:e.reject)(t._value)})):this._deferreds.push(e)}function c(e){try{if(e===this)throw new TypeError("A promise cannot be resolved with itself.");if(e&&("object"==typeof e||"function"==typeof e)){var t=e.then;if("function"==typeof t)return void h(i(t,e),i(c,this),i(u,this))}this._state=!0,this._value=e,l.call(this)}catch(e){u.call(this,e)}}function u(e){this._state=!1,this._value=e,l.call(this)}function l(){for(var e=0,t=this._deferreds.length;e{let n;e.exports="function"==typeof queueMicrotask?queueMicrotask.bind("undefined"!=typeof window?window:r.g):e=>(n||(n=Promise.resolve())).then(e).catch((e=>setTimeout((()=>{throw e}),0)))},91194:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(98279),t),i(r(30370),t),i(r(31261),t),i(r(38990),t),i(r(74938),t),i(r(95414),t),i(r(93910),t)},98279:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNode=void 0,t.BlankNode=class{constructor(e){this.termType="BlankNode",this.value=e}equals(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}},30370:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataFactory=void 0;const n=r(98279),i=r(31261),a=r(38990),o=r(74938),s=r(95414),c=r(93910);let u=0;t.DataFactory=class{constructor(e){this.blankNodeCounter=0,e=e||{},this.blankNodePrefix=e.blankNodePrefix||`df_${u++}_`}namedNode(e){return new o.NamedNode(e)}blankNode(e){return new n.BlankNode(e||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(e,t){return new a.Literal(e,t)}variable(e){return new c.Variable(e)}defaultGraph(){return i.DefaultGraph.INSTANCE}quad(e,t,r,n){return new s.Quad(e,t,r,n||this.defaultGraph())}fromTerm(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(a.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}fromQuad(e){return this.fromTerm(e)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},31261:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultGraph=void 0;class r{constructor(){this.termType="DefaultGraph",this.value=""}equals(e){return!!e&&"DefaultGraph"===e.termType}}t.DefaultGraph=r,r.INSTANCE=new r},38990:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Literal=void 0;const n=r(74938);class i{constructor(e,t){this.termType="Literal",this.value=e,"string"==typeof t?(this.language=t,this.datatype=i.RDF_LANGUAGE_STRING):t?(this.language="",this.datatype=t):(this.language="",this.datatype=i.XSD_STRING)}equals(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&this.datatype.equals(e.datatype)}}t.Literal=i,i.RDF_LANGUAGE_STRING=new n.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),i.XSD_STRING=new n.NamedNode("http://www.w3.org/2001/XMLSchema#string")},74938:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NamedNode=void 0,t.NamedNode=class{constructor(e){this.termType="NamedNode",this.value=e}equals(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}},95414:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Quad=void 0,t.Quad=class{constructor(e,t,r,n){this.termType="Quad",this.value="",this.subject=e,this.predicate=t,this.object=r,this.graph=n}equals(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}},93910:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0,t.Variable=class{constructor(e){this.termType="Variable",this.value=e}equals(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}},16550:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90541),t)},90541:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTermGrounded=t.termToSignature=t.quadToSignature=t.sha1hex=t.hashTerm=t.hashTerms=t.getGraphBlankNodes=t.uniqGraph=t.deindexGraph=t.indexGraph=t.getQuadsWithoutBlankNodes=t.getQuadsWithBlankNodes=t.hasValue=t.hashValues=t.getBijectionInner=t.getBijection=t.isomorphic=void 0;const n=r(34485),i=r(6053),a=r(98086);function o(e,t){const r=p(h(e)),n=p(h(t));if(Object.keys(r).length!==Object.keys(n).length)return null;for(const e in r)if(r[e]!==n[e])return null;return s(y(d(e)),y(d(t)),g(e),g(t))}function s(e,t,r,n,a,o){a||(a={}),o||(o={});const[d,h]=m(e,r,a),[p,f]=m(t,n,o);if(Object.keys(d).length!==Object.keys(p).length)return null;for(const e in d)if(!l(p,d[e]))return null;let y={};for(const e of r){const t=i.termToString(e),r=h[t];for(const e in f)if(f[e]===r){y[t]=e,delete f[e];break}}if(!c(Object.keys(y).sort(),r.map(i.termToString).sort())||!c(u(y).sort(),n.map(i.termToString).sort())){y=null;for(const a of r){const o=i.termToString(a);if(!d[o])for(const a of n){const c=i.termToString(a);if(!p[c]&&h[o]===f[c]){const i=v(o);y=s(e,t,r,n,Object.assign(Object.assign({},d),{[o]:i}),Object.assign(Object.assign({},p),{[c]:i}))}}}}return y}function c(e,t){if(e.length!==t.length)return!1;for(let r=e.length;r--;)if(e[r]!==t[r])return!1;return!0}function u(e){const t=[];for(const r in e)t.push(e[r]);return t}function l(e,t){for(const r in e)if(e[r]===t)return!0;return!1}function d(e){return e.filter((e=>a.someTerms(e,(e=>"BlankNode"===e.termType||"Quad"===e.termType&&a.getTermsNested(e).some((e=>"BlankNode"===e.termType))))))}function h(e){return e.filter((e=>a.everyTerms(e,(e=>"BlankNode"!==e.termType&&!("Quad"===e.termType&&a.getTermsNested(e).some((e=>"BlankNode"===e.termType)))))))}function p(e){const t={};for(const r of e)t[JSON.stringify(i.quadToStringQuad(r))]=!0;return t}function f(e){return Object.keys(e).map((e=>i.stringQuadToQuad(JSON.parse(e))))}function y(e){return f(p(e))}function g(e){return a.uniqTerms(e.map((e=>a.getBlankNodes(a.getTermsNested(e)))).reduce(((e,t)=>e.concat(t)),[]))}function m(e,t,r){const n=Object.assign({},r),a={};let o=!0;for(;o;){const r=Object.keys(n).length;for(const r of t){const t=i.termToString(r);if(!n[t]){const[i,o]=b(r,e,n);i&&(n[t]=o),a[t]=o}}const s={};for(const e in a){const t=a[e];void 0===s[t]?s[t]=e:s[t]=!1}for(const e in s){const t=s[e];t&&(n[t]=e)}o=r!==Object.keys(n).length}return[n,a]}function b(e,t,r){const n=[];let i=!0;for(const o of t){const t=a.getTermsNested(o);if(t.some((t=>t.equals(e)))){n.push(_(o,r,e));for(const n of t)T(n,r)||n.equals(e)||(i=!1)}}return[i,v(n.sort().join(""))]}function v(e){return n.sha1().update(e).digest("hex")}function _(e,t,r){return a.getTerms(e).map((e=>w(e,t,r))).join("|")}function w(e,t,r){return e.equals(r)?"@self":"BlankNode"===e.termType?t[i.termToString(e)]||"@blank":"Quad"===e.termType?`<${_(e,t,r)}>`:i.termToString(e)}function T(e,t){return"BlankNode"!==e.termType&&!("Quad"===e.termType&&a.getTermsNested(e).some((e=>!T(e,t))))||!!t[i.termToString(e)]}t.isomorphic=function(e,t){return!!o(e,t)},t.getBijection=o,t.getBijectionInner=s,t.hashValues=u,t.hasValue=l,t.getQuadsWithBlankNodes=d,t.getQuadsWithoutBlankNodes=h,t.indexGraph=p,t.deindexGraph=f,t.uniqGraph=y,t.getGraphBlankNodes=g,t.hashTerms=m,t.hashTerm=b,t.sha1hex=v,t.quadToSignature=_,t.termToSignature=w,t.isTermGrounded=T},92126:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),t.getSupportedJavaScriptPrimitives=t.getSupportedRdfDatatypes=t.getTermRaw=t.toRdf=t.fromRdf=void 0;const a=r(91194),o=r(26190),s=r(72491);i(r(26190),t),i(r(51017),t),i(r(72491),t);const c=new a.DataFactory,u=new s.Translator;function l(e,t){return u.fromRdf(e,t)}u.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map((e=>c.namedNode(e))),["string"]),u.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map((e=>c.namedNode(e))),["boolean"]),u.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map((e=>c.namedNode(e))),["number"]),u.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map((e=>c.namedNode(e))),["number"]),u.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map((e=>c.namedNode(e))),["object"]),t.fromRdf=l,t.toRdf=function(e,t){return t&&"namedNode"in t&&(t={dataFactory:t}),(t=t||{})&&!t.dataFactory&&(t.dataFactory=c),u.toRdf(e,t)},t.getTermRaw=function(e,t){return"Literal"===e.termType?l(e,t):e.value},t.getSupportedRdfDatatypes=function(){return u.getSupportedRdfDatatypes()},t.getSupportedJavaScriptPrimitives=function(){return u.getSupportedJavaScriptPrimitives()}},51017:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},72491:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Translator=void 0,t.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(e){throw new Error(`Invalid RDF ${e.datatype.value} value: '${e.value}'`)}registerHandler(e,t,r){for(const r of t)this.supportedRdfDatatypes.push(r),this.fromRdfHandlers[r.value]=e;for(const t of r){let r=this.toRdfHandlers[t];r||(this.toRdfHandlers[t]=r=[]),r.push(e)}}fromRdf(e,t){const r=this.fromRdfHandlers[e.datatype.value];return r?r.fromRdf(e,t):e.value}toRdf(e,t){const r=this.toRdfHandlers[typeof e];if(r)for(const n of r){const r=n.toRdf(e,t);if(r)return r}throw new Error(`Invalid JavaScript value: '${e}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},90641:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerBoolean=void 0;const n=r(72491);class i{fromRdf(e,t){switch(e.value){case"true":case"1":return!0;case"false":case"0":return!1}return t&&n.Translator.incorrectRdfDataType(e),!1}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(e?"true":"false",t||r.namedNode(i.TYPE))}}t.TypeHandlerBoolean=i,i.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},51497:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerDate=void 0;const n=r(72491);class i{fromRdf(e,t){switch(t&&!e.value.match(i.VALIDATORS[e.datatype.value.substr(33,e.datatype.value.length)])&&n.Translator.incorrectRdfDataType(e),e.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(e.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const t=e.value.split("-");return new Date(0,parseInt(t[0],10)-1,parseInt(t[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(e.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(e.value+"-01");default:return new Date(e.value)}}toRdf(e,{datatype:t,dataFactory:r}){if(t=t||r.namedNode(i.TYPES[0]),!(e instanceof Date))return null;const n=e;let a;switch(t.value){case"http://www.w3.org/2001/XMLSchema#gDay":a=String(n.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":a=n.getUTCMonth()+1+"-"+n.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":a=String(n.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":a=n.getUTCFullYear()+"-"+(n.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":a=n.toISOString().replace(/T.*$/,"");break;default:a=n.toISOString()}return r.literal(a,t)}}t.TypeHandlerDate=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],i.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},23382:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberDouble=void 0;const n=r(72491);class i{fromRdf(e,t){const r=parseFloat(e.value);return t&&isNaN(r)&&n.Translator.incorrectRdfDataType(e),r}toRdf(e,{datatype:t,dataFactory:r}){return t=t||r.namedNode(i.TYPES[0]),isNaN(e)?r.literal("NaN",t):isFinite(e)?e%1==0?null:r.literal(e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),t):r.literal(e>0?"INF":"-INF",t)}}t.TypeHandlerNumberDouble=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},19410:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberInteger=void 0;const n=r(72491);class i{fromRdf(e,t){const r=parseInt(e.value,10);return t&&(isNaN(r)||e.value.indexOf(".")>=0)&&n.Translator.incorrectRdfDataType(e),r}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(String(e),t||(e<=i.MAX_INT&&e>=i.MIN_INT?r.namedNode(i.TYPES[0]):r.namedNode(i.TYPES[1])))}}t.TypeHandlerNumberInteger=i,i.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],i.MAX_INT=2147483647,i.MIN_INT=-2147483648},14220:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerString=void 0;class r{fromRdf(e){return e.value}toRdf(e,{datatype:t,dataFactory:r}){return r.literal(e,t)}}t.TypeHandlerString=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},26190:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(90641),t),i(r(51497),t),i(r(23382),t),i(r(19410),t),i(r(14220),t)},92608:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.storeStream=void 0;const n=r(35489);t.storeStream=function(e){const t=n.RdfStore.createDefault();return new Promise(((r,n)=>t.import(e).on("error",n).once("end",(()=>r(t)))))}},35489:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(85632),t),i(r(28428),t),i(r(98122),t),i(r(39917),t),i(r(82825),t),i(r(86955),t),i(r(75120),t),i(r(90387),t),i(r(27164),t),i(r(74322),t),i(r(42407),t),i(r(49028),t),i(r(41609),t),i(r(52787),t),i(r(52153),t),i(r(22204),t),i(r(98867),t),i(r(30218),t),i(r(67781),t),i(r(54194),t)},98867:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},30218:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arePatternsQuoted=t.quadHasVariables=t.quadToPattern=t.encodeOptionalTerms=t.orderQuadComponents=t.getComponentOrderScore=t.getBestIndex=t.QUAD_TERM_NAMES_INVERSE=void 0;const n=r(98086);function i(e,t){return e.map(((r,n)=>t.includes(r)?e.length-n:0)).reduce(((e,t)=>e+t),0)}function a(e){for(const t of n.QUAD_TERM_NAMES){const r=e[t];if("Variable"===r.termType||"Quad"===r.termType&&a(r))return!0}return!1}t.QUAD_TERM_NAMES_INVERSE=Object.fromEntries(n.QUAD_TERM_NAMES.map(((e,t)=>[e,t]))),t.getBestIndex=function(e,t){if(1===e.length||t.every((e=>void 0!==e)))return 0;const r=[];for(let e=0;e({score:i(e,r),index:t}))).sort(((e,t)=>t.score-e.score))[0].index},t.getComponentOrderScore=i,t.orderQuadComponents=function(e,r){return e.map((e=>{const n=t.QUAD_TERM_NAMES_INVERSE[e];return r[n]}))},t.encodeOptionalTerms=function(e,t){const r=e.map((e=>{if(e){if("Quad"===e.termType&&a(e))return;const r=t.encodeOptional(e);return void 0===r?"none":r}return e}));if(!r.includes("none"))return r},t.quadToPattern=function(e,t,r,n,i){let a=!1;return[[e||void 0,t||void 0,r||void 0,n||void 0].map((e=>{if(e){if("Variable"===e.termType)return;if("Quad"===e.termType)return i?e:void(a=!0)}return e})),a]},t.quadHasVariables=a,t.arePatternsQuoted=function(e){return e.map((e=>"Quad"===(null==e?void 0:e.termType)&&a(e)))}},67781:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},54194:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStore=void 0;const n=r(89227),i=r(91194),a=r(98086),o=r(85632),s=r(82825),c=r(75120),u=r(49028),l=r(30218);class d{constructor(e){this.features={quotedTripleFiltering:!0},this._size=0,this.options=e,this.dataFactory=e.dataFactory,this.dictionary=e.dictionary,this.indexesWrapped=d.constructIndexesWrapped(e),this.indexesWrappedComponentOrders=this.indexesWrapped.map((e=>e.componentOrder))}static createDefault(){return new d({indexCombinations:d.DEFAULT_INDEX_COMBINATIONS,indexConstructor:e=>new u.RdfStoreIndexNestedMapQuoted(e),dictionary:new c.TermDictionaryQuotedIndexed(new s.TermDictionaryNumberRecordFullTerms),dataFactory:new i.DataFactory})}static constructIndexesWrapped(e){const t=[];if(0===e.indexCombinations.length)throw new Error("At least one index combination is required");for(const r of e.indexCombinations){if(!d.isCombinationValid(r))throw new Error(`Invalid index combination: ${r}`);t.push({index:e.indexConstructor(e),componentOrder:r,componentOrderInverse:Object.fromEntries(r.map(((e,t)=>[e,t])))})}return t}static isCombinationValid(e){for(const t of a.QUAD_TERM_NAMES)if(!e.includes(t))return!1;return 4===e.length}get size(){return this._size}addQuad(e){const t=[this.dictionary.encode(e.subject),this.dictionary.encode(e.predicate),this.dictionary.encode(e.object),this.dictionary.encode(e.graph)];let r=!1;for(const e of this.indexesWrapped)r=e.index.set((0,l.orderQuadComponents)(e.componentOrder,t),!0);return!!r&&(this._size++,!0)}removeQuad(e){const t=[this.dictionary.encodeOptional(e.subject),this.dictionary.encodeOptional(e.predicate),this.dictionary.encodeOptional(e.object),this.dictionary.encodeOptional(e.graph)];if(t.includes(void 0))return!1;let r=!1;for(const e of this.indexesWrapped)if(r=e.index.remove((0,l.orderQuadComponents)(e.componentOrder,t)),!r)break;return!!r&&(this._size--,!0)}remove(e){return e.on("data",(e=>this.removeQuad(e))),e}removeMatches(e,t,r,n){return this.remove(this.match(e,t,r,n))}deleteGraph(e){return"string"==typeof e&&(e=this.dataFactory.namedNode(e)),this.removeMatches(void 0,void 0,void 0,e)}import(e){return e.on("data",(e=>this.addQuad(e))),e}*readQuads(e,t,r,n){const i=Boolean(this.dictionary.features.quotedTriples)&&Object.values(this.indexesWrapped).every((e=>e.index.features.quotedTripleFiltering)),[o,s]=(0,l.quadToPattern)(e,t,r,n,i),c=this.indexesWrapped[(0,l.getBestIndex)(this.indexesWrappedComponentOrders,o)],u=(0,l.orderQuadComponents)(c.componentOrder,o);for(const i of c.index.find(u)){const o=this.dataFactory.quad(i[c.componentOrderInverse.subject],i[c.componentOrderInverse.predicate],i[c.componentOrderInverse.object],i[c.componentOrderInverse.graph]);s?(0,a.matchPattern)(o,e,t,r,n)&&(yield o):yield o}}getQuads(e,t,r,n){return[...this.readQuads(e,t,r,n)]}match(e,t,r,i){return(0,n.wrap)(this.readQuads(e,t,r,i))}countQuads(e,t,r,n){const i=Boolean(this.dictionary.features.quotedTriples)&&Object.values(this.indexesWrapped).every((e=>e.index.features.quotedTripleFiltering)),[a]=(0,l.quadToPattern)(e,t,r,n,i);if(a.every((e=>void 0===e)))return this.size;const o=this.indexesWrapped[(0,l.getBestIndex)(this.indexesWrappedComponentOrders,a)],s=(0,l.orderQuadComponents)(o.componentOrder,a);return o.index.count(s)}asDataset(){return new o.DatasetCoreWrapper(this)}}d.DEFAULT_INDEX_COMBINATIONS=[["graph","subject","predicate","object"],["graph","predicate","object","subject"],["graph","object","subject","predicate"]],t.RdfStore=d},85632:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DatasetCoreWrapper=void 0;const n=r(54194);class i{constructor(e){this.store=e}get size(){return this.store.size}add(e){return this.store.addQuad(e),this}delete(e){return this.store.removeQuad(e),this}has(e){for(const t of this.store.readQuads(e.subject,e.predicate,e.object,e.graph))return!0;return!1}match(e,t,r,a){const o=new n.RdfStore(this.store.options);for(const n of this.store.readQuads(e,t,r,a))o.addQuad(n);return new i(o)}[Symbol.iterator](){return this.store.readQuads()}}t.DatasetCoreWrapper=i},28428:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},98122:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberMap=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberMap=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary=new Map,this.reverseDictionary=new Map,this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary.get(t);return void 0===r&&(r=this.lastId++,this.dictionary.set(t,r),this.reverseDictionary.set(r,t)),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary.get(t)}decode(e){const t=this.reverseDictionary.get(e);if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return(0,i.stringToTerm)(t,this.dataFactory)}encodings(){return this.reverseDictionary.keys()}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},39917:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberRecord=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberRecord=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary={},this.reverseDictionary={},this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary[t];return void 0===r&&(r=this.lastId++,this.dictionary[t]=r,this.reverseDictionary[r]=t),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary[t]}decode(e){const t=this.reverseDictionary[e];if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return(0,i.stringToTerm)(t,this.dataFactory)}*encodings(){for(const e of Object.keys(this.reverseDictionary))yield Number.parseInt(e,10)}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},82825:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryNumberRecordFullTerms=void 0;const n=r(91194),i=r(6053);t.TermDictionaryNumberRecordFullTerms=class{constructor(e=new n.DataFactory){this.lastId=0,this.dictionary={},this.reverseDictionary={},this.features={quotedTriples:!1},this.dataFactory=e}encode(e){const t=(0,i.termToString)(e);let r=this.dictionary[t];return void 0===r&&(r=this.lastId++,this.dictionary[t]=r,this.reverseDictionary[r]=e),r}encodeOptional(e){const t=(0,i.termToString)(e);return this.dictionary[t]}decode(e){const t=this.reverseDictionary[e];if(void 0===t)throw new Error(`The value ${e} is not present in this dictionary`);return t}*encodings(){for(const e of Object.keys(this.reverseDictionary))yield Number.parseInt(e,10)}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},86955:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuoted=void 0;const n=r(91194),i=r(98086);class a{constructor(e,t,r=new n.DataFactory){this.features={quotedTriples:!0},this.plainTermDictionary=e,this.quotedTriplesDictionary=t,this.dataFactory=r}encode(e){return"Quad"===e.termType?a.BITMASK|1+this.quotedTriplesDictionary.encode(e):this.plainTermDictionary.encode(e)}encodeOptional(e){if("Quad"===e.termType){const t=this.quotedTriplesDictionary.encodeOptional(e);return void 0===t?t:a.BITMASK|1+t}return this.plainTermDictionary.encodeOptional(e)}decode(e){if(a.BITMASK&e){const t=(~a.BITMASK&e)-1;return this.quotedTriplesDictionary.decode(t)}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.encodings())yield a.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){for(let t of this.quotedTriplesDictionary.encodings()){t=a.BITMASK|1+t;const r=this.decode(t);(0,i.matchPattern)(r,e.subject,e.predicate,e.object,e.graph)&&(yield t)}}}a.BITMASK=1<<31,t.TermDictionaryQuoted=a},75120:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuotedIndexed=void 0;const n=r(91194),i=r(42407),a=r(30218);class o{constructor(e,t=new n.DataFactory){this.quotedTriplesDictionary=[],this.features={quotedTriples:!0},this.plainTermDictionary=e;const r={indexCombinations:[],indexConstructor:void 0,dictionary:this,dataFactory:t};this.quotedTriplesReverseDictionaries=[new i.RdfStoreIndexNestedMap(r),new i.RdfStoreIndexNestedMap(r),new i.RdfStoreIndexNestedMap(r)],this.dataFactory=t}encode(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!1):this.plainTermDictionary.encode(e)}encodeQuotedTriple(e,t){if("DefaultGraph"!==e.graph.termType)throw new Error("Encoding of quoted quads outside of the default graph is not allowed");const r=(0,a.encodeOptionalTerms)([e.subject,e.predicate,e.object,e.graph],this),n=r&&r.every((e=>void 0!==e))?this.quotedTriplesReverseDictionaries[0].getEncoded(r):void 0;if(void 0!==n||t)return void 0===n?void 0:o.BITMASK|n;const i=[this.encode(e.subject),this.encode(e.predicate),this.encode(e.object)],s=this.quotedTriplesDictionary.length+1;this.quotedTriplesDictionary.push(i);const c=this.encode(this.dataFactory.defaultGraph());return this.quotedTriplesReverseDictionaries[0].set([i[0],i[1],i[2],c],s),this.quotedTriplesReverseDictionaries[1].set([i[1],i[2],i[0],c],s),this.quotedTriplesReverseDictionaries[2].set([i[2],i[0],i[1],c],s),o.BITMASK|s}encodeOptional(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!0):this.plainTermDictionary.encodeOptional(e)}decode(e){if(o.BITMASK&e){const t=(~o.BITMASK&e)-1;if(t>=this.quotedTriplesDictionary.length)throw new Error(`The value ${e} is not present in the quoted triples range of the dictionary`);const r=this.quotedTriplesDictionary[t];return this.dataFactory.quad(this.decode(r[0]),this.decode(r[1]),this.decode(r[2]))}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.keys())yield o.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){const[t,r]=(0,a.quadToPattern)(e.subject,e.predicate,e.object,e.graph,!0);for(const e of this.patternToIterable(t[0]))for(const r of this.patternToIterable(t[1]))for(const n of this.patternToIterable(t[2]))for(const i of this.patternToIterable(t[3]))if(e&&r||!r&&!n){const a=[e,r,n,i];for(const e of this.quotedTriplesReverseDictionaries[0].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[0].getEncoded(e)}else if(!e&&r){const a=[r,n,e,i];for(const e of this.quotedTriplesReverseDictionaries[1].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[1].getEncoded(e)}else{const a=[n,e,r,i];for(const e of this.quotedTriplesReverseDictionaries[2].findEncoded(a,t))yield o.BITMASK|this.quotedTriplesReverseDictionaries[2].getEncoded(e)}}*patternToIterable(e){if("Quad"===(null==e?void 0:e.termType))return void(yield*this.findQuotedTriplesEncoded(e));if(void 0===e)return void(yield);const t=this.encodeOptional(e);void 0!==t&&(yield t)}}o.BITMASK=1<<31,t.TermDictionaryQuotedIndexed=o},90387:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionaryQuotedReferential=void 0;const n=r(91194),i=r(98086),a=r(30218);class o{constructor(e,t=new n.DataFactory){this.quotedTriplesDictionary=[],this.quotedTriplesReverseDictionary={},this.features={quotedTriples:!0},this.plainTermDictionary=e,this.dataFactory=t}encode(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!1):this.plainTermDictionary.encode(e)}encodeQuotedTriple(e,t){var r;if("DefaultGraph"!==e.graph.termType)throw new Error("Encoding of quoted quads outside of the default graph is not allowed");const n=null===(r=(0,a.encodeOptionalTerms)([e.subject,e.predicate,e.object,void 0],this))||void 0===r?void 0:r.slice(0,3),i=n&&n.every((e=>void 0!==e))?this.quotedTriplesReverseDictionary[n.join(o.SEPARATOR)]:void 0;if(void 0!==i||t)return void 0===i?void 0:o.BITMASK|i;const s=[this.encode(e.subject),this.encode(e.predicate),this.encode(e.object)],c=this.quotedTriplesDictionary.length+1;return this.quotedTriplesDictionary.push(s),this.quotedTriplesReverseDictionary[s.join(o.SEPARATOR)]=c,o.BITMASK|c}encodeOptional(e){return"Quad"===e.termType?this.encodeQuotedTriple(e,!0):this.plainTermDictionary.encodeOptional(e)}decode(e){if(o.BITMASK&e){const t=(~o.BITMASK&e)-1;if(t>=this.quotedTriplesDictionary.length)throw new Error(`The value ${e} is not present in the quoted triples range of the dictionary`);const r=this.quotedTriplesDictionary[t];return this.dataFactory.quad(this.decode(r[0]),this.decode(r[1]),this.decode(r[2]))}return this.plainTermDictionary.decode(e)}*encodings(){for(const e of this.plainTermDictionary.encodings())yield e;for(const e of this.quotedTriplesDictionary.keys())yield o.BITMASK|1+e}*findQuotedTriples(e){for(const t of this.findQuotedTriplesEncoded(e))yield this.decode(t)}*findQuotedTriplesEncoded(e){for(let t of this.quotedTriplesDictionary.keys()){t=o.BITMASK|1+t;const r=this.decode(t);(0,i.matchPattern)(r,e.subject,e.predicate,e.object,e.graph)&&(yield t)}}}o.BITMASK=1<<31,o.SEPARATOR="_",t.TermDictionaryQuotedReferential=o},27164:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TermDictionarySymbol=void 0;const n=r(91194),i=r(6053);t.TermDictionarySymbol=class{constructor(e=new n.DataFactory){this.features={quotedTriples:!1},this.dataFactory=e}encode(e){return Symbol.for(`rdf::${(0,i.termToString)(e)}`)}encodeOptional(e){return this.encode(e)}decode(e){const t=Symbol.keyFor(e);if(void 0===t)throw new Error(`The value ${String(e)} is not present in this dictionary`);return(0,i.stringToTerm)(t.slice(5),this.dataFactory)}encodings(){throw new Error("encodings is not supported")}findQuotedTriples(e){throw new Error("findQuotedTriples is not supported")}findQuotedTriplesEncoded(e){throw new Error("findQuotedTriplesEncoded is not supported")}}},74322:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},42407:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMap=void 0;const n=r(30218);t.RdfStoreIndexNestedMap=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedMap=new Map}set(e,t){const r=this.nestedMap;let n=r.get(e[0]);n||(n=new Map,r.set(e[0],n));let i=n.get(e[1]);i||(i=new Map,n.set(e[1],i));let a=i.get(e[2]);a||(a=new Map,i.set(e[2],a));const o=a.has(e[3]);return o||a.set(e[3],t),!o}remove(e){const t=this.nestedMap,r=t.get(e[0]);if(!r)return!1;const n=r.get(e[1]);if(!n)return!1;const i=n.get(e[2]);if(!i)return!1;const a=i.delete(e[3]);return a&&0===i.size&&(n.delete(e[2]),0===n.size&&(r.delete(e[1]),0===r.size&&t.delete(e[0]))),a}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){const t=this.nestedMap.get(e[0]);if(!t)return;const r=t.get(e[1]);if(!r)return;const n=r.get(e[2]);return n?n.get(e[3]):void 0}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e;let d,h,p,f,y,g,m;const b=this.nestedMap,v=void 0!==r?b.has(r)?[r]:[]:b.keys();for(const e of v){y=b.get(e),d=s||this.dictionary.decode(e);const t=void 0!==i?y.has(i)?[i]:[]:y.keys();for(const e of t){g=y.get(e),h=c||this.dictionary.decode(e);const t=void 0!==a?g.has(a)?[a]:[]:g.keys();for(const e of t){m=g.get(e),p=u||this.dictionary.decode(e);const t=void 0!==o?m.has(o)?[o]:[]:m.keys();for(const e of t)f=l||this.dictionary.decode(e),yield[d,h,p,f]}}}}*findEncoded(e,t){const[r,n,i,a]=e;let o,s,c;const u=this.nestedMap,l=void 0!==r?u.has(r)?[r]:[]:u.keys();for(const e of l){o=u.get(e);const t=void 0!==n?o.has(n)?[n]:[]:o.keys();for(const r of t){s=o.get(r);const t=void 0!==i?s.has(i)?[i]:[]:s.keys();for(const n of t){c=s.get(n);const t=void 0!==a?c.has(a)?[a]:[]:c.keys();for(const i of t)yield[e,r,n,i]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const i=r[0],a=r[1],o=r[2],s=r[3];let c,u,l;const d=this.nestedMap,h=void 0!==i?d.has(i)?[i]:[]:d.keys();for(const e of h){c=d.get(e);const r=void 0!==a?c.has(a)?[a]:[]:c.keys();for(const e of r){u=c.get(e);const r=void 0!==o?u.has(o)?[o]:[]:u.keys();for(const e of r)l=u.get(e),void 0!==s?l.has(s)&&t++:t+=l.size}}return t}}},49028:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapQuoted=void 0;const n=r(30218),i=r(42407);class a extends i.RdfStoreIndexNestedMap{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*getQuotedPatternKeys(e,t){for(const r of this.dictionary.findQuotedTriplesEncoded(t))e.has(r)&&(yield r)}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e,[d,h,p,f]=(0,n.arePatternsQuoted)(e);let y,g,m,b,v,_,w;const T=this.nestedMap,S=void 0!==s?d?this.getQuotedPatternKeys(T,s):T.has(r)?[r]:[]:T.keys();for(const e of S){v=T.get(e),y=!d&&s?s:this.dictionary.decode(e);const t=void 0!==c?h?this.getQuotedPatternKeys(v,c):v.has(i)?[i]:[]:v.keys();for(const e of t){_=v.get(e),g=!h&&c?c:this.dictionary.decode(e);const t=void 0!==u?p?this.getQuotedPatternKeys(_,u):_.has(a)?[a]:[]:_.keys();for(const e of t){w=_.get(e),m=!p&&u?u:this.dictionary.decode(e);const t=void 0!==l?f?this.getQuotedPatternKeys(w,l):w.has(o)?[o]:[]:w.keys();for(const e of t)b=!f&&l?l:this.dictionary.decode(e),yield[y,g,m,b]}}}}*findEncoded(e,t){const[r,i,a,o]=e,[s,c,u,l]=t,[d,h,p,f]=(0,n.arePatternsQuoted)(t);let y,g,m;const b=this.nestedMap,v=void 0!==s?d?this.getQuotedPatternKeys(b,s):b.has(r)?[r]:[]:b.keys();for(const e of v){y=b.get(e);const t=void 0!==c?h?this.getQuotedPatternKeys(y,c):y.has(i)?[i]:[]:y.keys();for(const r of t){g=y.get(r);const t=void 0!==u?p?this.getQuotedPatternKeys(g,u):g.has(a)?[a]:[]:g.keys();for(const n of t){m=g.get(n);const t=void 0!==l?f?this.getQuotedPatternKeys(m,l):m.has(o)?[o]:[]:m.keys();for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const[i,a,o,s]=r,[c,u,l,d]=e,[h,p,f,y]=(0,n.arePatternsQuoted)(e);let g,m,b;const v=this.nestedMap,_=void 0!==c?h?this.getQuotedPatternKeys(v,c):v.has(i)?[i]:[]:v.keys();for(const e of _){g=v.get(e);const r=void 0!==u?p?this.getQuotedPatternKeys(g,u):g.has(a)?[a]:[]:g.keys();for(const e of r){m=g.get(e);const r=void 0!==l?f?this.getQuotedPatternKeys(m,l):m.has(o)?[o]:[]:m.keys();for(const e of r)b=m.get(e),void 0!==d?y?t+=[...this.getQuotedPatternKeys(b,d)].length:b.has(s)&&t++:t+=b.size}}return t}}t.RdfStoreIndexNestedMapQuoted=a},41609:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapRecursive=void 0;const n=r(30218);t.RdfStoreIndexNestedMapRecursive=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedMap=new Map}set(e,t){let r=this.nestedMap,n=!1;for(const[i,a]of e.entries()){const o=r;let s=o.get(a);s?i===e.length-1&&(n=!0):(s=i===e.length-1?t:new Map,o.set(a,s)),r=s}return!n}remove(e){const t=this.nestedMap,r=t.get(e[0]);if(!r)return!1;const n=r.get(e[1]);if(!n)return!1;const i=n.get(e[2]);if(!i)return!1;const a=i.delete(e[3]);return a&&0===i.size&&(n.delete(e[2]),0===n.size&&(r.delete(e[1]),0===r.size&&t.delete(e[0]))),a}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){const t=this.nestedMap.get(e[0]);if(!t)return;const r=t.get(e[1]);if(!r)return;const n=r.get(e[2]);return n?n.get(e[3]):void 0}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t)for(const r of this.findEncoded(t,e))yield[void 0!==t[0]?e[0]:this.dictionary.decode(r[0]),void 0!==t[1]?e[1]:this.dictionary.decode(r[1]),void 0!==t[2]?e[2]:this.dictionary.decode(r[2]),void 0!==t[3]?e[3]:this.dictionary.decode(r[3])]}*findEncoded(e,t){return yield*this.findEncodedInner(0,e,t,this.nestedMap,[])}*findEncodedInner(e,t,r,n,i){if(e===t.length)yield[...i];else{const a=t[e];if(r[e]){const o=a;if(void 0!==o){const s=n.get(o);s&&(i[e]=a,yield*this.findEncodedInner(e+1,t,r,s,i))}}else for(const[a,o]of n.entries())i[e]=a,yield*this.findEncodedInner(e+1,t,r,o,i)}}count(e){return this.countInner(0,e,this.nestedMap)}countInner(e,t,r){const n=t[e];let i=0;if(n){const a=this.dictionary.encodeOptional(n);if(void 0!==a){if(e===t.length-1)return r.has(a)?1:0;const n=r.get(a);n&&(i+=this.countInner(e+1,t,n))}}else{if(e===t.length-1)return r.size;for(const n of r.values())i+=this.countInner(e+1,t,n)}return i}}},52787:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedMapRecursiveQuoted=void 0;const n=r(30218),i=r(41609);class a extends i.RdfStoreIndexNestedMapRecursive{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*findEncoded(e,t){return yield*this.findEncodedInnerQuoted(0,e,t,(0,n.arePatternsQuoted)(t),this.nestedMap,[])}*findEncodedInnerQuoted(e,t,r,n,i,a){if(e===t.length)yield[...a];else{const o=t[e],s=r[e];if(s)if(n[e]){const o=this.dictionary.findQuotedTriplesEncoded(s);for(const s of o){const o=i.get(s);o&&(a[e]=s,yield*this.findEncodedInnerQuoted(e+1,t,r,n,o,a))}}else{const s=o;if(void 0!==s){const c=i.get(s);c&&(a[e]=o,yield*this.findEncodedInnerQuoted(e+1,t,r,n,c,a))}}else for(const[o,s]of i.entries())a[e]=o,yield*this.findEncodedInnerQuoted(e+1,t,r,n,s,a)}}countInner(e,t,r){const i=t[e];let a=0;if(i)if("Quad"===i.termType&&(0,n.quadHasVariables)(i)){const n=this.dictionary.findQuotedTriplesEncoded(i);for(const i of n)if(e===t.length-1)r.has(i)&&a++;else{const n=r.get(i);n&&(a+=this.countInner(e+1,t,n))}}else{const n=this.dictionary.encodeOptional(i);if(void 0!==n){if(e===t.length-1)return r.has(n)?1:0;const i=r.get(n);i&&(a+=this.countInner(e+1,t,i))}}else{if(e===t.length-1)return r.size;for(const n of r.values())a+=this.countInner(e+1,t,n)}return a}}t.RdfStoreIndexNestedMapRecursiveQuoted=a},52153:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedRecord=void 0;const n=r(30218);t.RdfStoreIndexNestedRecord=class{constructor(e){this.features={quotedTripleFiltering:!1},this.dictionary=e.dictionary,this.nestedRecords={}}set(e,t){const r=this.nestedRecords,n=r[e[0]]||(r[e[0]]={}),i=n[e[1]]||(n[e[1]]={}),a=i[e[2]]||(i[e[2]]={});return!a[e[3]]&&(a[e[3]]=t,!0)}remove(e){const t=this.nestedRecords,r=t[e[0]];if(!r)return!1;const n=r[e[1]];if(!n)return!1;const i=n[e[2]];return!!i&&!!i[e[3]]&&(delete i[e[3]],0===Object.keys(i).length&&(delete n[e[2]],0===Object.keys(n).length&&(delete r[e[1]],0===Object.keys(r).length&&delete t[e[0]])),!0)}get(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(t&&!t.includes(void 0))return this.getEncoded(t)}getEncoded(e){var t,r,n;return null===(n=null===(r=null===(t=this.nestedRecords[e[0]])||void 0===t?void 0:t[e[1]])||void 0===r?void 0:r[e[2]])||void 0===n?void 0:n[e[3]]}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e;let d,h,p,f,y,g,m;const b=this.nestedRecords,v=void 0!==r?r in b?[r]:[]:Object.keys(b);for(const e of v){y=b[e],d=s||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==i?i in y?[i]:[]:Object.keys(y);for(const e of t){g=y[e],h=c||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==a?a in g?[a]:[]:Object.keys(g);for(const e of t){m=g[e],p=u||this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==o?o in m?[o]:[]:Object.keys(m);for(const e of t)f=l||this.dictionary.decode(Number.parseInt(e,10)),yield[d,h,p,f]}}}}*findEncoded(e,t){const[r,n,i,a]=e;let o,s,c;const u=this.nestedRecords,l=void 0!==r?r in u?[r]:[]:Object.keys(u);for(const e of l){o=u[e];const t=void 0!==n?n in o?[n]:[]:Object.keys(o);for(const r of t){s=o[r];const t=void 0!==i?i in s?[i]:[]:Object.keys(s);for(const n of t){c=s[n];const t=void 0!==a?a in c?[a]:[]:Object.keys(c);for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const i=r[0],a=r[1],o=r[2],s=r[3];let c,u,l;const d=this.nestedRecords,h=void 0!==i?i in d?[i]:[]:Object.keys(d);for(const e of h){c=d[e];const r=void 0!==a?a in c?[a]:[]:Object.keys(c);for(const e of r){u=c[e];const r=void 0!==o?o in u?[o]:[]:Object.keys(u);for(const e of r)l=u[e],void 0!==s?s in l&&t++:t+=Object.keys(l).length}}return t}}},22204:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfStoreIndexNestedRecordQuoted=void 0;const n=r(30218),i=r(52153);class a extends i.RdfStoreIndexNestedRecord{constructor(e){super(e),this.features={quotedTripleFiltering:!0}}*getQuotedPatternKeys(e,t){for(const r of this.dictionary.findQuotedTriplesEncoded(t))r in e&&(yield r)}*find(e){const t=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!t)return;const[r,i,a,o]=t,[s,c,u,l]=e,[d,h,p,f]=(0,n.arePatternsQuoted)(e);let y,g,m,b,v,_,w;const T=this.nestedRecords,S=void 0!==s?d?this.getQuotedPatternKeys(T,s):r in T?[r]:[]:Object.keys(T);for(const e of S){v=T[e],y=!d&&s?s:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==c?h?this.getQuotedPatternKeys(v,c):i in v?[i]:[]:Object.keys(v);for(const e of t){_=v[e],g=!h&&c?c:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==u?p?this.getQuotedPatternKeys(_,u):a in _?[a]:[]:Object.keys(_);for(const e of t){w=_[e],m=!p&&u?u:this.dictionary.decode(Number.parseInt(e,10));const t=void 0!==l?f?this.getQuotedPatternKeys(w,l):o in w?[o]:[]:Object.keys(w);for(const e of t)b=!f&&l?l:this.dictionary.decode(Number.parseInt(e,10)),yield[y,g,m,b]}}}}*findEncoded(e,t){const[r,i,a,o]=e,[s,c,u,l]=t,[d,h,p,f]=(0,n.arePatternsQuoted)(t);let y,g,m;const b=this.nestedRecords,v=void 0!==s?d?this.getQuotedPatternKeys(b,s):r in b?[r]:[]:Object.keys(b);for(const e of v){y=b[e];const t=void 0!==c?h?this.getQuotedPatternKeys(y,c):i in y?[i]:[]:Object.keys(y);for(const r of t){g=y[r];const t=void 0!==u?p?this.getQuotedPatternKeys(g,u):a in g?[a]:[]:Object.keys(g);for(const n of t){m=g[n];const t=void 0!==l?f?this.getQuotedPatternKeys(m,l):o in m?[o]:[]:Object.keys(m);for(const i of t)yield[Number.parseInt(e,10),Number.parseInt(r,10),Number.parseInt(n,10),Number.parseInt(i,10)]}}}}count(e){let t=0;const r=(0,n.encodeOptionalTerms)(e,this.dictionary);if(!r)return 0;const[i,a,o,s]=r,[c,u,l,d]=e,[h,p,f,y]=(0,n.arePatternsQuoted)(e);let g,m,b;const v=this.nestedRecords,_=void 0!==c?h?this.getQuotedPatternKeys(v,c):i in v?[i]:[]:Object.keys(v);for(const e of _){g=v[e];const r=void 0!==u?p?this.getQuotedPatternKeys(g,u):a in g?[a]:[]:Object.keys(g);for(const e of r){m=g[e];const r=void 0!==l?f?this.getQuotedPatternKeys(m,l):o in m?[o]:[]:Object.keys(m);for(const e of r)b=m[e],void 0!==d?y?t+=[...this.getQuotedPatternKeys(b,d)].length:s in b&&t++:t+=Object.keys(b).length}}return t}}t.RdfStoreIndexNestedRecordQuoted=a},47720:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(52839),t),i(r(6745),t)},52839:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PendingStreamsIndex=void 0;const n=r(6053),i=r(98086);class a{constructor(){this.indexedStreams=new Map,this.allStreams=[]}termToString(e){return e&&"Variable"!==e.termType?(0,n.termToString)(e):a.ID_VARIABLE}addPatternListener(e,t,r,n,i){this.allStreams.push(e);const o=`${this.termToString(t)}${a.ID_SEPARATOR}${this.termToString(r)}${a.ID_SEPARATOR}${this.termToString(n)}${a.ID_SEPARATOR}${this.termToString(i)}`;let s=this.indexedStreams.get(o);s||(s=[],this.indexedStreams.set(o,s)),s.push(e)}getPendingStreamsForQuad(e){let t=[(0,i.getTerms)(e).map((e=>(0,n.termToString)(e)))];for(let e=0;e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.StreamingStore=void 0;const n=r(66641),i=r(51887),a=r(52839);t.StreamingStore=class{constructor(e=new n.Store){this.pendingStreams=new a.PendingStreamsIndex,this.ended=!1,this.store=e}end(){this.ended=!0;for(const e of this.pendingStreams.allStreams)e.push(null),e._pipeSource.unpipe()}importToListeners(e){e.on("data",(e=>{for(const t of this.pendingStreams.getPendingStreamsForQuad(e))this.ended||(t.push(e),t.emit("quad",e))}))}import(e){if(this.ended)throw new Error("Attempted to import into an ended StreamingStore");return this.importToListeners(e),this.store.import(e)}match(e,t,r,n){const a=this.store.match(e,t,r,n);let o=a;if(!this.ended){const s=new i.PassThrough({objectMode:!0});this.pendingStreams.addPatternListener(s,e,t,r,n),o=a.pipe(s,{end:!1}),o._pipeSource=a}return o}getStore(){return this.store}}},2122:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.termToString=t.stringToTerm=t.stringQuadToQuad=t.quadToStringQuad=t.getLiteralValue=t.getLiteralType=t.getLiteralLanguage=void 0;const n=r(68577);Object.defineProperty(t,"getLiteralLanguage",{enumerable:!0,get:function(){return n.getLiteralLanguage}}),Object.defineProperty(t,"getLiteralType",{enumerable:!0,get:function(){return n.getLiteralType}}),Object.defineProperty(t,"getLiteralValue",{enumerable:!0,get:function(){return n.getLiteralValue}}),Object.defineProperty(t,"quadToStringQuad",{enumerable:!0,get:function(){return n.quadToStringQuad}}),Object.defineProperty(t,"stringQuadToQuad",{enumerable:!0,get:function(){return n.stringQuadToQuad}}),Object.defineProperty(t,"stringToTerm",{enumerable:!0,get:function(){return n.stringToTerm}}),Object.defineProperty(t,"termToString",{enumerable:!0,get:function(){return n.termToString}})},68577:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringQuadToQuad=t.quadToStringQuad=t.stringToTerm=t.getLiteralLanguage=t.getLiteralType=t.getLiteralValue=t.termToString=void 0;const n=new(r(91194).DataFactory);function i(e){var t,r;if(e)switch(e.termType){case"NamedNode":return`<${t=e.value,t.replace(u,d)}>`;case"BlankNode":return`_:${e.value}`;case"Literal":{const t=e;return`"${r=t.value,u.test(r)&&(r=r.replace(u,d)),r}"${t.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==t.datatype.value&&"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"!==t.datatype.value?`^^<${t.datatype.value}>`:""}${t.language?`@${t.language}`:""}`}case"Quad":return`<<${i(e.subject)} ${i(e.predicate)} ${i(e.object)}${"DefaultGraph"===e.graph.termType?"":` ${i(e.graph)}`}>>`;case"Variable":return`?${e.value}`;case"DefaultGraph":return e.value}}function a(e){const t=/^"([^]*)"((\^\^.*)|(@.*))?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1].replace(/\\"/gu,'"')}function o(e){const t=/^"[^]*"(?:\^\^<([^"]+)>|(@)[^@"]+)?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1]||(t[2]?"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString":"http://www.w3.org/2001/XMLSchema#string")}function s(e){const t=/^"[^]*"(?:@([^@"]+)|\^\^[^"]+)?$/u.exec(e);if(!t)throw new Error(`${e} is not a literal`);return t[1]?t[1].toLowerCase():""}function c(e,t){if(t=t||n,!e||0===e.length)return t.defaultGraph();switch(e[0]){case"_":return t.blankNode(e.slice(2));case"?":if(!t.variable)throw new Error("Missing 'variable()' method on the given DataFactory");return t.variable(e.slice(1));case'"':{const r=s(e),n=t.namedNode(o(e));return t.literal(a(e),r||n)}default:if(e.startsWith("<<")&&e.endsWith(">>")){const r=e.slice(2,-2),n=[];let i=0,a=0;for(let t=0;t"===o){if(0===i)throw new Error(`Found closing tag without opening tag in ${e}`);i--}" "===o&&0===i&&(n.push(r.slice(a,t)),a=t+1)}if(0!==i)throw new Error(`Found opening tag without closing tag in ${e}`);if(n.push(r.slice(a,r.length)),3!==n.length&&4!==n.length)throw new Error(`Nested quad syntax error ${e}`);return t.quad(c(n[0]),c(n[1]),c(n[2]),n[3]?c(n[3]):void 0)}if(!e.startsWith("<")||!e.endsWith(">"))throw new Error(`Detected invalid iri for named node (must be wrapped in <>): ${e}`);return t.namedNode(e.slice(1,-1))}}t.termToString=i,t.getLiteralValue=a,t.getLiteralType=o,t.getLiteralLanguage=s,t.stringToTerm=c,t.quadToStringQuad=function(e){return{subject:i(e.subject),predicate:i(e.predicate),object:i(e.object),graph:i(e.graph)}},t.stringQuadToQuad=function(e,t){return(t=t||n).quad(c(e.subject,t),c(e.predicate,t),c(e.object,t),c(e.graph,t))};const u=/["\\\t\n\r\b\f\u0000-\u0019]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,l=new Map([["\\","\\\\"],['"','\\"'],["\t","\\t"],["\n","\\n"],["\r","\\r"],["\b","\\b"],["\f","\\f"]]);function d(e){const t=l.get(e);if(!t){if(1===e.length){const t=e.charCodeAt(0).toString(16);return`${"\\u0000".slice(0,-t.length)}${t}`}const t=(1024*(e.charCodeAt(0)-55296)+e.charCodeAt(1)+9216).toString(16);return`${"\\U00000000".slice(0,-t.length)}${t}`}return t}},6053:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.termToString=t.stringToTerm=t.stringQuadToQuad=t.quadToStringQuad=t.getLiteralValue=t.getLiteralType=t.getLiteralLanguage=void 0;const n=r(65195);Object.defineProperty(t,"getLiteralLanguage",{enumerable:!0,get:function(){return n.getLiteralLanguage}}),Object.defineProperty(t,"getLiteralType",{enumerable:!0,get:function(){return n.getLiteralType}}),Object.defineProperty(t,"getLiteralValue",{enumerable:!0,get:function(){return n.getLiteralValue}}),Object.defineProperty(t,"quadToStringQuad",{enumerable:!0,get:function(){return n.quadToStringQuad}}),Object.defineProperty(t,"stringQuadToQuad",{enumerable:!0,get:function(){return n.stringQuadToQuad}}),Object.defineProperty(t,"stringToTerm",{enumerable:!0,get:function(){return n.stringToTerm}}),Object.defineProperty(t,"termToString",{enumerable:!0,get:function(){return n.termToString}})},65195:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringQuadToQuad=t.quadToStringQuad=t.stringToTerm=t.getLiteralLanguage=t.getLiteralType=t.getLiteralValue=t.termToString=void 0;const n=new(r(91194).DataFactory);function i(e){if(e)switch(e.termType){case"NamedNode":case"DefaultGraph":return e.value;case"BlankNode":return"_:"+e.value;case"Literal":const t=e;return'"'+t.value+'"'+(t.datatype&&"http://www.w3.org/2001/XMLSchema#string"!==t.datatype.value&&"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"!==t.datatype.value?"^^"+t.datatype.value:"")+(t.language?"@"+t.language:"");case"Quad":return`<<${i(e.subject)} ${i(e.predicate)} ${i(e.object)}${"DefaultGraph"===e.graph.termType?"":" "+i(e.graph)}>>`;case"Variable":return"?"+e.value}}function a(e){const t=/^"([^]*)"/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]}function o(e){const t=/^"[^]*"(?:\^\^([^"]+)|(@)[^@"]+)?$/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]||(t[2]?"http://www.w3.org/1999/02/22-rdf-syntax-ns#langString":"http://www.w3.org/2001/XMLSchema#string")}function s(e){const t=/^"[^]*"(?:@([^@"]+)|\^\^[^"]+)?$/.exec(e);if(!t)throw new Error(e+" is not a literal");return t[1]?t[1].toLowerCase():""}function c(e,t){if(t=t||n,!e||!e.length)return t.defaultGraph();switch(e[0]){case"_":return t.blankNode(e.substr(2));case"?":if(!t.variable)throw new Error("Missing 'variable()' method on the given DataFactory");return t.variable(e.substr(1));case'"':const r=s(e),n=t.namedNode(o(e));return t.literal(a(e),r||n);default:if("<"===e[0]&&e.length>4&&"<"===e[1]&&">"===e[e.length-1]&&">"===e[e.length-2]){const r=e.slice(2,-2).trim();let n=[],i=0,a=0,o=!1;for(let t=0;t"===s){if(0===i)throw new Error("Found closing tag without opening tag in "+e);i--}if('"'===s){let e=!1,n=t;for(;n-- >0&&"\\"===r[n];)e=!e;e||(o=!o)}if(" "===s&&!o&&0===i){for(n.push(r.slice(a,t));" "===r[t+1];)t+=1;a=t+1}}if(0!==i)throw new Error("Found opening tag without closing tag in "+e);if(n.push(r.slice(a,r.length)),3!==n.length&&4!==n.length)throw new Error("Nested quad syntax error "+e);return n=n.map((e=>e.startsWith("<")&&!e.includes(" ")?e.slice(1,-1):e)),t.quad(c(n[0]),c(n[1]),c(n[2]),n[3]?c(n[3]):void 0)}return t.namedNode(e)}}t.termToString=i,t.getLiteralValue=a,t.getLiteralType=o,t.getLiteralLanguage=s,t.stringToTerm=c,t.quadToStringQuad=function(e){return{subject:i(e.subject),predicate:i(e.predicate),object:i(e.object),graph:i(e.graph)}},t.stringQuadToQuad=function(e,t){return(t=t||n).quad(c(e.subject,t),c(e.predicate,t),c(e.object,t),c(e.graph,t))}},98086:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(76509),t),i(r(99552),t)},76509:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.matchPatternMappings=t.matchPatternComplete=t.matchPattern=t.matchTerm=t.getValueNestedPath=t.someTermsNested=t.someTerms=t.everyTermsNested=t.everyTerms=t.reduceTermsNested=t.reduceTerms=t.mapTermsNested=t.mapTerms=t.filterQuadTermNamesNested=t.filterQuadTermNames=t.filterTermsNested=t.filterTerms=t.forEachTermsNested=t.forEachTerms=t.collectNamedTerms=t.getNamedTerms=t.getTermsNested=t.getTerms=t.TRIPLE_TERM_NAMES=t.QUAD_TERM_NAMES=void 0;const n=new(r(91194).DataFactory);function i(e,t){return t&&"DefaultGraph"===e.graph.termType?[e.subject,e.predicate,e.object]:[e.subject,e.predicate,e.object,e.graph]}function a(e,t){return t(e.subject,"subject")&&t(e.predicate,"predicate")&&t(e.object,"object")&&t(e.graph,"graph")}function o(e,t){return!t||"Variable"===t.termType||"Quad"===t.termType&&"Quad"===e.termType&&c(e,t)||t.equals(e)}function s(e,t,r,n,i){return o(e.subject,t)&&o(e.predicate,r)&&o(e.object,n)&&o(e.graph,i)}function c(e,t){return s(e,t.subject,t.predicate,t.object,t.graph)}t.QUAD_TERM_NAMES=["subject","predicate","object","graph"],t.TRIPLE_TERM_NAMES=["subject","predicate","object"],t.getTerms=i,t.getTermsNested=function e(t,r){const n=[];for(const a of i(t,r))"Quad"===a.termType?e(a,r).forEach((e=>n.push(e))):n.push(a);return n},t.getNamedTerms=function(e){return[{key:"subject",value:e.subject},{key:"predicate",value:e.predicate},{key:"object",value:e.object},{key:"graph",value:e.graph}]},t.collectNamedTerms=function(e,t,r){const i={};return e.forEach((e=>i[e.key]=e.value)),t&&(i.subject=i.subject||t("subject"),i.predicate=i.predicate||t("predicate"),i.object=i.object||t("object"),i.graph=i.graph||t("graph")),(r||n).quad(i.subject,i.predicate,i.object,i.graph)},t.forEachTerms=function(e,t){t(e.subject,"subject"),t(e.predicate,"predicate"),t(e.object,"object"),t(e.graph,"graph")},t.forEachTermsNested=function e(t,r,n=[]){"Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]),"Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]),"Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]),"Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"])},t.filterTerms=function(e,t){const r=[];return t(e.subject,"subject")&&r.push(e.subject),t(e.predicate,"predicate")&&r.push(e.predicate),t(e.object,"object")&&r.push(e.object),t(e.graph,"graph")&&r.push(e.graph),r},t.filterTermsNested=function e(t,r,n=[]){let i=[];return"Quad"===t.subject.termType?i=[...i,...e(t.subject,r,[...n,"subject"])]:r(t.subject,[...n,"subject"])&&i.push(t.subject),"Quad"===t.predicate.termType?i=[...i,...e(t.predicate,r,[...n,"predicate"])]:r(t.predicate,[...n,"predicate"])&&i.push(t.predicate),"Quad"===t.object.termType?i=[...i,...e(t.object,r,[...n,"object"])]:r(t.object,[...n,"object"])&&i.push(t.object),"Quad"===t.graph.termType?i=[...i,...e(t.graph,r,[...n,"graph"])]:r(t.graph,[...n,"graph"])&&i.push(t.graph),i},t.filterQuadTermNames=function(e,t){const r=[];return t(e.subject,"subject")&&r.push("subject"),t(e.predicate,"predicate")&&r.push("predicate"),t(e.object,"object")&&r.push("object"),t(e.graph,"graph")&&r.push("graph"),r},t.filterQuadTermNamesNested=function e(t,r,n=[]){let i=[];const a=[...n,"subject"];"Quad"===t.subject.termType?i=[...i,...e(t.subject,r,a)]:r(t.subject,a)&&i.push(a);const o=[...n,"predicate"];"Quad"===t.predicate.termType?i=[...i,...e(t.predicate,r,o)]:r(t.predicate,o)&&i.push(o);const s=[...n,"object"];"Quad"===t.object.termType?i=[...i,...e(t.object,r,s)]:r(t.object,s)&&i.push(s);const c=[...n,"graph"];return"Quad"===t.graph.termType?i=[...i,...e(t.graph,r,c)]:r(t.graph,c)&&i.push(c),i},t.mapTerms=function(e,t,r){return(r||n).quad(t(e.subject,"subject"),t(e.predicate,"predicate"),t(e.object,"object"),t(e.graph,"graph"))},t.mapTermsNested=function e(t,r,i,a=[]){return(i||n).quad("Quad"===t.subject.termType?e(t.subject,r,i,[...a,"subject"]):r(t.subject,[...a,"subject"]),"Quad"===t.predicate.termType?e(t.predicate,r,i,[...a,"predicate"]):r(t.predicate,[...a,"predicate"]),"Quad"===t.object.termType?e(t.object,r,i,[...a,"object"]):r(t.object,[...a,"object"]),"Quad"===t.graph.termType?e(t.graph,r,i,[...a,"graph"]):r(t.graph,[...a,"graph"]))},t.reduceTerms=function(e,t,r){let n=r;return n=t(n,e.subject,"subject"),n=t(n,e.predicate,"predicate"),n=t(n,e.object,"object"),t(n,e.graph,"graph")},t.reduceTermsNested=function e(t,r,n,i=[]){let a=n;return a="Quad"===t.subject.termType?e(t.subject,r,a,[...i,"subject"]):r(a,t.subject,[...i,"subject"]),a="Quad"===t.predicate.termType?e(t.predicate,r,a,[...i,"predicate"]):r(a,t.predicate,[...i,"predicate"]),a="Quad"===t.object.termType?e(t.object,r,a,[...i,"object"]):r(a,t.object,[...i,"object"]),a="Quad"===t.graph.termType?e(t.graph,r,a,[...i,"graph"]):r(a,t.graph,[...i,"graph"]),a},t.everyTerms=a,t.everyTermsNested=function e(t,r,n=[]){return("Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]))&&("Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]))&&("Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]))&&("Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"]))},t.someTerms=function(e,t){return t(e.subject,"subject")||t(e.predicate,"predicate")||t(e.object,"object")||t(e.graph,"graph")},t.someTermsNested=function e(t,r,n=[]){return("Quad"===t.subject.termType?e(t.subject,r,[...n,"subject"]):r(t.subject,[...n,"subject"]))||("Quad"===t.predicate.termType?e(t.predicate,r,[...n,"predicate"]):r(t.predicate,[...n,"predicate"]))||("Quad"===t.object.termType?e(t.object,r,[...n,"object"]):r(t.object,[...n,"object"]))||("Quad"===t.graph.termType?e(t.graph,r,[...n,"graph"]):r(t.graph,[...n,"graph"]))},t.getValueNestedPath=function e(t,r){if(0===r.length)return t;if("Quad"===t.termType)return e(t[r[0]],r.slice(1));throw new Error(`Tried to get ${r[0]} from term of type ${t.termType}`)},t.matchTerm=o,t.matchPattern=s,t.matchPatternComplete=c,t.matchPatternMappings=function(e,t,r={}){const n={};return function e(t,i){return a(t,((t,a)=>{var o,s;const c=i[a];switch(t.termType){case"Variable":return r.skipVarMapping&&"Variable"===c.termType||(null!==(s=null===(o=n[t.value])||void 0===o?void 0:o.equals(c))&&void 0!==s?s:(n[t.value]=c,!0));case"Quad":return"Quad"===c.termType&&e(t,c);default:return t.equals(c)}}))}(t,e)&&(!r.returnMappings||n)}},99552:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getQuads=t.getDefaultGraphs=t.getVariables=t.getLiterals=t.getBlankNodes=t.getNamedNodes=t.getTermsOfType=t.uniqTerms=t.TERM_TYPES=void 0;const n=r(6053);function i(e,t){return e.filter((e=>e.termType===t))}t.TERM_TYPES=["NamedNode","BlankNode","Literal","Variable","DefaultGraph","Quad"],t.uniqTerms=function(e){const t={};return e.filter((e=>{const r=(0,n.termToString)(e);return!(r in t)&&(t[r]=!0)}))},t.getTermsOfType=i,t.getNamedNodes=function(e){return i(e,"NamedNode")},t.getBlankNodes=function(e){return i(e,"BlankNode")},t.getLiterals=function(e){return i(e,"Literal")},t.getVariables=function(e){return i(e,"Variable")},t.getDefaultGraphs=function(e){return i(e,"DefaultGraph")},t.getQuads=function(e){return i(e,"Quad")}},1481:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(59740),t),i(r(19807),t),i(r(81675),t),i(r(6706),t),i(r(40043),t),i(r(78577),t)},59740:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},19807:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},81675:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},6706:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RdfaParser=void 0;const n=r(60883),i=r(51887),a=r(44299),o=r(59261),s=r(40043),c=r(78577);class u extends i.Transform{constructor(e){super({readableObjectMode:!0}),this.activeTagStack=[],e=e||{},this.options=e,this.util=new c.Util(e.dataFactory,e.baseIRI),this.defaultGraph=e.defaultGraph||this.util.dataFactory.defaultGraph();const t=e.contentType?c.Util.contentTypeToProfile(e.contentType):e.profile||"";this.features=e.features||s.RDFA_FEATURES[t],this.htmlParseListener=e.htmlParseListener,this.rdfaPatterns=this.features.copyRdfaPatterns?{}:null,this.pendingRdfaPatternCopies=this.features.copyRdfaPatterns?{}:null,this.parser=this.initializeParser("xml"===t),this.activeTagStack.push({incompleteTriples:[],inlist:!1,language:e.language,listMapping:{},listMappingLocal:{},name:"",prefixesAll:Object.assign(Object.assign({},o["@context"]),this.features.xhtmlInitialContext?a["@context"]:{}),prefixesCustom:{},skipElement:!1,vocab:e.vocab})}import(e){const t=new i.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new u(this.options));return r}_transform(e,t,r){this.parser.write(e.toString()),r()}_flush(e){this.parser.end(),e()}onTagOpen(e,t){let r=this.activeTagStack.length-1;for(;r>0&&this.activeTagStack[r].skipElement;)r--;let n=this.activeTagStack[r];r!==this.activeTagStack.length-1&&(n=Object.assign(Object.assign({},n),{language:this.activeTagStack[this.activeTagStack.length-1].language,prefixesAll:this.activeTagStack[this.activeTagStack.length-1].prefixesAll,prefixesCustom:this.activeTagStack[this.activeTagStack.length-1].prefixesCustom,vocab:this.activeTagStack[this.activeTagStack.length-1].vocab}));const i={collectChildTags:n.collectChildTags,incompleteTriples:[],inlist:"inlist"in t,listMapping:[],listMappingLocal:n.listMapping,localBaseIRI:n.localBaseIRI,name:e,prefixesAll:null,prefixesCustom:null,skipElement:!1};if(this.activeTagStack.push(i),i.collectChildTags){for(const e of Object.keys(n.prefixesCustom).sort()){const r=n.prefixesCustom[e],i=""===e?"xmlns":"xmlns:"+e;i in t||(t[i]=r)}const r=Object.keys(t).map((e=>`${e}="${t[e]}"`)).join(" ");if(i.text=[`<${e}${r?" "+r:""}>`],this.features.skipHandlingXmlLiteralChildren)return}let a,o,s,u=!0,l=!0;if(this.features.onlyAllowUriRelRevIfProperty&&("property"in t&&"rel"in t&&(u=!1,t.rel.indexOf(":")<0&&delete t.rel),"property"in t&&"rev"in t&&(l=!1,t.rev.indexOf(":")<0&&delete t.rev)),this.features.copyRdfaPatterns){if(n.collectedPatternTag){const r={attributes:t,children:[],name:e,referenced:!1,rootPattern:!1,text:[]};return n.collectedPatternTag.children.push(r),void(i.collectedPatternTag=r)}if("rdfa:Pattern"===t.typeof)return void(i.collectedPatternTag={attributes:t,children:[],name:e,parentTag:n,referenced:!1,rootPattern:!0,text:[]});if("rdfa:copy"===t.property){const e=t.resource||t.href||t.src;return void(this.rdfaPatterns[e]?this.emitPatternCopy(n,this.rdfaPatterns[e],e):(this.pendingRdfaPatternCopies[e]||(this.pendingRdfaPatternCopies[e]=[]),this.pendingRdfaPatternCopies[e].push(n)))}}if(this.features.baseTag&&"base"===e&&t.href&&(this.util.baseIRI=this.util.getBaseIRI(t.href)),this.features.xmlBase&&t["xml:base"]&&(i.localBaseIRI=this.util.getBaseIRI(t["xml:base"])),this.features.timeTag&&"time"===e&&!t.datatype&&(i.interpretObjectAsTime=!0),"vocab"in t?t.vocab?(i.vocab=t.vocab,this.emitTriple(this.util.getBaseIriTerm(i),this.util.dataFactory.namedNode(c.Util.RDFA+"usesVocabulary"),this.util.dataFactory.namedNode(i.vocab))):i.vocab=this.activeTagStack[0].vocab:i.vocab=n.vocab,i.prefixesCustom=c.Util.parsePrefixes(t,n.prefixesCustom,this.features.xmlnsPrefixMappings),i.prefixesAll=Object.keys(i.prefixesCustom).length>0?Object.assign(Object.assign({},n.prefixesAll),i.prefixesCustom):n.prefixesAll,this.features.roleAttribute&&t.role){const e=t.id?this.util.createIri("#"+t.id,i,!1,!1,!1):this.util.createBlankNode(),r=i.vocab;i.vocab="http://www.w3.org/1999/xhtml/vocab#";for(const r of this.util.createVocabIris(t.role,i,!0,!1))this.emitTriple(e,this.util.dataFactory.namedNode("http://www.w3.org/1999/xhtml/vocab#role"),r);i.vocab=r}"xml:lang"in t||this.features.langAttribute&&"lang"in t?i.language=t["xml:lang"]||t.lang:i.language=n.language;const d=2===this.activeTagStack.length;if("rel"in t||"rev"in t?("about"in t?(a=this.util.createIri(t.about,i,!1,!0,!0),i.explicitNewSubject=!!a,"typeof"in t&&(s=a)):d?a=!0:n.object&&(a=n.object),"resource"in t&&(o=this.util.createIri(t.resource,i,!1,!0,!0)),o||("href"in t||"src"in t?o=this.util.createIri(t.href||t.src,i,!1,!1,!0):!("typeof"in t)||"about"in t||this.isInheritSubjectInHeadBody(e)||(o=this.util.createBlankNode())),"typeof"in t&&!("about"in t)&&(s=this.isInheritSubjectInHeadBody(e)?a:o)):!("property"in t)||"content"in t||"datatype"in t?(("about"in t||"resource"in t)&&(a=this.util.createIri(t.about||t.resource,i,!1,!0,!0),i.explicitNewSubject=!!a),a||!("href"in t)&&!("src"in t)||(a=this.util.createIri(t.href||t.src,i,!1,!1,!0),i.explicitNewSubject=!!a),a||(d?a=!0:this.isInheritSubjectInHeadBody(e)?a=n.object:"typeof"in t?(a=this.util.createBlankNode(),i.explicitNewSubject=!0):n.object&&(a=n.object,"property"in t||(i.skipElement=!0))),"typeof"in t&&(s=a)):("about"in t?(a=this.util.createIri(t.about,i,!1,!0,!0),i.explicitNewSubject=!!a):d?a=!0:n.object&&(a=n.object),"typeof"in t&&("about"in t&&(s=this.util.createIri(t.about,i,!1,!0,!0)),!s&&d&&(s=!0),!s&&"resource"in t&&(s=this.util.createIri(t.resource,i,!1,!0,!0)),s||!("href"in t)&&!("src"in t)||(s=this.util.createIri(t.href||t.src,i,!1,!1,!0)),!s&&this.isInheritSubjectInHeadBody(e)&&(s=a),s||(s=this.util.createBlankNode()),o=s)),s)for(const e of this.util.createVocabIris(t.typeof,i,!0,!0))this.emitTriple(this.util.getResourceOrBaseIri(s,i),this.util.dataFactory.namedNode(c.Util.RDF+"type"),e);if(a&&(i.listMapping={}),o){if("rel"in t&&"inlist"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.addListMapping(i,a,e,o);if(!("rel"in t)||!("inlist"in t)){if("rel"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.emitTriple(this.util.getResourceOrBaseIri(a,i),e,this.util.getResourceOrBaseIri(o,i));if("rev"in t)for(const e of this.util.createVocabIris(t.rev,i,l,!1))this.emitTriple(this.util.getResourceOrBaseIri(o,i),e,this.util.getResourceOrBaseIri(a,i))}}if(!o){if("rel"in t)if("inlist"in t)for(const e of this.util.createVocabIris(t.rel,i,u,!1))this.addListMapping(i,a,e,null),i.incompleteTriples.push({predicate:e,reverse:!1,list:!0});else for(const e of this.util.createVocabIris(t.rel,i,u,!1))i.incompleteTriples.push({predicate:e,reverse:!1});if("rev"in t)for(const e of this.util.createVocabIris(t.rev,i,l,!1))i.incompleteTriples.push({predicate:e,reverse:!0});i.incompleteTriples.length>0&&(o=this.util.createBlankNode())}if("property"in t){let e;if(i.predicates=this.util.createVocabIris(t.property,i,!0,!1),"datatype"in t?(i.datatype=this.util.createIri(t.datatype,i,!0,!0,!1),i.datatype&&(i.datatype.value===c.Util.RDF+"XMLLiteral"||this.features.htmlDatatype&&i.datatype.value===c.Util.RDF+"HTML")&&(i.collectChildTags=!0)):("rev"in t||"rel"in t||"content"in t||("resource"in t&&(e=this.util.createIri(t.resource,i,!1,!0,!0)),!e&&"href"in t&&(e=this.util.createIri(t.href,i,!1,!1,!0)),!e&&"src"in t&&(e=this.util.createIri(t.src,i,!1,!1,!0))),"typeof"in t&&!("about"in t)&&(e=s)),"content"in t){const e=this.util.createLiteral(t.content,i);if("inlist"in t)for(const t of i.predicates)this.addListMapping(i,a,t,e);else{const t=this.util.getResourceOrBaseIri(a,i);for(const r of i.predicates)this.emitTriple(t,r,e)}i.predicates=null}else if(this.features.datetimeAttribute&&"datetime"in t){i.interpretObjectAsTime=!0;const e=this.util.createLiteral(t.datetime,i);if("inlist"in t)for(const t of i.predicates)this.addListMapping(i,a,t,e);else{const t=this.util.getResourceOrBaseIri(a,i);for(const r of i.predicates)this.emitTriple(t,r,e)}i.predicates=null}else if(e){const r=this.util.getResourceOrBaseIri(e,i);if("inlist"in t)for(const e of i.predicates)this.addListMapping(i,a,e,r);else{const e=this.util.getResourceOrBaseIri(a,i);for(const t of i.predicates)this.emitTriple(e,t,r)}i.predicates=null}}let h=!1;if(!i.skipElement&&a&&n.incompleteTriples.length>0){h=!0;const e=this.util.getResourceOrBaseIri(n.subject,i),t=this.util.getResourceOrBaseIri(a,i);for(const r of n.incompleteTriples)if(r.reverse)this.emitTriple(t,r.predicate,e);else if(r.list){let e=null;for(let t=this.activeTagStack.length-1;t>=0;t--)if(this.activeTagStack[t].inlist){e=this.activeTagStack[t];break}this.addListMapping(e,a,r.predicate,t)}else this.emitTriple(e,r.predicate,t)}!h&&n.incompleteTriples.length>0&&(i.incompleteTriples=i.incompleteTriples.concat(n.incompleteTriples)),i.subject=a||n.subject,i.object=o||a}onText(e){const t=this.activeTagStack[this.activeTagStack.length-1];this.features.copyRdfaPatterns&&t.collectedPatternTag?t.collectedPatternTag.text.push(e):(t.text||(t.text=[]),t.text.push(e))}onTagClose(){const e=this.activeTagStack[this.activeTagStack.length-1],t=this.activeTagStack[this.activeTagStack.length-2];if(!(e.collectChildTags&&t.collectChildTags&&this.features.skipHandlingXmlLiteralChildren)){if(this.features.copyRdfaPatterns&&e.collectedPatternTag&&e.collectedPatternTag.rootPattern){const t=e.collectedPatternTag.attributes.resource;if(delete e.collectedPatternTag.attributes.resource,delete e.collectedPatternTag.attributes.typeof,this.rdfaPatterns[t]=e.collectedPatternTag,this.pendingRdfaPatternCopies[t]){for(const r of this.pendingRdfaPatternCopies[t])this.emitPatternCopy(r,e.collectedPatternTag,t);delete this.pendingRdfaPatternCopies[t]}return void this.activeTagStack.pop()}if(e.predicates){const r=this.util.getResourceOrBaseIri(e.subject,e);let n=e.text||[];e.collectChildTags&&t.collectChildTags&&(n=n.slice(1));const i=this.util.createLiteral(n.join(""),e);if(e.inlist)for(const t of e.predicates)this.addListMapping(e,r,t,i);else for(const t of e.predicates)this.emitTriple(r,t,i);t.predicates||(e.text=null)}if(e.object&&Object.keys(e.listMapping).length>0){const t=this.util.getResourceOrBaseIri(e.object,e);for(const r in e.listMapping){const n=this.util.dataFactory.namedNode(r),i=e.listMapping[r];if(i.length>0){const r=i.map((()=>this.util.createBlankNode()));for(let t=0;t`),e.text&&t&&(t.text?t.text=t.text.concat(e.text):t.text=e.text)}onEnd(){if(this.features.copyRdfaPatterns){this.features.copyRdfaPatterns=!1;for(const e in this.rdfaPatterns){const t=this.rdfaPatterns[e];t.referenced||(t.attributes.typeof="rdfa:Pattern",t.attributes.resource=e,this.emitPatternCopy(t.parentTag,t,e),t.referenced=!1,delete t.attributes.typeof,delete t.attributes.resource)}for(const e in this.pendingRdfaPatternCopies)for(const t of this.pendingRdfaPatternCopies[e])this.activeTagStack.push(t),this.onTagOpen("link",{property:"rdfa:copy",href:e}),this.onTagClose(),this.activeTagStack.pop();this.features.copyRdfaPatterns=!0}}isInheritSubjectInHeadBody(e){return this.features.inheritSubjectInHeadBody&&("head"===e||"body"===e)}addListMapping(e,t,r,n){if(e.explicitNewSubject){const i=this.util.createBlankNode();this.emitTriple(this.util.getResourceOrBaseIri(t,e),r,i),this.emitTriple(i,this.util.dataFactory.namedNode(c.Util.RDF+"first"),this.util.getResourceOrBaseIri(n,e)),this.emitTriple(i,this.util.dataFactory.namedNode(c.Util.RDF+"rest"),this.util.dataFactory.namedNode(c.Util.RDF+"nil"))}else{let t=e.listMappingLocal[r.value];t||(e.listMappingLocal[r.value]=t=[]),n&&t.push(n)}}emitTriple(e,t,r){"NamedNode"===e.termType&&e.value.indexOf(":")<0||"NamedNode"===t.termType&&t.value.indexOf(":")<0||"NamedNode"===r.termType&&r.value.indexOf(":")<0||this.push(this.util.dataFactory.quad(e,t,r,this.defaultGraph))}emitPatternCopy(e,t,r){if(this.activeTagStack.push(e),t.referenced=!0,t.constructedBlankNodes){let e=0;this.util.blankNodeFactory=()=>t.constructedBlankNodes[e++]}else t.constructedBlankNodes=[],this.util.blankNodeFactory=()=>{const e=this.util.dataFactory.blankNode();return t.constructedBlankNodes.push(e),e};this.emitPatternCopyAbsolute(t,!0,r),this.util.blankNodeFactory=null,this.activeTagStack.pop()}emitPatternCopyAbsolute(e,t,r){if(t||"rdfa:copy"!==e.attributes.property||e.attributes.href!==r){this.onTagOpen(e.name,e.attributes);for(const t of e.text)this.onText(t);for(const t of e.children)this.emitPatternCopyAbsolute(t,!1,r);this.onTagClose()}}initializeParser(e){return new n.Parser({onclosetag:()=>{try{this.onTagClose(),this.htmlParseListener&&this.htmlParseListener.onTagClose()}catch(e){this.emit("error",e)}},onend:()=>{try{this.onEnd(),this.htmlParseListener&&this.htmlParseListener.onEnd()}catch(e){this.emit("error",e)}},onopentag:(e,t)=>{try{this.onTagOpen(e,t),this.htmlParseListener&&this.htmlParseListener.onTagOpen(e,t)}catch(e){this.emit("error",e)}},ontext:e=>{try{this.onText(e),this.htmlParseListener&&this.htmlParseListener.onText(e)}catch(e){this.emit("error",e)}}},{decodeEntities:!0,recognizeSelfClosing:!0,xmlMode:e})}}t.RdfaParser=u},40043:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.RDFA_CONTENTTYPES=t.RDFA_FEATURES=void 0,t.RDFA_FEATURES={"":{baseTag:!0,xmlBase:!0,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!0,roleAttribute:!0},core:{baseTag:!1,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!1,datetimeAttribute:!1,timeTag:!1,htmlDatatype:!1,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!1},html:{baseTag:!0,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!0},xhtml:{baseTag:!0,xmlBase:!1,langAttribute:!0,onlyAllowUriRelRevIfProperty:!0,inheritSubjectInHeadBody:!0,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!0,copyRdfaPatterns:!0,xmlnsPrefixMappings:!0,xhtmlInitialContext:!0,roleAttribute:!0},xml:{baseTag:!1,xmlBase:!0,langAttribute:!0,onlyAllowUriRelRevIfProperty:!1,inheritSubjectInHeadBody:!1,datetimeAttribute:!0,timeTag:!0,htmlDatatype:!1,copyRdfaPatterns:!1,xmlnsPrefixMappings:!0,xhtmlInitialContext:!1,roleAttribute:!0}},t.RDFA_CONTENTTYPES={"text/html":"html","application/xhtml+xml":"xhtml","application/xml":"xml","text/xml":"xml","image/svg+xml":"xml"}},78577:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Util=void 0;const n=r(84690),i=r(40043),a=r(91194);class o{constructor(e,t){this.dataFactory=e||new a.DataFactory,this.baseIRI=this.dataFactory.namedNode(t||""),this.baseIRIDocument=this.baseIRI}static parsePrefixes(e,t,r){const n={};if(r)for(const t in e)t.startsWith("xmlns")&&(n[t.substr(6)]=e[t]);if(e.prefix||Object.keys(n).length>0){const r=Object.assign(Object.assign({},t),n);if(e.prefix){let t;for(;t=o.PREFIX_REGEX.exec(e.prefix);)r[t[1]]=t[2]}return r}return t}static expandPrefixedTerm(e,t){const r=e.indexOf(":");let n,i;if(r>=0&&(n=e.substr(0,r),i=e.substr(r+1)),""===n)return"http://www.w3.org/1999/xhtml/vocab#"+i;if(n){const e=t.prefixesAll[n];if(e)return e+i}if(e){const r=t.prefixesAll[e.toLocaleLowerCase()];if(r)return r}return e}static isValidIri(e){return o.IRI_REGEX.test(e)}static contentTypeToProfile(e){return i.RDFA_CONTENTTYPES[e]||""}getBaseIRI(e){let t=e;const r=t.indexOf("#");return r>=0&&(t=t.substr(0,r)),this.dataFactory.namedNode((0,n.resolve)(t,this.baseIRI.value))}getResourceOrBaseIri(e,t){return!0===e?this.getBaseIriTerm(t):e}getBaseIriTerm(e){return e.localBaseIRI||this.baseIRI}createVocabIris(e,t,r,n){return e.split(/\s+/).filter((e=>e&&(r||e.indexOf(":")>=0))).map((e=>this.createIri(e,t,!0,!0,n))).filter((e=>null!=e))}createLiteral(e,t){if(t.interpretObjectAsTime&&!t.datatype)for(const r of o.TIME_REGEXES)if(e.match(r.regex)){t.datatype=this.dataFactory.namedNode(o.XSD+r.type);break}return this.dataFactory.literal(e,t.datatype||t.language)}createBlankNode(){return this.blankNodeFactory?this.blankNodeFactory():this.dataFactory.blankNode()}createIri(e,t,r,i,a){if(e=e||"",!i)return r||(e=(0,n.resolve)(e,this.getBaseIriTerm(t).value)),o.isValidIri(e)?this.dataFactory.namedNode(e):null;if(e.length>0&&"["===e[0]&&"]"===e[e.length-1]&&(e=e.substr(1,e.length-2)).indexOf(":")<0)return null;if(e.startsWith("_:"))return a?this.dataFactory.blankNode(e.substr(2)||"b_identity"):null;if(r&&t.vocab&&e.indexOf(":")<0)return this.dataFactory.namedNode(t.vocab+e);let s=o.expandPrefixedTerm(e,t);return r?e!==s&&(s=(0,n.resolve)(s,this.baseIRIDocument.value)):s=(0,n.resolve)(s,this.getBaseIriTerm(t).value),o.isValidIri(s)?this.dataFactory.namedNode(s):null}}t.Util=o,o.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",o.XSD="http://www.w3.org/2001/XMLSchema#",o.RDFA="http://www.w3.org/ns/rdfa#",o.PREFIX_REGEX=/\s*([^:\s]*)*:\s*([^\s]*)*\s*/g,o.TIME_REGEXES=[{regex:/^-?P([0-9]+Y)?([0-9]+M)?([0-9]+D)?(T([0-9]+H)?([0-9]+M)?([0-9]+(\.[0-9])?S)?)?$/,type:"duration"},{regex:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9]((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,type:"dateTime"},{regex:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,type:"date"},{regex:/^[0-9][0-9]:[0-9][0-9]:[0-9][0-9]((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,type:"time"},{regex:/^[0-9]+-[0-9][0-9]$/,type:"gYearMonth"},{regex:/^[0-9]+$/,type:"gYear"}],o.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^ "<>{}|\\\[\]`]*$/},94607:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(53033),t)},85430:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseError=void 0;class r extends Error{constructor(e,t){const r=e.saxParser;super(e.trackPosition?`Line ${r.line} column ${r.column+1}: ${t}`:t)}}t.ParseError=r},53033:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ParseType=t.RdfXmlParser=void 0;const n=r(84690),i=r(6928),a=r(51887),o=r(85430),s=r(91194),c=r(99650);class u extends a.Transform{constructor(e){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},e&&(Object.assign(this,e),this.options=e),this.dataFactory||(this.dataFactory=new s.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),!1!==this.validateUri&&(this.validateUri=!0),this.iriValidationStrategy||(this.iriValidationStrategy=this.validateUri?c.IriValidationStrategy.Pragmatic:c.IriValidationStrategy.None),this.saxParser=new i.SaxesParser({xmlns:!0,position:this.trackPosition}),this.attachSaxListeners()}import(e){const t=new a.PassThrough({readableObjectMode:!0});e.on("error",(e=>r.emit("error",e))),e.on("data",(e=>t.push(e))),e.on("end",(()=>t.push(null)));const r=t.pipe(new u(this.options));return r}_transform(e,t,r){try{this.saxParser.write(e)}catch(e){return r(e)}r()}newParseError(e){return new o.ParseError(this,e)}valueToUri(e,t){return this.uriToNamedNode((0,n.resolve)(e,t.baseIRI))}uriToNamedNode(e){const t=(0,c.validateIri)(e,this.iriValidationStrategy);if(t instanceof Error)throw this.newParseError(t.message);return this.dataFactory.namedNode(e)}validateNcname(e){if(!u.NCNAME_MATCHER.test(e))throw this.newParseError(`Not a valid NCName: ${e}`)}attachSaxListeners(){this.saxParser.on("error",(e=>this.emit("error",e))),this.saxParser.on("opentag",this.onTag.bind(this)),this.saxParser.on("text",this.onText.bind(this)),this.saxParser.on("closetag",this.onCloseTag.bind(this)),this.saxParser.on("doctype",this.onDoctype.bind(this))}onTag(e){const t=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let r=l.RESOURCE;if(t&&(t.hadChildren=!0,r=t.childrenParseType),t&&t.childrenStringTags){const r=e.name;let n="";for(const t in e.attributes)n+=` ${t}="${e.attributes[t].value}"`;const i=`<${r}${n}>`;t.childrenStringTags.push(i);const a={childrenStringTags:t.childrenStringTags};return a.childrenStringEmitClosingTag=``,void this.activeTagStack.push(a)}const n={};t?(n.language=t.language,n.baseIRI=t.baseIRI):n.baseIRI=this.baseIRI,this.activeTagStack.push(n),r===l.RESOURCE?this.onTagResource(e,n,t,!t):this.onTagProperty(e,n,t)}onTagResource(e,t,r,i){t.childrenParseType=l.PROPERTY;let a=!0;if(e.uri===u.RDF){if(!i&&u.FORBIDDEN_NODE_ELEMENTS.indexOf(e.local)>=0)throw this.newParseError(`Illegal node element name: ${e.local}`);switch(e.local){case"RDF":t.childrenParseType=l.RESOURCE;case"Description":a=!1}}const o=[],s=[];let c=null,d=!1,h=!1,p=null;for(const i in e.attributes){const a=e.attributes[i];if(r&&a.uri===u.RDF)switch(a.local){case"about":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);c=a.value;continue;case"ID":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);this.validateNcname(a.value),c="#"+a.value,d=!0;continue;case"nodeID":if(c)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${a.value} and ${c} where found.`);this.validateNcname(a.value),c=a.value,h=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":p=a.value;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(a.uri===u.XML){if("lang"===a.local){t.language=""===a.value?null:a.value.toLowerCase();continue}if("base"===a.local){t.baseIRI=(0,n.resolve)(a.value,t.baseIRI);continue}}"xml"!==a.prefix&&a.uri&&(o.push(this.uriToNamedNode(a.uri+a.local)),s.push(a.value))}if(null!==c&&(t.subject=h?this.dataFactory.blankNode(c):this.valueToUri(c,t),d&&this.claimNodeId(t.subject)),t.subject||(t.subject=this.dataFactory.blankNode()),a){const n=this.uriToNamedNode(e.uri+e.local);this.emitTriple(t.subject,this.dataFactory.namedNode(u.RDF+"type"),n,r?r.reifiedStatementId:null)}if(r){if(r.predicate)if(r.childrenCollectionSubject){const e=this.dataFactory.blankNode();this.emitTriple(r.childrenCollectionSubject,r.childrenCollectionPredicate,e,r.reifiedStatementId),this.emitTriple(e,this.dataFactory.namedNode(u.RDF+"first"),t.subject,t.reifiedStatementId),r.childrenCollectionSubject=e,r.childrenCollectionPredicate=this.dataFactory.namedNode(u.RDF+"rest")}else{this.emitTriple(r.subject,r.predicate,t.subject,r.reifiedStatementId);for(let e=0;e=0)throw this.newParseError(`Illegal property element name: ${e.local}`);t.predicateSubPredicates=[],t.predicateSubObjects=[];let n=!1,i=!1,a=null,o=!0;const s=[],c=[];for(const r in e.attributes){const d=e.attributes[r];if(d.uri===u.RDF)switch(d.local){case"resource":if(a)throw this.newParseError(`Found both rdf:resource (${d.value}) and rdf:nodeID (${a}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${d.value})`);t.hadChildren=!0,a=d.value,o=!1;continue;case"datatype":if(i)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${d.value}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${d.value})`);t.datatype=this.valueToUri(d.value,t);continue;case"nodeID":if(i)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${d.value}).`);if(t.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${d.value}).`);if(n)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${d.value})`);this.validateNcname(d.value),t.hadChildren=!0,a=d.value,o=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(i)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(t.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${t.datatype.value})`);if(a)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${a})`);if("Resource"===d.value){n=!0,t.childrenParseType=l.PROPERTY;const e=this.dataFactory.blankNode();this.emitTriple(t.subject,t.predicate,e,t.reifiedStatementId),t.subject=e,t.predicate=null}else"Collection"===d.value?(n=!0,t.hadChildren=!0,t.childrenCollectionSubject=t.subject,t.childrenCollectionPredicate=t.predicate,o=!1):"Literal"===d.value&&(n=!0,t.childrenTagsToString=!0,t.childrenStringTags=[]);continue;case"ID":this.validateNcname(d.value),t.reifiedStatementId=this.valueToUri("#"+d.value,t),this.claimNodeId(t.reifiedStatementId);continue}else if(d.uri===u.XML&&"lang"===d.local){t.language=""===d.value?null:d.value.toLowerCase();continue}if("xml"!==d.prefix&&"xmlns"!==d.prefix&&(""!==d.prefix||"xmlns"!==d.local)&&d.uri){if(n||t.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${d.value}`);t.hadChildren=!0,i=!0,s.push(this.uriToNamedNode(d.uri+d.local)),c.push(this.dataFactory.literal(d.value,t.datatype||t.language))}}if(null!==a){const e=t.subject;t.subject=o?this.dataFactory.blankNode(a):this.valueToUri(a,t),this.emitTriple(e,t.predicate,t.subject,t.reifiedStatementId);for(let e=0;e/g,((e,t,r)=>(this.saxParser.ENTITIES[t]=r,"")))}}var l;t.RdfXmlParser=u,u.MIME_TYPE="application/rdf+xml",u.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",u.XML="http://www.w3.org/XML/1998/namespace",u.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],u.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],u.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,function(e){e[e.RESOURCE=0]="RESOURCE",e[e.PROPERTY=1]="PROPERTY"}(l||(t.ParseType=l={}))},87809:e=>{e.exports=function(t){if(!e.exports.WEBSTREAM_SUPPORT)throw new Error("No web ReadableStream support");var r=!1,n={};return new ReadableStream({start:function(e){for(var i in n.data=a,n.end=a,n.end=o,n.close=o,n.error=o,n)t.on(i,n[i]);function a(n){r||(e.enqueue(n),t.pause())}function o(i){if(!r){for(var a in r=!0,n)t.removeListener(a,n[a]);i?e.error(i):e.close()}}t.pause()},pull:function(){r||t.resume()},cancel:function(){for(var e in r=!0,n)t.removeListener(e,n[e]);t.push(null),t.pause(),t.destroy?t.destroy():t.close&&t.close()}})},e.exports.WEBSTREAM_SUPPORT="undefined"!=typeof ReadableStream},53952:(e,t,r)=>{"use strict";const{AbortError:n,codes:i}=r(79865),{isNodeStream:a,isWebStream:o,kControllerErrorFunction:s}=r(82211),c=r(59885),{ERR_INVALID_ARG_TYPE:u}=i;e.exports.addAbortSignal=function(t,r){if(((e,t)=>{if("object"!=typeof e||!("aborted"in e))throw new u("signal","AbortSignal",e)})(t),!a(r)&&!o(r))throw new u("stream",["ReadableStream","WritableStream","Stream"],r);return e.exports.addAbortSignalNoValidate(t,r)},e.exports.addAbortSignalNoValidate=function(e,t){if("object"!=typeof e||!("aborted"in e))return t;const r=a(t)?()=>{t.destroy(new n(void 0,{cause:e.reason}))}:()=>{t[s](new n(void 0,{cause:e.reason}))};return e.aborted?r():(e.addEventListener("abort",r),c(t,(()=>e.removeEventListener("abort",r)))),t}},56637:(e,t,r)=>{"use strict";const{StringPrototypeSlice:n,SymbolIterator:i,TypedArrayPrototypeSet:a,Uint8Array:o}=r(11122),{Buffer:s}=r(48834),{inspect:c}=r(52092);e.exports=class{constructor(){this.head=null,this.tail=null,this.length=0}push(e){const t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length}unshift(e){const t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}shift(){if(0===this.length)return;const e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}clear(){this.head=this.tail=null,this.length=0}join(e){if(0===this.length)return"";let t=this.head,r=""+t.data;for(;null!==(t=t.next);)r+=e+t.data;return r}concat(e){if(0===this.length)return s.alloc(0);const t=s.allocUnsafe(e>>>0);let r=this.head,n=0;for(;r;)a(t,r.data,n),n+=r.data.length,r=r.next;return t}consume(e,t){const r=this.head.data;if(ea.length)){e===a.length?(t+=a,++i,r.next?this.head=r.next:this.head=this.tail=null):(t+=n(a,0,e),this.head=r,r.data=n(a,e));break}t+=a,e-=a.length,++i}while(null!==(r=r.next));return this.length-=i,t}_getBuffer(e){const t=s.allocUnsafe(e),r=e;let n=this.head,i=0;do{const s=n.data;if(!(e>s.length)){e===s.length?(a(t,s,r-e),++i,n.next?this.head=n.next:this.head=this.tail=null):(a(t,new o(s.buffer,s.byteOffset,e),r-e),this.head=n,n.data=s.slice(e));break}a(t,s,r-e),e-=s.length,++i}while(null!==(n=n.next));return this.length-=i,t}[Symbol.for("nodejs.util.inspect.custom")](e,t){return c(this,{...t,depth:0,customInspect:!1})}}},9732:(e,t,r)=>{"use strict";const{pipeline:n}=r(63495),i=r(72852),{destroyer:a}=r(12262),{isNodeStream:o,isReadable:s,isWritable:c,isWebStream:u,isTransformStream:l,isWritableStream:d,isReadableStream:h}=r(82211),{AbortError:p,codes:{ERR_INVALID_ARG_VALUE:f,ERR_MISSING_ARGS:y}}=r(79865),g=r(59885);e.exports=function(...e){if(0===e.length)throw new y("streams");if(1===e.length)return i.from(e[0]);const t=[...e];if("function"==typeof e[0]&&(e[0]=i.from(e[0])),"function"==typeof e[e.length-1]){const t=e.length-1;e[t]=i.from(e[t])}for(let r=0;r0&&!(c(e[r])||d(e[r])||l(e[r])))throw new f(`streams[${r}]`,t[r],"must be writable")}let r,m,b,v,_;const w=e[0],T=n(e,(function(e){const t=v;v=null,t?t(e):e?_.destroy(e):O||S||_.destroy()})),S=!!(c(w)||d(w)||l(w)),O=!!(s(T)||h(T)||l(T));if(_=new i({writableObjectMode:!(null==w||!w.writableObjectMode),readableObjectMode:!(null==T||!T.writableObjectMode),writable:S,readable:O}),S){if(o(w))_._write=function(e,t,n){w.write(e,t)?n():r=n},_._final=function(e){w.end(),m=e},w.on("drain",(function(){if(r){const e=r;r=null,e()}}));else if(u(w)){const e=(l(w)?w.writable:w).getWriter();_._write=async function(t,r,n){try{await e.ready,e.write(t).catch((()=>{})),n()}catch(e){n(e)}},_._final=async function(t){try{await e.ready,e.close().catch((()=>{})),m=t}catch(e){t(e)}}}const e=l(T)?T.readable:T;g(e,(()=>{if(m){const e=m;m=null,e()}}))}if(O)if(o(T))T.on("readable",(function(){if(b){const e=b;b=null,e()}})),T.on("end",(function(){_.push(null)})),_._read=function(){for(;;){const e=T.read();if(null===e)return void(b=_._read);if(!_.push(e))return}};else if(u(T)){const e=(l(T)?T.readable:T).getReader();_._read=async function(){for(;;)try{const{value:t,done:r}=await e.read();if(!_.push(t))return;if(r)return void _.push(null)}catch{return}}}return _._destroy=function(e,t){e||null===v||(e=new p),b=null,r=null,m=null,null===v?t(e):(v=t,o(T)&&a(T,e))},_}},12262:(e,t,r)=>{"use strict";const n=r(34406),{aggregateTwoErrors:i,codes:{ERR_MULTIPLE_CALLBACK:a},AbortError:o}=r(79865),{Symbol:s}=r(11122),{kDestroyed:c,isDestroyed:u,isFinished:l,isServerRequest:d}=r(82211),h=s("kDestroy"),p=s("kConstruct");function f(e,t,r){e&&(e.stack,t&&!t.errored&&(t.errored=e),r&&!r.errored&&(r.errored=e))}function y(e,t,r){let i=!1;function a(t){if(i)return;i=!0;const a=e._readableState,o=e._writableState;f(t,o,a),o&&(o.closed=!0),a&&(a.closed=!0),"function"==typeof r&&r(t),t?n.nextTick(g,e,t):n.nextTick(m,e)}try{e._destroy(t||null,a)}catch(t){a(t)}}function g(e,t){b(e,t),m(e)}function m(e){const t=e._readableState,r=e._writableState;r&&(r.closeEmitted=!0),t&&(t.closeEmitted=!0),(null!=r&&r.emitClose||null!=t&&t.emitClose)&&e.emit("close")}function b(e,t){const r=e._readableState,n=e._writableState;null!=n&&n.errorEmitted||null!=r&&r.errorEmitted||(n&&(n.errorEmitted=!0),r&&(r.errorEmitted=!0),e.emit("error",t))}function v(e,t,r){const i=e._readableState,a=e._writableState;if(null!=a&&a.destroyed||null!=i&&i.destroyed)return this;null!=i&&i.autoDestroy||null!=a&&a.autoDestroy?e.destroy(t):t&&(t.stack,a&&!a.errored&&(a.errored=t),i&&!i.errored&&(i.errored=t),r?n.nextTick(b,e,t):b(e,t))}function _(e){let t=!1;function r(r){if(t)return void v(e,null!=r?r:new a);t=!0;const i=e._readableState,o=e._writableState,s=o||i;i&&(i.constructed=!0),o&&(o.constructed=!0),s.destroyed?e.emit(h,r):r?v(e,r,!0):n.nextTick(w,e)}try{e._construct((e=>{n.nextTick(r,e)}))}catch(e){n.nextTick(r,e)}}function w(e){e.emit(p)}function T(e){return(null==e?void 0:e.setHeader)&&"function"==typeof e.abort}function S(e){e.emit("close")}function O(e,t){e.emit("error",t),n.nextTick(S,e)}e.exports={construct:function(e,t){if("function"!=typeof e._construct)return;const r=e._readableState,i=e._writableState;r&&(r.constructed=!1),i&&(i.constructed=!1),e.once(p,t),e.listenerCount(p)>1||n.nextTick(_,e)},destroyer:function(e,t){e&&!u(e)&&(t||l(e)||(t=new o),d(e)?(e.socket=null,e.destroy(t)):T(e)?e.abort():T(e.req)?e.req.abort():"function"==typeof e.destroy?e.destroy(t):"function"==typeof e.close?e.close():t?n.nextTick(O,e,t):n.nextTick(S,e),e.destroyed||(e[c]=!0))},destroy:function(e,t){const r=this._readableState,n=this._writableState,a=n||r;return null!=n&&n.destroyed||null!=r&&r.destroyed?("function"==typeof t&&t(),this):(f(e,n,r),n&&(n.destroyed=!0),r&&(r.destroyed=!0),a.constructed?y(this,e,t):this.once(h,(function(r){y(this,i(r,e),t)})),this)},undestroy:function(){const e=this._readableState,t=this._writableState;e&&(e.constructed=!0,e.closed=!1,e.closeEmitted=!1,e.destroyed=!1,e.errored=null,e.errorEmitted=!1,e.reading=!1,e.ended=!1===e.readable,e.endEmitted=!1===e.readable),t&&(t.constructed=!0,t.destroyed=!1,t.closed=!1,t.closeEmitted=!1,t.errored=null,t.errorEmitted=!1,t.finalCalled=!1,t.prefinished=!1,t.ended=!1===t.writable,t.ending=!1===t.writable,t.finished=!1===t.writable)},errorOrDestroy:v}},72852:(e,t,r)=>{"use strict";const{ObjectDefineProperties:n,ObjectGetOwnPropertyDescriptor:i,ObjectKeys:a,ObjectSetPrototypeOf:o}=r(11122);e.exports=u;const s=r(20182),c=r(70080);o(u.prototype,s.prototype),o(u,s);{const e=a(c.prototype);for(let t=0;t{const n=r(34406),i=r(48834),{isReadable:a,isWritable:o,isIterable:s,isNodeStream:c,isReadableNodeStream:u,isWritableNodeStream:l,isDuplexNodeStream:d}=r(82211),h=r(59885),{AbortError:p,codes:{ERR_INVALID_ARG_TYPE:f,ERR_INVALID_RETURN_VALUE:y}}=r(79865),{destroyer:g}=r(12262),m=r(72852),b=r(20182),{createDeferredPromise:v}=r(52092),_=r(37549),w=globalThis.Blob||i.Blob,T=void 0!==w?function(e){return e instanceof w}:function(e){return!1},S=globalThis.AbortController||r(47948).AbortController,{FunctionPrototypeCall:O}=r(11122);class E extends m{constructor(e){super(e),!1===(null==e?void 0:e.readable)&&(this._readableState.readable=!1,this._readableState.ended=!0,this._readableState.endEmitted=!0),!1===(null==e?void 0:e.writable)&&(this._writableState.writable=!1,this._writableState.ending=!0,this._writableState.ended=!0,this._writableState.finished=!0)}}function x(e){const t=e.readable&&"function"!=typeof e.readable.read?b.wrap(e.readable):e.readable,r=e.writable;let n,i,s,c,u,l=!!a(t),d=!!o(r);function f(e){const t=c;c=null,t?t(e):e&&u.destroy(e)}return u=new E({readableObjectMode:!(null==t||!t.readableObjectMode),writableObjectMode:!(null==r||!r.writableObjectMode),readable:l,writable:d}),d&&(h(r,(e=>{d=!1,e&&g(t,e),f(e)})),u._write=function(e,t,i){r.write(e,t)?i():n=i},u._final=function(e){r.end(),i=e},r.on("drain",(function(){if(n){const e=n;n=null,e()}})),r.on("finish",(function(){if(i){const e=i;i=null,e()}}))),l&&(h(t,(e=>{l=!1,e&&g(t,e),f(e)})),t.on("readable",(function(){if(s){const e=s;s=null,e()}})),t.on("end",(function(){u.push(null)})),u._read=function(){for(;;){const e=t.read();if(null===e)return void(s=u._read);if(!u.push(e))return}}),u._destroy=function(e,a){e||null===c||(e=new p),s=null,n=null,i=null,null===c?a(e):(c=a,g(r,e),g(t,e))},u}e.exports=function e(t,r){if(d(t))return t;if(u(t))return x({readable:t});if(l(t))return x({writable:t});if(c(t))return x({writable:!1,readable:!1});if("function"==typeof t){const{value:e,write:i,final:a,destroy:o}=function(e){let{promise:t,resolve:r}=v();const i=new S,a=i.signal;return{value:e(async function*(){for(;;){const e=t;t=null;const{chunk:i,done:o,cb:s}=await e;if(n.nextTick(s),o)return;if(a.aborted)throw new p(void 0,{cause:a.reason});({promise:t,resolve:r}=v()),yield i}}(),{signal:a}),write(e,t,n){const i=r;r=null,i({chunk:e,done:!1,cb:n})},final(e){const t=r;r=null,t({done:!0,cb:e})},destroy(e,t){i.abort(),t(e)}}}(t);if(s(e))return _(E,e,{objectMode:!0,write:i,final:a,destroy:o});const c=null==e?void 0:e.then;if("function"==typeof c){let t;const r=O(c,e,(e=>{if(null!=e)throw new y("nully","body",e)}),(e=>{g(t,e)}));return t=new E({objectMode:!0,readable:!1,write:i,final(e){a((async()=>{try{await r,n.nextTick(e,null)}catch(t){n.nextTick(e,t)}}))},destroy:o})}throw new y("Iterable, AsyncIterable or AsyncFunction",r,e)}if(T(t))return e(t.arrayBuffer());if(s(t))return _(E,t,{objectMode:!0,writable:!1});if("object"==typeof(null==t?void 0:t.writable)||"object"==typeof(null==t?void 0:t.readable))return x({readable:null!=t&&t.readable?u(null==t?void 0:t.readable)?null==t?void 0:t.readable:e(t.readable):void 0,writable:null!=t&&t.writable?l(null==t?void 0:t.writable)?null==t?void 0:t.writable:e(t.writable):void 0});const i=null==t?void 0:t.then;if("function"==typeof i){let e;return O(i,t,(t=>{null!=t&&e.push(t),e.push(null)}),(t=>{g(e,t)})),e=new E({objectMode:!0,writable:!1,read(){}})}throw new f(r,["Blob","ReadableStream","WritableStream","Stream","Iterable","AsyncIterable","Function","{ readable, writable } pair","Promise"],t)}},59885:(e,t,r)=>{const n=r(34406),{AbortError:i,codes:a}=r(79865),{ERR_INVALID_ARG_TYPE:o,ERR_STREAM_PREMATURE_CLOSE:s}=a,{kEmptyObject:c,once:u}=r(52092),{validateAbortSignal:l,validateFunction:d,validateObject:h,validateBoolean:p}=r(52209),{Promise:f,PromisePrototypeThen:y}=r(11122),{isClosed:g,isReadable:m,isReadableNodeStream:b,isReadableStream:v,isReadableFinished:_,isReadableErrored:w,isWritable:T,isWritableNodeStream:S,isWritableStream:O,isWritableFinished:E,isWritableErrored:x,isNodeStream:A,willEmitClose:R,kIsClosedPromise:I}=r(82211),P=()=>{};function D(e,t,r){var a,p;if(2===arguments.length?(r=t,t=c):null==t?t=c:h(t,"options"),d(r,"callback"),l(t.signal,"options.signal"),r=u(r),v(e)||O(e))return function(e,t,r){let a=!1,o=P;if(t.signal)if(o=()=>{a=!0,r.call(e,new i(void 0,{cause:t.signal.reason}))},t.signal.aborted)n.nextTick(o);else{const n=r;r=u(((...r)=>{t.signal.removeEventListener("abort",o),n.apply(e,r)})),t.signal.addEventListener("abort",o)}const s=(...t)=>{a||n.nextTick((()=>r.apply(e,t)))};return y(e[I].promise,s,s),P}(e,t,r);if(!A(e))throw new o("stream",["ReadableStream","WritableStream","Stream"],e);const f=null!==(a=t.readable)&&void 0!==a?a:b(e),D=null!==(p=t.writable)&&void 0!==p?p:S(e),N=e._writableState,j=e._readableState,C=()=>{e.writable||k()};let M=R(e)&&b(e)===f&&S(e)===D,L=E(e,!1);const k=()=>{L=!0,e.destroyed&&(M=!1),(!M||e.readable&&!f)&&(f&&!F||r.call(e))};let F=_(e,!1);const B=()=>{F=!0,e.destroyed&&(M=!1),(!M||e.writable&&!D)&&(D&&!L||r.call(e))},U=t=>{r.call(e,t)};let q=g(e);const V=()=>{q=!0;const t=x(e)||w(e);return t&&"boolean"!=typeof t?r.call(e,t):f&&!F&&b(e,!0)&&!_(e,!1)?r.call(e,new s):!D||L||E(e,!1)?void r.call(e):r.call(e,new s)},Q=()=>{q=!0;const t=x(e)||w(e);if(t&&"boolean"!=typeof t)return r.call(e,t);r.call(e)},$=()=>{e.req.on("finish",k)};!function(e){return e.setHeader&&"function"==typeof e.abort}(e)?D&&!N&&(e.on("end",C),e.on("close",C)):(e.on("complete",k),M||e.on("abort",V),e.req?$():e.on("request",$)),M||"boolean"!=typeof e.aborted||e.on("aborted",V),e.on("end",B),e.on("finish",k),!1!==t.error&&e.on("error",U),e.on("close",V),q?n.nextTick(V):null!=N&&N.errorEmitted||null!=j&&j.errorEmitted?M||n.nextTick(Q):(f||M&&!m(e)||!L&&!1!==T(e))&&(D||M&&!T(e)||!F&&!1!==m(e))?j&&e.req&&e.aborted&&n.nextTick(Q):n.nextTick(Q);const H=()=>{r=P,e.removeListener("aborted",V),e.removeListener("complete",k),e.removeListener("abort",V),e.removeListener("request",$),e.req&&e.req.removeListener("finish",k),e.removeListener("end",C),e.removeListener("close",C),e.removeListener("finish",k),e.removeListener("end",B),e.removeListener("error",U),e.removeListener("close",V)};if(t.signal&&!q){const a=()=>{const n=r;H(),n.call(e,new i(void 0,{cause:t.signal.reason}))};if(t.signal.aborted)n.nextTick(a);else{const n=r;r=u(((...r)=>{t.signal.removeEventListener("abort",a),n.apply(e,r)})),t.signal.addEventListener("abort",a)}}return H}e.exports=D,e.exports.finished=function(e,t){var r;let n=!1;return null===t&&(t=c),null!==(r=t)&&void 0!==r&&r.cleanup&&(p(t.cleanup,"cleanup"),n=t.cleanup),new f(((r,i)=>{const a=D(e,t,(e=>{n&&a(),e?i(e):r()}))}))}},37549:(e,t,r)=>{"use strict";const n=r(34406),{PromisePrototypeThen:i,SymbolAsyncIterator:a,SymbolIterator:o}=r(11122),{Buffer:s}=r(48834),{ERR_INVALID_ARG_TYPE:c,ERR_STREAM_NULL_VALUES:u}=r(79865).codes;e.exports=function(e,t,r){let l,d;if("string"==typeof t||t instanceof s)return new e({objectMode:!0,...r,read(){this.push(t),this.push(null)}});if(t&&t[a])d=!0,l=t[a]();else{if(!t||!t[o])throw new c("iterable",["Iterable"],t);d=!1,l=t[o]()}const h=new e({objectMode:!0,highWaterMark:1,...r});let p=!1;return h._read=function(){p||(p=!0,async function(){for(;;){try{const{value:e,done:t}=d?await l.next():l.next();if(t)h.push(null);else{const t=e&&"function"==typeof e.then?await e:e;if(null===t)throw p=!1,new u;if(h.push(t))continue;p=!1}}catch(e){h.destroy(e)}break}}())},h._destroy=function(e,t){i(async function(e){const t=null!=e,r="function"==typeof l.throw;if(t&&r){const{value:t,done:r}=await l.throw(e);if(await t,r)return}if("function"==typeof l.return){const{value:e}=await l.return();await e}}(e),(()=>n.nextTick(t,e)),(r=>n.nextTick(t,r||e)))},h}},13798:(e,t,r)=>{"use strict";const{ArrayIsArray:n,ObjectSetPrototypeOf:i}=r(11122),{EventEmitter:a}=r(22699);function o(e){a.call(this,e)}function s(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?n(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}i(o.prototype,a.prototype),i(o,a),o.prototype.pipe=function(e,t){const r=this;function n(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function i(){r.readable&&r.resume&&r.resume()}r.on("data",n),e.on("drain",i),e._isStdio||t&&!1===t.end||(r.on("end",c),r.on("close",u));let o=!1;function c(){o||(o=!0,e.end())}function u(){o||(o=!0,"function"==typeof e.destroy&&e.destroy())}function l(e){d(),0===a.listenerCount(this,"error")&&this.emit("error",e)}function d(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",c),r.removeListener("close",u),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",d),r.removeListener("close",d),e.removeListener("close",d)}return s(r,"error",l),s(e,"error",l),r.on("end",d),r.on("close",d),e.on("close",d),e.emit("pipe",r),e},e.exports={Stream:o,prependListener:s}},51273:(e,t,r)=>{"use strict";const n=globalThis.AbortController||r(47948).AbortController,{codes:{ERR_INVALID_ARG_VALUE:i,ERR_INVALID_ARG_TYPE:a,ERR_MISSING_ARGS:o,ERR_OUT_OF_RANGE:s},AbortError:c}=r(79865),{validateAbortSignal:u,validateInteger:l,validateObject:d}=r(52209),h=r(11122).Symbol("kWeak"),{finished:p}=r(59885),f=r(9732),{addAbortSignalNoValidate:y}=r(53952),{isWritable:g,isNodeStream:m}=r(82211),{ArrayPrototypePush:b,MathFloor:v,Number:_,NumberIsNaN:w,Promise:T,PromiseReject:S,PromisePrototypeThen:O,Symbol:E}=r(11122),x=E("kEmpty"),A=E("kEof");function R(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal");let r=1;return null!=(null==t?void 0:t.concurrency)&&(r=v(t.concurrency)),l(r,"concurrency",1),async function*(){var i,a;const o=new n,s=this,u=[],l=o.signal,d={signal:l},h=()=>o.abort();let p,f;null!=t&&null!==(i=t.signal)&&void 0!==i&&i.aborted&&h(),null==t||null===(a=t.signal)||void 0===a||a.addEventListener("abort",h);let y=!1;function g(){y=!0}!async function(){try{for await(let t of s){var n;if(y)return;if(l.aborted)throw new c;try{t=e(t,d)}catch(e){t=S(e)}t!==x&&("function"==typeof(null===(n=t)||void 0===n?void 0:n.catch)&&t.catch(g),u.push(t),p&&(p(),p=null),!y&&u.length&&u.length>=r&&await new T((e=>{f=e})))}u.push(A)}catch(e){const t=S(e);O(t,void 0,g),u.push(t)}finally{var i;y=!0,p&&(p(),p=null),null==t||null===(i=t.signal)||void 0===i||i.removeEventListener("abort",h)}}();try{for(;;){for(;u.length>0;){const e=await u[0];if(e===A)return;if(l.aborted)throw new c;e!==x&&(yield e),u.shift(),f&&(f(),f=null)}await new T((e=>{p=e}))}}finally{o.abort(),y=!0,f&&(f(),f=null)}}.call(this)}async function I(e,t=void 0){for await(const r of P.call(this,e,t))return!0;return!1}function P(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);return R.call(this,(async function(t,r){return await e(t,r)?t:x}),t)}class D extends o{constructor(){super("reduce"),this.message="Reduce of an empty stream requires an initial value"}}function N(e){if(e=_(e),w(e))return 0;if(e<0)throw new s("number",">= 0",e);return e}e.exports.streamReturningOperators={asIndexedPairs:function(e=void 0){return null!=e&&d(e,"options"),null!=(null==e?void 0:e.signal)&&u(e.signal,"options.signal"),async function*(){let t=0;for await(const n of this){var r;if(null!=e&&null!==(r=e.signal)&&void 0!==r&&r.aborted)throw new c({cause:e.signal.reason});yield[t++,n]}}.call(this)},drop:function(e,t=void 0){return null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),e=N(e),async function*(){var r;if(null!=t&&null!==(r=t.signal)&&void 0!==r&&r.aborted)throw new c;for await(const r of this){var n;if(null!=t&&null!==(n=t.signal)&&void 0!==n&&n.aborted)throw new c;e--<=0&&(yield r)}}.call(this)},filter:P,flatMap:function(e,t){const r=R.call(this,e,t);return async function*(){for await(const e of r)yield*e}.call(this)},map:R,take:function(e,t=void 0){return null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),e=N(e),async function*(){var r;if(null!=t&&null!==(r=t.signal)&&void 0!==r&&r.aborted)throw new c;for await(const r of this){var n;if(null!=t&&null!==(n=t.signal)&&void 0!==n&&n.aborted)throw new c;if(!(e-- >0))return;yield r}}.call(this)},compose:function(e,t){if(null!=t&&d(t,"options"),null!=(null==t?void 0:t.signal)&&u(t.signal,"options.signal"),m(e)&&!g(e))throw new i("stream",e,"must be writable");const r=f(this,e);return null!=t&&t.signal&&y(t.signal,r),r}},e.exports.promiseReturningOperators={every:async function(e,t=void 0){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);return!await I.call(this,(async(...t)=>!await e(...t)),t)},forEach:async function(e,t){if("function"!=typeof e)throw new a("fn",["Function","AsyncFunction"],e);for await(const r of R.call(this,(async function(t,r){return await e(t,r),x}),t));},reduce:async function(e,t,r){var i;if("function"!=typeof e)throw new a("reducer",["Function","AsyncFunction"],e);null!=r&&d(r,"options"),null!=(null==r?void 0:r.signal)&&u(r.signal,"options.signal");let o=arguments.length>1;if(null!=r&&null!==(i=r.signal)&&void 0!==i&&i.aborted){const e=new c(void 0,{cause:r.signal.reason});throw this.once("error",(()=>{})),await p(this.destroy(e)),e}const s=new n,l=s.signal;if(null!=r&&r.signal){const e={once:!0,[h]:this};r.signal.addEventListener("abort",(()=>s.abort()),e)}let f=!1;try{for await(const n of this){var y;if(f=!0,null!=r&&null!==(y=r.signal)&&void 0!==y&&y.aborted)throw new c;o?t=await e(t,n,{signal:l}):(t=n,o=!0)}if(!f&&!o)throw new D}finally{s.abort()}return t},toArray:async function(e){null!=e&&d(e,"options"),null!=(null==e?void 0:e.signal)&&u(e.signal,"options.signal");const t=[];for await(const n of this){var r;if(null!=e&&null!==(r=e.signal)&&void 0!==r&&r.aborted)throw new c(void 0,{cause:e.signal.reason});b(t,n)}return t},some:I,find:async function(e,t){for await(const r of P.call(this,e,t))return r}}},34584:(e,t,r)=>{"use strict";const{ObjectSetPrototypeOf:n}=r(11122);e.exports=a;const i=r(1112);function a(e){if(!(this instanceof a))return new a(e);i.call(this,e)}n(a.prototype,i.prototype),n(a,i),a.prototype._transform=function(e,t,r){r(null,e)}},63495:(e,t,r)=>{const n=r(34406),{ArrayIsArray:i,Promise:a,SymbolAsyncIterator:o}=r(11122),s=r(59885),{once:c}=r(52092),u=r(12262),l=r(72852),{aggregateTwoErrors:d,codes:{ERR_INVALID_ARG_TYPE:h,ERR_INVALID_RETURN_VALUE:p,ERR_MISSING_ARGS:f,ERR_STREAM_DESTROYED:y,ERR_STREAM_PREMATURE_CLOSE:g},AbortError:m}=r(79865),{validateFunction:b,validateAbortSignal:v}=r(52209),{isIterable:_,isReadable:w,isReadableNodeStream:T,isNodeStream:S,isTransformStream:O,isWebStream:E,isReadableStream:x,isReadableEnded:A}=r(82211),R=globalThis.AbortController||r(47948).AbortController;let I,P;function D(e,t,r){let n=!1;return e.on("close",(()=>{n=!0})),{destroy:t=>{n||(n=!0,u.destroyer(e,t||new y("pipe")))},cleanup:s(e,{readable:t,writable:r},(e=>{n=!e}))}}function N(e){if(_(e))return e;if(T(e))return async function*(e){P||(P=r(20182)),yield*P.prototype[o].call(e)}(e);throw new h("val",["Readable","Iterable","AsyncIterable"],e)}async function j(e,t,r,{end:n}){let i,o=null;const c=e=>{if(e&&(i=e),o){const e=o;o=null,e()}},u=()=>new a(((e,t)=>{i?t(i):o=()=>{i?t(i):e()}}));t.on("drain",c);const l=s(t,{readable:!1},c);try{t.writableNeedDrain&&await u();for await(const r of e)t.write(r)||await u();n&&t.end(),await u(),r()}catch(e){r(i!==e?d(i,e):e)}finally{l(),t.off("drain",c)}}async function C(e,t,r,{end:n}){O(t)&&(t=t.writable);const i=t.getWriter();try{for await(const t of e)await i.ready,i.write(t).catch((()=>{}));await i.ready,n&&await i.close(),r()}catch(e){try{await i.abort(e),r(e)}catch(e){r(e)}}}function M(e,t,a){if(1===e.length&&i(e[0])&&(e=e[0]),e.length<2)throw new f("streams");const o=new R,s=o.signal,c=null==a?void 0:a.signal,u=[];function d(){k(new m)}let y,g;v(c,"options.signal"),null==c||c.addEventListener("abort",d);const b=[];let A,P=0;function M(e){k(e,0==--P)}function k(e,r){if(!e||y&&"ERR_STREAM_PREMATURE_CLOSE"!==y.code||(y=e),y||r){for(;b.length;)b.shift()(y);null==c||c.removeEventListener("abort",d),o.abort(),r&&(y||u.forEach((e=>e())),n.nextTick(t,y,g))}}for(let q=0;q0,H=Q||!1!==(null==a?void 0:a.end),G=q===e.length-1;if(S(V)){if(H){const{destroy:z,cleanup:K}=D(V,Q,$);b.push(z),w(V)&&G&&u.push(K)}function F(e){e&&"AbortError"!==e.name&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code&&M(e)}V.on("error",F),w(V)&&G&&u.push((()=>{V.removeListener("error",F)}))}if(0===q)if("function"==typeof V){if(A=V({signal:s}),!_(A))throw new p("Iterable, AsyncIterable or Stream","source",A)}else A=_(V)||T(V)||O(V)?V:l.from(V);else if("function"==typeof V){var B;if(A=O(A)?N(null===(B=A)||void 0===B?void 0:B.readable):N(A),A=V(A,{signal:s}),Q){if(!_(A,!0))throw new p("AsyncIterable",`transform[${q-1}]`,A)}else{var U;I||(I=r(34584));const X=new I({objectMode:!0}),W=null===(U=A)||void 0===U?void 0:U.then;if("function"==typeof W)P++,W.call(A,(e=>{g=e,null!=e&&X.write(e),H&&X.end(),n.nextTick(M)}),(e=>{X.destroy(e),n.nextTick(M,e)}));else if(_(A,!0))P++,j(A,X,M,{end:H});else{if(!x(A)&&!O(A))throw new p("AsyncIterable or Promise","destination",A);{const Z=A.readable||A;P++,j(Z,X,M,{end:H})}}A=X;const{destroy:J,cleanup:Y}=D(A,!1,!0);b.push(J),G&&u.push(Y)}}else if(S(V)){if(T(A)){P+=2;const ee=L(A,V,M,{end:H});w(V)&&G&&u.push(ee)}else if(O(A)||x(A)){const te=A.readable||A;P++,j(te,V,M,{end:H})}else{if(!_(A))throw new h("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],A);P++,j(A,V,M,{end:H})}A=V}else if(E(V)){if(T(A))P++,C(N(A),V,M,{end:H});else if(x(A)||_(A))P++,C(A,V,M,{end:H});else{if(!O(A))throw new h("val",["Readable","Iterable","AsyncIterable","ReadableStream","TransformStream"],A);P++,C(A.readable,V,M,{end:H})}A=V}else A=l.from(V)}return(null!=s&&s.aborted||null!=c&&c.aborted)&&n.nextTick(d),A}function L(e,t,r,{end:i}){let a=!1;if(t.on("close",(()=>{a||r(new g)})),e.pipe(t,{end:!1}),i){function o(){a=!0,t.end()}A(e)?n.nextTick(o):e.once("end",o)}else r();return s(e,{readable:!0,writable:!1},(t=>{const n=e._readableState;t&&"ERR_STREAM_PREMATURE_CLOSE"===t.code&&n&&n.ended&&!n.errored&&!n.errorEmitted?e.once("end",r).once("error",r):r(t)})),s(t,{readable:!1,writable:!0},r)}e.exports={pipelineImpl:M,pipeline:function(...e){return M(e,c(function(e){return b(e[e.length-1],"streams[stream.length - 1]"),e.pop()}(e)))}}},20182:(e,t,r)=>{const n=r(34406),{ArrayPrototypeIndexOf:i,NumberIsInteger:a,NumberIsNaN:o,NumberParseInt:s,ObjectDefineProperties:c,ObjectKeys:u,ObjectSetPrototypeOf:l,Promise:d,SafeSet:h,SymbolAsyncIterator:p,Symbol:f}=r(11122);e.exports=B,B.ReadableState=F;const{EventEmitter:y}=r(22699),{Stream:g,prependListener:m}=r(13798),{Buffer:b}=r(48834),{addAbortSignal:v}=r(53952),_=r(59885);let w=r(52092).debuglog("stream",(e=>{w=e}));const T=r(56637),S=r(12262),{getHighWaterMark:O,getDefaultHighWaterMark:E}=r(87605),{aggregateTwoErrors:x,codes:{ERR_INVALID_ARG_TYPE:A,ERR_METHOD_NOT_IMPLEMENTED:R,ERR_OUT_OF_RANGE:I,ERR_STREAM_PUSH_AFTER_EOF:P,ERR_STREAM_UNSHIFT_AFTER_END_EVENT:D}}=r(79865),{validateObject:N}=r(52209),j=f("kPaused"),{StringDecoder:C}=r(30214),M=r(37549);l(B.prototype,g.prototype),l(B,g);const L=()=>{},{errorOrDestroy:k}=S;function F(e,t,n){"boolean"!=typeof n&&(n=t instanceof r(72852)),this.objectMode=!(!e||!e.objectMode),n&&(this.objectMode=this.objectMode||!(!e||!e.readableObjectMode)),this.highWaterMark=e?O(this,e,"readableHighWaterMark",n):E(!1),this.buffer=new T,this.length=0,this.pipes=[],this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.constructed=!0,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this[j]=null,this.errorEmitted=!1,this.emitClose=!e||!1!==e.emitClose,this.autoDestroy=!e||!1!==e.autoDestroy,this.destroyed=!1,this.errored=null,this.closed=!1,this.closeEmitted=!1,this.defaultEncoding=e&&e.defaultEncoding||"utf8",this.awaitDrainWriters=null,this.multiAwaitDrain=!1,this.readingMore=!1,this.dataEmitted=!1,this.decoder=null,this.encoding=null,e&&e.encoding&&(this.decoder=new C(e.encoding),this.encoding=e.encoding)}function B(e){if(!(this instanceof B))return new B(e);const t=this instanceof r(72852);this._readableState=new F(e,this,t),e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.construct&&(this._construct=e.construct),e.signal&&!t&&v(e.signal,this)),g.call(this,e),S.construct(this,(()=>{this._readableState.needReadable&&H(this,this._readableState)}))}function U(e,t,r,n){w("readableAddChunk",t);const i=e._readableState;let a;if(i.objectMode||("string"==typeof t?(r=r||i.defaultEncoding,i.encoding!==r&&(n&&i.encoding?t=b.from(t,r).toString(i.encoding):(t=b.from(t,r),r=""))):t instanceof b?r="":g._isUint8Array(t)?(t=g._uint8ArrayToBuffer(t),r=""):null!=t&&(a=new A("chunk",["string","Buffer","Uint8Array"],t))),a)k(e,a);else if(null===t)i.reading=!1,function(e,t){if(w("onEofChunk"),!t.ended){if(t.decoder){const e=t.decoder.end();e&&e.length&&(t.buffer.push(e),t.length+=t.objectMode?1:e.length)}t.ended=!0,t.sync?Q(e):(t.needReadable=!1,t.emittedReadable=!0,$(e))}}(e,i);else if(i.objectMode||t&&t.length>0)if(n)if(i.endEmitted)k(e,new D);else{if(i.destroyed||i.errored)return!1;q(e,i,t,!0)}else if(i.ended)k(e,new P);else{if(i.destroyed||i.errored)return!1;i.reading=!1,i.decoder&&!r?(t=i.decoder.write(t),i.objectMode||0!==t.length?q(e,i,t,!1):H(e,i)):q(e,i,t,!1)}else n||(i.reading=!1,H(e,i));return!i.ended&&(i.length0?(t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null,t.dataEmitted=!0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&Q(e)),H(e,t)}function V(e,t){return e<=0||0===t.length&&t.ended?0:t.objectMode?1:o(e)?t.flowing&&t.length?t.buffer.first().length:t.length:e<=t.length?e:t.ended?t.length:0}function Q(e){const t=e._readableState;w("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(w("emitReadable",t.flowing),t.emittedReadable=!0,n.nextTick($,e))}function $(e){const t=e._readableState;w("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||t.errored||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,W(e)}function H(e,t){!t.readingMore&&t.constructed&&(t.readingMore=!0,n.nextTick(G,e,t))}function G(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!1===t[j]?t.flowing=!0:e.listenerCount("data")>0?e.resume():t.readableListening||(t.flowing=null)}function K(e){w("readable nexttick read 0"),e.read(0)}function X(e,t){w("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),W(e),t.flowing&&!t.reading&&e.read(0)}function W(e){const t=e._readableState;for(w("flow",t.flowing);t.flowing&&null!==e.read(););}function J(e,t){"function"!=typeof e.read&&(e=B.wrap(e,{objectMode:!0}));const r=async function*(e,t){let r,n=L;function i(t){this===e?(n(),n=L):n=t}e.on("readable",i);const a=_(e,{writable:!1},(e=>{r=e?x(r,e):null,n(),n=L}));try{for(;;){const t=e.destroyed?null:e.read();if(null!==t)yield t;else{if(r)throw r;if(null===r)return;await new d(i)}}}catch(e){throw r=x(r,e),r}finally{!r&&!1===(null==t?void 0:t.destroyOnReturn)||void 0!==r&&!e._readableState.autoDestroy?(e.off("readable",i),a()):S.destroyer(e,null)}}(e,t);return r.stream=e,r}function Y(e,t){if(0===t.length)return null;let r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function Z(e){const t=e._readableState;w("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,n.nextTick(ee,t,e))}function ee(e,t){if(w("endReadableNT",e.endEmitted,e.length),!e.errored&&!e.closeEmitted&&!e.endEmitted&&0===e.length)if(e.endEmitted=!0,t.emit("end"),t.writable&&!1===t.allowHalfOpen)n.nextTick(te,t);else if(e.autoDestroy){const e=t._writableState;(!e||e.autoDestroy&&(e.finished||!1===e.writable))&&t.destroy()}}function te(e){e.writable&&!e.writableEnded&&!e.destroyed&&e.end()}let re;function ne(){return void 0===re&&(re={}),re}B.prototype.destroy=S.destroy,B.prototype._undestroy=S.undestroy,B.prototype._destroy=function(e,t){t(e)},B.prototype[y.captureRejectionSymbol]=function(e){this.destroy(e)},B.prototype.push=function(e,t){return U(this,e,t,!1)},B.prototype.unshift=function(e,t){return U(this,e,t,!0)},B.prototype.isPaused=function(){const e=this._readableState;return!0===e[j]||!1===e.flowing},B.prototype.setEncoding=function(e){const t=new C(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;const r=this._readableState.buffer;let n="";for(const e of r)n+=t.write(e);return r.clear(),""!==n&&r.push(n),this._readableState.length=n.length,this},B.prototype.read=function(e){w("read",e),void 0===e?e=NaN:a(e)||(e=s(e,10));const t=this._readableState,r=e;if(e>t.highWaterMark&&(t.highWaterMark=function(e){if(e>1073741824)throw new I("size","<= 1GiB",e);return e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,++e}(e)),0!==e&&(t.emittedReadable=!1),0===e&&t.needReadable&&((0!==t.highWaterMark?t.length>=t.highWaterMark:t.length>0)||t.ended))return w("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?Z(this):Q(this),null;if(0===(e=V(e,t))&&t.ended)return 0===t.length&&Z(this),null;let n,i=t.needReadable;if(w("need readable",i),(0===t.length||t.length-e0?Y(e,t):null,null===n?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.multiAwaitDrain?t.awaitDrainWriters.clear():t.awaitDrainWriters=null),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&Z(this)),null===n||t.errorEmitted||t.closeEmitted||(t.dataEmitted=!0,this.emit("data",n)),n},B.prototype._read=function(e){throw new R("_read()")},B.prototype.pipe=function(e,t){const r=this,i=this._readableState;1===i.pipes.length&&(i.multiAwaitDrain||(i.multiAwaitDrain=!0,i.awaitDrainWriters=new h(i.awaitDrainWriters?[i.awaitDrainWriters]:[]))),i.pipes.push(e),w("pipe count=%d opts=%j",i.pipes.length,t);const a=t&&!1===t.end||e===n.stdout||e===n.stderr?y:o;function o(){w("onend"),e.end()}let s;i.endEmitted?n.nextTick(a):r.once("end",a),e.on("unpipe",(function t(n,a){w("onunpipe"),n===r&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,w("cleanup"),e.removeListener("close",p),e.removeListener("finish",f),s&&e.removeListener("drain",s),e.removeListener("error",d),e.removeListener("unpipe",t),r.removeListener("end",o),r.removeListener("end",y),r.removeListener("data",l),c=!0,s&&i.awaitDrainWriters&&(!e._writableState||e._writableState.needDrain)&&s())}));let c=!1;function u(){c||(1===i.pipes.length&&i.pipes[0]===e?(w("false write response, pause",0),i.awaitDrainWriters=e,i.multiAwaitDrain=!1):i.pipes.length>1&&i.pipes.includes(e)&&(w("false write response, pause",i.awaitDrainWriters.size),i.awaitDrainWriters.add(e)),r.pause()),s||(s=function(e,t){return function(){const r=e._readableState;r.awaitDrainWriters===t?(w("pipeOnDrain",1),r.awaitDrainWriters=null):r.multiAwaitDrain&&(w("pipeOnDrain",r.awaitDrainWriters.size),r.awaitDrainWriters.delete(t)),r.awaitDrainWriters&&0!==r.awaitDrainWriters.size||!e.listenerCount("data")||e.resume()}}(r,e),e.on("drain",s))}function l(t){w("ondata");const r=e.write(t);w("dest.write",r),!1===r&&u()}function d(t){if(w("onerror",t),y(),e.removeListener("error",d),0===e.listenerCount("error")){const r=e._writableState||e._readableState;r&&!r.errorEmitted?k(e,t):e.emit("error",t)}}function p(){e.removeListener("finish",f),y()}function f(){w("onfinish"),e.removeListener("close",p),y()}function y(){w("unpipe"),r.unpipe(e)}return r.on("data",l),m(e,"error",d),e.once("close",p),e.once("finish",f),e.emit("pipe",r),!0===e.writableNeedDrain?i.flowing&&u():i.flowing||(w("pipe resume"),r.resume()),e},B.prototype.unpipe=function(e){const t=this._readableState;if(0===t.pipes.length)return this;if(!e){const e=t.pipes;t.pipes=[],this.pause();for(let t=0;t0,!1!==i.flowing&&this.resume()):"readable"===e&&(i.endEmitted||i.readableListening||(i.readableListening=i.needReadable=!0,i.flowing=!1,i.emittedReadable=!1,w("on readable",i.length,i.reading),i.length?Q(this):i.reading||n.nextTick(K,this))),r},B.prototype.addListener=B.prototype.on,B.prototype.removeListener=function(e,t){const r=g.prototype.removeListener.call(this,e,t);return"readable"===e&&n.nextTick(z,this),r},B.prototype.off=B.prototype.removeListener,B.prototype.removeAllListeners=function(e){const t=g.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||n.nextTick(z,this),t},B.prototype.resume=function(){const e=this._readableState;return e.flowing||(w("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(X,e,t))}(this,e)),e[j]=!1,this},B.prototype.pause=function(){return w("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(w("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState[j]=!0,this},B.prototype.wrap=function(e){let t=!1;e.on("data",(r=>{!this.push(r)&&e.pause&&(t=!0,e.pause())})),e.on("end",(()=>{this.push(null)})),e.on("error",(e=>{k(this,e)})),e.on("close",(()=>{this.destroy()})),e.on("destroy",(()=>{this.destroy()})),this._read=()=>{t&&e.resume&&(t=!1,e.resume())};const r=u(e);for(let t=1;t{"use strict";const{MathFloor:n,NumberIsInteger:i}=r(11122),{ERR_INVALID_ARG_VALUE:a}=r(79865).codes;function o(e){return e?16:16384}e.exports={getHighWaterMark:function(e,t,r,s){const c=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,s,r);if(null!=c){if(!i(c)||c<0)throw new a(s?`options.${r}`:"options.highWaterMark",c);return n(c)}return o(e.objectMode)},getDefaultHighWaterMark:o}},1112:(e,t,r)=>{"use strict";const{ObjectSetPrototypeOf:n,Symbol:i}=r(11122);e.exports=u;const{ERR_METHOD_NOT_IMPLEMENTED:a}=r(79865).codes,o=r(72852),{getHighWaterMark:s}=r(87605);n(u.prototype,o.prototype),n(u,o);const c=i("kCallback");function u(e){if(!(this instanceof u))return new u(e);const t=e?s(this,e,"readableHighWaterMark",!0):null;0===t&&(e={...e,highWaterMark:null,readableHighWaterMark:t,writableHighWaterMark:e.writableHighWaterMark||0}),o.call(this,e),this._readableState.sync=!1,this[c]=null,e&&("function"==typeof e.transform&&(this._transform=e.transform),"function"==typeof e.flush&&(this._flush=e.flush)),this.on("prefinish",d)}function l(e){"function"!=typeof this._flush||this.destroyed?(this.push(null),e&&e()):this._flush(((t,r)=>{t?e?e(t):this.destroy(t):(null!=r&&this.push(r),this.push(null),e&&e())}))}function d(){this._final!==l&&l.call(this)}u.prototype._final=l,u.prototype._transform=function(e,t,r){throw new a("_transform()")},u.prototype._write=function(e,t,r){const n=this._readableState,i=this._writableState,a=n.length;this._transform(e,t,((e,t)=>{e?r(e):(null!=t&&this.push(t),i.ended||a===n.length||n.length{"use strict";const{Symbol:n,SymbolAsyncIterator:i,SymbolIterator:a,SymbolFor:o}=r(11122),s=n("kDestroyed"),c=n("kIsErrored"),u=n("kIsReadable"),l=n("kIsDisturbed"),d=o("nodejs.webstream.isClosedPromise"),h=o("nodejs.webstream.controllerErrorFunction");function p(e,t=!1){var r;return!(!e||"function"!=typeof e.pipe||"function"!=typeof e.on||t&&("function"!=typeof e.pause||"function"!=typeof e.resume)||e._writableState&&!1===(null===(r=e._readableState)||void 0===r?void 0:r.readable)||e._writableState&&!e._readableState)}function f(e){var t;return!(!e||"function"!=typeof e.write||"function"!=typeof e.on||e._readableState&&!1===(null===(t=e._writableState)||void 0===t?void 0:t.writable))}function y(e){return e&&(e._readableState||e._writableState||"function"==typeof e.write&&"function"==typeof e.on||"function"==typeof e.pipe&&"function"==typeof e.on)}function g(e){return!(!e||y(e)||"function"!=typeof e.pipeThrough||"function"!=typeof e.getReader||"function"!=typeof e.cancel)}function m(e){return!(!e||y(e)||"function"!=typeof e.getWriter||"function"!=typeof e.abort)}function b(e){return!(!e||y(e)||"object"!=typeof e.readable||"object"!=typeof e.writable)}function v(e){if(!y(e))return null;const t=e._writableState,r=e._readableState,n=t||r;return!!(e.destroyed||e[s]||null!=n&&n.destroyed)}function _(e){if(!f(e))return null;if(!0===e.writableEnded)return!0;const t=e._writableState;return(null==t||!t.errored)&&("boolean"!=typeof(null==t?void 0:t.ended)?null:t.ended)}function w(e,t){if(!p(e))return null;const r=e._readableState;return(null==r||!r.errored)&&("boolean"!=typeof(null==r?void 0:r.endEmitted)?null:!!(r.endEmitted||!1===t&&!0===r.ended&&0===r.length))}function T(e){return e&&null!=e[u]?e[u]:"boolean"!=typeof(null==e?void 0:e.readable)?null:!v(e)&&p(e)&&e.readable&&!w(e)}function S(e){return"boolean"!=typeof(null==e?void 0:e.writable)?null:!v(e)&&f(e)&&e.writable&&!_(e)}function O(e){return"boolean"==typeof e._closed&&"boolean"==typeof e._defaultKeepAlive&&"boolean"==typeof e._removedConnection&&"boolean"==typeof e._removedContLen}function E(e){return"boolean"==typeof e._sent100&&O(e)}e.exports={kDestroyed:s,isDisturbed:function(e){var t;return!(!e||!(null!==(t=e[l])&&void 0!==t?t:e.readableDidRead||e.readableAborted))},kIsDisturbed:l,isErrored:function(e){var t,r,n,i,a,o,s,u,l,d;return!(!e||!(null!==(t=null!==(r=null!==(n=null!==(i=null!==(a=null!==(o=e[c])&&void 0!==o?o:e.readableErrored)&&void 0!==a?a:e.writableErrored)&&void 0!==i?i:null===(s=e._readableState)||void 0===s?void 0:s.errorEmitted)&&void 0!==n?n:null===(u=e._writableState)||void 0===u?void 0:u.errorEmitted)&&void 0!==r?r:null===(l=e._readableState)||void 0===l?void 0:l.errored)&&void 0!==t?t:null===(d=e._writableState)||void 0===d?void 0:d.errored))},kIsErrored:c,isReadable:T,kIsReadable:u,kIsClosedPromise:d,kControllerErrorFunction:h,isClosed:function(e){if(!y(e))return null;if("boolean"==typeof e.closed)return e.closed;const t=e._writableState,r=e._readableState;return"boolean"==typeof(null==t?void 0:t.closed)||"boolean"==typeof(null==r?void 0:r.closed)?(null==t?void 0:t.closed)||(null==r?void 0:r.closed):"boolean"==typeof e._closed&&O(e)?e._closed:null},isDestroyed:v,isDuplexNodeStream:function(e){return!(!e||"function"!=typeof e.pipe||!e._readableState||"function"!=typeof e.on||"function"!=typeof e.write)},isFinished:function(e,t){return y(e)?!(!v(e)&&(!1!==(null==t?void 0:t.readable)&&T(e)||!1!==(null==t?void 0:t.writable)&&S(e))):null},isIterable:function(e,t){return null!=e&&(!0===t?"function"==typeof e[i]:!1===t?"function"==typeof e[a]:"function"==typeof e[i]||"function"==typeof e[a])},isReadableNodeStream:p,isReadableStream:g,isReadableEnded:function(e){if(!p(e))return null;if(!0===e.readableEnded)return!0;const t=e._readableState;return!(!t||t.errored)&&("boolean"!=typeof(null==t?void 0:t.ended)?null:t.ended)},isReadableFinished:w,isReadableErrored:function(e){var t,r;return y(e)?e.readableErrored?e.readableErrored:null!==(t=null===(r=e._readableState)||void 0===r?void 0:r.errored)&&void 0!==t?t:null:null},isNodeStream:y,isWebStream:function(e){return g(e)||m(e)||b(e)},isWritable:S,isWritableNodeStream:f,isWritableStream:m,isWritableEnded:_,isWritableFinished:function(e,t){if(!f(e))return null;if(!0===e.writableFinished)return!0;const r=e._writableState;return(null==r||!r.errored)&&("boolean"!=typeof(null==r?void 0:r.finished)?null:!!(r.finished||!1===t&&!0===r.ended&&0===r.length))},isWritableErrored:function(e){var t,r;return y(e)?e.writableErrored?e.writableErrored:null!==(t=null===(r=e._writableState)||void 0===r?void 0:r.errored)&&void 0!==t?t:null:null},isServerRequest:function(e){var t;return"boolean"==typeof e._consuming&&"boolean"==typeof e._dumped&&void 0===(null===(t=e.req)||void 0===t?void 0:t.upgradeOrConnect)},isServerResponse:E,willEmitClose:function(e){if(!y(e))return null;const t=e._writableState,r=e._readableState,n=t||r;return!n&&E(e)||!!(n&&n.autoDestroy&&n.emitClose&&!1===n.closed)},isTransformStream:b}},70080:(e,t,r)=>{const n=r(34406),{ArrayPrototypeSlice:i,Error:a,FunctionPrototypeSymbolHasInstance:o,ObjectDefineProperty:s,ObjectDefineProperties:c,ObjectSetPrototypeOf:u,StringPrototypeToLowerCase:l,Symbol:d,SymbolHasInstance:h}=r(11122);e.exports=C,C.WritableState=N;const{EventEmitter:p}=r(22699),f=r(13798).Stream,{Buffer:y}=r(48834),g=r(12262),{addAbortSignal:m}=r(53952),{getHighWaterMark:b,getDefaultHighWaterMark:v}=r(87605),{ERR_INVALID_ARG_TYPE:_,ERR_METHOD_NOT_IMPLEMENTED:w,ERR_MULTIPLE_CALLBACK:T,ERR_STREAM_CANNOT_PIPE:S,ERR_STREAM_DESTROYED:O,ERR_STREAM_ALREADY_FINISHED:E,ERR_STREAM_NULL_VALUES:x,ERR_STREAM_WRITE_AFTER_END:A,ERR_UNKNOWN_ENCODING:R}=r(79865).codes,{errorOrDestroy:I}=g;function P(){}u(C.prototype,f.prototype),u(C,f);const D=d("kOnFinished");function N(e,t,n){"boolean"!=typeof n&&(n=t instanceof r(72852)),this.objectMode=!(!e||!e.objectMode),n&&(this.objectMode=this.objectMode||!(!e||!e.writableObjectMode)),this.highWaterMark=e?b(this,e,"writableHighWaterMark",n):v(!1),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;const i=!(!e||!1!==e.decodeStrings);this.decodeStrings=!i,this.defaultEncoding=e&&e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=F.bind(void 0,t),this.writecb=null,this.writelen=0,this.afterWriteTickInfo=null,j(this),this.pendingcb=0,this.constructed=!0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!e||!1!==e.emitClose,this.autoDestroy=!e||!1!==e.autoDestroy,this.errored=null,this.closed=!1,this.closeEmitted=!1,this[D]=[]}function j(e){e.buffered=[],e.bufferedIndex=0,e.allBuffers=!0,e.allNoop=!0}function C(e){const t=this instanceof r(72852);if(!t&&!o(C,this))return new C(e);this._writableState=new N(e,this,t),e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final),"function"==typeof e.construct&&(this._construct=e.construct),e.signal&&m(e.signal,this)),f.call(this,e),g.construct(this,(()=>{const e=this._writableState;e.writing||V(this,e),$(this,e)}))}function M(e,t,r,i){const a=e._writableState;if("function"==typeof r)i=r,r=a.defaultEncoding;else{if(r){if("buffer"!==r&&!y.isEncoding(r))throw new R(r)}else r=a.defaultEncoding;"function"!=typeof i&&(i=P)}if(null===t)throw new x;if(!a.objectMode)if("string"==typeof t)!1!==a.decodeStrings&&(t=y.from(t,r),r="buffer");else if(t instanceof y)r="buffer";else{if(!f._isUint8Array(t))throw new _("chunk",["string","Buffer","Uint8Array"],t);t=f._uint8ArrayToBuffer(t),r="buffer"}let o;return a.ending?o=new A:a.destroyed&&(o=new O("write")),o?(n.nextTick(i,o),I(e,o,!0),o):(a.pendingcb++,function(e,t,r,n,i){const a=t.objectMode?1:r.length;t.length+=a;const o=t.lengthr.bufferedIndex&&V(e,r),i?null!==r.afterWriteTickInfo&&r.afterWriteTickInfo.cb===a?r.afterWriteTickInfo.count++:(r.afterWriteTickInfo={count:1,cb:a,stream:e,state:r},n.nextTick(B,r.afterWriteTickInfo)):U(e,r,1,a))):I(e,new T)}function B({stream:e,state:t,count:r,cb:n}){return t.afterWriteTickInfo=null,U(e,t,r,n)}function U(e,t,r,n){for(!t.ending&&!e.destroyed&&0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"));r-- >0;)t.pendingcb--,n();t.destroyed&&q(t),$(e,t)}function q(e){if(e.writing)return;for(let r=e.bufferedIndex;r1&&e._writev){t.pendingcb-=o-1;const n=t.allNoop?P:e=>{for(let t=s;t256?(r.splice(0,s),t.bufferedIndex=0):t.bufferedIndex=s}t.bufferProcessing=!1}function Q(e){return e.ending&&!e.destroyed&&e.constructed&&0===e.length&&!e.errored&&0===e.buffered.length&&!e.finished&&!e.writing&&!e.errorEmitted&&!e.closeEmitted}function $(e,t,r){Q(t)&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.finalCalled=!0,function(e,t){let r=!1;function i(i){if(r)I(e,null!=i?i:T());else if(r=!0,t.pendingcb--,i){const r=t[D].splice(0);for(let e=0;e{Q(t)?H(e,t):t.pendingcb--}),e,t)):Q(t)&&(t.pendingcb++,H(e,t))))}function H(e,t){t.pendingcb--,t.finished=!0;const r=t[D].splice(0);for(let e=0;e{"use strict";const{ArrayIsArray:n,ArrayPrototypeIncludes:i,ArrayPrototypeJoin:a,ArrayPrototypeMap:o,NumberIsInteger:s,NumberIsNaN:c,NumberMAX_SAFE_INTEGER:u,NumberMIN_SAFE_INTEGER:l,NumberParseInt:d,ObjectPrototypeHasOwnProperty:h,RegExpPrototypeExec:p,String:f,StringPrototypeToUpperCase:y,StringPrototypeTrim:g}=r(11122),{hideStackFrames:m,codes:{ERR_SOCKET_BAD_PORT:b,ERR_INVALID_ARG_TYPE:v,ERR_INVALID_ARG_VALUE:_,ERR_OUT_OF_RANGE:w,ERR_UNKNOWN_SIGNAL:T}}=r(79865),{normalizeEncoding:S}=r(52092),{isAsyncFunction:O,isArrayBufferView:E}=r(52092).types,x={},A=/^[0-7]+$/,R=m(((e,t,r=l,n=u)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);if(en)throw new w(t,`>= ${r} && <= ${n}`,e)})),I=m(((e,t,r=-2147483648,n=2147483647)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);if(en)throw new w(t,`>= ${r} && <= ${n}`,e)})),P=m(((e,t,r=!1)=>{if("number"!=typeof e)throw new v(t,"number",e);if(!s(e))throw new w(t,"an integer",e);const n=r?1:0,i=4294967295;if(ei)throw new w(t,`>= ${n} && <= ${i}`,e)}));function D(e,t){if("string"!=typeof e)throw new v(t,"string",e)}const N=m(((e,t,r)=>{if(!i(r,e)){const n=a(o(r,(e=>"string"==typeof e?`'${e}'`:f(e))),", ");throw new _(t,e,"must be one of: "+n)}}));function j(e,t){if("boolean"!=typeof e)throw new v(t,"boolean",e)}function C(e,t,r){return null!=e&&h(e,t)?e[t]:r}const M=m(((e,t,r=null)=>{const i=C(r,"allowArray",!1),a=C(r,"allowFunction",!1);if(!C(r,"nullable",!1)&&null===e||!i&&n(e)||"object"!=typeof e&&(!a||"function"!=typeof e))throw new v(t,"Object",e)})),L=m(((e,t)=>{if(null!=e&&"object"!=typeof e&&"function"!=typeof e)throw new v(t,"a dictionary",e)})),k=m(((e,t,r=0)=>{if(!n(e))throw new v(t,"Array",e);if(e.length{if(!E(e))throw new v(t,["Buffer","TypedArray","DataView"],e)})),B=m(((e,t)=>{if(void 0!==e&&(null===e||"object"!=typeof e||!("aborted"in e)))throw new v(t,"AbortSignal",e)})),U=m(((e,t)=>{if("function"!=typeof e)throw new v(t,"Function",e)})),q=m(((e,t)=>{if("function"!=typeof e||O(e))throw new v(t,"Function",e)})),V=m(((e,t)=>{if(void 0!==e)throw new v(t,"undefined",e)})),Q=/^(?:<[^>]*>)(?:\s*;\s*[^;"\s]+(?:=(")?[^;"\s]*\1)?)*$/;function $(e,t){if(void 0===e||!p(Q,e))throw new _(t,e,'must be an array or string of format "; rel=preload; as=style"')}e.exports={isInt32:function(e){return e===(0|e)},isUint32:function(e){return e===e>>>0},parseFileMode:function(e,t,r){if(void 0===e&&(e=r),"string"==typeof e){if(null===p(A,e))throw new _(t,e,"must be a 32-bit unsigned integer or an octal string");e=d(e,8)}return P(e,t),e},validateArray:k,validateStringArray:function(e,t){k(e,t);for(let r=0;rn||(null!=r||null!=n)&&c(e))throw new w(t,`${null!=r?`>= ${r}`:""}${null!=r&&null!=n?" && ":""}${null!=n?`<= ${n}`:""}`,e)},validateObject:M,validateOneOf:N,validatePlainFunction:q,validatePort:function(e,t="Port",r=!0){if("number"!=typeof e&&"string"!=typeof e||"string"==typeof e&&0===g(e).length||+e!=+e>>>0||e>65535||0===e&&!r)throw new b(t,e,r);return 0|e},validateSignalName:function(e,t="signal"){if(D(e,t),void 0===x[e]){if(void 0!==x[y(e)])throw new T(e+" (signals must use all capital letters)");throw new T(e)}},validateString:D,validateUint32:P,validateUndefined:V,validateUnion:function(e,t,r){if(!i(r,e))throw new v(t,`('${a(r,"|")}')`,e)},validateAbortSignal:B,validateLinkHeaderValue:function(e){if("string"==typeof e)return $(e,"hints"),e;if(n(e)){const t=e.length;let r="";if(0===t)return r;for(let n=0;n; rel=preload; as=style"')}}},51887:(e,t,r)=>{"use strict";const n=r(62955),i=r(59419),a=n.Readable.destroy;e.exports=n.Readable,e.exports._uint8ArrayToBuffer=n._uint8ArrayToBuffer,e.exports._isUint8Array=n._isUint8Array,e.exports.isDisturbed=n.isDisturbed,e.exports.isErrored=n.isErrored,e.exports.isReadable=n.isReadable,e.exports.Readable=n.Readable,e.exports.Writable=n.Writable,e.exports.Duplex=n.Duplex,e.exports.Transform=n.Transform,e.exports.PassThrough=n.PassThrough,e.exports.addAbortSignal=n.addAbortSignal,e.exports.finished=n.finished,e.exports.destroy=n.destroy,e.exports.destroy=a,e.exports.pipeline=n.pipeline,e.exports.compose=n.compose,Object.defineProperty(n,"promises",{configurable:!0,enumerable:!0,get:()=>i}),e.exports.Stream=n.Stream,e.exports.default=e.exports},79865:(e,t,r)=>{"use strict";const{format:n,inspect:i,AggregateError:a}=r(52092),o=globalThis.AggregateError||a,s=Symbol("kIsNodeError"),c=["string","function","number","object","Function","Object","boolean","bigint","symbol"],u=/^([A-Z][a-z0-9]*)+$/,l={};function d(e,t){if(!e)throw new l.ERR_INTERNAL_ASSERTION(t)}function h(e){let t="",r=e.length;const n="-"===e[0]?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function p(e,t,r){r||(r=Error);class i extends r{constructor(...r){super(function(e,t,r){if("function"==typeof t)return d(t.length<=r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${t.length}).`),t(...r);const i=(t.match(/%[dfijoOs]/g)||[]).length;return d(i===r.length,`Code: ${e}; The provided arguments length (${r.length}) does not match the required ones (${i}).`),0===r.length?t:n(t,...r)}(e,t,r))}toString(){return`${this.name} [${e}]: ${this.message}`}}Object.defineProperties(i.prototype,{name:{value:r.name,writable:!0,enumerable:!1,configurable:!0},toString:{value(){return`${this.name} [${e}]: ${this.message}`},writable:!0,enumerable:!1,configurable:!0}}),i.prototype.code=e,i.prototype[s]=!0,l[e]=i}function f(e){const t="__node_internal_"+e.name;return Object.defineProperty(e,"name",{value:t}),e}class y extends Error{constructor(e="The operation was aborted",t=void 0){if(void 0!==t&&"object"!=typeof t)throw new l.ERR_INVALID_ARG_TYPE("options","Object",t);super(e,t),this.code="ABORT_ERR",this.name="AbortError"}}p("ERR_ASSERTION","%s",Error),p("ERR_INVALID_ARG_TYPE",((e,t,r)=>{d("string"==typeof e,"'name' must be a string"),Array.isArray(t)||(t=[t]);let n="The ";e.endsWith(" argument")?n+=`${e} `:n+=`"${e}" ${e.includes(".")?"property":"argument"} `,n+="must be ";const a=[],o=[],s=[];for(const e of t)d("string"==typeof e,"All expected entries have to be of type string"),c.includes(e)?a.push(e.toLowerCase()):u.test(e)?o.push(e):(d("object"!==e,'The value "object" should be written as "Object"'),s.push(e));if(o.length>0){const e=a.indexOf("object");-1!==e&&(a.splice(a,e,1),o.push("Object"))}if(a.length>0){switch(a.length){case 1:n+=`of type ${a[0]}`;break;case 2:n+=`one of type ${a[0]} or ${a[1]}`;break;default:{const e=a.pop();n+=`one of type ${a.join(", ")}, or ${e}`}}(o.length>0||s.length>0)&&(n+=" or ")}if(o.length>0){switch(o.length){case 1:n+=`an instance of ${o[0]}`;break;case 2:n+=`an instance of ${o[0]} or ${o[1]}`;break;default:{const e=o.pop();n+=`an instance of ${o.join(", ")}, or ${e}`}}s.length>0&&(n+=" or ")}switch(s.length){case 0:break;case 1:s[0].toLowerCase()!==s[0]&&(n+="an "),n+=`${s[0]}`;break;case 2:n+=`one of ${s[0]} or ${s[1]}`;break;default:{const e=s.pop();n+=`one of ${s.join(", ")}, or ${e}`}}if(null==r)n+=`. Received ${r}`;else if("function"==typeof r&&r.name)n+=`. Received function ${r.name}`;else if("object"==typeof r){var l;null!==(l=r.constructor)&&void 0!==l&&l.name?n+=`. Received an instance of ${r.constructor.name}`:n+=`. Received ${i(r,{depth:-1})}`}else{let e=i(r,{colors:!1});e.length>25&&(e=`${e.slice(0,25)}...`),n+=`. Received type ${typeof r} (${e})`}return n}),TypeError),p("ERR_INVALID_ARG_VALUE",((e,t,r="is invalid")=>{let n=i(t);return n.length>128&&(n=n.slice(0,128)+"..."),`The ${e.includes(".")?"property":"argument"} '${e}' ${r}. Received ${n}`}),TypeError),p("ERR_INVALID_RETURN_VALUE",((e,t,r)=>{var n;return`Expected ${e} to be returned from the "${t}" function but got ${null!=r&&null!==(n=r.constructor)&&void 0!==n&&n.name?`instance of ${r.constructor.name}`:"type "+typeof r}.`}),TypeError),p("ERR_MISSING_ARGS",((...e)=>{let t;d(e.length>0,"At least one arg needs to be specified");const r=e.length;switch(e=(Array.isArray(e)?e:[e]).map((e=>`"${e}"`)).join(" or "),r){case 1:t+=`The ${e[0]} argument`;break;case 2:t+=`The ${e[0]} and ${e[1]} arguments`;break;default:{const r=e.pop();t+=`The ${e.join(", ")}, and ${r} arguments`}}return`${t} must be specified`}),TypeError),p("ERR_OUT_OF_RANGE",((e,t,r)=>{let n;return d(t,'Missing "range" argument'),Number.isInteger(r)&&Math.abs(r)>2**32?n=h(String(r)):"bigint"==typeof r?(n=String(r),(r>2n**32n||r<-(2n**32n))&&(n=h(n)),n+="n"):n=i(r),`The value of "${e}" is out of range. It must be ${t}. Received ${n}`}),RangeError),p("ERR_MULTIPLE_CALLBACK","Callback called multiple times",Error),p("ERR_METHOD_NOT_IMPLEMENTED","The %s method is not implemented",Error),p("ERR_STREAM_ALREADY_FINISHED","Cannot call %s after a stream was finished",Error),p("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable",Error),p("ERR_STREAM_DESTROYED","Cannot call %s after a stream was destroyed",Error),p("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),p("ERR_STREAM_PREMATURE_CLOSE","Premature close",Error),p("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF",Error),p("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event",Error),p("ERR_STREAM_WRITE_AFTER_END","write after end",Error),p("ERR_UNKNOWN_ENCODING","Unknown encoding: %s",TypeError),e.exports={AbortError:y,aggregateTwoErrors:f((function(e,t){if(e&&t&&e!==t){if(Array.isArray(t.errors))return t.errors.push(e),t;const r=new o([t,e],t.message);return r.code=t.code,r}return e||t})),hideStackFrames:f,codes:l}},11122:e=>{"use strict";e.exports={ArrayIsArray:e=>Array.isArray(e),ArrayPrototypeIncludes:(e,t)=>e.includes(t),ArrayPrototypeIndexOf:(e,t)=>e.indexOf(t),ArrayPrototypeJoin:(e,t)=>e.join(t),ArrayPrototypeMap:(e,t)=>e.map(t),ArrayPrototypePop:(e,t)=>e.pop(t),ArrayPrototypePush:(e,t)=>e.push(t),ArrayPrototypeSlice:(e,t,r)=>e.slice(t,r),Error,FunctionPrototypeCall:(e,t,...r)=>e.call(t,...r),FunctionPrototypeSymbolHasInstance:(e,t)=>Function.prototype[Symbol.hasInstance].call(e,t),MathFloor:Math.floor,Number,NumberIsInteger:Number.isInteger,NumberIsNaN:Number.isNaN,NumberMAX_SAFE_INTEGER:Number.MAX_SAFE_INTEGER,NumberMIN_SAFE_INTEGER:Number.MIN_SAFE_INTEGER,NumberParseInt:Number.parseInt,ObjectDefineProperties:(e,t)=>Object.defineProperties(e,t),ObjectDefineProperty:(e,t,r)=>Object.defineProperty(e,t,r),ObjectGetOwnPropertyDescriptor:(e,t)=>Object.getOwnPropertyDescriptor(e,t),ObjectKeys:e=>Object.keys(e),ObjectSetPrototypeOf:(e,t)=>Object.setPrototypeOf(e,t),Promise,PromisePrototypeCatch:(e,t)=>e.catch(t),PromisePrototypeThen:(e,t,r)=>e.then(t,r),PromiseReject:e=>Promise.reject(e),ReflectApply:Reflect.apply,RegExpPrototypeTest:(e,t)=>e.test(t),SafeSet:Set,String,StringPrototypeSlice:(e,t,r)=>e.slice(t,r),StringPrototypeToLowerCase:e=>e.toLowerCase(),StringPrototypeToUpperCase:e=>e.toUpperCase(),StringPrototypeTrim:e=>e.trim(),Symbol,SymbolFor:Symbol.for,SymbolAsyncIterator:Symbol.asyncIterator,SymbolHasInstance:Symbol.hasInstance,SymbolIterator:Symbol.iterator,TypedArrayPrototypeSet:(e,t,r)=>e.set(t,r),Uint8Array}},52092:(e,t,r)=>{"use strict";const n=r(48834),i=Object.getPrototypeOf((async function(){})).constructor,a=globalThis.Blob||n.Blob,o=void 0!==a?function(e){return e instanceof a}:function(e){return!1};class s extends Error{constructor(e){if(!Array.isArray(e))throw new TypeError("Expected input to be an Array, got "+typeof e);let t="";for(let r=0;r{e=r,t=n})),resolve:e,reject:t}},promisify:e=>new Promise(((t,r)=>{e(((e,...n)=>e?r(e):t(...n)))})),debuglog:()=>function(){},format:(e,...t)=>e.replace(/%([sdifj])/g,(function(...[e,r]){const n=t.shift();return"f"===r?n.toFixed(6):"j"===r?JSON.stringify(n):"s"===r&&"object"==typeof n?`${n.constructor!==Object?n.constructor.name:""} {}`.trim():n.toString()})),inspect(e){switch(typeof e){case"string":if(e.includes("'")){if(!e.includes('"'))return`"${e}"`;if(!e.includes("`")&&!e.includes("${"))return`\`${e}\``}return`'${e}'`;case"number":return isNaN(e)?"NaN":Object.is(e,-0)?String(e):e;case"bigint":return`${String(e)}n`;case"boolean":case"undefined":return String(e);case"object":return"{}"}},types:{isAsyncFunction:e=>e instanceof i,isArrayBufferView:e=>ArrayBuffer.isView(e)},isBlob:o},e.exports.promisify.custom=Symbol.for("nodejs.util.promisify.custom")},62955:(e,t,r)=>{const{Buffer:n}=r(48834),{ObjectDefineProperty:i,ObjectKeys:a,ReflectApply:o}=r(11122),{promisify:{custom:s}}=r(52092),{streamReturningOperators:c,promiseReturningOperators:u}=r(51273),{codes:{ERR_ILLEGAL_CONSTRUCTOR:l}}=r(79865),d=r(9732),{pipeline:h}=r(63495),{destroyer:p}=r(12262),f=r(59885),y=r(59419),g=r(82211),m=e.exports=r(13798).Stream;m.isDisturbed=g.isDisturbed,m.isErrored=g.isErrored,m.isReadable=g.isReadable,m.Readable=r(20182);for(const _ of a(c)){const w=c[_];function b(...e){if(new.target)throw l();return m.Readable.from(o(w,this,e))}i(b,"name",{__proto__:null,value:w.name}),i(b,"length",{__proto__:null,value:w.length}),i(m.Readable.prototype,_,{__proto__:null,value:b,enumerable:!1,configurable:!0,writable:!0})}for(const T of a(u)){const S=u[T];function b(...e){if(new.target)throw l();return o(S,this,e)}i(b,"name",{__proto__:null,value:S.name}),i(b,"length",{__proto__:null,value:S.length}),i(m.Readable.prototype,T,{__proto__:null,value:b,enumerable:!1,configurable:!0,writable:!0})}m.Writable=r(70080),m.Duplex=r(72852),m.Transform=r(1112),m.PassThrough=r(34584),m.pipeline=h;const{addAbortSignal:v}=r(53952);m.addAbortSignal=v,m.finished=f,m.destroy=p,m.compose=d,i(m,"promises",{__proto__:null,configurable:!0,enumerable:!0,get:()=>y}),i(h,s,{__proto__:null,enumerable:!0,get:()=>y.pipeline}),i(f,s,{__proto__:null,enumerable:!0,get:()=>y.finished}),m.Stream=m,m._isUint8Array=function(e){return e instanceof Uint8Array},m._uint8ArrayToBuffer=function(e){return n.from(e.buffer,e.byteOffset,e.byteLength)}},59419:(e,t,r)=>{"use strict";const{ArrayPrototypePop:n,Promise:i}=r(11122),{isIterable:a,isNodeStream:o,isWebStream:s}=r(82211),{pipelineImpl:c}=r(63495),{finished:u}=r(59885);r(62955),e.exports={finished:u,pipeline:function(...e){return new i(((t,r)=>{let i,u;const l=e[e.length-1];if(l&&"object"==typeof l&&!o(l)&&!a(l)&&!s(l)){const t=n(e);i=t.signal,u=t.end}c(e,((e,n)=>{e?r(e):t(n)}),{signal:i,end:u})}))}}},88146:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ReadableWebToNodeStream=void 0;const n=r(73635);class i extends n.Readable{constructor(e){super(),this.bytesRead=0,this.released=!1,this.reader=e.getReader()}async _read(){if(this.released)return void this.push(null);this.pendingRead=this.reader.read();const e=await this.pendingRead;delete this.pendingRead,e.done||this.released?this.push(null):(this.bytesRead+=e.value.length,this.push(e.value))}async waitForReadToComplete(){this.pendingRead&&await this.pendingRead}async close(){await this.syncAndRelease()}async syncAndRelease(){this.released=!0,await this.waitForReadToComplete(),await this.reader.releaseLock()}}t.ReadableWebToNodeStream=i},14703:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"==typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,a,o,s,c;if("string"==typeof t&&(a="not ",t.substr(0,4)===a)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-9,r)===t}(e," argument"))o="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var u=("number"!=typeof c&&(c=0),c+1>(s=e).length||-1===s.indexOf(".",c)?"argument":"property");o='The "'.concat(e,'" ').concat(u," ").concat(i," ").concat(n(t,"type"))}return o+". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},60752:(e,t,r)=>{"use strict";var n=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var i=r(18418),a=r(92835);r(91285)(u,i);for(var o=n(a.prototype),s=0;s{"use strict";e.exports=i;var n=r(56625);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(91285)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},18418:(e,t,r)=>{"use strict";var n;e.exports=O,O.ReadableState=S,r(22699).EventEmitter;var i,a=function(e,t){return e.listeners(t).length},o=r(56547),s=r(48834).Buffer,c=(void 0!==r.g?r.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},u=r(72056);i=u&&u.debuglog?u.debuglog("stream"):function(){};var l,d,h,p=r(33207),f=r(46425),y=r(7602).getHighWaterMark,g=r(14703).q,m=g.ERR_INVALID_ARG_TYPE,b=g.ERR_STREAM_PUSH_AFTER_EOF,v=g.ERR_METHOD_NOT_IMPLEMENTED,_=g.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(91285)(O,o);var w=f.errorOrDestroy,T=["error","close","destroy","pause","resume"];function S(e,t,i){n=n||r(60752),e=e||{},"boolean"!=typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=y(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(l||(l=r(30214).StringDecoder),this.decoder=new l(e.encoding),this.encoding=e.encoding)}function O(e){if(n=n||r(60752),!(this instanceof O))return new O(e);var t=this instanceof n;this._readableState=new S(e,this,t),this.readable=!0,e&&("function"==typeof e.read&&(this._read=e.read),"function"==typeof e.destroy&&(this._destroy=e.destroy)),o.call(this)}function E(e,t,r,n,a){i("readableAddChunk",t);var o,u=e._readableState;if(null===t)u.reading=!1,function(e,t){if(i("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?I(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,P(e)))}}(e,u);else if(a||(o=function(e,t){var r,n;return n=t,s.isBuffer(n)||n instanceof c||"string"==typeof t||void 0===t||e.objectMode||(r=new m("chunk",["string","Buffer","Uint8Array"],t)),r}(u,t)),o)w(e,o);else if(u.objectMode||t&&t.length>0)if("string"==typeof t||u.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)u.endEmitted?w(e,new _):x(e,u,t,!0);else if(u.ended)w(e,new b);else{if(u.destroyed)return!1;u.reading=!1,u.decoder&&!r?(t=u.decoder.write(t),u.objectMode||0!==t.length?x(e,u,t,!1):D(e,u)):x(e,u,t,!1)}else n||(u.reading=!1,D(e,u));return!u.ended&&(u.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=A?e=A:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function I(e){var t=e._readableState;i("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(i("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(P,e))}function P(e){var t=e._readableState;i("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,L(e)}function D(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(N,e,t))}function N(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function C(e){i("readable nexttick read 0"),e.read(0)}function M(e,t){i("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),L(e),t.flowing&&!t.reading&&e.read(0)}function L(e){var t=e._readableState;for(i("flow",t.flowing);t.flowing&&null!==e.read(););}function k(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function F(e){var t=e._readableState;i("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(B,t,e))}function B(e,t){if(i("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function U(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return i("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?F(this):I(this),null;if(0===(e=R(e,t))&&t.ended)return 0===t.length&&F(this),null;var n,a=t.needReadable;return i("need readable",a),(0===t.length||t.length-e0?k(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&F(this)),null!==n&&this.emit("data",n),n},O.prototype._read=function(e){w(this,new v("_read()"))},O.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,i("pipe count=%d opts=%j",n.pipesCount,t);var o=t&&!1===t.end||e===process.stdout||e===process.stderr?f:s;function s(){i("onend"),e.end()}n.endEmitted?process.nextTick(o):r.once("end",o),e.on("unpipe",(function t(a,o){i("onunpipe"),a===r&&o&&!1===o.hasUnpiped&&(o.hasUnpiped=!0,i("cleanup"),e.removeListener("close",h),e.removeListener("finish",p),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",t),r.removeListener("end",s),r.removeListener("end",f),r.removeListener("data",l),u=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||c())}));var c=function(e){return function(){var t=e._readableState;i("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,L(e))}}(r);e.on("drain",c);var u=!1;function l(t){i("ondata");var a=e.write(t);i("dest.write",a),!1===a&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==U(n.pipes,e))&&!u&&(i("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function d(t){i("onerror",t),f(),e.removeListener("error",d),0===a(e,"error")&&w(e,t)}function h(){e.removeListener("finish",p),f()}function p(){i("onfinish"),e.removeListener("close",h),f()}function f(){i("unpipe"),r.unpipe(e)}return r.on("data",l),function(e,t,r){if("function"==typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",d),e.once("close",h),e.once("finish",p),e.emit("pipe",r),n.flowing||(i("pipe resume"),r.resume()),e},O.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,i("on readable",n.length,n.reading),n.length?I(this):n.reading||process.nextTick(C,this))),r},O.prototype.addListener=O.prototype.on,O.prototype.removeListener=function(e,t){var r=o.prototype.removeListener.call(this,e,t);return"readable"===e&&process.nextTick(j,this),r},O.prototype.removeAllListeners=function(e){var t=o.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||process.nextTick(j,this),t},O.prototype.resume=function(){var e=this._readableState;return e.flowing||(i("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(M,e,t))}(this,e)),e.paused=!1,this},O.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},O.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var a in e.on("end",(function(){if(i("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(a){i("wrapped data"),r.decoder&&(a=r.decoder.write(a)),r.objectMode&&null==a||(r.objectMode||a&&a.length)&&(t.push(a)||(n=!0,e.pause()))})),e)void 0===this[a]&&"function"==typeof e[a]&&(this[a]=function(t){return function(){return e[t].apply(e,arguments)}}(a));for(var o=0;o{"use strict";e.exports=l;var n=r(14703).q,i=n.ERR_METHOD_NOT_IMPLEMENTED,a=n.ERR_MULTIPLE_CALLBACK,o=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(60752);function u(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new a);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";function n(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;for(e.entry=null;n;){var i=n.callback;t.pendingcb--,i(undefined),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}var i;e.exports=O,O.WritableState=S;var a,o={deprecate:r(5803)},s=r(56547),c=r(48834).Buffer,u=(void 0!==r.g?r.g:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){},l=r(46425),d=r(7602).getHighWaterMark,h=r(14703).q,p=h.ERR_INVALID_ARG_TYPE,f=h.ERR_METHOD_NOT_IMPLEMENTED,y=h.ERR_MULTIPLE_CALLBACK,g=h.ERR_STREAM_CANNOT_PIPE,m=h.ERR_STREAM_DESTROYED,b=h.ERR_STREAM_NULL_VALUES,v=h.ERR_STREAM_WRITE_AFTER_END,_=h.ERR_UNKNOWN_ENCODING,w=l.errorOrDestroy;function T(){}function S(e,t,a){i=i||r(60752),e=e||{},"boolean"!=typeof a&&(a=t instanceof i),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=d(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var o=!1===e.decodeStrings;this.decodeStrings=!o,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if("function"!=typeof i)throw new y;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(P,e,t),e._writableState.errorEmitted=!0,w(e,n)):(i(n),e._writableState.errorEmitted=!0,w(e,n),P(e,t))}(e,r,n,t,i);else{var a=R(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||A(e,r),n?process.nextTick(x,e,r,a,i):x(e,r,a,i)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new n(this)}function O(e){var t=this instanceof(i=i||r(60752));if(!t&&!a.call(O,this))return new O(e);this._writableState=new S(e,this,t),this.writable=!0,e&&("function"==typeof e.write&&(this._write=e.write),"function"==typeof e.writev&&(this._writev=e.writev),"function"==typeof e.destroy&&(this._destroy=e.destroy),"function"==typeof e.final&&(this._final=e.final)),s.call(this)}function E(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new m("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function x(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),P(e,t)}function A(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var i=t.bufferedRequestCount,a=new Array(i),o=t.corkedRequestsFree;o.entry=r;for(var s=0,c=!0;r;)a[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;a.allBuffers=c,E(e,t,!0,t.length,a,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new n(t),t.bufferedRequestCount=0}else{for(;r;){var u=r.chunk,l=r.encoding,d=r.callback;if(E(e,t,!1,t.objectMode?1:u.length,u,l,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function R(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function I(e,t){e._final((function(r){t.pendingcb--,r&&w(e,r),t.prefinished=!0,e.emit("prefinish"),P(e,t)}))}function P(e,t){var r=R(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!=typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,process.nextTick(I,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(91285)(O,s),S.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(S.prototype,"buffer",{get:o.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(a=Function.prototype[Symbol.hasInstance],Object.defineProperty(O,Symbol.hasInstance,{value:function(e){return!!a.call(this,e)||this===O&&e&&e._writableState instanceof S}})):a=function(e){return e instanceof this},O.prototype.pipe=function(){w(this,new g)},O.prototype.write=function(e,t,r){var n,i=this._writableState,a=!1,o=!i.objectMode&&(n=e,c.isBuffer(n)||n instanceof u);return o&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"==typeof t&&(r=t,t=null),o?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof r&&(r=T),i.ending?function(e,t){var r=new v;w(e,r),process.nextTick(t,r)}(this,r):(o||function(e,t,r,n){var i;return null===r?i=new b:"string"==typeof r||t.objectMode||(i=new p("chunk",["string","Buffer"],r)),!i||(w(e,i),process.nextTick(n,i),!1)}(this,i,e,r))&&(i.pendingcb++,a=function(e,t,r,n,i,a){if(!r){var o=function(e,t,r){return e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=c.from(t,r)),t}(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var u=t.length-1))throw new _(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(O.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(O.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),O.prototype._write=function(e,t,r){r(new f("_write()"))},O.prototype._writev=null,O.prototype.end=function(e,t,r){var n=this._writableState;return"function"==typeof e?(r=e,e=null,t=null):"function"==typeof t&&(r=t,t=null),null!=e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,P(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(O.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(O.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),O.prototype.destroy=l.destroy,O.prototype._undestroy=l.undestroy,O.prototype._destroy=function(e,t){t(e)}},73944:(e,t,r)=>{"use strict";var n;function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(26389),o=Symbol("lastResolve"),s=Symbol("lastReject"),c=Symbol("error"),u=Symbol("ended"),l=Symbol("lastPromise"),d=Symbol("handlePromise"),h=Symbol("stream");function p(e,t){return{value:e,done:t}}function f(e){var t=e[o];if(null!==t){var r=e[h].read();null!==r&&(e[l]=null,e[o]=null,e[s]=null,t(p(r,!1)))}}function y(e){process.nextTick(f,e)}var g=Object.getPrototypeOf((function(){})),m=Object.setPrototypeOf((i(n={get stream(){return this[h]},next:function(){var e=this,t=this[c];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[h].destroyed)return new Promise((function(t,r){process.nextTick((function(){e[c]?r(e[c]):t(p(void 0,!0))}))}));var r,n=this[l];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[d](r,n)}),n)}}(n,this));else{var i=this[h].read();if(null!==i)return Promise.resolve(p(i,!1));r=new Promise(this[d])}return this[l]=r,r}},Symbol.asyncIterator,(function(){return this})),i(n,"return",(function(){var e=this;return new Promise((function(t,r){e[h].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),g);e.exports=function(e){var t,r=Object.create(m,(i(t={},h,{value:e,writable:!0}),i(t,o,{value:null,writable:!0}),i(t,s,{value:null,writable:!0}),i(t,c,{value:null,writable:!0}),i(t,u,{value:e._readableState.endEmitted,writable:!0}),i(t,d,{value:function(e,t){var n=r[h].read();n?(r[l]=null,r[o]=null,r[s]=null,e(p(n,!1))):(r[o]=e,r[s]=t)},writable:!0}),t));return r[l]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[s];return null!==t&&(r[l]=null,r[o]=null,r[s]=null,t(e)),void(r[c]=e)}var n=r[o];null!==n&&(r[l]=null,r[o]=null,r[s]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",y.bind(null,r)),r}},33207:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),a=this.head,o=0;a;)t=a.data,r=i,n=o,c.prototype.copy.call(t,r,n),o+=a.data.length,a=a.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(a===i.length?n+=i:n+=i.slice(0,e),0==(e-=a)){a===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(a));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,a=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,a),0==(e-=a)){a===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(a));break}++n}return this.length-=n,t}},{key:l,value:function(e,t){return u(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&o(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),e}()},46425:e=>{"use strict";function t(e,t){n(e,t),r(e)}function r(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function n(e,t){e.emit("error",t)}e.exports={destroy:function(e,i){var a=this,o=this._readableState&&this._readableState.destroyed,s=this._writableState&&this._writableState.destroyed;return o||s?(i?i(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(n,this,e)):process.nextTick(n,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!i&&e?a._writableState?a._writableState.errorEmitted?process.nextTick(r,a):(a._writableState.errorEmitted=!0,process.nextTick(t,a,e)):process.nextTick(t,a,e):i?(process.nextTick(r,a),i(e)):process.nextTick(r,a)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},26389:(e,t,r)=>{"use strict";var n=r(14703).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,a){if("function"==typeof r)return e(t,null,r);r||(r={}),a=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},94065:(e,t,r)=>{"use strict";var n,i=r(14703).q,a=i.ERR_MISSING_ARGS,o=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function u(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){l||(l=e),e&&h.forEach(c),a||(h.forEach(c),d(l))}))}));return t.reduce(u)}},7602:(e,t,r)=>{"use strict";var n=r(14703).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var a=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=a){if(!isFinite(a)||Math.floor(a)!==a||a<0)throw new n(i?r:"highWaterMark",a);return Math.floor(a)}return e.objectMode?16:16384}}},56547:(e,t,r)=>{e.exports=r(22699).EventEmitter},73635:(e,t,r)=>{(t=e.exports=r(18418)).Stream=t,t.Readable=t,t.Writable=r(92835),t.Duplex=r(60752),t.Transform=r(56625),t.PassThrough=r(33019),t.finished=r(26389),t.pipeline=r(94065)},84690:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(45186),t)},45186:(e,t)=>{"use strict";function r(e){const t=[];let r=0;for(;re.join(""))).join("/")}function n(e,t){let n=t+1;t>=0?"/"===e[t+1]&&"/"===e[t+2]&&(n=t+3):"/"===e[0]&&"/"===e[1]&&(n=2);const i=e.indexOf("/",n);return i<0?e:e.substr(0,i)+r(e.substr(i))}function i(e){return!e||"#"===e||"?"===e||"/"===e}Object.defineProperty(t,"__esModule",{value:!0}),t.removeDotSegmentsOfPath=t.removeDotSegments=t.resolve=void 0,t.resolve=function(e,t){const i=(t=t||"").indexOf("#");if(i>0&&(t=t.substr(0,i)),!e.length){if(t.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${t}' for value '${e}'`);return t}if(e.startsWith("?")){const r=t.indexOf("?");return r>0&&(t=t.substr(0,r)),t+e}if(e.startsWith("#"))return t+e;if(!t.length){const t=e.indexOf(":");if(t<0)throw new Error(`Found invalid relative IRI '${e}' for a missing baseIRI`);return n(e,t)}const a=e.indexOf(":");if(a>=0)return n(e,a);const o=t.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${t}' for value '${e}'`);const s=t.substr(0,o+1);if(0===e.indexOf("//"))return s+n(e,a);let c;if(t.indexOf("//",o)===o+1){if(c=t.indexOf("/",o+3),c<0)return t.length>o+3?t+"/"+n(e,a):s+n(e,a)}else if(c=t.indexOf("/",o+1),c<0)return s+n(e,a);if(0===e.indexOf("/"))return t.substr(0,c)+r(e);let u=t.substr(c);const l=u.lastIndexOf("/");return l>=0&&l{var n=r(48834),i=n.Buffer;function a(e,t){for(var r in e)t[r]=e[r]}function o(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(a(n,t),t.Buffer=o),o.prototype=Object.create(i.prototype),a(i,o),o.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},o.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"==typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},o.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},o.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},76481:e=>{var t=function(){var e=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},t=[7,12,13,14,15,16,20,25,115,130],r=[7,13,16,20,25,115,130],n=[7,13,16,115,130],i=[1,25],a=[1,29],o=[1,27],s=[1,28],c=[13,16,115,130],u=[13,16,28,38,40,42,44,46,48,53,56,61,67,85,87,92,93,95,96,102,110,111,115,119,120,126,128,129,130,131,132,133,134,135,136],l=[28,56],d=[1,42],h=[46,48,53,56],p=[1,54],f=[1,60],y=[1,56],g=[1,57],m=[1,58],b=[1,63],v=[1,64],_=[1,65],w=[1,66],T=[1,67],S=[1,68],O=[1,75],E=[28,46,48,53,56],x=[28,42,46,48,53,56],A=[13,16,28,38,40,42,44,46,48,53,56,92,115,119,120,130,131,132,133,134,135,136],R=[13,16,28,38,40,42,44,46,48,53,56,67,85,87,92,95,96,115,119,120,126,128,129,130,131,132,133,134,135,136],I=[13,16,38,40,44,92,115,119,120,130,131,132,133,134,135,136],P=[13,16,28,38,40,42,44,46,48,53,56,67,85,87,92,95,96,115,117,118,119,120,126,128,129,130,131,132,133,134,135,136],D=[13,16,28,56,115,130],N=[13,16,38,58,87,96,109,115,126,130],j=[1,116],C=[1,112],M=[1,108],L=[1,114],k=[1,111],F=[7,13,16,20,25,44,48,53,56,67,85,87,95,96,115,128,129,130],B=[48,53],U=[48,53,87,96,126],q=[13,16,44,48,53,56,85,87,95,96,115,128,129,130],V=[1,126],Q=[13,16,40,44,48,53,56,85,87,95,96,115,128,129,130],$=[1,129],H=[48,53,67,87,96,126],G=[13,16,40,44,48,53,56,67,85,87,95,96,115,128,129,130],z=[1,133],K=[13,16,40,44,48,53,56,67,85,87,95,96,102,115,128,129,130],X=[13,16,40,44,48,53,56,67,85,87,93,95,96,102,110,111,115,128,129,130],W=[1,151],J=[1,153],Y=[1,156],Z=[1,157],ee=[1,158],te=[1,167],re=[1,175],ne=[13,16,44,48,53,56,67,85,87,95,96,115,128,129,130],ie=[13,16,44,48,53,56,67,85,87,95,96,115,126,128,129,130],ae=[13,16,46,92,115,119,120,130,131,132,133,134,135,136],oe={trace:function(){},yy:{},symbols_:{error:2,shaclDoc:3,shaclDoc_repetition0:4,shaclDoc_repetition1:5,ttlSection:6,EOF:7,directive:8,baseDecl:9,importsDecl:10,prefixDecl:11,KW_BASE:12,IRIREF:13,KW_IMPORTS:14,KW_PREFIX:15,PNAME_NS:16,nodeShapeIri:17,iri:18,nodeShape:19,KW_SHAPE:20,nodeShape_option0:21,nodeShape_option1:22,nodeShapeBody:23,shapeClass:24,KW_SHAPE_CLASS:25,shapeClass_option0:26,turtleAnnotation:27,";":28,turtleAnnotation2:29,predicate:30,turtleAnnotation2_option0:31,objectList:32,object:33,objectList_repetition0:34,iriOrLiteral:35,blankNodeSection:36,list:37,"(":38,list_repetition0:39,")":40,objectTail:41,",":42,LB:43,"[":44,RB:45,"]":46,LP:47,"%":48,RP:49,pcSection:50,iriHead:51,ttlStatement:52,".":53,ttlSection_repetition0:54,startNodeShape:55,"{":56,endNodeShape:57,"}":58,nodeShapeBody_repetition0:59,targetClass:60,"->":61,targetClass_repetition_plus0:62,constraint:63,constraint_group0:64,constraint_option0:65,orNotComponent:66,"|":67,nodeNot:68,nodeOrEmit:69,nodeOr:70,nodeOr_repetition_plus0:71,nodeValue:72,negation:73,nodeValue_group0:74,"=":75,iriOrLiteralOrArray:76,propertyShape:77,path:78,propertyShape_repetition0:79,propertyOrComponent:80,propertyNot:81,propertyOr:82,propertyOr_repetition_plus0:83,propertyAtom:84,NODEKIND:85,shapeRef:86,PARAM:87,propertyCount:88,propertyMinCount:89,"..":90,propertyMaxCount:91,INTEGER:92,"*":93,shapeRef_group0:94,"@":95,"!":96,pathAlternative:97,additionalAlternative:98,pathSequence:99,pathAlternative_repetition_plus0:100,additionalSequence:101,"/":102,pathEltOrInverse:103,pathSequence_repetition_plus0:104,pathElt:105,pathPrimary:106,pathMod:107,pathInverse:108,"^":109,"?":110,"+":111,iriOrLiteralOrArray_repetition0:112,literal:113,iri_group0:114,a:115,string:116,LANGTAG:117,"^^":118,DECIMAL:119,DOUBLE:120,literal_group0:121,string_group0:122,string_group1:123,shaclDoc_repetition1_group0:124,constraint_group0_repetition_plus0:125,TARGET:126,propertyShape_repetition0_group0:127,ATPNAME_LN:128,ATPNAME_NS:129,PNAME_LN:130,KW_TRUE:131,KW_FALSE:132,STRING_LITERAL1:133,STRING_LITERAL2:134,STRING_LITERAL_LONG1:135,STRING_LITERAL_LONG2:136,$accept:0,$end:1},terminals_:{2:"error",7:"EOF",12:"KW_BASE",13:"IRIREF",14:"KW_IMPORTS",15:"KW_PREFIX",16:"PNAME_NS",20:"KW_SHAPE",25:"KW_SHAPE_CLASS",28:";",38:"(",40:")",42:",",44:"[",46:"]",48:"%",53:".",56:"{",58:"}",61:"->",67:"|",75:"=",85:"NODEKIND",87:"PARAM",90:"..",92:"INTEGER",93:"*",95:"@",96:"!",102:"/",109:"^",110:"?",111:"+",115:"a",117:"LANGTAG",118:"^^",119:"DECIMAL",120:"DOUBLE",126:"TARGET",128:"ATPNAME_LN",129:"ATPNAME_NS",130:"PNAME_LN",131:"KW_TRUE",132:"KW_FALSE",133:"STRING_LITERAL1",134:"STRING_LITERAL2",135:"STRING_LITERAL_LONG1",136:"STRING_LITERAL_LONG2"},productions_:[0,[3,4],[8,1],[8,1],[8,1],[9,2],[10,2],[11,3],[17,1],[19,5],[24,4],[27,2],[29,2],[30,2],[32,2],[33,1],[33,1],[33,1],[37,3],[41,2],[43,1],[45,1],[36,3],[47,1],[49,1],[50,3],[51,1],[52,3],[6,1],[55,1],[57,1],[23,3],[60,2],[63,3],[66,2],[69,1],[70,1],[70,2],[68,1],[68,2],[72,3],[77,2],[80,2],[82,1],[82,2],[81,1],[81,2],[84,1],[84,1],[84,1],[84,3],[84,1],[88,5],[89,1],[91,1],[91,1],[86,1],[86,2],[73,1],[78,1],[98,2],[97,1],[97,2],[101,2],[99,1],[99,2],[105,1],[105,2],[103,1],[103,2],[108,1],[107,1],[107,1],[107,1],[106,1],[106,3],[76,1],[76,3],[35,1],[35,1],[18,1],[18,1],[18,1],[113,1],[113,2],[113,3],[113,1],[113,1],[113,1],[113,1],[116,1],[116,1],[4,0],[4,2],[124,1],[124,1],[5,0],[5,2],[21,0],[21,1],[22,0],[22,1],[26,0],[26,1],[31,0],[31,1],[34,0],[34,2],[39,0],[39,2],[54,0],[54,2],[59,0],[59,2],[62,1],[62,2],[125,1],[125,2],[64,1],[64,1],[65,0],[65,1],[71,1],[71,2],[74,1],[74,1],[127,1],[127,1],[79,0],[79,2],[83,1],[83,2],[94,1],[94,1],[100,1],[100,2],[104,1],[104,2],[112,0],[112,2],[114,1],[114,1],[121,1],[121,1],[122,1],[122,1],[123,1],[123,1]],performAction:function(e,t,r,n,i,a,o){var s,c,u=a.length-1;switch(i){case 1:this.$=Re(Ne.factory.namedNode(Te("")),Ne.factory.namedNode(ce),Ne.factory.namedNode(be+"Ontology"));break;case 5:Ne.base=Ne.factory.namedNode(a[u].slice(1,-1)),Ne.n3Parser._setBase(Ne.base.value);break;case 6:this.$=Re(Ne.base,Ne.factory.namedNode(be+"imports"),Ne.factory.namedNode(a[u].slice(1,-1)));break;case 7:this.$=Ne.prefixes[a[u-1].substr(0,a[u-1].length-1)]=Te(a[u]);break;case 8:Ne.nodeShapeStack=!1,Re(Ne.currentNodeShape=a[u],Ne.factory.namedNode(ce),Ne.factory.namedNode(me+"NodeShape"));break;case 10:this.$=Re(Ne.currentNodeShape,Ne.factory.namedNode(ce),Ne.factory.namedNode(ve+"Class"));break;case 11:this.$=Pe();break;case 13:this.$=a[u].forEach((e=>Re(Ne.currentNodeShape,a[u-1],e)));break;case 14:this.$=[a[u-1],...a[u]];break;case 18:this.$=we(a[u-1],!0);break;case 19:case 34:case 42:case 60:case 63:this.$=a[u];break;case 20:Ne.tempCurrentNodeShape=Ne.currentNodeShape,this.$=Ne.currentNodeShape=Ee();break;case 21:case 24:Ne.currentNodeShape=Ne.tempCurrentNodeShape;break;case 22:case 31:this.$=a[u-2];break;case 23:Ne.tempCurrentNodeShape=Ne.currentNodeShape,Ne.currentNodeShape=Ne.currentPropertyNode;break;case 26:Ne.currentNodeShape=a[u];break;case 29:Ne.nodeShapeStack?(Ne.nodeShapeStack.push(Ne.currentNodeShape),Re(Ne.currentPropertyNode,Ne.factory.namedNode(me+"node"),Ne.currentNodeShape=Ee())):Ne.nodeShapeStack=[],this.$=Ne.currentNodeShape;break;case 30:Ne.nodeShapeStack.length>0&&(Ne.currentNodeShape=Ne.nodeShapeStack.pop());break;case 32:this.$=a[u].forEach((e=>{Re(Ne.currentNodeShape,Ne.factory.namedNode(me+"targetClass"),e)}));break;case 35:this.$=Re(Ne.currentNodeShape,Ne.factory.namedNode(me+a[u][0]),a[u][1]);break;case 36:break;case 37:const e=we([a[u-1],...a[u]].map((e=>{const t=Ee();return Re(t,Ne.factory.namedNode(me+e[0]),e[1]),t})));this.$=["or",e];break;case 39:case 46:this.$=function(e,t,r){const n=Ee();return Re(n,Ne.factory.namedNode(me+t),r),[e,n]}("not",...a[u]);break;case 40:case 50:this.$=[a[u-2],a[u]];break;case 43:this.$=a[u]&&Ie(...a[u]);break;case 44:this.$=Ie("or",we([a[u-1],...a[u]].map((e=>{const t=Ee();return Re(t,Ne.factory.namedNode(me+e[0]),e[1]),t}))));break;case 47:this.$=[_e[a[u].value]?"datatype":"class",a[u]];break;case 48:this.$=["nodeKind",Ne.factory.namedNode(me+a[u])];break;case 49:this.$=["node",Ne.factory.namedNode(a[u])];break;case 51:this.$=void 0;break;case 53:this.$=a[u]>0&&Ie("minCount",Oe(a[u],pe));break;case 54:this.$=Ie("maxCount",Oe(a[u],pe));break;case 56:this.$=Se(a[u].slice(1));break;case 57:this.$=Te(a[u]);break;case 59:Re(Ne.currentNodeShape,Ne.factory.namedNode(me+"property"),Ne.currentPropertyNode=Ee()),Ie("path",a[u]);break;case 62:const t=Ee();Re(t,Ne.factory.namedNode(me+"alternativePath"),we([a[u-1],...a[u]])),this.$=t;break;case 65:this.$=we([a[u-1],...a[u]]);break;case 67:Re(this.$=Ee(),Ne.factory.namedNode(me+a[u]),a[u-1]);break;case 69:Re(this.$=Ee(),Ne.factory.namedNode(me+"inversePath"),a[u]);break;case 71:this.$="zeroOrOnePath";break;case 72:this.$="zeroOrMorePath";break;case 73:this.$="oneOrMorePath";break;case 75:this.$=a[u-1];break;case 77:this.$=we(a[u-1]);break;case 80:this.$=Ne.factory.namedNode(Te(a[u]));break;case 81:this.$=Ne.factory.namedNode(Se(a[u]));break;case 82:this.$=Pe(Ne.factory.namedNode(ce));break;case 83:this.$=Oe(a[u]);break;case 84:this.$=(s=a[u-1],c=lowercase(a[u].substr(1)),Ne.factory.literal(s,c));break;case 85:this.$=Oe(a[u-2],a[u]);break;case 86:this.$=Oe(a[u],pe);break;case 87:this.$=Oe(a[u],fe);break;case 88:this.$=Oe(a[u].toLowerCase(),ye);break;case 89:this.$=Oe(a[u].toLowerCase(),ge);break;case 90:this.$=Ae(a[u],1);break;case 91:this.$=Ae(a[u],3);break;case 92:case 96:case 106:case 108:case 110:case 112:case 128:case 138:this.$=[];break;case 93:case 97:case 107:case 109:case 111:case 113:case 115:case 117:case 123:case 129:case 131:case 135:case 137:case 139:a[u-1].push(a[u]);break;case 114:case 116:case 122:case 130:case 134:case 136:this.$=[a[u]]}},table:[e(t,[2,92],{3:1,4:2}),{1:[3]},e(r,[2,96],{5:3,8:4,9:5,10:6,11:7,12:[1,8],14:[1,9],15:[1,10]}),e(n,[2,110],{6:11,124:12,54:13,19:14,24:15,20:[1,16],25:[1,17]}),e(t,[2,93]),e(t,[2,2]),e(t,[2,3]),e(t,[2,4]),{13:[1,18]},{13:[1,19]},{16:[1,20]},{7:[1,21]},e(r,[2,97]),{7:[2,28],13:i,16:a,18:24,51:23,52:22,114:26,115:o,130:s},e(r,[2,94]),e(r,[2,95]),{13:i,16:a,17:30,18:31,114:26,115:o,130:s},{13:i,16:a,17:32,18:31,114:26,115:o,130:s},e(t,[2,5]),e(t,[2,6]),{13:[1,33]},{1:[2,1]},e(n,[2,111]),{13:i,16:a,18:36,29:34,30:35,114:26,115:o,130:s},e(c,[2,26]),e(u,[2,80]),e(u,[2,81]),e(u,[2,82]),e(u,[2,140]),e(u,[2,141]),e(l,[2,98],{21:37,60:38,61:[1,39]}),e([28,56,61],[2,8]),{26:40,27:41,28:d,56:[2,102]},e(t,[2,7]),{53:[1,43]},e(h,[2,104],{31:44,27:45,28:d}),{13:i,16:a,18:51,32:46,33:47,35:48,36:49,37:50,38:p,43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},{22:69,27:70,28:d,56:[2,100]},e(l,[2,99]),{13:i,16:a,18:72,62:71,114:26,115:o,130:s},{23:73,55:74,56:O},{56:[2,103]},{13:i,16:a,18:36,29:76,30:35,114:26,115:o,130:s},e(n,[2,27]),e(h,[2,12]),e(h,[2,105]),e(E,[2,13]),e(x,[2,106],{34:77}),e(A,[2,15]),e(A,[2,16]),e(A,[2,17]),e(R,[2,78]),e(R,[2,79]),{13:i,16:a,18:36,29:78,30:35,114:26,115:o,130:s},e(I,[2,108],{39:79}),e(R,[2,83],{117:[1,80],118:[1,81]}),e(R,[2,86]),e(R,[2,87]),e(R,[2,88]),e(R,[2,89]),e(c,[2,20]),e(P,[2,90]),e(P,[2,91]),e(R,[2,142]),e(R,[2,143]),e(P,[2,144]),e(P,[2,145]),e(P,[2,146]),e(P,[2,147]),{23:82,55:74,56:O},{56:[2,101]},e(l,[2,32],{114:26,18:83,13:i,16:a,115:o,130:s}),e(D,[2,114]),e(r,[2,10]),e(N,[2,112],{59:84}),e(N,[2,29]),e(h,[2,11]),e(E,[2,14],{41:85,42:[1,86]}),{45:87,46:[1,88]},{13:i,16:a,18:51,33:90,35:48,36:49,37:50,38:p,40:[1,89],43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(R,[2,84]),{13:i,16:a,18:91,114:26,115:o,130:s},e(r,[2,9]),e(D,[2,115]),{13:i,16:a,18:115,38:j,57:92,58:[1,94],63:93,64:95,68:102,69:98,70:100,72:104,73:105,74:107,77:97,78:99,87:C,96:M,97:101,99:103,103:106,105:109,106:113,108:110,109:L,114:26,115:o,125:96,126:k,130:s},e(x,[2,107]),{13:i,16:a,18:51,33:117,35:48,36:49,37:50,38:p,43:53,44:f,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(A,[2,22]),e(A,[2,21]),e(A,[2,18]),e(I,[2,109]),e(R,[2,85]),e(F,[2,31]),e(N,[2,113]),e(F,[2,30]),{47:120,48:[1,121],50:119,53:[2,120],65:118},e(B,[2,118],{70:100,68:102,72:104,73:105,74:107,69:122,87:C,96:M,126:k}),e(B,[2,119]),e(U,[2,116]),e(q,[2,128],{79:123}),e(U,[2,35]),e(q,[2,59]),e(U,[2,36],{71:124,66:125,67:V}),e(Q,[2,61],{100:127,98:128,67:$}),e(H,[2,38]),{72:130,74:107,87:C,126:k},e(G,[2,64],{104:131,101:132,102:z}),{75:[1,134]},e([13,16,56,85,87,95,115,126,128,129,130],[2,58]),e(K,[2,68]),{13:i,16:a,18:115,38:j,105:135,106:113,114:26,115:o,130:s},{75:[2,124]},{75:[2,125]},e(K,[2,66],{107:136,93:[1,138],110:[1,137],111:[1,139]}),e([13,16,38,115,130],[2,70]),e(X,[2,74]),{13:i,16:a,18:115,38:j,97:140,99:103,103:106,105:109,106:113,108:110,109:L,114:26,115:o,130:s},e(x,[2,19]),{53:[1,141]},{53:[2,121]},{13:i,16:a,18:36,29:142,30:35,114:26,115:o,130:s},e(c,[2,23]),e(U,[2,117]),e(B,[2,41],{114:26,55:74,127:143,88:144,82:145,81:147,84:148,73:149,18:150,86:152,23:154,94:155,13:i,16:a,44:[1,146],56:O,85:W,87:J,95:Y,96:M,115:o,128:Z,129:ee,130:s}),e(U,[2,37],{66:159,67:V}),e(H,[2,122]),{68:160,72:104,73:105,74:107,87:C,96:M,126:k},e(Q,[2,62],{98:161,67:$}),e(G,[2,134]),{13:i,16:a,18:115,38:j,99:162,103:106,105:109,106:113,108:110,109:L,114:26,115:o,130:s},e(H,[2,39]),e(G,[2,65],{101:163,102:z}),e(K,[2,136]),{13:i,16:a,18:115,38:j,103:164,105:109,106:113,108:110,109:L,114:26,115:o,130:s},{13:i,16:a,18:51,35:166,44:te,76:165,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(K,[2,69]),e(K,[2,67]),e(K,[2,71]),e(K,[2,72]),e(K,[2,73]),{40:[1,168]},e(N,[2,33]),{48:[1,170],49:169},e(q,[2,129]),e(q,[2,126]),e(q,[2,127]),{89:171,92:[1,172]},e(q,[2,43],{83:173,80:174,67:re}),e(ne,[2,45]),{13:i,16:a,18:150,23:154,55:74,56:O,84:176,85:W,86:152,87:J,94:155,95:Y,114:26,115:o,128:Z,129:ee,130:s},e(ne,[2,47]),e(ne,[2,48]),e(ne,[2,49]),{75:[1,177]},e(ne,[2,51]),e(ne,[2,56]),{13:[1,178]},e(ne,[2,132]),e(ne,[2,133]),e(H,[2,123]),e(H,[2,34]),e(G,[2,135]),e(G,[2,60]),e(K,[2,137]),e(K,[2,63]),e(H,[2,40]),e(ie,[2,76]),e(ae,[2,138],{112:179}),e(X,[2,75]),{53:[2,25]},{53:[2,24]},{90:[1,180]},{90:[2,53]},e(q,[2,44],{80:181,67:re}),e(ne,[2,130]),{13:i,16:a,18:150,23:154,55:74,56:O,73:149,81:182,84:148,85:W,86:152,87:J,94:155,95:Y,96:M,114:26,115:o,128:Z,129:ee,130:s},e(ne,[2,46]),{13:i,16:a,18:51,35:166,44:te,76:183,92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},e(ne,[2,57]),{13:i,16:a,18:51,35:185,46:[1,184],92:y,113:52,114:26,115:o,116:55,119:g,120:m,121:59,122:61,123:62,130:s,131:b,132:v,133:_,134:w,135:T,136:S},{91:186,92:[1,187],93:[1,188]},e(ne,[2,131]),e(ne,[2,42]),e(ne,[2,50]),e(ie,[2,77]),e(ae,[2,139]),{46:[1,189]},{46:[2,54]},{46:[2,55]},e(q,[2,52])],defaultActions:{21:[2,1],41:[2,103],70:[2,101],111:[2,124],112:[2,125],119:[2,121],169:[2,25],170:[2,24],172:[2,53],187:[2,54],188:[2,55]},parseError:function(e,t){if(!t.recoverable){var r=new Error(e);throw r.hash=t,r}this.trace(e)},parse:function(e){var t=this,r=[0],n=[null],i=[],a=this.table,o="",s=0,c=0,u=0,l=i.slice.call(arguments,1),d=Object.create(this.lexer),h={yy:{}};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(h.yy[p]=this.yy[p]);d.setInput(e,h.yy),h.yy.lexer=d,h.yy.parser=this,void 0===d.yylloc&&(d.yylloc={});var f=d.yylloc;i.push(f);var y,g=d.options&&d.options.ranges;"function"==typeof h.yy.parseError?this.parseError=h.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var m,b,v,_,w,T,S,O,E,x={};;){if(v=r[r.length-1],this.defaultActions[v]?_=this.defaultActions[v]:(null==m&&(y=void 0,"number"!=typeof(y=d.lex()||1)&&(y=t.symbols_[y]||y),m=y),_=a[v]&&a[v][m]),void 0===_||!_.length||!_[0]){var A;for(T in E=[],a[v])this.terminals_[T]&&T>2&&E.push("'"+this.terminals_[T]+"'");A=d.showPosition?"Parse error on line "+(s+1)+":\n"+d.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(s+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:d.match,token:this.terminals_[m]||m,line:d.yylineno,loc:f,expected:E})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+m);switch(_[0]){case 1:r.push(m),n.push(d.yytext),i.push(d.yylloc),r.push(_[1]),m=null,b?(m=b,b=null):(c=d.yyleng,o=d.yytext,s=d.yylineno,f=d.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[_[1]][1],x.$=n[n.length-S],x._$={first_line:i[i.length-(S||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(S||1)].first_column,last_column:i[i.length-1].last_column},g&&(x._$.range=[i[i.length-(S||1)].range[0],i[i.length-1].range[1]]),void 0!==(w=this.performAction.apply(x,[o,c,s,h.yy,_[1],n,i].concat(l))))return w;S&&(r=r.slice(0,-1*S*2),n=n.slice(0,-1*S),i=i.slice(0,-1*S)),r.push(this.productions_[_[1]][0]),n.push(x.$),i.push(x._$),O=a[r[r.length-2]][r[r.length-1]],r.push(O);break;case 3:return!0}}return!0}};const se="http://www.w3.org/1999/02/22-rdf-syntax-ns#",ce=se+"type",ue=se+"first",le=se+"rest",de=se+"nil",he="http://www.w3.org/2001/XMLSchema#",pe=he+"integer",fe=he+"decimal",ye=he+"double",ge=he+"boolean",me="http://www.w3.org/ns/shacl#",be="http://www.w3.org/2002/07/owl#",ve="http://www.w3.org/2000/01/rdf-schema#",_e={[pe]:!0,[fe]:!0,[he+"float"]:!0,[ye]:!0,[he+"string"]:!0,[ge]:!0,[he+"dateTime"]:!0,[he+"nonPositiveInteger"]:!0,[he+"negativeInteger"]:!0,[he+"long"]:!0,[he+"int"]:!0,[he+"short"]:!0,[he+"byte"]:!0,[he+"nonNegativeInteger"]:!0,[he+"unsignedLong"]:!0,[he+"unsignedShort"]:!0,[he+"unsignedByte"]:!0,[he+"positiveInteger"]:!0,[se+"langString"]:!0};function we(e,t=!1){let r=0,n=e.length;if(t&&0===n)return Ne.factory.namedNode(de);const i=head=Ee();return 0===n&&Re(head,Ne.factory.namedNode(le),Ne.factory.namedNode(de)),e.forEach((e=>{if(void 0===e)throw new Error("b");Re(head,Ne.factory.namedNode(ue),e),Re(head,Ne.factory.namedNode(le),head=++r20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var e,t,r,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(r,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{flex:!0,"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){case 0:break;case 1:return 12;case 2:return 14;case 3:return 15;case 4:return 25;case 5:return 20;case 6:return 131;case 7:return 132;case 8:return 85;case 9:return 126;case 10:return 87;case 11:return"PASS";case 12:return"COMMENT";case 13:return 13;case 14:return 16;case 15:return 130;case 16:return 129;case 17:return 128;case 18:return 117;case 19:return 92;case 20:return 119;case 21:return 120;case 22:return"EXPONENT";case 23:return 133;case 24:return 134;case 25:return 135;case 26:return 136;case 27:return 61;case 28:return 90;case 29:return 58;case 30:return 56;case 31:return 38;case 32:return 40;case 33:return 44;case 34:return 46;case 35:return 110;case 36:return 93;case 37:return 111;case 38:return 67;case 39:return 118;case 40:return 53;case 41:return 96;case 42:return 102;case 43:return 75;case 44:return 95;case 45:return 109;case 46:return 28;case 47:return 42;case 48:return 48;case 49:return 115;case 50:return 7;case 51:console.log(t.yytext)}},rules:[/^(?:\s+|#[^\n\r]*)/i,/^(?:BASE)/i,/^(?:IMPORTS)/i,/^(?:PREFIX)/i,/^(?:shapeClass)/i,/^(?:shape)/i,/^(?:true)/i,/^(?:false)/i,/^(?:(BlankNode|IRI|Literal|BlankNodeOrIRI|BlankNodeOrLiteral|IRIOrLiteral\b))/i,/^(?:(targetNode|targetObjectsOf|targetSubjectsOf\b))/i,/^(?:(deactivated|severity|message|class|datatype|nodeKind|minExclusive|minInclusive|maxExclusive|maxInclusive|minLength|maxLength|pattern|flags|languageIn|uniqueLang|equals|disjoint|lessThan|lessThanOrEquals|qualifiedValueShape|qualifiedMinCount|qualifiedMaxCount|qualifiedValueShapesDisjoint|closed|ignoredProperties|hasValue|in))/i,/^(?:([ \t\r\n]+))/i,/^(?:(#[\r\n]*))/i,/^(?:(<([^=<>\"\{\}\|\^`\\\u0000-\u0020]|(\\u([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])|\\U([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f])))*>))/i,/^(?:((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:))/i,/^(?:(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:)(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|:|[0-9]|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(@(([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:))/i,/^(?:(@((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.)*((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040]))?)?:)(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|:|[0-9]|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))((((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|\.|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(((([A-Z]|[a-z]|[\u00C0-\u00D6]|[\u00D8-\u00F6]|[\u00F8-\u02FF]|[\u0370-\u037D]|[\u037F-\u1FFF]|[\u200C-\u200D]|[\u2070-\u218F]|[\u2C00-\u2FEF]|[\u3001-\uD7FF]|[\uF900-\uFDCF]|[\uFDF0-\uFFFD])|_\b)|-|[0-9]|[\u00B7]|[\u0300-\u036F]|[\u203F-\u2040])|:|((%([0-9]|[A-F]|[a-f])([0-9]|[A-F]|[a-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(@[a-zA-Z]+(-[a-zA-Z0-9]+)*))/i,/^(?:([+-]?[0-9]+))/i,/^(?:([+-]?[0-9]*\.[0-9]+))/i,/^(?:([+-]?([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.?[0-9]+([eE][+-]?[0-9]+))))/i,/^(?:([eE][+-]?[0-9]+))/i,/^(?:('(?:(?:[^\u0027\u005C\u000A\u000D])|(\\[tbnrf\\\"\']))*'))/i,/^(?:("(?:(?:[^\u0022\u005C\u000A\u000D])|(\\[tbnrf\\\"\']))*"))/i,/^(?:('''(?:(?:'|'')?(?:[^'\\]|(\\[tbnrf\\\"\'])))*'''))/i,/^(?:("""(?:(?:"|"")?(?:[^\"\\]|(\\[tbnrf\\\"\'])))*"""))/i,/^(?:->)/i,/^(?:\.\.)/i,/^(?:\})/i,/^(?:\{)/i,/^(?:\()/i,/^(?:\))/i,/^(?:\[)/i,/^(?:\])/i,/^(?:\?)/i,/^(?:\*)/i,/^(?:\+)/i,/^(?:\|)/i,/^(?:\^\^)/i,/^(?:\.)/i,/^(?:!)/i,/^(?:\/)/i,/^(?:=)/i,/^(?:@)/i,/^(?:\^)/i,/^(?:;)/i,/^(?:,)/i,/^(?:%)/i,/^(?:a)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],inclusive:!0}}};function Ne(){this.yy={}}return oe.lexer=De,Ne.prototype=oe,oe.Parser=Ne,new Ne}();e.exports=t},13411:(e,t,r)=>{const n=r(76481).Parser,i=r(66641);class a{constructor(){}parse(e,{extendedSyntax:t,baseIRI:r}={}){this._parser=new n,this._parser.Parser.factory=i.DataFactory,this._parser.Parser.base=i.DataFactory.namedNode(r||"urn:x-base:default"),this._parser.Parser.extended=!0===t,this._parser.Parser.prefixes={rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"},this._parser.Parser.currentNodeShape=void 0,this._parser.Parser.currentPropertyNode=void 0,this._parser.Parser.nodeShapeStack=[],this._parser.Parser.tempCurrentNodeShape=void 0,this._parser.Parser.n3Parser=new i.Parser({baseIRI:r||"urn:x-base:default"});const a=[];return this._parser.Parser.onQuad=e=>{a.push(e)},this._parser.parse(e),a.prefixes=this._parser.Parser.prefixes,a}}e.exports.Parser=a,e.exports.parse=function(e,t){return(new a).parse(e,t)}},48586:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const a=r(66641),o=r(20098),s=r(2122),c=r(83179),u=i(r(60113)),l=i(r(66776)),d=i(r(40350));function h(e){var t;return null===(t=/^[^]*[#/]/.exec(e))||void 0===t?void 0:t[0]}const p={"http://www.w3.org/1999/02/22-rdf-syntax-ns#":"rdf","http://www.w3.org/2000/01/rdf-schema#":"rdfs","http://www.w3.org/ns/shacl#":"sh","http://www.w3.org/2001/XMLSchema#":"xsd"},f={rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"};t.default=class{constructor(e,t,r={},n=void 0,i=!0,a=!1,o,s=!1){this.store=e,this.base=n,this.errorOnExtraQuads=i,this.mintUnspecifiedPrefixes=a,this.fetch=o,this.extendedSyntax=s,this.prefixes={},this.prefixRev={};for(const e of Object.keys(r)){const t=r[e],n="string"==typeof t?t:t.value;n in p||e in f||(this.prefixRev[n]=e,this.prefixes[e]=n)}this.writer=t}write(){return n(this,void 0,void 0,(function*(){const e=this.store.getQuads(null,"http://www.w3.org/1999/02/22-rdf-syntax-ns#type","http://www.w3.org/2002/07/owl#Ontology",null);if(1!==e.length||"NamedNode"!==e[0].subject.termType)throw new Error("Base expected");{const t=e[0].subject;this.store.removeQuads(e),t.equals(new a.NamedNode("urn:x-base:default"))||this.writer.add(`BASE ${(0,s.termToString)(t)}`),yield this.writeImports(t)}if(this.mintUnspecifiedPrefixes){const e=new Set;for(const t of[...this.store.getSubjects(null,null,null),...this.store.getPredicates(null,null,null),...this.store.getObjects(null,null,null)])if("NamedNode"===t.termType){const r=h(t.value);!r||r in this.prefixRev||r in p||e.add(r)}const t=Object.assign(Object.assign({},this.prefixes),f);yield Promise.all([...e].map((e=>(0,o.uriToPrefix)(e,{fetch:this.fetch,mintOnUnknown:!0,existingPrefixes:t}).then((r=>{this.prefixes[r]=e,t[r]=e,this.prefixRev[e]=r})))))}const t=new Set([...this.store.getSubjects(null,null,null),...this.store.getPredicates(null,null,null),...this.store.getObjects(null,null,null)].filter((e=>"NamedNode"===e.termType)).map((e=>h(e.value))).filter((e=>"string"==typeof e)));for(const e in this.prefixRev)t.has(e)||(delete this.prefixes[this.prefixRev[e]],delete this.prefixRev[e]);if(yield this.writePrefixes(),this.prefixes=Object.assign(Object.assign({},this.prefixes),f),this.prefixRev=Object.assign(Object.assign({},this.prefixRev),p),this.writer.newLine(),yield this.writeShapes(),this.extendedSyntax){const e=this.store.getSubjects(null,null,null);e.length>0&&this.writer.newLine(1);for(const t of e)this.writer.add(yield this.termToString(t,!0,!0)),this.writer.add(" "),this.writer.indent(),yield this.writeTurtlePredicates(t),this.writer.deindent();e.length>0&&(this.writer.add(" ."),this.writer.newLine())}if(this.errorOnExtraQuads&&this.store.size>0)throw new Error("Dataset contains quads that cannot be written in SHACLC");this.writer.end()}))}writeImports(e){return n(this,void 0,void 0,(function*(){const t=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/2002/07/owl#imports"),null);if(t.length>0)for(const e of t)this.writer.add(`IMPORTS <${e.value}>`,!0)}))}writePrefixes(){return n(this,void 0,void 0,(function*(){const e=Object.keys(this.prefixes).filter((e=>!(e in l.default))).sort();if(e.length>0)for(const t of e)this.writer.add(`PREFIX ${t}: <${this.prefixes[t]}>`,!0)}))}termToString(e,t=!1,r=!1){return n(this,void 0,void 0,(function*(){try{if(t)throw new Error("Shacl name disabled");return(0,c.getShaclName)(e)}catch(e){}if("NamedNode"===e.termType){const t=h(e.value);return t&&t in this.prefixRev&&t in this.prefixRev?`${this.prefixRev[t]}:${e.value.slice(t.length)}`:(0,s.termToString)(e)}if("Literal"===e.termType)return"http://www.w3.org/2001/XMLSchema#integer"===e.datatypeString||"http://www.w3.org/2001/XMLSchema#boolean"===e.datatypeString?e.value:(0,s.termToString)(e);throw"BlankNode"===e.termType&&r&&(0,s.termToString)(e),new Error(`Invalid term type for extra statement ${e.value} (${e.termType})`)}))}writeShapes(){return n(this,void 0,void 0,(function*(){for(const e of this.store.getSubjectsOnce(new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),new a.NamedNode("http://www.w3.org/ns/shacl#NodeShape"),null)){this.store.getQuadsOnce(e,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),new a.NamedNode("http://www.w3.org/2000/01/rdf-schema#Class"),null).length>0?this.writer.add("shapeClass "):this.writer.add("shape "),this.writer.add(yield this.termToString(e)),this.writer.add(" ");const t=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#targetClass"),null);if(t.length>0){this.writer.add("-> ");for(const e of t)"NamedNode"===e.termType?this.writer.add(yield this.termToString(e)):(this.writer.add("!"),this.writer.add(yield this.termToString(this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#not"),!0)))),this.writer.add(" ")}const r=this.store.getPredicates(e,null,null).filter((e=>[new a.NamedNode("http://www.w3.org/ns/shacl#targetClass"),new a.NamedNode("http://www.w3.org/ns/shacl#property"),new a.NamedNode("http://www.w3.org/ns/shacl#or"),...Object.keys(d.default).map((e=>new a.NamedNode("http://www.w3.org/ns/shacl#"+e)))].every((t=>!e.equals(t)))));r.length>0&&(this.writer.add(";"),this.writer.indent(),this.writer.newLine(1)),this.extendedSyntax&&(yield this.writeGivenTurtlePredicates(e,r)),r.length>0&&(this.writer.add(" "),this.writer.deindent()),yield this.writeShapeBody(e,!1)}}))}getSingleProperty(e,t){let r=[e];try{let n=(0,c.getShaclName)(e.predicate),i="pred";if("not"===n){const t=this.store.getQuadsOnce(e.object,null,null,null);if(r=r.concat(t),1!==t.length)throw new Error("Can only handle having one predicate of 'not'");[e]=t,n=(0,c.getShaclName)(e.predicate),i="not"}if(!(n in t))throw new Error(`${n} is not allowed`);return{name:n,type:i,object:e.object}}catch(e){this.store.addQuads(r)}}singleLayerPropertiesList(e,t){const r=[];for(const n of this.store.getQuadsOnce(e,null,null,null)){const e=this.getSingleProperty(n,t);e&&r.push(e)}return r}expectOneProperty(e,t){const r=this.store.getQuadsOnce(e,null,null,null);if(1===r.length){const e=this.getSingleProperty(r[0],t);if(e)return e}this.store.addQuads(r)}orProperties(e,t){const r=[];for(const n of this.store.getQuadsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#or"),null,null)){const e=[];for(const r of this.getList(n.object)){const i=this.expectOneProperty(r,t);if(!i)throw this.store.addQuad(n),new Error("Each entry of the 'or' statement must declare exactly one property");e.push(i)}r.push(e)}return r}getList(e){let t=e;const r=[];for(;!t.equals(new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"));)r.push(this.singleObject(t,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),!0)),t=this.singleObject(t,new a.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),!0);return r}writeIriLiteralOrArray(e){return n(this,void 0,void 0,(function*(){if("BlankNode"===e.termType){this.writer.add("[");let t=!0;for(const r of this.getList(e))t?t=!1:this.writer.add(" "),this.writer.add(yield this.termToString(r));this.writer.add("]")}else this.writer.add(yield this.termToString(e))}))}singleObject(e,t,r){var n;return null===(n=this.singleQuad(e,t,r))||void 0===n?void 0:n.object}singleQuad(e,t,r=!1){const n=this.store.getQuadsOnce(e,t,null,null);if(r&&1!==n.length)throw this.store.addQuads(n),new Error(`The subject and predicate ${null==e?void 0:e.value} ${null==t?void 0:t.value} must have exactly one object. Instead has ${n.length}`);if(n.length>1)throw this.store.addQuads(n),new Error(`The subject and predicate ${null==e?void 0:e.value} ${null==t?void 0:t.value} can have at most one object. Instead has ${n.length}`);return 1===n.length?n[0]:void 0}writeAssigment({name:e,type:t,object:r}){return n(this,void 0,void 0,(function*(){"not"===t&&this.writer.add("!"),this.writer.add(e),this.writer.add("="),yield this.writeIriLiteralOrArray(r)}))}writeAtom({name:e,type:t,object:r}){return n(this,void 0,void 0,(function*(){switch("not"===t&&this.writer.add("!"),e){case"node":if("NamedNode"===r.termType)this.writer.add(`@${yield this.termToString(r)}`);else{if("BlankNode"!==r.termType)throw new Error("Invalid nested shape, must be blank node or IRI");yield this.writeShapeBody(r)}return;case"nodeKind":return void this.writer.add((0,c.getShaclName)(r));case"class":case"datatype":return void this.writer.add(yield this.termToString(r));default:this.writer.add(e),this.writer.add("="),yield this.writeIriLiteralOrArray(r)}}))}writeAssigments(e,t=" ",r=!0,i){return n(this,void 0,void 0,(function*(){for(const n of e)r?r=!1:this.writer.add(t),i?yield this.writeAtom(n):yield this.writeAssigment(n)}))}writeParams(e,t=!0,r,i=!1,a=!1){return n(this,void 0,void 0,(function*(){const n=this.orProperties(e,r),o=this.singleLayerPropertiesList(e,r);a&&(n.length>0||o.length>0)&&this.writer.newLine(1);for(const e of n)t?t=!1:this.writer.add(" "),yield this.writeAssigments(e,"|",!0,i);yield this.writeAssigments(o," ",t,i),a&&(n.length>0||o.length>0)&&this.writer.add(" .")}))}writeShapeBody(e,t=!0){return n(this,void 0,void 0,(function*(){this.writer.add("{").indent();const r=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#property"),null);yield this.writeParams(e,!0,d.default,!1,!0);for(const e of r)this.writer.newLine(1),yield this.writeProperty(e);this.writer.deindent().newLine(1),t?this.writer.add("} ."):this.writer.add("}").newLine(1)}))}writeProperty(e){return n(this,void 0,void 0,(function*(){yield this.writePath(this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#path"),!0));const t=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#minCount")),r=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#maxCount")),n=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#nodeKind")),i=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#class")),o=this.singleObject(e,new a.NamedNode("http://www.w3.org/ns/shacl#datatype")),s=this.store.getObjectsOnce(e,new a.NamedNode("http://www.w3.org/ns/shacl#node"),null);if(n&&(this.writer.add(" "),this.writer.add((0,c.getShaclName)(n))),i&&(this.writer.add(" "),this.writer.add(yield this.termToString(i))),o&&(this.writer.add(" "),this.writer.add(yield this.termToString(o))),void 0!==t||void 0!==r){if(this.writer.add(" ["),t){if("Literal"!==t.termType||"http://www.w3.org/2001/XMLSchema#integer"!==t.datatypeString)throw new Error("Invalid min value, must me an integer literal");this.writer.add(t.value)}else this.writer.add("0");if(this.writer.add(".."),r){if("Literal"!==r.termType||"http://www.w3.org/2001/XMLSchema#integer"!==r.datatypeString)throw new Error("Invalid max value, must me an integer literal");this.store.removeMatches(e,new a.NamedNode("http://www.w3.org/ns/shacl#maxCount"),void 0,void 0),this.writer.add(r.value)}else this.writer.add("*");this.writer.add("]")}yield this.writeParams(e,!1,u.default,!0);const l=[];for(const e of s)if("NamedNode"===e.termType)this.writer.add(" "),this.writer.add(`@${yield this.termToString(e)}`);else{if("BlankNode"!==e.termType)throw new Error("Invalid nested shape, must be blank node or IRI");l.push(e)}for(const e of l)this.writer.add(" "),yield this.writeShapeBody(e);this.extendedSyntax&&this.store.getQuads(e,null,null,null).length>0&&(this.writer.add(" %"),this.writer.indent(),this.writer.newLine(1),yield this.writeTurtlePredicates(e),this.writer.deindent(),this.writer.newLine(1),this.writer.add("%")),0===l.length&&this.writer.add(" .")}))}writeTurtlePredicates(e){return n(this,void 0,void 0,(function*(){return this.writeGivenTurtlePredicates(e,this.store.getPredicates(e,null,null))}))}writeGivenTurtlePredicates(e,t){return n(this,void 0,void 0,(function*(){let r=!1;if(t.some((e=>e.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))))){const t=this.store.getObjectsOnce(e,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),null);t.length>0&&(r=!0,this.writer.add("a "),yield this.writeTurtleObjects(t))}for(const n of t)n.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"))||(r?(this.writer.add(" ;"),this.writer.newLine(1)):r=!0,this.writer.add(yield this.termToString(n,!0)),this.writer.add(" "),yield this.writeTurtleObjects(this.store.getObjectsOnce(e,n,null)))}))}writeTurtleObjects(e){return n(this,void 0,void 0,(function*(){const t=[],r=[];for(const n of e)"BlankNode"===n.termType&&0===[...this.store.match(null,null,n),...this.store.match(null,n,null)].length?t.push(n):r.push(n);this.writer.add((yield Promise.all(r.map((e=>this.termToString(e,!0,!0))))).join(", "));let n=r.length>0;if(t.length>0)for(const e of t)n?this.writer.add(", "):n=!0,(yield this.writeList(e))||(this.writer.add("["),this.writer.indent(),this.writer.newLine(1),yield this.writeTurtlePredicates(e),this.writer.deindent(),this.writer.newLine(1),this.writer.add("]"))}))}writeList(e){return n(this,void 0,void 0,(function*(){let t=e;const r=[],n=[];for(;!t.equals(a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil"));){const e=this.store.getQuadsOnce(t,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#first"),null,null),i=this.store.getQuadsOnce(t,a.DataFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest"),null,null);if(n.push(...e,...i),1!==e.length||1!==i.length||0!==this.store.getQuads(t,null,null,null).length)return this.store.addQuads(n),!1;r.push(e[0].object),t=i[0].object}let i=!1;this.writer.add("(");for(const e of r)i?this.writer.add(" "):i=!0,yield this.writeTurtleObjects([e]);return this.writer.add(")"),!0}))}writePath(e,t=!1){return n(this,void 0,void 0,(function*(){if("NamedNode"===e.termType)this.writer.add(yield this.termToString(e));else{if("BlankNode"!==e.termType)throw new Error("Path should be named node or blank node");{const r=this.store.getQuadsOnce(e,null,null,null);if(1===r.length){const{predicate:n,object:i}=r[0];switch(n.value){case"http://www.w3.org/ns/shacl#inversePath":return this.writer.add("^"),void(yield this.writePath(i,!0));case"http://www.w3.org/ns/shacl#alternativePath":{const e=this.getList(i);if(0===e.length)throw new Error("Invalid Alternative Path - no options");if(1===e.length)yield this.writePath(e[0]);else{t&&this.writer.add("(");let r=!0;for(const t of e)r?r=!1:this.writer.add("|"),yield this.writePath(t,!0);t&&this.writer.add(")")}return}case"http://www.w3.org/ns/shacl#zeroOrMorePath":return yield this.writePath(i,!0),void this.writer.add("*");case"http://www.w3.org/ns/shacl#oneOrMorePath":return yield this.writePath(i,!0),void this.writer.add("+");case"http://www.w3.org/ns/shacl#zeroOrOnePath":return yield this.writePath(i,!0),void this.writer.add("?");default:throw new Error(`Invalid path type ${e.value}`)}}else{this.store.addQuads(r);const n=this.getList(e);if(0===n.length)throw new Error("Invalid Path");{t&&this.writer.add("(");let e=!0;for(const t of n)e?e=!1:this.writer.add("/"),yield this.writePath(t,!0);t&&this.writer.add(")")}}}}}))}}},66776:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={owl:"http://www.w3.org/2002/07/owl#",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",sh:"http://www.w3.org/ns/shacl#",xsd:"http://www.w3.org/2001/XMLSchema#"}},30890:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,s)}c((n=n.apply(e,t||[])).next())}))},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.write=void 0;const a=r(66641),o=i(r(48586)),s=i(r(59480)),c=i(r(918));t.write=function(e,t){return n(this,void 0,void 0,(function*(){return new Promise(((r,i)=>n(this,void 0,void 0,(function*(){try{let n="";const i=new c.default(e),u=i.getGraphs(null,null,null);if(u.length>1)throw new Error("More than one graph found - can serialize in the default graph");if(1===u.length&&!u[0].equals(a.DataFactory.defaultGraph()))throw new Error(`Expected all triples to be in the default graph, instead triples were in ${u[0].value}`);const l=new s.default({write:e=>{n+=e},end:()=>{let e=i.getQuads(null,null,null,null);0===e.length&&(e=void 0),r({text:n,extraQuads:e})}}),d=new o.default(i,l,null==t?void 0:t.prefixes,void 0,!1!==(null==t?void 0:t.errorOnUnused),null==t?void 0:t.mintPrefixes,null==t?void 0:t.fetch,null==t?void 0:t.extendedSyntax);yield d.write()}catch(e){i(e)}}))))}))}},40350:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={targetNode:!0,targetObjectsOf:!0,targetSubjectsOf:!0,deactivated:!0,severity:!0,message:!0,class:!0,datatype:!0,nodeKind:!0,minExclusive:!0,minInclusive:!0,maxExclusive:!0,maxInclusive:!0,minLength:!0,maxLength:!0,pattern:!0,flags:!0,languageIn:!0,equals:!0,disjoint:!0,closed:!0,ignoredProperties:!0,hasValue:!0,in:!0}},60113:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={deactivated:!0,severity:!0,message:!0,class:!0,datatype:!0,nodeKind:!0,minExclusive:!0,minInclusive:!0,maxExclusive:!0,maxInclusive:!0,minLength:!0,maxLength:!0,pattern:!0,flags:!0,languageIn:!0,uniqueLang:!0,equals:!0,disjoint:!0,lessThan:!0,lessThanOrEquals:!0,qualifiedValueShape:!0,qualifiedMinCount:!0,qualifiedMaxCount:!0,qualifiedValueShapesDisjoint:!0,closed:!0,ignoredProperties:!0,hasValue:!0,in:!0,node:!0}},83179:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getShaclName=void 0,t.getShaclName=function(e){if("NamedNode"!==e.termType||!e.value.startsWith("http://www.w3.org/ns/shacl#"))throw new Error(`Term ${e.value} is not part of the SHACL namespace`);return e.value.slice(27)}},918:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(66641);class i extends n.Store{getQuadsOnce(e,t,r,n){const i=this.getQuads(e,t,r,n);return this.removeQuads(i),i}getSubjectsOnce(e,t,r){return this.getQuadsOnce(null,e,t,r).map((e=>e.subject))}getObjectsOnce(e,t,r){return this.getQuadsOnce(e,t,null,r).map((e=>e.object))}}t.default=i},59480:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=class{constructor(e){this.indents=0,this.write=e.write,this.end=e.end}indent(){return this.indents+=1,this}deindent(){if(this.indents<1)throw new Error(`Trying to deindent when indent is only ${this.indents}`);return this.indents-=1,this}add(e,t=!1){return this.write(t?`\n${"\t".repeat(this.indents)}${e}`:e,"utf-8"),this}newLine(e=2){return this.write("\n".repeat(e)+"\t".repeat(this.indents),"utf-8"),this}}},84791:e=>{e.exports=function(e){"use strict";var t=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];function r(e,t){var r=e[0],n=e[1],i=e[2],a=e[3];n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[0]-680876936|0)<<7|r>>>25)+n|0)&n|~r&i)+t[1]-389564586|0)<<12|a>>>20)+r|0)&r|~a&n)+t[2]+606105819|0)<<17|i>>>15)+a|0)&a|~i&r)+t[3]-1044525330|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[4]-176418897|0)<<7|r>>>25)+n|0)&n|~r&i)+t[5]+1200080426|0)<<12|a>>>20)+r|0)&r|~a&n)+t[6]-1473231341|0)<<17|i>>>15)+a|0)&a|~i&r)+t[7]-45705983|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[8]+1770035416|0)<<7|r>>>25)+n|0)&n|~r&i)+t[9]-1958414417|0)<<12|a>>>20)+r|0)&r|~a&n)+t[10]-42063|0)<<17|i>>>15)+a|0)&a|~i&r)+t[11]-1990404162|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&i|~n&a)+t[12]+1804603682|0)<<7|r>>>25)+n|0)&n|~r&i)+t[13]-40341101|0)<<12|a>>>20)+r|0)&r|~a&n)+t[14]-1502002290|0)<<17|i>>>15)+a|0)&a|~i&r)+t[15]+1236535329|0)<<22|n>>>10)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[1]-165796510|0)<<5|r>>>27)+n|0)&i|n&~i)+t[6]-1069501632|0)<<9|a>>>23)+r|0)&n|r&~n)+t[11]+643717713|0)<<14|i>>>18)+a|0)&r|a&~r)+t[0]-373897302|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[5]-701558691|0)<<5|r>>>27)+n|0)&i|n&~i)+t[10]+38016083|0)<<9|a>>>23)+r|0)&n|r&~n)+t[15]-660478335|0)<<14|i>>>18)+a|0)&r|a&~r)+t[4]-405537848|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[9]+568446438|0)<<5|r>>>27)+n|0)&i|n&~i)+t[14]-1019803690|0)<<9|a>>>23)+r|0)&n|r&~n)+t[3]-187363961|0)<<14|i>>>18)+a|0)&r|a&~r)+t[8]+1163531501|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n&a|i&~a)+t[13]-1444681467|0)<<5|r>>>27)+n|0)&i|n&~i)+t[2]-51403784|0)<<9|a>>>23)+r|0)&n|r&~n)+t[7]+1735328473|0)<<14|i>>>18)+a|0)&r|a&~r)+t[12]-1926607734|0)<<20|n>>>12)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[5]-378558|0)<<4|r>>>28)+n|0)^n^i)+t[8]-2022574463|0)<<11|a>>>21)+r|0)^r^n)+t[11]+1839030562|0)<<16|i>>>16)+a|0)^a^r)+t[14]-35309556|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[1]-1530992060|0)<<4|r>>>28)+n|0)^n^i)+t[4]+1272893353|0)<<11|a>>>21)+r|0)^r^n)+t[7]-155497632|0)<<16|i>>>16)+a|0)^a^r)+t[10]-1094730640|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[13]+681279174|0)<<4|r>>>28)+n|0)^n^i)+t[0]-358537222|0)<<11|a>>>21)+r|0)^r^n)+t[3]-722521979|0)<<16|i>>>16)+a|0)^a^r)+t[6]+76029189|0)<<23|n>>>9)+i|0,n=((n+=((i=((i+=((a=((a+=((r=((r+=(n^i^a)+t[9]-640364487|0)<<4|r>>>28)+n|0)^n^i)+t[12]-421815835|0)<<11|a>>>21)+r|0)^r^n)+t[15]+530742520|0)<<16|i>>>16)+a|0)^a^r)+t[2]-995338651|0)<<23|n>>>9)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[0]-198630844|0)<<6|r>>>26)+n|0)|~i))+t[7]+1126891415|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[14]-1416354905|0)<<15|i>>>17)+a|0)|~r))+t[5]-57434055|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[12]+1700485571|0)<<6|r>>>26)+n|0)|~i))+t[3]-1894986606|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[10]-1051523|0)<<15|i>>>17)+a|0)|~r))+t[1]-2054922799|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[8]+1873313359|0)<<6|r>>>26)+n|0)|~i))+t[15]-30611744|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[6]-1560198380|0)<<15|i>>>17)+a|0)|~r))+t[13]+1309151649|0)<<21|n>>>11)+i|0,n=((n+=((a=((a+=(n^((r=((r+=(i^(n|~a))+t[4]-145523070|0)<<6|r>>>26)+n|0)|~i))+t[11]-1120210379|0)<<10|a>>>22)+r|0)^((i=((i+=(r^(a|~n))+t[2]+718787259|0)<<15|i>>>17)+a|0)|~r))+t[9]-343485551|0)<<21|n>>>11)+i|0,e[0]=r+e[0]|0,e[1]=n+e[1]|0,e[2]=i+e[2]|0,e[3]=a+e[3]|0}function n(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e.charCodeAt(t)+(e.charCodeAt(t+1)<<8)+(e.charCodeAt(t+2)<<16)+(e.charCodeAt(t+3)<<24);return r}function i(e){var t,r=[];for(t=0;t<64;t+=4)r[t>>2]=e[t]+(e[t+1]<<8)+(e[t+2]<<16)+(e[t+3]<<24);return r}function a(e){var t,i,a,o,s,c,u=e.length,l=[1732584193,-271733879,-1732584194,271733878];for(t=64;t<=u;t+=64)r(l,n(e.substring(t-64,t)));for(i=(e=e.substring(t-64)).length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],t=0;t>2]|=e.charCodeAt(t)<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(l,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*u).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(o[2],16),c=parseInt(o[1],16)||0,a[14]=s,a[15]=c,r(l,a),l}function o(e){var r,n="";for(r=0;r<4;r+=1)n+=t[e>>8*r+4&15]+t[e>>8*r&15];return n}function s(e){var t;for(t=0;tu?new ArrayBuffer(0):(n=u-c,i=new ArrayBuffer(n),a=new Uint8Array(i),o=new Uint8Array(this,c,n),a.set(o),i)}}(),l.prototype.append=function(e){return this.appendBinary(c(e)),this},l.prototype.appendBinary=function(e){this._buff+=e,this._length+=e.length;var t,i=this._buff.length;for(t=64;t<=i;t+=64)r(this._hash,n(this._buff.substring(t-64,t)));return this._buff=this._buff.substring(t-64),this},l.prototype.end=function(e){var t,r,n=this._buff,i=n.length,a=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(t=0;t>2]|=n.charCodeAt(t)<<(t%4<<3);return this._finish(a,i),r=s(this._hash),e&&(r=u(r)),this.reset(),r},l.prototype.reset=function(){return this._buff="",this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},l.prototype.getState=function(){return{buff:this._buff,length:this._length,hash:this._hash.slice()}},l.prototype.setState=function(e){return this._buff=e.buff,this._length=e.length,this._hash=e.hash,this},l.prototype.destroy=function(){delete this._hash,delete this._buff,delete this._length},l.prototype._finish=function(e,t){var n,i,a,o=t;if(e[o>>2]|=128<<(o%4<<3),o>55)for(r(this._hash,e),o=0;o<16;o+=1)e[o]=0;n=(n=8*this._length).toString(16).match(/(.*?)(.{0,8})$/),i=parseInt(n[2],16),a=parseInt(n[1],16)||0,e[14]=i,e[15]=a,r(this._hash,e)},l.hash=function(e,t){return l.hashBinary(c(e),t)},l.hashBinary=function(e,t){var r=s(a(e));return t?u(r):r},l.ArrayBuffer=function(){this.reset()},l.ArrayBuffer.prototype.append=function(e){var t,n,a,o,s,c=(n=this._buff.buffer,a=e,o=!0,(s=new Uint8Array(n.byteLength+a.byteLength)).set(new Uint8Array(n)),s.set(new Uint8Array(a),n.byteLength),o?s:s.buffer),u=c.length;for(this._length+=e.byteLength,t=64;t<=u;t+=64)r(this._hash,i(c.subarray(t-64,t)));return this._buff=t-64>2]|=n[t]<<(t%4<<3);return this._finish(a,i),r=s(this._hash),e&&(r=u(r)),this.reset(),r},l.ArrayBuffer.prototype.reset=function(){return this._buff=new Uint8Array(0),this._length=0,this._hash=[1732584193,-271733879,-1732584194,271733878],this},l.ArrayBuffer.prototype.getState=function(){var e,t=l.prototype.getState.call(this);return t.buff=(e=t.buff,String.fromCharCode.apply(null,new Uint8Array(e))),t},l.ArrayBuffer.prototype.setState=function(e){return e.buff=function(e,t){var r,n=e.length,i=new ArrayBuffer(n),a=new Uint8Array(i);for(r=0;r>2]|=e[t]<<(t%4<<3);if(a[t>>2]|=128<<(t%4<<3),t>55)for(r(l,a),t=0;t<16;t+=1)a[t]=0;return o=(o=8*u).toString(16).match(/(.*?)(.{0,8})$/),s=parseInt(o[2],16),c=parseInt(o[1],16)||0,a[14]=s,a[15]=c,r(l,a),l}(new Uint8Array(e)));return t?u(n):n},l}()},6789:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Util=t.toSparqlJs=t.toSparql=t.Factory=t.Algebra=t.translate=void 0;const s=o(r(2647));t.translate=s.default;const c=a(r(31928));t.Algebra=c;const u=o(r(51444));t.Factory=u.default;const l=r(55026);Object.defineProperty(t,"toSparql",{enumerable:!0,get:function(){return l.toSparql}}),Object.defineProperty(t,"toSparqlJs",{enumerable:!0,get:function(){return l.toSparqlJs}});const d=o(r(63138));t.Util=d.default},31928:(e,t)=>{"use strict";var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.expressionTypes=t.types=void 0,(n=t.types||(t.types={})).ALT="alt",n.ASK="ask",n.BGP="bgp",n.CONSTRUCT="construct",n.DESCRIBE="describe",n.DISTINCT="distinct",n.EXPRESSION="expression",n.EXTEND="extend",n.FILTER="filter",n.FROM="from",n.GRAPH="graph",n.GROUP="group",n.INV="inv",n.JOIN="join",n.LEFT_JOIN="leftjoin",n.LINK="link",n.MINUS="minus",n.NOP="nop",n.NPS="nps",n.ONE_OR_MORE_PATH="OneOrMorePath",n.ORDER_BY="orderby",n.PATH="path",n.PATTERN="pattern",n.PROJECT="project",n.REDUCED="reduced",n.SEQ="seq",n.SERVICE="service",n.SLICE="slice",n.UNION="union",n.VALUES="values",n.ZERO_OR_MORE_PATH="ZeroOrMorePath",n.ZERO_OR_ONE_PATH="ZeroOrOnePath",n.COMPOSITE_UPDATE="compositeupdate",n.DELETE_INSERT="deleteinsert",n.LOAD="load",n.CLEAR="clear",n.CREATE="create",n.DROP="drop",n.ADD="add",n.MOVE="move",n.COPY="copy",(r=t.expressionTypes||(t.expressionTypes={})).AGGREGATE="aggregate",r.EXISTENCE="existence",r.NAMED="named",r.OPERATOR="operator",r.TERM="term",r.WILDCARD="wildcard"},51444:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0});const o=a(r(31928)),s=r(91194),c=r(6053),u=r(2085);t.default=class{constructor(e){this.dataFactory=e||new s.DataFactory,this.stringType=this.createTerm("http://www.w3.org/2001/XMLSchema#string")}createAlt(e,t=!0){return this.flattenMulti({type:o.types.ALT,input:e},t)}createAsk(e){return{type:o.types.ASK,input:e}}createBoundAggregate(e,t,r,n,i){const a=this.createAggregateExpression(t,r,n,i);return a.variable=e,a}createBgp(e){return{type:o.types.BGP,patterns:e}}createConstruct(e,t){return{type:o.types.CONSTRUCT,input:e,template:t}}createDescribe(e,t){return{type:o.types.DESCRIBE,input:e,terms:t}}createDistinct(e){return{type:o.types.DISTINCT,input:e}}createExtend(e,t,r){return{type:o.types.EXTEND,input:e,variable:t,expression:r}}createFrom(e,t,r){return{type:o.types.FROM,input:e,default:t,named:r}}createFilter(e,t){return{type:o.types.FILTER,input:e,expression:t}}createGraph(e,t){return{type:o.types.GRAPH,input:e,name:t}}createGroup(e,t,r){return{type:o.types.GROUP,input:e,variables:t,aggregates:r}}createInv(e){return{type:o.types.INV,path:e}}createJoin(e,t=!0){return this.flattenMulti({type:o.types.JOIN,input:e},t)}createLeftJoin(e,t,r){return r?{type:o.types.LEFT_JOIN,input:[e,t],expression:r}:{type:o.types.LEFT_JOIN,input:[e,t]}}createLink(e){return{type:o.types.LINK,iri:e}}createMinus(e,t){return{type:o.types.MINUS,input:[e,t]}}createNop(){return{type:o.types.NOP}}createNps(e){return{type:o.types.NPS,iris:e}}createOneOrMorePath(e){return{type:o.types.ONE_OR_MORE_PATH,path:e}}createOrderBy(e,t){return{type:o.types.ORDER_BY,input:e,expressions:t}}createPath(e,t,r,n){return n?{type:o.types.PATH,subject:e,predicate:t,object:r,graph:n}:{type:o.types.PATH,subject:e,predicate:t,object:r,graph:this.dataFactory.defaultGraph()}}createPattern(e,t,r,n){const i=this.dataFactory.quad(e,t,r,n);return i.type=o.types.PATTERN,i}createProject(e,t){return{type:o.types.PROJECT,input:e,variables:t}}createReduced(e){return{type:o.types.REDUCED,input:e}}createSeq(e,t=!0){return this.flattenMulti({type:o.types.SEQ,input:e},t)}createService(e,t,r){return{type:o.types.SERVICE,input:e,name:t,silent:Boolean(r)}}createSlice(e,t,r){return t=t||0,void 0!==r?{type:o.types.SLICE,input:e,start:t,length:r}:{type:o.types.SLICE,input:e,start:t}}createUnion(e,t=!0){return this.flattenMulti({type:o.types.UNION,input:e},t)}createValues(e,t){return{type:o.types.VALUES,variables:e,bindings:t}}createZeroOrMorePath(e){return{type:o.types.ZERO_OR_MORE_PATH,path:e}}createZeroOrOnePath(e){return{type:o.types.ZERO_OR_ONE_PATH,path:e}}createAggregateExpression(e,t,r,n){return n?{type:o.types.EXPRESSION,expressionType:o.expressionTypes.AGGREGATE,aggregator:e,expression:t,separator:n,distinct:r}:{type:o.types.EXPRESSION,expressionType:o.expressionTypes.AGGREGATE,aggregator:e,expression:t,distinct:r}}createExistenceExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.EXISTENCE,not:e,input:t}}createNamedExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.NAMED,name:e,args:t}}createOperatorExpression(e,t){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.OPERATOR,operator:e,args:t}}createTermExpression(e){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.TERM,term:e}}createWildcardExpression(){return{type:o.types.EXPRESSION,expressionType:o.expressionTypes.WILDCARD,wildcard:new u.Wildcard}}createTerm(e){return(0,c.stringToTerm)(e,this.dataFactory)}createCompositeUpdate(e){return{type:o.types.COMPOSITE_UPDATE,updates:e}}createDeleteInsert(e,t,r){const n={type:o.types.DELETE_INSERT};return e&&(n.delete=e),t&&(n.insert=t),r&&(n.where=r),n}createLoad(e,t,r){const n={type:o.types.LOAD,source:e};return t&&(n.destination=t),this.addSilent(n,Boolean(r))}createClear(e,t){return this.addSilent({type:o.types.CLEAR,source:e},Boolean(t))}createCreate(e,t){return this.addSilent({type:o.types.CREATE,source:e},Boolean(t))}createDrop(e,t){return this.addSilent({type:o.types.DROP,source:e},Boolean(t))}createAdd(e,t,r){return this.addSilent({type:o.types.ADD,source:e,destination:t},Boolean(r))}createMove(e,t,r){return this.addSilent({type:o.types.MOVE,source:e,destination:t},Boolean(r))}createCopy(e,t,r){return this.addSilent({type:o.types.COPY,source:e,destination:t},Boolean(r))}addSilent(e,t){return t&&(e.silent=t),e}flattenMulti(e,t){if(!t)return e;const r=e.type,n=e.input;let i=[];for(const e of n)e.type===r?i.push(...e.input):i.push(e);return e.input=i,e}}},55026:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.toSparqlJs=t.toSparql=void 0;const s=r(16550),c=r(6053),u=r(2085),l=a(r(31928)),d=o(r(51444)),h=o(r(63138)),p=l.types,f=l.expressionTypes;let y;const g=new d.default;function m(e){b();let t=v(e=function(e){return D(e,{})}(e));return"group"===t.type?t.patterns[0]:t}function b(){y={project:!1,extend:[],group:[],aggregates:[],order:[]}}function v(e){switch(e.type!==p.EXTEND&&e.type!==p.ORDER_BY&&e.type!==p.GRAPH&&(y.project=!1),e.type){case p.EXPRESSION:return _(e);case p.ASK:return x(e,p.ASK);case p.BGP:return function(e){let t=e.patterns.map(O);return 0===t.length?null:{type:"bgp",triples:t}}(e);case p.CONSTRUCT:return function(e){return{type:"query",prefixes:{},queryType:"CONSTRUCT",template:e.template.map(O),where:h.default.flatten([v(e.input)])}}(e);case p.DESCRIBE:return x(e,p.DESCRIBE);case p.DISTINCT:return function(e){let t=v(e.input);return t.patterns[0].distinct=!0,t}(e);case p.EXTEND:return function(e){return y.project?(y.extend.push(e),v(e.input)):h.default.flatten([v(e.input),{type:"bind",variable:e.variable,expression:_(e.expression)}])}(e);case p.FROM:return function(e){const t=v(e.input);return t.patterns[0].from={default:e.default,named:e.named},t}(e);case p.FILTER:return function(e){return{type:"group",patterns:h.default.flatten([v(e.input),{type:"filter",expression:_(e.expression)}])}}(e);case p.GRAPH:return function(e){return{type:"graph",patterns:h.default.flatten([v(e.input)]),name:e.name}}(e);case p.GROUP:return function(e){const t=v(e.input),r=e.aggregates.map(S);return y.aggregates.push(...r),y.group.push(...e.variables),t}(e);case p.JOIN:return function(e){return h.default.flatten(e.input.map(v)).reduce(((e,t)=>("bgp"!==t.type||0==e.length||"bgp"!==e[e.length-1].type?e.push(t):e[e.length-1].triples.push(...t.triples),e)),[])}(e);case p.LEFT_JOIN:return function(e){const t={type:"optional",patterns:[v(e.input[1])]};return e.expression&&t.patterns.push({type:"filter",expression:_(e.expression)}),t.patterns=h.default.flatten(t.patterns),h.default.flatten([v(e.input[0]),t])}(e);case p.MINUS:return function(e){let t=v(e.input[1]);return"group"===t.type&&(t=t.patterns),Array.isArray(t)||(t=[t]),h.default.flatten([v(e.input[0]),{type:"minus",patterns:t}])}(e);case p.NOP:return{};case p.ORDER_BY:return function(e){return y.order.push(...e.expressions),v(e.input)}(e);case p.PATH:return function(e){return{type:"bgp",triples:[{subject:e.subject,predicate:w(e.predicate),object:e.object}]}}(e);case p.PATTERN:return O(e);case p.PROJECT:return x(e,p.PROJECT);case p.REDUCED:return function(e){let t=v(e.input);return t.patterns[0].reduced=!0,t}(e);case p.SERVICE:return function(e){let t=v(e.input);return"group"===t.type&&(t=t.patterns),Array.isArray(t)||(t=[t]),{type:"service",name:e.name,silent:e.silent,patterns:t}}(e);case p.SLICE:return function(e){let t=v(e.input),r=t;return t.type&&"group"===t.type&&(r=t.patterns[0]),0!==e.start&&(r.offset=e.start),void 0!==e.length&&(r.limit=e.length),t}(e);case p.UNION:return function(e){return{type:"union",patterns:h.default.flatten(e.input.map(v))}}(e);case p.VALUES:return function(e){return{type:"values",values:e.bindings.map((t=>{let r={};for(let n of e.variables){let e=`?${n.value}`;t[e]?r[e]=t[e]:r[e]=void 0}return r}))}}(e);case p.COMPOSITE_UPDATE:return function(e){return{prefixes:{},type:"update",updates:e.updates.map((e=>v(e).updates[0]))}}(e);case p.DELETE_INSERT:return function(e){var t;let r,n=e.where;if(n&&n.type===p.FROM){let e=n;n=e.input,r={default:e.default,named:e.named}}const i=[{updateType:"insertdelete",delete:P(e.delete||[]),insert:P(e.insert||[])}];if(r&&(i[0].using=r),!n||n.type===p.BGP&&0===n.patterns.length)i[0].where=[];else{const e={};let r=v(D(n,e));"group"===r.type?i[0].where=r.patterns:i[0].where=[r];const a=Object.keys(e);if(a.length>0){if(1!==a.length)throw new Error("This is unexpected and might indicate an error in graph handling for updates.");const r=null===(t=e[a[0]])||void 0===t?void 0:t.graph;r&&""!==r.value&&(i[0].where=[{type:"graph",patterns:i[0].where,name:r}])}}return e.delete||e.where?e.insert||e.where?!e.insert&&e.where&&"bgp"===e.where.type&&(0,s.isomorphic)(e.delete,e.where.patterns)&&(delete i[0].where,i[0].updateType="deletewhere"):(delete i[0].insert,delete i[0].where,e.delete.some((e=>"Variable"===e.subject.termType||"Variable"===e.predicate.termType||"Variable"===e.object.termType))?i[0].updateType="deletewhere":i[0].updateType="delete"):(i[0].updateType="insert",delete i[0].delete,delete i[0].where),{prefixes:{},type:"update",updates:i}}(e);case p.LOAD:return function(e){const t=[{type:"load",silent:Boolean(e.silent),source:e.source}];return e.destination&&(t[0].destination=e.destination),{prefixes:{},type:"update",updates:t}}(e);case p.CLEAR:return function(e){return R(e,"clear")}(e);case p.CREATE:return function(e){return R(e,"create")}(e);case p.DROP:return function(e){return R(e,"drop")}(e);case p.ADD:return function(e){return I(e,"add")}(e);case p.MOVE:return function(e){return I(e,"move")}(e);case p.COPY:return function(e){return I(e,"copy")}(e)}throw new Error(`Unknown Operation type ${e.type}`)}function _(e){switch(e.expressionType){case f.AGGREGATE:return function(e){const t={expression:_(e.expression),type:"aggregate",aggregation:e.aggregator,distinct:e.distinct};return e.separator&&(t.separator=e.separator),t}(e);case f.EXISTENCE:return function(e){return{type:"operation",operator:e.not?"notexists":"exists",args:h.default.flatten([v(e.input)])}}(e);case f.NAMED:return function(e){return{type:"functionCall",function:e.name,args:e.args.map(_)}}(e);case f.OPERATOR:return function(e){if("desc"===e.operator){return{expression:_(e.args[0]),descending:!0}}const t={type:"operation",operator:e.operator,args:e.args.map(_)};return"in"!==t.operator&&"notin"!==t.operator||(t.args=[t.args[0]].concat([t.args.slice(1)])),t}(e);case f.TERM:return function(e){return e.term}(e);case f.WILDCARD:return function(e){return e.wildcard}(e)}throw new Error(`Unknown Expression Operation type ${e.expressionType}`)}function w(e){switch(e.type){case p.ALT:return function(e){const t=e.input.map(w);return t.every((e=>"pathType"in e&&"!"===e.pathType))?{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:h.default.flatten(t.map((e=>e.items)))}]}:{type:"path",pathType:"|",items:t}}(e);case p.INV:return function(e){if(e.path.type===p.NPS){const t=e.path.iris.map((e=>({type:"path",pathType:"^",items:[e]})));return t.length<=1?{type:"path",pathType:"!",items:t}:{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:t}]}}return{type:"path",pathType:"^",items:[w(e.path)]}}(e);case p.LINK:return function(e){return e.iri}(e);case p.NPS:return function(e){return e.iris.length<=1?{type:"path",pathType:"!",items:e.iris}:{type:"path",pathType:"!",items:[{type:"path",pathType:"|",items:e.iris}]}}(e);case p.ONE_OR_MORE_PATH:return function(e){return{type:"path",pathType:"+",items:[w(e.path)]}}(e);case p.SEQ:return function(e){return{type:"path",pathType:"/",items:e.input.map(w)}}(e);case p.ZERO_OR_MORE_PATH:return function(e){return{type:"path",pathType:"*",items:[w(e.path)]}}(e);case p.ZERO_OR_ONE_PATH:return function(e){return{type:"path",pathType:"?",items:[w(e.path)]}}(e)}throw new Error(`Unknown Path type ${e.type}`)}function T(e){return(0,c.termToString)(e)}function S(e){return e}function O(e){return{subject:e.subject,predicate:e.predicate,object:e.object}}function E(e,t){let r=h.default.isSimpleTerm(e)?T(e):e;if("string"==typeof r){if(t[r])return t[r]}else if(Array.isArray(e))e=e.map((e=>E(e,t)));else for(let r of Object.keys(e))e[r]=E(e[r],t);return e}function x(e,t){const r={type:"query",prefixes:{}},n=r;let i;t===p.PROJECT?(r.queryType="SELECT",i=e.variables):t===p.ASK?r.queryType="ASK":t===p.DESCRIBE&&(r.queryType="DESCRIBE",i=e.terms);const a=y.extend,o=y.group,s=y.aggregates,c=y.order;b(),y.project=!0;let l=h.default.flatten([v(e.input)]);1===l.length&&"group"===l[0].type&&(l=l[0].patterns),r.where=l;let d={};for(let e of y.aggregates)d[T(e.variable)]=_(e);let f={};for(let e=y.extend.length-1;e>=0;--e){let t=y.extend[e];f[T(t.variable)]=E(_(t.expression),d)}if(y.group.length>0&&(n.group=y.group.map((e=>{let t=T(e);if(f[t]){let r=f[t];return delete f[t],{variable:e,expression:r}}return{expression:e}}))),y.order.length>0&&(n.order=y.order.map(v).map((e=>e.descending?e:{expression:e}))),i&&(n.variables=i.map((e=>{let t=T(e);return f[t]?{variable:e,expression:f[t]}:e})),0===n.variables.length&&(n.variables=[new u.Wildcard])),r.where.length>0&&"filter"===r.where[r.where.length-1].type){const e=r.where[r.where.length-1];A(e,Object.keys(d))&&(n.having=h.default.flatten([E(e.expression,d)]),r.where.splice(-1))}return y.extend=a,y.group=o,y.aggregates=s,y.order=c,{type:"group",patterns:[n]}}function A(e,t){return h.default.isSimpleTerm(e)?t.indexOf(T(e))>=0:Array.isArray(e)?e.some((e=>A(e,t))):e===Object(e)?Object.keys(e).some((r=>A(e[r],t))):t.indexOf(e)>=0}function R(e,t){const r=[{type:t,silent:Boolean(e.silent)}];return"DEFAULT"===e.source?r[0].graph={default:!0}:"NAMED"===e.source?r[0].graph={named:!0}:"ALL"===e.source?r[0].graph={all:!0}:r[0].graph={type:"graph",name:e.source},{prefixes:{},type:"update",updates:r}}function I(e,t){const r=[{type:t,silent:Boolean(e.silent)}];return r[0].source="DEFAULT"===e.source?{type:"graph",default:!0}:{type:"graph",name:e.source},r[0].destination="DEFAULT"===e.destination?{type:"graph",default:!0}:{type:"graph",name:e.destination},{prefixes:{},type:"update",updates:r}}function P(e){if(!e)return[];const t={};return e.forEach((e=>{const r=e.graph.value;t[r]||(t[r]=[]),t[r].push(e)})),Object.keys(t).map((e=>""===e?{type:"bgp",triples:t[e].map(O)}:{type:"graph",triples:t[e].map(O),name:t[e][0].graph}))}function D(e,t){if(Array.isArray(e))return e.map((e=>D(e,t)));if(!e.type)return e;if(e.type===p.DELETE_INSERT)return e;if((e.type===p.PATTERN||e.type===p.PATH)&&e.graph)return t[e.graph.value]||(t[e.graph.value]={graph:e.graph,values:[]}),t[e.graph.value].values.push(e),e;const r={},n={},i={};for(let t of Object.keys(e)){const a={};r[t]=D(e[t],a);const o=Object.keys(a);if(o.length>1){let e=N(a[o[0]].values);for(let t=1;tdelete a[e])),e}if(1===o.length){const e=a[o[0]].graph;n[t]=e,i[e.value]=e}}const a=Object.keys(i);if(a.length>0)if(1===a.length&&e.type!==p.PROJECT)t[a[0]]={graph:i[a[0]],values:[r]};else for(let e of Object.keys(n))n[e].value.length>0&&(r[e]=g.createGraph(r[e],n[e]));return r}function N(e){const t=g.createBgp(e),r=e[0].graph;return 0===r.value.length?t:g.createGraph(t,r)}t.toSparql=function(e,t={}){return new u.Generator(t).stringify(m(e))},t.toSparqlJs=m},2647:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const s=r(42598),c=r(6053),u=a(r(31928)),l=o(r(51444)),d=o(r(63138)),h=r(2085).Parser,p=u.types;let f,y=new Set,g=0,m=!1;function b(e,t,r){if(y=new Set,g=0,m=Boolean(t),!e.type)return f.createNop();if("query"!==e.type&&"update"!==e.type)throw new Error("Translate only works on complete query or update objects.");let n;var i;return w(e),"query"===e.type?(n=S({type:"group",patterns:e.where||[]}),n=function(e,t){const r=e,n=[],i={};if(r.variables=r.variables&&r.variables.map((e=>C(e,i))),r.having=r.having&&r.having.map((e=>C(e,i))),r.order=r.order&&r.order.map((e=>C(e,i))),r.group||Object.keys(i).length>0){const e=Object.keys(i).map((e=>function(e,t){if("aggregate"!==e.type||!e.aggregation)throw new Error(`Unexpected input: ${JSON.stringify(e)}`);const r=O(e);return r.variable=t,r}(i[e],f.createTerm(e)))),n=[];if(r.group)for(const e of r.group)if(d.default.isSimpleTerm(e.expression))n.push(e.expression);else{const r="variable"in e?e.variable:A();t=f.createExtend(t,r,O(e.expression)),n.push(r)}t=f.createGroup(t,n,e)}if(r.having)for(let e of r.having)t=f.createFilter(t,O(e));e.values&&(t=f.createJoin([t,j(e)]));let a=[];if("SELECT"===e.queryType||"DESCRIBE"===e.queryType)if(e.variables.some((e=>e&&d.default.isWildcard(e))))a=Object.values(T(e)).sort(((e,t)=>e.value.localeCompare(t.value)));else for(let t of e.variables)_(t)||!("variable"in t)?a.push(t):t.variable&&(a.push(t.variable),n.push(t));for(let e of n)t=f.createExtend(t,e.variable,O(e.expression));return r.order&&(t=f.createOrderBy(t,r.order.map((e=>{let t=O(e.expression);return e.descending&&(t=f.createOperatorExpression("desc",[t])),t})))),"SELECT"===e.queryType&&(t=f.createProject(t,a)),r.distinct&&(t=f.createDistinct(t)),r.reduced&&(t=f.createReduced(t)),"CONSTRUCT"===e.queryType?t=f.createConstruct(t,(e.template||[]).map(R)):"ASK"===e.queryType?t=f.createAsk(t):"DESCRIBE"===e.queryType&&(t=f.createDescribe(t,a)),(r.offset||r.limit)&&(t=f.createSlice(t,r.offset||0,r.limit)),r.from&&(t=f.createFrom(t,r.from.default,r.from.named)),t}(e,n)):"update"===e.type&&(n=1===(i=e).updates.length?M(i.updates[0]):f.createCompositeUpdate(i.updates.map(M))),r&&(n=k(n)),n}function v(e){return Boolean(null==e?void 0:e.termType)}function _(e){return"Variable"===(null==e?void 0:e.termType)}function w(e){if(v(e))_(e)&&y.add(`?${e.value}`);else if(Array.isArray(e))for(const t of e)w(t);else if(e&&"object"==typeof e)for(let t of Object.keys(e))t.startsWith("?")&&y.add(t),w(e[t])}function T(e){let t={};if((r=e).subject&&r.predicate&&r.object){const r=[T(e.subject),T(e.predicate),T(e.object),e.graph?T(e.graph):{}];Object.assign(t,...r)}else if(v(e))_(e)&&(t[e.value]=e);else if("bgp"===e.type){const r=e.triples;Object.assign(t,...r.map(T))}else if("path"===e.type)Object.assign(t,...e.items.map(T));else if("group"===e.type||"union"===e.type||"optional"===e.type)Object.assign(t,...e.patterns.map(T));else if("service"===e.type||"graph"===e.type)Object.assign(t,T(e.name)),Object.assign(t,...e.patterns.map(T));else if("bind"===e.type)Object.assign(t,T(e.variable));else if("values"===e.type){if(e.values.length>0){const r=Object.keys(e.values[0]).map((e=>f.createTerm(e)));Object.assign(t,...r.map(T))}}else if("query"===e.type&&("SELECT"===e.queryType||"DESCRIBE"===e.queryType)){e.where&&e.variables.some(d.default.isWildcard)&&Object.assign(t,...e.where.map(T));for(const r of e.variables)_(r)?Object.assign(t,T(r)):r.variable&&Object.assign(t,T(r.variable));if("SELECT"===e.queryType){if(e.group)for(const r of e.group)r.variable&&Object.assign(t,T(r.variable));if(e.values){const r={type:"values",values:e.values};Object.assign(t,T(r))}}}var r;return t}function S(e){let t,r=[],n=[];if("patterns"in e)for(let t of e.patterns)("filter"===t.type?r:n).push(t);if("bgp"===e.type)return function(e){let t=[],r=[];for(let i of e.triples)if("pathType"in i.predicate){let e=x((n=i).subject,E(n.predicate),n.object);for(let n of e)n.type===p.PATH?(t.length>0&&r.push(f.createBgp(t)),t=[],r.push(n)):t.push(n)}else t.push(R(i));var n;return t.length>0&&r.push(f.createBgp(t)),1===r.length?r[0]:f.createJoin(r)}(e);if("union"===e.type)t=f.createUnion(n.map((e=>("group"!==e.type&&(e={type:"group",patterns:[e]}),S(e)))));else{if("graph"===e.type)return function(e){let t=S({type:"group",patterns:e.patterns});return t=m?P(t,e.name):f.createGraph(t,e.name),t}(e);if("group"===e.type)t=n.reduce(D,f.createBgp([]));else if("values"===e.type)t=j(e);else{if("query"!==e.type)throw new Error(`Unexpected type: ${e.type}`);t=b(e,m,!1)}}if(r.length>0){let e=r.map((e=>O(e.expression)));e.length>0&&(t=f.createFilter(t,e.reduce(((e,t)=>f.createOperatorExpression("&&",[e,t])))))}return t}function O(e){if(d.default.isSimpleTerm(e))return f.createTermExpression(e);if(d.default.isQuad(e))return d.default.hasQuadVariables(e)?f.createOperatorExpression("triple",[O(e.subject),O(e.predicate),O(e.object)]):f.createTermExpression(e);if(d.default.isWildcard(e))return f.createWildcardExpression();if("aggregation"in e)return f.createAggregateExpression(e.aggregation,O(e.expression),Boolean(e.distinct),e.separator);if("function"in e)return f.createNamedExpression(e.function,e.args.map(O));if("operator"in e)return"exists"===e.operator||"notexists"===e.operator?f.createExistenceExpression("notexists"===e.operator,S(e.args[0])):("in"!==e.operator&&"notin"!==e.operator||(e.args=[e.args[0]].concat(e.args[1])),f.createOperatorExpression(e.operator,e.args.map(O)));throw new Error(`Unknown expression: ${JSON.stringify(e)}`)}function E(e){if(d.default.isSimpleTerm(e)){if("NamedNode"===e.termType)return f.createLink(e);throw new Error(`Path predicate should be a NamedNode, got ${JSON.stringify(e)}`)}if("^"===e.pathType)return f.createInv(E(e.items[0]));if("!"===e.pathType){let t,r=[],n=[];t="pathType"in e.items[0]&&"|"===e.items[0].pathType?e.items[0].items:e.items;for(let e of t)if(d.default.isSimpleTerm(e))r.push(e);else{if("^"!==e.pathType)throw new Error(`Unexpected item: ${JSON.stringify(e)}`);n.push(e.items[0])}let i=f.createNps(r),a=f.createInv(f.createNps(n));return 0===n.length?i:0===r.length?a:f.createAlt([i,a])}if("/"===e.pathType)return f.createSeq(e.items.map(E));if("|"===e.pathType)return f.createAlt(e.items.map(E));if("*"===e.pathType)return f.createZeroOrMorePath(E(e.items[0]));if("+"===e.pathType)return f.createOneOrMorePath(E(e.items[0]));if("?"===e.pathType)return f.createZeroOrOnePath(E(e.items[0]));throw new Error(`Unable to translate path expression ${JSON.stringify(e)}`)}function x(e,t,r){if(t.type===p.LINK)return[f.createPattern(e,t.iri,r)];if(t.type===p.INV)return x(r,t.path,e);if(t.type===p.SEQ){let n=e;return d.default.flatten(t.input.map(((e,i)=>{const a=i===t.input.length-1?r:A(),o=x(n,e,a);return"Variable"===a.termType&&(n=a),o})))}return[f.createPath(e,t,r)]}function A(){let e="?var"+g++;return y.has(e)?A():(y.add(e),f.createTerm(e))}function R(e){if("pathType"in e.predicate)throw new Error("Trying to translate property path to quad.");return f.createPattern(e.subject,e.predicate,e.object,e.graph)}t.default=function(e,t){let r;if(t=t||{},f=new l.default(t.dataFactory),"string"==typeof e){let n=new h(t);n._resetBlanks(),r=n.parse(e)}else r=e;return b(r,t.quads,t.blankToVariable)};let I=Object.values(p);function P(e,t,r){if(e.type===p.GRAPH){if(r)throw new Error("Recursing through nested GRAPH statements with a replacement is impossible.");e=P(e.input,e.name)}else if(e.type===p.BGP)e.patterns=e.patterns.map((e=>(r&&(e.subject.equals(t)&&(e.subject=r),e.predicate.equals(t)&&(e.predicate=r),e.object.equals(t)&&(e.object=r)),"DefaultGraph"===e.graph.termType&&(e.graph=t),e)));else if(e.type===p.PATH)r&&(e.subject.equals(t)&&(e.subject=r),e.object.equals(t)&&(e.object=r)),"DefaultGraph"===e.graph.termType&&(e.graph=t);else if(e.type!==p.PROJECT||r)if(e.type!==p.EXTEND||r)for(let n of Object.keys(e))Array.isArray(e[n])?e[n]=e[n].map((e=>P(e,t,r))):I.indexOf(e[n].type)>=0?e[n]=P(e[n],t,r):r&&_(e[n])&&e[n].equals(t)&&(e[n]=r);else e.variable.equals(t)&&(r=A()),e.input=P(e.input,t,r);else e.variables.some((e=>e.equals(t)))||(r=A()),e.input=P(e.input,t,r);return e}function D(e,t){if("optional"===t.type){const r=S({type:"group",patterns:t.patterns});e=r.type===p.FILTER?f.createLeftJoin(e,r.input,r.expression):f.createLeftJoin(e,r)}else if("minus"===t.type){const r=S({type:"group",patterns:t.patterns});e=f.createMinus(e,r)}else if("bind"===t.type)e=f.createExtend(e,t.variable,O(t.expression));else if("service"===t.type){const r={type:"group",patterns:t.patterns};e=N(e,f.createService(S(r),t.name,t.silent))}else e=N(e,S(t));return e}function N(e,t){return e.type===p.BGP&&t.type===p.BGP?e=f.createBgp([...e.patterns,...t.patterns]):e.type===p.BGP&&0===e.patterns.length?e=t:t.type===p.BGP&&0===t.patterns.length||(e=f.createJoin([e,t])),e}function j(e){let t=(0===e.values.length?[]:Object.keys(e.values[0])).map(f.createTerm.bind(f)),r=e.values.map((e=>{let t=Object.keys(e);t=t.filter((t=>void 0!==e[t]));let r={};for(let n of t)r[n]=e[n];return r}));return f.createValues(t,r)}function C(e,t){if("type"in e&&"aggregate"===e.type){let r,n=!1;for(let i of Object.keys(t))if(s(t[i],e)){r=f.createTerm(i),n=!0;break}return n||(r=A(),t[(0,c.termToString)(r)]=e),r}return"expression"in e&&e.expression?{...e,expression:C(e.expression,t)}:"args"in e&&e.args?{...e,args:e.args.map((e=>C(e,t)))}:e}function M(e){if("type"in e){if("load"===e.type)return function(e){return f.createLoad(e.source,e.destination,e.silent)}(e);if("clear"===e.type||"create"===e.type||"drop"===e.type)return function(e){let t;switch(t=d.default.isSimpleTerm(e.graph)?e.graph:e.graph.all?"ALL":e.graph.default?"DEFAULT":e.graph.named?"NAMED":e.graph.name,e.type){case"clear":return f.createClear(t,e.silent);case"create":return f.createCreate(t,e.silent);case"drop":return f.createDrop(t,e.silent)}}(e);if("add"===e.type||"copy"===e.type||"move"===e.type)return function(e){const t=e.source.default?"DEFAULT":e.source.name,r=e.destination.default?"DEFAULT":e.destination.name;switch(e.type){case"copy":return f.createCopy(t,r,e.silent);case"move":return f.createMove(t,r,e.silent);case"add":return f.createAdd(t,r,e.silent)}}(e)}else if("insertdelete"===e.updateType||"deletewhere"===e.updateType||"delete"===e.updateType||"insert"===e.updateType)return function(e){if(!m)throw new Error("INSERT/DELETE operations are only supported with quads option enabled");let t,r=[],n=[];if(e.delete&&(r=d.default.flatten(e.delete.map((t=>L(t,e.graph))))),e.insert&&(n=d.default.flatten(e.insert.map((t=>L(t,e.graph))))),e.where&&e.where.length>0){t=S({type:"group",patterns:e.where});const r=e.using;r?t=f.createFrom(t,r.default,r.named):e.graph&&(t=P(t,e.graph))}else"deletewhere"===e.updateType&&r.length>0&&(t=f.createBgp(r));return f.createDeleteInsert(r.length>0?r:void 0,n.length>0?n:void 0,t)}(e);throw new Error(`Unknown update type ${JSON.stringify(e)}`)}function L(e,t){let r=t;"graph"===e.type&&(r=e.name);let n=e.triples;return r&&(n=n.map((e=>Object.assign(e,{graph:r})))),n.map(R)}function k(e){const t={},r=Array.from(y).reduce(((e,t)=>(e[t]=!0,e)),{});return d.default.mapOperation(e,{[u.types.DELETE_INSERT]:e=>({result:e,recurse:!1}),[u.types.PATH]:(e,t)=>({result:t.createPath(n(e.subject),e.predicate,n(e.object),n(e.graph)),recurse:!1}),[u.types.PATTERN]:(e,t)=>({result:t.createPattern(n(e.subject),n(e.predicate),n(e.object),n(e.graph)),recurse:!1}),[u.types.CONSTRUCT]:e=>({result:f.createConstruct(k(e.input),e.template),recurse:!1})});function n(e){if("BlankNode"===e.termType){let n=t[e.value];return n||(n=d.default.createUniqueVariable(e.value,r,f.dataFactory),r[n.value]=!0,t[e.value]=n),n}return e}}},63138:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});const i=r(31928),a=n(r(51444)),o=r(98086);class s{static flatten(e){return Array.prototype.concat(...e).filter((e=>e))}static objectify(e){if(e.termType){if("Quad"===e.termType)return{type:"pattern",termType:"Quad",subject:s.objectify(e.subject),predicate:s.objectify(e.predicate),object:s.objectify(e.object),graph:s.objectify(e.graph)};{let t={termType:e.termType,value:e.value};return e.language&&(t.language=e.language),e.datatype&&(t.datatype=s.objectify(e.datatype)),t}}if(Array.isArray(e))return e.map((e=>s.objectify(e)));if(e===Object(e)){let t={};for(let r of Object.keys(e))t[r]=s.objectify(e[r]);return t}return e}static inScopeVariables(e){const t=[];function r(e){t.find((t=>e.value===t.value))||t.push(e)}function n(e){"Variable"===e.subject.termType&&r(e.subject),"Variable"===e.predicate.termType&&r(e.predicate),"Variable"===e.object.termType&&r(e.object),"Variable"===e.graph.termType&&r(e.graph),"Quad"===e.subject.termType&&n(e.subject),"Quad"===e.predicate.termType&&n(e.predicate),"Quad"===e.object.termType&&n(e.object),"Quad"===e.graph.termType&&n(e.graph)}return s.recurseOperation(e,{[i.types.EXPRESSION]:e=>(e.expressionType===i.expressionTypes.AGGREGATE&&e.variable&&r(e.variable),!0),[i.types.EXTEND]:e=>(r(e.variable),!0),[i.types.GRAPH]:e=>("Variable"===e.name.termType&&r(e.name),!0),[i.types.GROUP]:e=>(e.variables.forEach(r),!0),[i.types.PATH]:e=>("Variable"===e.subject.termType&&r(e.subject),"Variable"===e.object.termType&&r(e.object),"Variable"===e.graph.termType&&r(e.graph),"Quad"===e.subject.termType&&n(e.subject),"Quad"===e.object.termType&&n(e.object),"Quad"===e.graph.termType&&n(e.graph),!0),[i.types.PATTERN]:e=>(n(e),!0),[i.types.PROJECT]:e=>(e.variables.forEach(r),!1),[i.types.SERVICE]:e=>("Variable"===e.name.termType&&r(e.name),!0),[i.types.VALUES]:e=>(e.variables.forEach(r),!0)}),t}static recurseOperation(e,t){let r=e,n=!0;const a=t[e.type];if(a&&(n=a(e)),!n)return;let o=e=>s.recurseOperation(e,t);switch(r.type){case i.types.ALT:r.input.map(o);break;case i.types.ASK:o(r.input);break;case i.types.BGP:r.patterns.forEach(o);break;case i.types.CONSTRUCT:o(r.input),r.template.map(o);break;case i.types.DESCRIBE:case i.types.DISTINCT:o(r.input);break;case i.types.EXPRESSION:r.expressionType===i.expressionTypes.EXISTENCE&&o(r.input);break;case i.types.EXTEND:case i.types.FILTER:o(r.input),o(r.expression);break;case i.types.FROM:case i.types.GRAPH:o(r.input);break;case i.types.GROUP:o(r.input),r.aggregates.forEach(o);break;case i.types.INV:o(r.path);break;case i.types.JOIN:r.input.map(o);break;case i.types.LEFT_JOIN:r.input.map(o),r.expression&&o(r.expression);break;case i.types.LINK:break;case i.types.MINUS:r.input.map(o);break;case i.types.NOP:case i.types.NPS:break;case i.types.ONE_OR_MORE_PATH:o(r.path);break;case i.types.ORDER_BY:o(r.input),r.expressions.forEach(o);break;case i.types.PATH:o(r.predicate);break;case i.types.PATTERN:break;case i.types.PROJECT:case i.types.REDUCED:o(r.input);break;case i.types.SEQ:r.input.map(o);break;case i.types.SERVICE:case i.types.SLICE:o(r.input);break;case i.types.UNION:r.input.map(o);break;case i.types.VALUES:break;case i.types.ZERO_OR_MORE_PATH:case i.types.ZERO_OR_ONE_PATH:o(r.path);break;case i.types.COMPOSITE_UPDATE:r.updates.forEach((e=>o(e)));break;case i.types.DELETE_INSERT:r.delete&&r.delete.forEach((e=>o(e))),r.insert&&r.insert.forEach((e=>o(e))),r.where&&o(r.where);break;case i.types.LOAD:case i.types.CLEAR:case i.types.CREATE:case i.types.DROP:case i.types.ADD:case i.types.MOVE:case i.types.COPY:break;default:throw new Error(`Unknown Operation type ${r.type}`)}}static mapOperation(e,t,r){let n=e,o=!0;r=r||new a.default;const c=t[e.type];if(c&&({result:n,recurse:o}=c(e,r)),!o)return n;let u=e=>s.mapOperation(e,t,r);switch(n.type){case i.types.ALT:return r.createAlt(n.input.map(u));case i.types.ASK:return r.createAsk(u(n.input));case i.types.BGP:return r.createBgp(n.patterns.map(u));case i.types.CONSTRUCT:return r.createConstruct(u(n.input),n.template.map(u));case i.types.DESCRIBE:return r.createDescribe(u(n.input),n.terms);case i.types.DISTINCT:return r.createDistinct(u(n.input));case i.types.EXPRESSION:return s.mapExpression(n,t,r);case i.types.EXTEND:return r.createExtend(u(n.input),n.variable,u(n.expression));case i.types.FILTER:return r.createFilter(u(n.input),u(n.expression));case i.types.FROM:return r.createFrom(u(n.input),[...n.default],[...n.named]);case i.types.GRAPH:return r.createGraph(u(n.input),n.name);case i.types.GROUP:return r.createGroup(u(n.input),[].concat(n.variables),n.aggregates.map(u));case i.types.INV:return r.createInv(u(n.path));case i.types.JOIN:return r.createJoin(n.input.map(u));case i.types.LEFT_JOIN:return r.createLeftJoin(u(n.input[0]),u(n.input[1]),n.expression?u(n.expression):void 0);case i.types.LINK:return r.createLink(n.iri);case i.types.MINUS:return r.createMinus(u(n.input[0]),u(n.input[1]));case i.types.NOP:return r.createNop();case i.types.NPS:return r.createNps([].concat(n.iris));case i.types.ONE_OR_MORE_PATH:return r.createOneOrMorePath(u(n.path));case i.types.ORDER_BY:return r.createOrderBy(u(n.input),n.expressions.map(u));case i.types.PATH:return r.createPath(n.subject,u(n.predicate),n.object,n.graph);case i.types.PATTERN:return r.createPattern(n.subject,n.predicate,n.object,n.graph);case i.types.PROJECT:return r.createProject(u(n.input),[...n.variables]);case i.types.REDUCED:return r.createReduced(u(n.input));case i.types.SEQ:return r.createSeq(n.input.map(u));case i.types.SERVICE:return r.createService(u(n.input),n.name,n.silent);case i.types.SLICE:return r.createSlice(u(n.input),n.start,n.length);case i.types.UNION:return r.createUnion(n.input.map(u));case i.types.VALUES:return r.createValues([].concat(n.variables),n.bindings.map((e=>Object.assign({},e))));case i.types.ZERO_OR_MORE_PATH:return r.createZeroOrMorePath(u(n.path));case i.types.ZERO_OR_ONE_PATH:return r.createZeroOrOnePath(u(n.path));case i.types.COMPOSITE_UPDATE:return r.createCompositeUpdate(n.updates.map(u));case i.types.DELETE_INSERT:return r.createDeleteInsert(n.delete?n.delete.map(u):void 0,n.insert?n.insert.map(u):void 0,n.where?u(n.where):void 0);case i.types.LOAD:return r.createLoad(n.source,n.destination,n.silent);case i.types.CLEAR:return r.createClear(n.source,n.silent);case i.types.CREATE:return r.createCreate(n.source,n.silent);case i.types.DROP:return r.createDrop(n.source,n.silent);case i.types.ADD:return r.createAdd(n.source,n.destination);case i.types.MOVE:return r.createMove(n.source,n.destination);case i.types.COPY:return r.createCopy(n.source,n.destination);default:throw new Error(`Unknown Operation type ${n.type}`)}}static mapExpression(e,t,r){let n=e,o=!0;r=r||new a.default;const c=t[e.expressionType];if(c&&({result:n,recurse:o}=c(e,r)),!o)return n;let u=e=>s.mapOperation(e,t,r);switch(e.expressionType){case i.expressionTypes.AGGREGATE:return e.variable?r.createBoundAggregate(e.variable,e.aggregator,u(e.expression),e.distinct,e.separator):r.createAggregateExpression(e.aggregator,u(e.expression),e.distinct,e.separator);case i.expressionTypes.EXISTENCE:return r.createExistenceExpression(e.not,u(e.input));case i.expressionTypes.NAMED:return r.createNamedExpression(e.name,e.args.map(u));case i.expressionTypes.OPERATOR:return r.createOperatorExpression(e.operator,e.args.map(u));case i.expressionTypes.TERM:return r.createTermExpression(e.term);case i.expressionTypes.WILDCARD:return r.createWildcardExpression();default:throw new Error(`Unknown Expression type ${e.expressionType}`)}}static cloneOperation(e){return s.mapOperation(e,{})}static cloneExpression(e){return s.mapExpression(e,{})}static createUniqueVariable(e,t,r){let n=0,i=e;for(;t[i];)i=`${e}${n++}`;return r.variable(i)}static isSimpleTerm(e){return void 0!==e.termType&&"Quad"!==e.termType&&"Wildcard"!==e.termType}static isQuad(e){return"Quad"===e.termType}static hasQuadVariables(e){return(0,o.someTermsNested)(e,(e=>"Variable"===e.termType))}static isWildcard(e){return"Wildcard"===e.termType}}t.default=s},24411:e=>{function t(e){this._options=e=e||{};var t=e.prefixes||{};this._prefixByIri={};var r=[];for(var n in t){var i=t[n];o(i)&&(this._prefixByIri[i]=n,r.push(i))}var a=r.join("|").replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&");this._prefixRegex=new RegExp("^("+a+")([a-zA-Z][\\-_a-zA-Z0-9]*)$"),this._usedPrefixes={},this._sparqlStar=e.sparqlStar,this._indent=o(e.indent)?e.indent:" ",this._newline=o(e.newline)?e.newline:"\n",this._explicitDatatype=Boolean(e.explicitDatatype)}t.prototype.toQuery=function(e){var t="";return e.queryType&&(t+=e.queryType.toUpperCase()+" "),e.reduced&&(t+="REDUCED "),e.distinct&&(t+="DISTINCT "),e.variables?t+=u(e.variables,void 0,(function(e){return s(e)?this.toEntity(e):"("+this.toExpression(e.expression)+" AS "+a(e.variable)+")"}),this)+" ":e.template&&(t+=this.group(e.template,!0)+this._newline),e.from&&(t+=this.graphs("FROM ",e.from.default)+this.graphs("FROM NAMED ",e.from.named)),e.where&&(t+="WHERE "+this.group(e.where,!0)+this._newline),e.updates&&(t+=u(e.updates,";"+this._newline,this.toUpdate,this)),e.group&&(t+="GROUP BY "+u(e.group,void 0,(function(e){var t=s(e.expression)?this.toEntity(e.expression):"("+this.toExpression(e.expression)+")";return e.variable?"("+t+" AS "+a(e.variable)+")":t}),this)+this._newline),e.having&&(t+="HAVING ("+u(e.having,void 0,this.toExpression,this)+")"+this._newline),e.order&&(t+="ORDER BY "+u(e.order,void 0,(function(e){var t="("+this.toExpression(e.expression)+")";return e.descending?"DESC "+t:t}),this)+this._newline),e.offset&&(t+="OFFSET "+e.offset+this._newline),e.limit&&(t+="LIMIT "+e.limit+this._newline),e.values&&(t+=this.values(e)),(t=this.baseAndPrefixes(e)+t).trim()},t.prototype.baseAndPrefixes=function(e){var t=e.base?"BASE <"+e.base+">"+this._newline:"",r="";for(var n in e.prefixes)(this._options.allPrefixes||this._usedPrefixes[n])&&(r+="PREFIX "+n+": <"+e.prefixes[n]+">"+this._newline);return t+r},t.prototype.toPattern=function(e){var t=e.type||e instanceof Array&&"array"||(e.subject&&e.predicate&&e.object?"triple":"");if(!(t in this))throw new Error("Unknown entry type: "+t);return this[t](e)},t.prototype.triple=function(e){return this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+"."},t.prototype.array=function(e){return u(e,this._newline,this.toPattern,this)},t.prototype.bgp=function(e){return this.encodeTriples(e.triples)},t.prototype.encodeTriples=function(e){if(!e.length)return"";for(var t=[],r=void 0,n=void 0,i=0;i":case">=":case"<=":case"&&":case"||":case"=":case"!=":case"+":case"-":case"*":case"/":return(s(i[0])?this.toEntity(i[0]):"("+this.toExpression(i[0])+")")+" "+t+" "+(s(i[1])?this.toEntity(i[1]):"("+this.toExpression(i[1])+")");case"!":return"!("+this.toExpression(i[0])+")";case"uplus":return"+("+this.toExpression(i[0])+")";case"uminus":return"-("+this.toExpression(i[0])+")";case"notin":t="NOT IN";case"in":return this.toExpression(i[0])+" "+t+"("+(o(i[1])?i[1]:u(i[1],", ",this.toExpression,this))+")";case"notexists":t="NOT EXISTS";case"exists":return t+" "+this.group(i[0],!0);default:return t+"("+u(i,", ",this.toExpression,this)+")"}default:throw new Error("Unknown expression type: "+e.type)}},t.prototype.toEntity=function(e){if(s(e))switch(e.termType){case"Wildcard":return"*";case"Variable":return a(e);case"BlankNode":return"_:"+e.value;case"Literal":var t=e.value||"",i=e.language||"",o=e.datatype;if(e='"'+t.replace(r,n)+'"',i)e+="@"+i;else if(o){if(!this._explicitDatatype)switch(o.value){case"http://www.w3.org/2001/XMLSchema#string":return e;case"http://www.w3.org/2001/XMLSchema#integer":if(/^\d+$/.test(t))return t+" "}e+="^^"+this.encodeIRI(o.value)}return e;case"Quad":if(!this._sparqlStar)throw new Error("SPARQL* support is not enabled");return e.graph&&"DefaultGraph"!==e.graph.termType?"<< GRAPH "+this.toEntity(e.graph)+" { "+this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+" } >>":"<< "+this.toEntity(e.subject)+" "+this.toEntity(e.predicate)+" "+this.toEntity(e.object)+" >>";default:return this.encodeIRI(e.value)}else{var c=e.items.map(this.toEntity,this),u=e.pathType;switch(u){case"^":case"!":return u+c[0];case"*":case"+":case"?":return"("+c[0]+u+")";default:return"("+c.join(u)+")"}}};var r=/["\\\t\n\r\b\f]/g,n=function(e){return i[e]},i={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};function a(e){return"?"+e.value}function o(e){return"string"==typeof e}function s(e){return"string"==typeof e.termType}function c(e,t){if(!e||!s(e))return!1;if(!t||!s(t))return!1;if(e.termType!==t.termType)return!1;switch(e.termType){case"Literal":return e.value===t.value&&e.language===t.language&&c(e.datatype,t.datatype);case"Quad":return c(e.subject,t.subject)&&c(e.predicate,t.predicate)&&c(e.object,t.object)&&c(e.graph,t.graph);default:return e.value===t.value}}function u(e,t,r,n){return e.map(r,n).join(o(t)?t:" ")}t.prototype.encodeIRI=function(e){var t=this._prefixRegex.exec(e);if(t){var r=this._prefixByIri[t[1]];return this._usedPrefixes[r]=!0,r+":"+t[2]}return"<"+e+">"},t.prototype.toUpdate=function(e){switch(e.type||e.updateType){case"load":return"LOAD"+(e.source?" "+this.toEntity(e.source):"")+(e.destination?" INTO GRAPH "+this.toEntity(e.destination):"");case"insert":return"INSERT DATA "+this.group(e.insert,!0);case"delete":return"DELETE DATA "+this.group(e.delete,!0);case"deletewhere":return"DELETE WHERE "+this.group(e.delete,!0);case"insertdelete":return(e.graph?"WITH "+this.toEntity(e.graph)+this._newline:"")+(e.delete.length?"DELETE "+this.group(e.delete,!0)+this._newline:"")+(e.insert.length?"INSERT "+this.group(e.insert,!0)+this._newline:"")+(e.using?this.graphs("USING ",e.using.default):"")+(e.using?this.graphs("USING NAMED ",e.using.named):"")+"WHERE "+this.group(e.where,!0);case"add":case"copy":case"move":return e.type.toUpperCase()+" "+(e.silent?"SILENT ":"")+(e.source.default?"DEFAULT":this.toEntity(e.source.name))+" TO "+this.toEntity(e.destination.name);case"create":case"clear":case"drop":return e.type.toUpperCase()+(e.silent?" SILENT ":" ")+(e.graph.default?"DEFAULT":e.graph.named?"NAMED":e.graph.all?"ALL":"GRAPH "+this.toEntity(e.graph.name));default:throw new Error("Unknown update query type: "+e.type)}},t.prototype.indent=function(e){return e.replace(/^/gm,this._indent)},e.exports=function(e={}){return{stringify:function(r){var n=Object.create(e);return n.prefixes=r.prefixes,new t(n).toQuery(r)},createGenerator:function(){return new t(e)}}}},57474:(e,t,r)=>{var n=function(){var e=function(e,t,r,n){for(r=r||{},n=e.length;n--;r[e[n]]=t);return r},t=[6,12,13,15,16,24,32,36,41,45,100,110,113,115,116,123,126,131,197,224,229,308,329,330,331,332,333],n=[2,247],i=[100,110,113,115,116,123,126,131,329,330,331,332,333],a=[2,409],o=[1,18],s=[1,27],c=[13,16,45,197,224,229,308],u=[28,29,53],l=[28,53],d=[1,42],h=[1,45],p=[1,41],f=[1,44],y=[123,126],g=[1,67],m=[39,45,87],b=[13,16,45,197,224,308],v=[1,87],_=[2,281],w=[1,86],T=[13,16,45,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],S=[6,28,29,53,63,70,73,81,83,85],O=[6,13,16,28,29,53,63,70,73,81,83,85,87,308],E=[6,13,16,28,29,45,53,63,70,73,81,82,83,85,87,89,197,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314],x=[6,13,16,28,29,31,39,45,47,48,53,63,70,73,81,82,83,85,87,89,109,112,121,123,126,128,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,337,338,340,341,342,343,344,345,346],A=[13,16,308],R=[112,132,327,334],I=[13,16,112,132,308],P=[1,111],D=[1,117],N=[112,132,327,328,334],j=[13,16,112,132,308,328],C=[28,29,45,53,87],M=[1,138],L=[1,151],k=[1,128],F=[1,127],B=[1,129],U=[1,140],q=[1,141],V=[1,142],Q=[1,143],$=[1,144],H=[1,145],G=[1,147],z=[1,148],K=[2,457],X=[1,158],W=[1,159],J=[1,160],Y=[1,152],Z=[1,153],ee=[1,156],te=[1,171],re=[1,172],ne=[1,173],ie=[1,174],ae=[1,175],oe=[1,176],se=[1,167],ce=[1,168],ue=[1,169],le=[1,170],de=[1,157],he=[1,166],pe=[1,161],fe=[1,162],ye=[1,163],ge=[1,164],me=[1,165],be=[6,13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],ve=[1,195],_e=[6,31,73,81,83,85],we=[2,285],Te=[1,199],Se=[1,201],Oe=[6,31,70,73,81,83,85],Ee=[2,283],xe=[1,207],Ae=[1,218],Re=[1,223],Ie=[1,219],Pe=[1,225],De=[1,226],Ne=[1,224],je=[6,63,70,73,81,83,85],Ce=[1,236],Me=[2,334],Le=[1,243],ke=[1,241],Fe=[6,193],Be=[2,349],Ue=[2,339],qe=[28,128],Ve=[47,48,193,272],Qe=[47,48,193,242,272],$e=[47,48,193,242,246,272],He=[47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,341,342,343,344,345,346],Ge=[39,47,48,193,242,246,250,263,265,272,290,297,298,299,300,301,302,338,341,342,343,344,345,346],ze=[1,271],Ke=[1,270],Xe=[6,13,16,29,31,39,45,47,48,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,338,341,342,343,344,345,346,347,348,349,350,351],We=[1,281],Je=[1,280],Ye=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],Ze=[45,89],et=[13,16,29,31,39,45,47,48,82,85,87,89,112,159,160,161,163,164,174,193,197,224,229,231,232,242,246,250,263,265,272,290,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335,338,341,342,343,344,345,346],tt=[13,16,31,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],rt=[31,89],nt=[48,87],it=[6,13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338],at=[6,13,16,39,45,48,82,87,89,231,263,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,337,338,340],ot=[1,313],st=[6,85],ct=[6,31,81,83,85],ut=[2,361],lt=[2,353],dt=[1,343],ht=[31,112,335],pt=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],ft=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,197,224,229,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,314,317,318,335],yt=[6,109,193],gt=[31,112],mt=[13,16,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],bt=[1,390],vt=[1,391],_t=[13,16,87,197,308,314],wt=[13,16,39,45,82,87,224,263,265,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312,346,347,348,349,350,351],Tt=[1,417],St=[1,418],Ot=[13,16,48,197,229,308],Et=[6,31,85],xt=[6,13,16,31,45,73,81,83,85,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],At=[6,13,16,29,31,45,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,231,268,269,270,271,273,274,276,277,279,280,283,285,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,346,347,348,349,350,351],Rt=[29,31,85,112,159,160,161,163,164],It=[1,443],Pt=[1,444],Dt=[1,449],Nt=[31,112,193,232,318,335],jt=[13,16,45,48,82,87,89,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Ct=[13,16,31,45,48,82,87,89,112,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Mt=[13,16,29,31,45,48,82,85,87,89,112,159,160,161,163,164,193,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],Lt=[13,16,31,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],kt=[31,45],Ft=[1,507],Bt=[1,508],Ut=[6,13,16,29,31,39,45,47,48,63,70,73,76,78,81,82,83,85,87,89,112,159,160,161,163,164,193,231,242,246,250,263,265,268,269,270,271,272,273,274,276,277,279,280,283,285,290,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335,336,338,341,342,343,344,345,346,347,348,349,350,351],qt=[29,31,85,112,159,160,161,163,164,335],Vt=[6,13,16,31,45,70,73,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],Qt=[13,16,31,45,48,82,87,89,112,193,197,231,232,272,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,317,318,335],$t=[2,352],Ht=[13,16,197,308,314],Gt=[1,565],zt=[6,13,16,31,45,76,78,81,83,85,87,268,269,270,271,273,274,276,277,279,280,283,285,308,346,347,348,349,350,351],Kt=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],Xt=[13,16,29,31,45,82,85,87,89,112,159,160,161,163,164,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312,335],Wt=[13,16,87,308],Jt=[2,364],Yt=[29,31,85,112,159,160,161,163,164,193,232,318,335],Zt=[31,112,193,232,272,318,335],er=[2,359],tr=[13,16,48,82,174,294,295,296,297,298,299,300,301,302,303,304,305,306,308,312],rr=[29,31,85,112,159,160,161,163,164,193,232,272,318,335],nr=[13,16,31,45,82,87,89,112,231,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,312],ir=[2,347],ar={trace:function(){},yy:{},symbols_:{error:2,QueryOrUpdate:3,Prologue:4,QueryOrUpdate_group0:5,EOF:6,Query:7,Qry:8,Query_option0:9,Prologue_repetition0:10,BaseDecl:11,BASE:12,IRIREF:13,PrefixDecl:14,PREFIX:15,PNAME_NS:16,SelectClauseWildcard:17,Qry_repetition0:18,WhereClause:19,SolutionModifierNoGroup:20,SelectClauseVars:21,Qry_repetition1:22,SolutionModifier:23,CONSTRUCT:24,ConstructTemplate:25,Qry_repetition2:26,Qry_repetition3:27,WHERE:28,"{":29,Qry_option0:30,"}":31,DESCRIBE:32,Qry_group0:33,Qry_repetition4:34,Qry_option1:35,ASK:36,Qry_repetition5:37,SelectClauseBase:38,"*":39,SelectClauseVars_repetition_plus0:40,SELECT:41,SelectClauseBase_option0:42,SelectClauseItem:43,Var:44,"(":45,Expression:46,AS:47,")":48,SubSelect:49,SubSelect_option0:50,SubSelect_option1:51,DatasetClause:52,FROM:53,DatasetClause_option0:54,iri:55,WhereClause_option0:56,GroupGraphPattern:57,SolutionModifier_option0:58,SolutionModifierNoGroup_option0:59,SolutionModifierNoGroup_option1:60,SolutionModifierNoGroup_option2:61,GroupClause:62,GROUP:63,BY:64,GroupClause_repetition_plus0:65,GroupCondition:66,BuiltInCall:67,FunctionCall:68,HavingClause:69,HAVING:70,HavingClause_repetition_plus0:71,OrderClause:72,ORDER:73,OrderClause_repetition_plus0:74,OrderCondition:75,ASC:76,BrackettedExpression:77,DESC:78,Constraint:79,LimitOffsetClauses:80,LIMIT:81,INTEGER:82,OFFSET:83,ValuesClause:84,VALUES:85,InlineData:86,VAR:87,InlineData_repetition0:88,NIL:89,InlineData_repetition1:90,InlineData_repetition_plus2:91,InlineData_repetition3:92,DataBlock:93,DataBlockValueList:94,DataBlockValueList_repetition_plus0:95,Update:96,Update_repetition0:97,Update1:98,Update_option0:99,LOAD:100,Update1_option0:101,Update1_option1:102,Update1_group0:103,Update1_option2:104,GraphRefAll:105,Update1_group1:106,Update1_option3:107,GraphOrDefault:108,TO:109,CREATE:110,Update1_option4:111,GRAPH:112,INSERTDATA:113,QuadPattern:114,DELETEDATA:115,DELETEWHERE:116,Update1_option5:117,InsertDeleteClause:118,Update1_repetition0:119,IntoGraphClause:120,INTO:121,GraphRef:122,DELETE:123,InsertDeleteClause_option0:124,InsertClause:125,INSERT:126,UsingClause:127,USING:128,UsingClause_option0:129,WithClause:130,WITH:131,DEFAULT:132,GraphOrDefault_option0:133,GraphRefAll_group0:134,Quads:135,Quads_option0:136,Quads_repetition0:137,QuadsNotTriples:138,VarOrIri:139,QuadsNotTriples_option0:140,QuadsNotTriples_option1:141,QuadsNotTriples_option2:142,TriplesTemplate:143,TriplesTemplate_repetition0:144,TriplesSameSubject:145,TriplesTemplate_option0:146,GroupGraphPatternSub:147,GroupGraphPatternSub_option0:148,GroupGraphPatternSub_repetition0:149,GroupGraphPatternSubTail:150,GraphPatternNotTriples:151,GroupGraphPatternSubTail_option0:152,GroupGraphPatternSubTail_option1:153,TriplesBlock:154,TriplesBlock_repetition0:155,TriplesSameSubjectPath:156,TriplesBlock_option0:157,GroupOrUnionGraphPattern:158,OPTIONAL:159,MINUS:160,SERVICE:161,GraphPatternNotTriples_option0:162,FILTER:163,BIND:164,InlineDataOneVar:165,InlineDataFull:166,InlineDataOneVar_repetition0:167,InlineDataFull_repetition0:168,InlineDataFull_repetition_plus1:169,InlineDataFull_repetition2:170,DataBlockValue:171,Literal:172,QuotedTriple:173,UNDEF:174,GroupOrUnionGraphPattern_repetition0:175,ArgList:176,ArgList_option0:177,ArgList_repetition0:178,ExpressionList:179,ExpressionList_repetition0:180,ConstructTemplate_option0:181,ConstructTriples:182,ConstructTriples_repetition0:183,ConstructTriples_option0:184,VarOrTermOrQuotedTP:185,PropertyListNotEmpty:186,TriplesNode:187,PropertyList:188,PropertyList_option0:189,VerbObjectList:190,PropertyListNotEmpty_repetition0:191,SemiOptionalVerbObjectList:192,";":193,SemiOptionalVerbObjectList_option0:194,Verb:195,ObjectList:196,a:197,ObjectList_repetition0:198,Object:199,GraphNode:200,Object_option0:201,PropertyListPathNotEmpty:202,TriplesNodePath:203,TriplesSameSubjectPath_option0:204,O:205,PropertyListPathNotEmpty_repetition0:206,PropertyListPathNotEmptyTail:207,O_group0:208,ObjectListPath:209,ObjectListPath_repetition0:210,ObjectPath:211,GraphNodePath:212,ObjectPath_option0:213,Path:214,Path_repetition0:215,PathSequence:216,PathSequence_repetition0:217,PathEltOrInverse:218,PathElt:219,PathPrimary:220,PathElt_option0:221,PathEltOrInverse_option0:222,IriOrA:223,"!":224,PathNegatedPropertySet:225,PathOneInPropertySet:226,PathNegatedPropertySet_repetition0:227,PathNegatedPropertySet_option0:228,"^":229,TriplesNode_repetition_plus0:230,"[":231,"]":232,TriplesNodePath_repetition_plus0:233,VarOrTermOrQuotedTPExpr:234,VarOrTerm:235,GraphTerm:236,BlankNode:237,ConditionalOrExpression:238,ConditionalAndExpression:239,ConditionalOrExpression_repetition0:240,ConditionalOrExpressionTail:241,"||":242,RelationalExpression:243,ConditionalAndExpression_repetition0:244,ConditionalAndExpressionTail:245,"&&":246,NumericExpression:247,RelationalExpression_group0:248,RelationalExpression_option0:249,IN:250,MultiplicativeExpression:251,NumericExpression_repetition0:252,AdditiveExpressionTail:253,AdditiveExpressionTail_group0:254,NumericLiteralPositive:255,AdditiveExpressionTail_repetition0:256,NumericLiteralNegative:257,AdditiveExpressionTail_repetition1:258,UnaryExpression:259,MultiplicativeExpression_repetition0:260,MultiplicativeExpressionTail:261,MultiplicativeExpressionTail_group0:262,"+":263,PrimaryExpression:264,"-":265,ExprQuotedTP:266,Aggregate:267,FUNC_ARITY0:268,FUNC_ARITY1:269,FUNC_ARITY1_SPARQL_STAR:270,FUNC_ARITY2:271,",":272,FUNC_ARITY3:273,FUNC_ARITY3_SPARQL_STAR:274,BuiltInCall_group0:275,BOUND:276,BNODE:277,BuiltInCall_option0:278,EXISTS:279,COUNT:280,Aggregate_option0:281,Aggregate_group0:282,FUNC_AGGREGATE:283,Aggregate_option1:284,GROUP_CONCAT:285,Aggregate_option2:286,Aggregate_option3:287,GroupConcatSeparator:288,SEPARATOR:289,"=":290,String:291,LANGTAG:292,"^^":293,DECIMAL:294,DOUBLE:295,BOOLEAN:296,INTEGER_POSITIVE:297,DECIMAL_POSITIVE:298,DOUBLE_POSITIVE:299,INTEGER_NEGATIVE:300,DECIMAL_NEGATIVE:301,DOUBLE_NEGATIVE:302,STRING_LITERAL1:303,STRING_LITERAL2:304,STRING_LITERAL_LONG1:305,STRING_LITERAL_LONG2:306,PrefixedName:307,PNAME_LN:308,BLANK_NODE_LABEL:309,ANON:310,QuotedTP:311,"<<":312,qtSubjectOrObject:313,">>":314,DataValueTerm:315,AnnotationPattern:316,"{|":317,"|}":318,AnnotationPatternPath:319,ExprVarOrTerm:320,QueryOrUpdate_group0_option0:321,Prologue_repetition0_group0:322,Qry_group0_repetition_plus0:323,SelectClauseBase_option0_group0:324,DISTINCT:325,REDUCED:326,NAMED:327,SILENT:328,CLEAR:329,DROP:330,ADD:331,MOVE:332,COPY:333,ALL:334,".":335,UNION:336,"|":337,"/":338,PathElt_option0_group0:339,"?":340,"!=":341,"<":342,">":343,"<=":344,">=":345,NOT:346,CONCAT:347,COALESCE:348,SUBSTR:349,REGEX:350,REPLACE:351,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",12:"BASE",13:"IRIREF",15:"PREFIX",16:"PNAME_NS",24:"CONSTRUCT",28:"WHERE",29:"{",31:"}",32:"DESCRIBE",36:"ASK",39:"*",41:"SELECT",45:"(",47:"AS",48:")",53:"FROM",63:"GROUP",64:"BY",70:"HAVING",73:"ORDER",76:"ASC",78:"DESC",81:"LIMIT",82:"INTEGER",83:"OFFSET",85:"VALUES",87:"VAR",89:"NIL",100:"LOAD",109:"TO",110:"CREATE",112:"GRAPH",113:"INSERTDATA",115:"DELETEDATA",116:"DELETEWHERE",121:"INTO",123:"DELETE",126:"INSERT",128:"USING",131:"WITH",132:"DEFAULT",159:"OPTIONAL",160:"MINUS",161:"SERVICE",163:"FILTER",164:"BIND",174:"UNDEF",193:";",197:"a",224:"!",229:"^",231:"[",232:"]",242:"||",246:"&&",250:"IN",263:"+",265:"-",268:"FUNC_ARITY0",269:"FUNC_ARITY1",270:"FUNC_ARITY1_SPARQL_STAR",271:"FUNC_ARITY2",272:",",273:"FUNC_ARITY3",274:"FUNC_ARITY3_SPARQL_STAR",276:"BOUND",277:"BNODE",279:"EXISTS",280:"COUNT",283:"FUNC_AGGREGATE",285:"GROUP_CONCAT",289:"SEPARATOR",290:"=",292:"LANGTAG",293:"^^",294:"DECIMAL",295:"DOUBLE",296:"BOOLEAN",297:"INTEGER_POSITIVE",298:"DECIMAL_POSITIVE",299:"DOUBLE_POSITIVE",300:"INTEGER_NEGATIVE",301:"DECIMAL_NEGATIVE",302:"DOUBLE_NEGATIVE",303:"STRING_LITERAL1",304:"STRING_LITERAL2",305:"STRING_LITERAL_LONG1",306:"STRING_LITERAL_LONG2",308:"PNAME_LN",309:"BLANK_NODE_LABEL",310:"ANON",312:"<<",314:">>",317:"{|",318:"|}",325:"DISTINCT",326:"REDUCED",327:"NAMED",328:"SILENT",329:"CLEAR",330:"DROP",331:"ADD",332:"MOVE",333:"COPY",334:"ALL",335:".",336:"UNION",337:"|",338:"/",340:"?",341:"!=",342:"<",343:">",344:"<=",345:">=",346:"NOT",347:"CONCAT",348:"COALESCE",349:"SUBSTR",350:"REGEX",351:"REPLACE"},productions_:[0,[3,3],[7,2],[4,1],[11,2],[14,3],[8,4],[8,4],[8,5],[8,7],[8,5],[8,4],[17,2],[21,2],[38,2],[43,1],[43,5],[49,4],[49,4],[52,3],[19,2],[23,2],[20,3],[62,3],[66,1],[66,1],[66,3],[66,5],[66,1],[69,2],[72,3],[75,2],[75,2],[75,1],[75,1],[80,2],[80,2],[80,4],[80,4],[84,2],[86,4],[86,4],[86,6],[86,2],[94,3],[96,3],[98,4],[98,3],[98,5],[98,4],[98,2],[98,2],[98,2],[98,5],[120,2],[118,3],[118,1],[125,2],[127,3],[130,2],[108,1],[108,2],[122,2],[105,1],[105,1],[114,3],[135,2],[138,7],[143,3],[57,3],[57,3],[147,2],[150,3],[154,3],[151,1],[151,2],[151,2],[151,3],[151,4],[151,2],[151,6],[151,1],[93,1],[93,1],[165,4],[166,4],[166,6],[171,1],[171,1],[171,1],[171,1],[158,2],[79,1],[79,1],[79,1],[68,2],[176,1],[176,5],[179,1],[179,4],[25,3],[182,3],[145,2],[145,2],[188,1],[186,2],[192,2],[190,2],[195,1],[195,1],[196,2],[199,2],[156,2],[156,2],[202,2],[207,1],[207,2],[205,2],[209,2],[211,2],[214,2],[216,2],[219,2],[218,2],[220,1],[220,2],[220,3],[225,1],[225,1],[225,4],[226,1],[226,2],[187,3],[187,3],[203,3],[203,3],[200,1],[200,1],[212,1],[212,1],[234,1],[235,1],[235,1],[139,1],[139,1],[44,1],[236,1],[236,1],[236,1],[236,1],[46,1],[238,2],[241,2],[239,2],[245,2],[243,1],[243,3],[243,4],[247,2],[253,2],[253,2],[253,2],[251,2],[261,2],[259,2],[259,2],[259,2],[259,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[264,1],[77,3],[67,1],[67,2],[67,4],[67,4],[67,6],[67,8],[67,8],[67,2],[67,4],[67,2],[67,4],[67,3],[267,5],[267,5],[267,6],[288,4],[172,1],[172,2],[172,3],[172,1],[172,1],[172,1],[172,1],[172,1],[172,1],[255,1],[255,1],[255,1],[257,1],[257,1],[257,1],[291,1],[291,1],[291,1],[291,1],[55,1],[55,1],[307,1],[307,1],[237,1],[237,1],[311,5],[173,5],[313,1],[313,1],[313,1],[313,1],[313,1],[315,1],[315,1],[315,1],[185,1],[185,1],[185,1],[316,3],[319,3],[266,5],[320,1],[320,1],[320,1],[223,1],[223,1],[321,0],[321,1],[5,1],[5,1],[5,1],[9,0],[9,1],[322,1],[322,1],[10,0],[10,2],[18,0],[18,2],[22,0],[22,2],[26,0],[26,2],[27,0],[27,2],[30,0],[30,1],[323,1],[323,2],[33,1],[33,1],[34,0],[34,2],[35,0],[35,1],[37,0],[37,2],[40,1],[40,2],[324,1],[324,1],[42,0],[42,1],[50,0],[50,1],[51,0],[51,1],[54,0],[54,1],[56,0],[56,1],[58,0],[58,1],[59,0],[59,1],[60,0],[60,1],[61,0],[61,1],[65,1],[65,2],[71,1],[71,2],[74,1],[74,2],[88,0],[88,2],[90,0],[90,2],[91,1],[91,2],[92,0],[92,2],[95,1],[95,2],[97,0],[97,4],[99,0],[99,2],[101,0],[101,1],[102,0],[102,1],[103,1],[103,1],[104,0],[104,1],[106,1],[106,1],[106,1],[107,0],[107,1],[111,0],[111,1],[117,0],[117,1],[119,0],[119,2],[124,0],[124,1],[129,0],[129,1],[133,0],[133,1],[134,1],[134,1],[134,1],[136,0],[136,1],[137,0],[137,2],[140,0],[140,1],[141,0],[141,1],[142,0],[142,1],[144,0],[144,3],[146,0],[146,1],[148,0],[148,1],[149,0],[149,2],[152,0],[152,1],[153,0],[153,1],[155,0],[155,3],[157,0],[157,1],[162,0],[162,1],[167,0],[167,2],[168,0],[168,2],[169,1],[169,2],[170,0],[170,2],[175,0],[175,3],[177,0],[177,1],[178,0],[178,3],[180,0],[180,3],[181,0],[181,1],[183,0],[183,3],[184,0],[184,1],[189,0],[189,1],[191,0],[191,2],[194,0],[194,1],[198,0],[198,3],[201,0],[201,1],[204,0],[204,1],[206,0],[206,2],[208,1],[208,1],[210,0],[210,3],[213,0],[213,1],[215,0],[215,3],[217,0],[217,3],[339,1],[339,1],[339,1],[221,0],[221,1],[222,0],[222,1],[227,0],[227,3],[228,0],[228,1],[230,1],[230,2],[233,1],[233,2],[240,0],[240,2],[244,0],[244,2],[248,1],[248,1],[248,1],[248,1],[248,1],[248,1],[249,0],[249,1],[252,0],[252,2],[254,1],[254,1],[256,0],[256,2],[258,0],[258,2],[260,0],[260,2],[262,1],[262,1],[275,1],[275,1],[275,1],[275,1],[275,1],[278,0],[278,1],[281,0],[281,1],[282,1],[282,1],[284,0],[284,1],[286,0],[286,1],[287,0],[287,1]],performAction:function(e,t,r,n,i,a,o){var s,c,u,l,d=a.length-1;switch(i){case 1:if(a[d-1]=a[d-1]||{},nn.base&&(a[d-1].base=nn.base),nn.base="",a[d-1].prefixes=nn.prefixes,nn.prefixes=null,nn.pathOnly){if("path"===a[d-1].type||"termType"in a[d-1])return a[d-1];throw new Error("Received full SPARQL query in path only mode")}if("path"===a[d-1].type||"termType"in a[d-1])throw new Error("Received only path in full SPARQL mode");if("update"===a[d-1].type){const e={};for(const t of a[d-1].updates)if("insert"===t.updateType){const r={};for(const e of t.insert)if("bgp"===e.type||"graph"===e.type)for(const t of e.triples)"BlankNode"===t.subject.termType&&(r[t.subject.value]=!0),"BlankNode"===t.predicate.termType&&(r[t.predicate.value]=!0),"BlankNode"===t.object.termType&&(r[t.object.value]=!0);for(const t of Object.keys(r)){if(e[t])throw new Error("Detected reuse blank node across different INSERT DATA clauses");e[t]=!0}}}return a[d-1];case 2:this.$={...a[d-1],...a[d],type:"query"};break;case 4:nn.base=Er(a[d]);break;case 5:nn.prefixes||(nn.prefixes={}),a[d-1]=a[d-1].substr(0,a[d-1].length-1),a[d]=Er(a[d]),nn.prefixes[a[d-1]]=a[d];break;case 6:this.$={...a[d-3],...Dr(a[d-2]),...a[d-1],...a[d]};break;case 7:if(!nn.skipValidation&&(Kr(a[d-3].variables.map((e=>Gr(e.expression)))).some((e=>"count"===e.aggregation&&!(e.expression instanceof or)))||a[d].group))for(const e of a[d-3].variables)if("Variable"===e.termType){if(!a[d].group||!a[d].group.map((e=>Hr(e))).includes(Hr(e)))throw Error("Projection of ungrouped variable (?"+Hr(e)+")")}else if(0===Gr(e.expression).length){const t=zr(e.expression);for(const e of t)if(!a[d].group||!a[d].group.map||!a[d].group.map((e=>Hr(e))).includes(Hr(e)))throw Error("Use of ungrouped variable in projection of operation (?"+Hr(e)+")")}const e=a[d-1].where.filter((e=>"query"===e.type));if(e.length>0){const t=a[d-3].variables.filter((e=>e.variable&&e.variable.value)).map((e=>e.variable.value)),r=Kr(e.map((e=>e.variables))).map((e=>e.value||e.variable.value));for(const e of t)if(r.indexOf(e)>=0)throw Error("Target id of 'AS' (?"+e+") already used in subquery")}this.$=Sr(a[d-3],Dr(a[d-2]),a[d-1],a[d]);break;case 8:this.$=Sr({queryType:"CONSTRUCT",template:a[d-3]},Dr(a[d-2]),a[d-1],a[d]);break;case 9:this.$=Sr({queryType:"CONSTRUCT",template:a[d-2]=a[d-2]?a[d-2].triples:[]},Dr(a[d-5]),{where:[{type:"bgp",triples:Tr([],a[d-2])}]},a[d]);break;case 10:this.$=Sr({queryType:"DESCRIBE",variables:"*"===a[d-3]?[new or]:a[d-3]},Dr(a[d-2]),a[d-1],a[d]);break;case 11:this.$=Sr({queryType:"ASK"},Dr(a[d-2]),a[d-1],a[d]);break;case 12:this.$=Sr(a[d-1],{variables:[new or]});break;case 13:const t=function(e){const t=e.slice().sort(),r=[];for(let e=0;ee.value||e.variable.value)));if(t.length>0)throw Error("Two or more of the resulting columns have the same name (?"+t[0]+")");this.$=Sr(a[d-1],{variables:a[d]});break;case 14:this.$=Sr({queryType:"SELECT"},a[d]&&(a[d-1]=_r(a[d]),a[d]={},a[d][a[d-1]]=!0,a[d]));break;case 16:case 27:this.$=Rr(a[d-3],{variable:a[d-1]});break;case 17:case 18:this.$=Sr(a[d-3],a[d-2],a[d-1],a[d],{type:"query"});break;case 19:case 58:this.$={iri:a[d],named:!!a[d-1]};break;case 20:this.$={where:a[d].patterns};break;case 21:this.$=Sr(a[d-1],a[d]);break;case 22:this.$=Sr(a[d-2],a[d-1],a[d]);break;case 23:this.$={group:a[d]};break;case 24:case 25:case 28:case 31:case 33:case 34:this.$=Rr(a[d]);break;case 26:this.$=Rr(a[d-1]);break;case 29:this.$={having:a[d]};break;case 30:this.$={order:a[d]};break;case 32:this.$=Rr(a[d],{descending:!0});break;case 35:this.$={limit:Nr(a[d])};break;case 36:this.$={offset:Nr(a[d])};break;case 37:this.$={limit:Nr(a[d-2]),offset:Nr(a[d])};break;case 38:this.$={limit:Nr(a[d]),offset:Nr(a[d-2])};break;case 39:case 43:this.$={type:"values",values:a[d]};break;case 40:case 84:this.$=a[d-1].map((e=>({[a[d-3]]:e})));break;case 41:case 85:this.$=a[d-1].map((()=>({})));break;case 42:case 86:var h=a[d-4].length;a[d-4]=a[d-4].map(xr),this.$=a[d-1].map((function(e){if(e.length!==h)throw Error("Inconsistent VALUES length");for(var t={},r=0;r"bind"===e.type))){const t=a[d-1].indexOf(e),r=new Set;for(const e of a[d-1].slice(0,t))"group"!==e.type&&"bgp"!==e.type||Wr(e).forEach((e=>r.add(e)));if(r.has(e.variable.value))throw Error("Variable used to bind is already bound (?"+e.variable.value+")")}this.$={type:"group",patterns:a[d-1]};break;case 71:this.$=a[d-1]?Or([a[d-1]],a[d]):Or(a[d]);break;case 72:this.$=a[d]?[a[d-2],a[d]]:a[d-2];break;case 75:this.$=Sr(a[d],{type:"optional"});break;case 76:this.$=Sr(a[d],{type:"minus"});break;case 77:this.$=Sr(a[d],{type:"graph",name:a[d-1]});break;case 78:this.$=Sr(a[d],{type:"service",name:a[d-1],silent:!!a[d-2]});break;case 79:this.$={type:"filter",expression:a[d]};break;case 80:this.$={type:"bind",variable:a[d-1],expression:a[d-3]};break;case 89:this.$=Jr(a[d]);break;case 90:this.$=void 0;break;case 91:this.$=a[d-1].length?{type:"union",patterns:Or(a[d-1].map(jr),[jr(a[d])])}:a[d];break;case 95:this.$={...a[d],function:a[d-1]};break;case 96:this.$={type:"functionCall",args:[]};break;case 97:this.$={type:"functionCall",args:wr(a[d-2],a[d-1]),distinct:!!a[d-3]};break;case 98:case 115:case 128:case 247:case 249:case 251:case 253:case 255:case 263:case 267:case 297:case 299:case 303:case 307:case 328:case 341:case 349:case 355:case 361:case 367:case 369:case 373:case 375:case 379:case 381:case 385:case 391:case 395:case 401:case 405:case 409:case 411:case 420:case 428:case 430:case 440:case 444:case 446:case 448:this.$=[];break;case 99:this.$=wr(a[d-2],a[d-1]);break;case 101:this.$=Or(a[d-2],[a[d-1]]);break;case 102:case 112:this.$=Zr(a[d].map((e=>Sr(Lr(a[d-1]),e))));break;case 103:this.$=Zr(Tr(a[d].map((e=>Sr(Lr(a[d-1].entity),e))),a[d-1].triples));break;case 105:this.$=Or([a[d-1]],a[d]);break;case 106:this.$=Or(a[d]);break;case 107:this.$=$r(a[d-1],a[d]);break;case 109:case 237:this.$=nn.factory.namedNode(cr);break;case 110:case 118:this.$=wr(a[d-1],a[d]);break;case 111:this.$=a[d]?{annotation:a[d],object:a[d-1]}:a[d-1];break;case 113:this.$=a[d]?Zr(Tr(a[d].map((e=>Sr(Lr(a[d-1].entity),e))),a[d-1].triples)):a[d-1].triples;break;case 114:this.$=$r(...a[d-1],a[d]);break;case 116:this.$=$r(...a[d]);break;case 117:case 159:case 163:this.$=[a[d-1],a[d]];break;case 119:this.$=a[d]?{object:a[d-1],annotation:a[d]}:a[d-1];break;case 120:this.$=a[d-1].length?Ir("|",wr(a[d-1],a[d])):a[d];break;case 121:this.$=a[d-1].length?Ir("/",wr(a[d-1],a[d])):a[d];break;case 122:this.$=a[d]?Ir(a[d],[a[d-1]]):a[d-1];break;case 123:this.$=a[d-1]?Ir(a[d-1],[a[d]]):a[d];break;case 125:case 131:this.$=Ir(a[d-1],[a[d]]);break;case 129:this.$=Ir("|",wr(a[d-2],a[d-1]));break;case 132:case 134:this.$=function(e){var t=kr(),r=t,n=[],i=[];e.forEach((function(e){n.push(e.entity),Tr(i,e.triples)}));for(var a=0,o=0,s=n.length,c=Array(2*s);a2&&E.push("'"+this.terminals_[T]+"'");A=d.showPosition?"Parse error on line "+(s+1)+":\n"+d.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[m]||m)+"'":"Parse error on line "+(s+1)+": Unexpected "+(1==m?"end of input":"'"+(this.terminals_[m]||m)+"'"),this.parseError(A,{text:d.match,token:this.terminals_[m]||m,line:d.yylineno,loc:f,expected:E})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+m);switch(_[0]){case 1:r.push(m),n.push(d.yytext),i.push(d.yylloc),r.push(_[1]),m=null,b?(m=b,b=null):(c=d.yyleng,o=d.yytext,s=d.yylineno,f=d.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[_[1]][1],x.$=n[n.length-S],x._$={first_line:i[i.length-(S||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(S||1)].first_column,last_column:i[i.length-1].last_column},g&&(x._$.range=[i[i.length-(S||1)].range[0],i[i.length-1].range[1]]),void 0!==(w=this.performAction.apply(x,[o,c,s,h.yy,_[1],n,i].concat(l))))return w;S&&(r=r.slice(0,-1*S*2),n=n.slice(0,-1*S),i=i.slice(0,-1*S)),r.push(this.productions_[_[1]][0]),n.push(x.$),i.push(x._$),O=a[r[r.length-2]][r[r.length-1]],r.push(O);break;case 3:return!0}}return!0}},or=r(58617).R,sr="http://www.w3.org/1999/02/22-rdf-syntax-ns#",cr=sr+"type",ur=sr+"first",lr=sr+"rest",dr=sr+"nil",hr="http://www.w3.org/2001/XMLSchema#",pr=hr+"integer",fr=hr+"decimal",yr=hr+"double",gr=hr+"boolean",mr="",br="",vr="";function _r(e){return e.toLowerCase()}function wr(e,t){return e.push(t),e}function Tr(e,t){return e.push.apply(e,t),e}function Sr(e){e||(e={});for(var t,r=1,n=arguments.length;r>10),56320+(1023&i))}var a=Ur[n];if(!a)throw new Error;return a}))}catch(e){return""}if(qr.exec(e))throw new Error("Invalid unicode codepoint of surrogate pair without corresponding codepoint in "+e);return e}function $r(e,t,r){var n=[],i=[];return t.forEach((function(t){let r=null;t.annotation&&(r=t.annotation,t=t.object),n.push(Lr(null,e,t.entity,r)),Tr(i,t.triples)})),Or(n,r||[],i)}function Hr(e){return e.variable?e.variable.value:e.value||e.expression.value}function Gr(e){if(!e)return[];if("aggregate"===e.type)return[e];if("operation"===e.type){const t=[];for(const r of e.args)t.push(...Gr(r));return t}return[]}function zr(e){const t=new Set,r=function(e){e&&("Variable"===e.termType?t.add(e):"operation"===e.type&&e.args.forEach(r))};return r(e),t}function Kr(e,t=1,r=[]){for(const n of e)t>0&&n instanceof Array?Kr(n,t-1,r):r.push(n);return r}function Xr(e){return"Variable"===e.termType}function Wr(e){if(e.triples){const t=[];for(const r of e.triples)Xr(r.subject)&&t.push(r.subject.value),Xr(r.predicate)&&t.push(r.predicate.value),Xr(r.object)&&t.push(r.object.value);return t}if(e.patterns){const t=[];for(const r of e.patterns)t.push(...Wr(r));return t}return[]}function Jr(e){if(!nn.sparqlStar)throw new Error("SPARQL-star support is not enabled");return e}function Yr(e,t,r){for(const n of t){const t=Lr("subject"in n?n.subject:e,n.predicate,n.object);r.push(t),n.annotations&&Yr(Mr(e,n.predicate,n.object),n.annotations,r)}}function Zr(e){if(nn.sparqlStar){const t=[];return e.forEach((e=>{const r=Lr(e.subject,e.predicate,e.object);t.push(r),e.annotations&&Yr(Mr(e.subject,e.predicate,e.object),e.annotations,t)})),t}return e}function en(e){for(const t of e){if("graph"===t.type&&"Variable"===t.name.termType)throw new Error("Detected illegal variable in GRAPH");if("bgp"===t.type||"graph"===t.type)for(const e of t.triples)if("Variable"===e.subject.termType||"Variable"===e.predicate.termType||"Variable"===e.object.termType)throw new Error("Detected illegal variable in BGP")}return e}function tn(e){for(const t of e)if("bgp"===t.type)for(const e of t.triples)if("BlankNode"===e.subject.termType||"BlankNode"===e.predicate.termType||"BlankNode"===e.object.termType)throw new Error("Detected illegal blank node in BGP");return e}var rn={EOF:1,parseError:function(e,t){if(!this.yy.parser)throw new Error(e);this.yy.parser.parseError(e,t)},setInput:function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},unput:function(e){var t=e.length,r=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var n=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),r.length-1&&(this.yylineno-=r.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:r?(r.length===n.length?this.yylloc.first_column:0)+n[n.length-r.length].length-r[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(e){this.unput(this.match.slice(e))},pastInput:function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var e=this.pastInput(),t=new Array(e.length+1).join("-");return e+this.upcomingInput()+"\n"+t+"^"},test_match:function(e,t){var r,n,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(n=e[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=n.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:n?n[n.length-1].length-n[n.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],r=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),r)return r;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var e,t,r,n;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;at[0].length)){if(t=r,n=a,this.options.backtrack_lexer){if(!1!==(e=this.test_match(r,i[a])))return e;if(this._backtrack){t=!1;continue}return!1}if(!this.options.flex)break}return t?!1!==(e=this.test_match(t,i[n]))&&e:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(e){this.conditionStack.push(e)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(e){return(e=this.conditionStack.length-1-Math.abs(e||0))>=0?this.conditionStack[e]:"INITIAL"},pushState:function(e){this.begin(e)},stateStackSize:function(){return this.conditionStack.length},options:{flex:!0,"case-insensitive":!0},performAction:function(e,t,r,n){switch(r){case 0:break;case 1:return 12;case 2:return 15;case 3:return 41;case 4:return 325;case 5:return 326;case 6:return 45;case 7:return 47;case 8:return 48;case 9:return 39;case 10:return 24;case 11:return 28;case 12:return 29;case 13:return 31;case 14:return 32;case 15:return 36;case 16:return 53;case 17:return 327;case 18:return 63;case 19:return 64;case 20:return 70;case 21:return 73;case 22:return 76;case 23:return 78;case 24:return 81;case 25:return 83;case 26:return 85;case 27:return 193;case 28:return 100;case 29:return 328;case 30:return 121;case 31:return 329;case 32:return 330;case 33:return 110;case 34:return 331;case 35:return 109;case 36:return 332;case 37:return 333;case 38:return 113;case 39:return 115;case 40:return 116;case 41:return 131;case 42:return 123;case 43:return 126;case 44:return 128;case 45:return 132;case 46:return 112;case 47:return 334;case 48:return 335;case 49:return 159;case 50:return 161;case 51:return 164;case 52:return 174;case 53:return 160;case 54:return 336;case 55:return 163;case 56:return 312;case 57:return 314;case 58:return 317;case 59:return 318;case 60:return 272;case 61:return 197;case 62:return 337;case 63:return 338;case 64:return 229;case 65:return 340;case 66:return 263;case 67:return 224;case 68:return 231;case 69:return 232;case 70:return 242;case 71:return 246;case 72:return 290;case 73:return 341;case 74:return 342;case 75:return 343;case 76:return 344;case 77:return 345;case 78:return 250;case 79:return 346;case 80:return 265;case 81:return 276;case 82:return 277;case 83:return 268;case 84:return 269;case 85:return 270;case 86:return 271;case 87:return 347;case 88:return 348;case 89:return 273;case 90:return 274;case 91:return 350;case 92:return 349;case 93:return 351;case 94:return 279;case 95:return 280;case 96:return 283;case 97:return 285;case 98:return 289;case 99:return 293;case 100:return 296;case 101:return 13;case 102:return 16;case 103:return 308;case 104:return 309;case 105:return 87;case 106:return 292;case 107:return 82;case 108:return 294;case 109:return 295;case 110:return 297;case 111:return 298;case 112:return 299;case 113:return 300;case 114:return 301;case 115:return 302;case 116:return"EXPONENT";case 117:return 303;case 118:return 304;case 119:return 305;case 120:return 306;case 121:return 89;case 122:return 310;case 123:return 6;case 124:return"INVALID";case 125:console.log(t.yytext)}},rules:[/^(?:\s+|(#[^\n\r]*))/i,/^(?:BASE)/i,/^(?:PREFIX)/i,/^(?:SELECT)/i,/^(?:DISTINCT)/i,/^(?:REDUCED)/i,/^(?:\()/i,/^(?:AS)/i,/^(?:\))/i,/^(?:\*)/i,/^(?:CONSTRUCT)/i,/^(?:WHERE)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:DESCRIBE)/i,/^(?:ASK)/i,/^(?:FROM)/i,/^(?:NAMED)/i,/^(?:GROUP)/i,/^(?:BY)/i,/^(?:HAVING)/i,/^(?:ORDER)/i,/^(?:ASC)/i,/^(?:DESC)/i,/^(?:LIMIT)/i,/^(?:OFFSET)/i,/^(?:VALUES)/i,/^(?:;)/i,/^(?:LOAD)/i,/^(?:SILENT)/i,/^(?:INTO)/i,/^(?:CLEAR)/i,/^(?:DROP)/i,/^(?:CREATE)/i,/^(?:ADD)/i,/^(?:TO)/i,/^(?:MOVE)/i,/^(?:COPY)/i,/^(?:INSERT((\s+|(#[^\n\r]*)\n\r?)+)DATA)/i,/^(?:DELETE((\s+|(#[^\n\r]*)\n\r?)+)DATA)/i,/^(?:DELETE((\s+|(#[^\n\r]*)\n\r?)+)WHERE)/i,/^(?:WITH)/i,/^(?:DELETE)/i,/^(?:INSERT)/i,/^(?:USING)/i,/^(?:DEFAULT)/i,/^(?:GRAPH)/i,/^(?:ALL)/i,/^(?:\.)/i,/^(?:OPTIONAL)/i,/^(?:SERVICE)/i,/^(?:BIND)/i,/^(?:UNDEF)/i,/^(?:MINUS)/i,/^(?:UNION)/i,/^(?:FILTER)/i,/^(?:<<)/i,/^(?:>>)/i,/^(?:\{\|)/i,/^(?:\|\})/i,/^(?:,)/i,/^(?:a)/i,/^(?:\|)/i,/^(?:\/)/i,/^(?:\^)/i,/^(?:\?)/i,/^(?:\+)/i,/^(?:!)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:\|\|)/i,/^(?:&&)/i,/^(?:=)/i,/^(?:!=)/i,/^(?:<)/i,/^(?:>)/i,/^(?:<=)/i,/^(?:>=)/i,/^(?:IN)/i,/^(?:NOT)/i,/^(?:-)/i,/^(?:BOUND)/i,/^(?:BNODE)/i,/^(?:(RAND|NOW|UUID|STRUUID))/i,/^(?:(LANG|DATATYPE|IRI|URI|ABS|CEIL|FLOOR|ROUND|STRLEN|STR|UCASE|LCASE|ENCODE_FOR_URI|YEAR|MONTH|DAY|HOURS|MINUTES|SECONDS|TIMEZONE|TZ|MD5|SHA1|SHA256|SHA384|SHA512|isIRI|isURI|isBLANK|isLITERAL|isNUMERIC))/i,/^(?:(SUBJECT|PREDICATE|OBJECT|isTRIPLE))/i,/^(?:(LANGMATCHES|CONTAINS|STRSTARTS|STRENDS|STRBEFORE|STRAFTER|STRLANG|STRDT|sameTerm))/i,/^(?:CONCAT)/i,/^(?:COALESCE)/i,/^(?:IF)/i,/^(?:TRIPLE)/i,/^(?:REGEX)/i,/^(?:SUBSTR)/i,/^(?:REPLACE)/i,/^(?:EXISTS)/i,/^(?:COUNT)/i,/^(?:SUM|MIN|MAX|AVG|SAMPLE)/i,/^(?:GROUP_CONCAT)/i,/^(?:SEPARATOR)/i,/^(?:\^\^)/i,/^(?:true|false)/i,/^(?:(<(?:[^<>\"\{\}\|\^`\\\u0000-\u0020])*>))/i,/^(?:((([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?)?:))/i,/^(?:(((([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?)?:)((?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|:|[0-9]|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.|:|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%))))*(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|:|((%([0-9A-Fa-f])([0-9A-Fa-f]))|(\\(_|~|\.|-|!|\$|&|'|\(|\)|\*|\+|,|;|=|\/|\?|#|@|%)))))?)))/i,/^(?:(_:(?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9])(?:(?:(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])|\.)*(((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|-|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040]))?))/i,/^(?:([\?\$]((?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9])(?:((?:([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]|[\uD800-\uDB7F][\uDC00-\uDFFF])|_))|[0-9]|\u00B7|[\u0300-\u036F\u203F-\u2040])*)))/i,/^(?:(@[a-zA-Z]+(?:-[a-zA-Z0-9]+)*))/i,/^(?:([0-9]+))/i,/^(?:([0-9]*\.[0-9]+))/i,/^(?:([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+)))/i,/^(?:(\+([0-9]+)))/i,/^(?:(\+([0-9]*\.[0-9]+)))/i,/^(?:(\+([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+))))/i,/^(?:(-([0-9]+)))/i,/^(?:(-([0-9]*\.[0-9]+)))/i,/^(?:(-([0-9]+\.[0-9]*([eE][+-]?[0-9]+)|\.([0-9])+([eE][+-]?[0-9]+)|([0-9])+([eE][+-]?[0-9]+))))/i,/^(?:([eE][+-]?[0-9]+))/i,/^(?:('(?:(?:[^\u0027\u005C\u000A\u000D])|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])))*'))/i,/^(?:("(?:(?:[^\u0022\u005C\u000A\u000D])|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])))*"))/i,/^(?:('''(?:(?:'|'')?(?:[^'\\]|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f]))))*'''))/i,/^(?:("""(?:(?:"|"")?(?:[^\"\\]|(\\[tbnrf\\\"']|\\u([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])|\\U([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f])([0-9A-Fa-f]))))*"""))/i,/^(?:(\((\u0020|\u0009|\u000D|\u000A)*\)))/i,/^(?:(\[(\u0020|\u0009|\u000D|\u000A)*\]))/i,/^(?:$)/i,/^(?:.)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125],inclusive:!0}}};function nn(){this.yy={}}return ar.lexer=rn,nn.prototype=ar,ar.Parser=nn,new nn}();e.exports=n},58617:e=>{class t{constructor(){return r||this}equals(e){return e&&this.termType===e.termType}}Object.defineProperty(t.prototype,"value",{enumerable:!0,value:"*"}),Object.defineProperty(t.prototype,"termType",{enumerable:!0,value:"Wildcard"});var r=new t;e.exports.R=t},2085:(e,t,r)=>{var n=r(57474).Parser,i=r(24411),a=r(58617).R,{DataFactory:o}=r(91194);e.exports={Parser:function({prefixes:e,baseIRI:t,factory:r,sparqlStar:i,skipValidation:a,skipUngroupedVariableCheck:s,pathOnly:c}={}){var u={};for(var l in e||{})u[l]=e[l];var d=new n;return d.parse=function(){return n.base=t||"",n.prefixes=Object.create(u),n.factory=r||new o,n.sparqlStar=Boolean(i),n.pathOnly=Boolean(c),n.skipValidation=Boolean(a)||Boolean(s),n.prototype.parse.apply(d,arguments)},d._resetBlanks=n._resetBlanks,d},Generator:i,Wildcard:a}},78152:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(7629),t)},7629:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlJsonParser=void 0;const n=r(91194),i=r(51887),a=r(27609);t.SparqlJsonParser=class{constructor(e){var t;e=e||{},this.dataFactory=e.dataFactory||new n.DataFactory,this.prefixVariableQuestionMark=!!e.prefixVariableQuestionMark,this.suppressMissingStreamResultsError=null===(t=e.suppressMissingStreamResultsError)||void 0===t||t}parseJsonResults(e){return e.results.bindings.map((e=>this.parseJsonBindings(e)))}parseJsonResultsStream(e){const t=e=>s.emit("error",e);e.on("error",t);const r=new a;r.onError=t;let n=!1,o=!1;r.onValue=e=>{if("vars"===r.key&&2===r.stack.length&&"head"===r.stack[1].key)s.emit("variables",e.map((e=>this.dataFactory.variable(e)))),n=!0;else if("results"===r.key&&1===r.stack.length)o=!0;else if("number"==typeof r.key&&3===r.stack.length&&"results"===r.stack[1].key&&"bindings"===r.stack[2].key)try{s.push(this.parseJsonBindings(e))}catch(e){s.emit("error",e)}else"metadata"===r.key&&1===r.stack.length&&s.emit("metadata",e)};const s=e.on("end",(e=>{o||this.suppressMissingStreamResultsError?n||s.emit("variables",[]):s.emit("error",new Error("No valid SPARQL query results were found."))})).pipe(new i.Transform({objectMode:!0,transform(e,t,n){r.write(e),n()}}));return s}parseJsonBindings(e){const t={};for(const r in e){const n=e[r];t[this.prefixVariableQuestionMark?"?"+r:r]=this.parseJsonValue(n)}return t}parseJsonValue(e){let t;switch(e.type){case"bnode":t=this.dataFactory.blankNode(e.value);break;case"literal":t=e["xml:lang"]?this.dataFactory.literal(e.value,e["xml:lang"]):e.datatype?this.dataFactory.literal(e.value,this.dataFactory.namedNode(e.datatype)):this.dataFactory.literal(e.value);break;case"typed-literal":t=this.dataFactory.literal(e.value,this.dataFactory.namedNode(e.datatype));break;case"triple":const r=e.value;if(!(r&&r.subject&&r.predicate&&r.object))throw new Error("Invalid quoted triple: "+JSON.stringify(e));t=this.dataFactory.quad(this.parseJsonValue(r.subject),this.parseJsonValue(r.predicate),this.parseJsonValue(r.object));break;default:t=this.dataFactory.namedNode(e.value)}return t}parseJsonBoolean(e){if("boolean"in e)return e.boolean;throw new Error("No valid ASK response was found.")}parseJsonBooleanStream(e){return new Promise(((t,r)=>{const n=new a;n.onError=r,n.onValue=e=>{"boolean"===n.key&&"boolean"==typeof e&&1===n.stack.length&&t(e)},e.on("error",r).on("data",(e=>n.write(e))).on("end",(()=>r(new Error("No valid ASK response was found."))))}))}}},97977:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(29675),t)},29675:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Converter=void 0;const n=r(92126),i=r(78152);class a{constructor(e){(e=e||{delimiter:"_"}).prefixVariableQuestionMark=!1,this.delimiter=e.delimiter||"_",this.parser=new i.SparqlJsonParser(e),this.materializeRdfJsTerms=e.materializeRdfJsTerms}static addValueToTree(e,t,r,n,i,o){const s=t[0],c=n?n+o+s:s,u=i.singularizeVariables[c];if(1===t.length)u?e[s]||(e[s]=r):(e[s]||(e[s]=[]),e[s].push(r));else{let n;u?(e[s]||(e[s]={}),n=e[s]):(e[s]||(e[s]=[{}]),n=e[s][0]),a.addValueToTree(n,t.slice(1),r,c,i,o)}}static mergeTrees(e,t){if(typeof e!=typeof t)throw new Error(`Two incompatible tree nodes were found: ${typeof e} and ${typeof t}`);if(Array.isArray(e)!==Array.isArray(t))throw new Error(`Two incompatible tree nodes were found: Array?${Array.isArray(e)} and Array?${Array.isArray(t)}`);if("object"==typeof e&&"object"==typeof t){if(e.termType&&t.termType)return e.equals(t)?{valid:!0,result:e}:{valid:!1,result:e};if(Array.isArray(e)&&Array.isArray(t)){if(e.length>0){const r=[];let n=!1;for(const i of e){const e=a.mergeTrees(i,t[0]);e.valid?(n=!0,r.push(e.result)):r.push(i)}if(n)return{valid:!0,result:r}}return{valid:!0,result:e.concat(t)}}{const r={};for(const e in t)r[e]=t[e];for(const t in e)if(r[t]){const n=a.mergeTrees(e[t],r[t]);if(!n.valid)return{valid:!1,result:e};r[t]=n.result}else r[t]=e[t];return{valid:!0,result:r}}}throw new Error(`Unmergable tree types: ${typeof e} and ${typeof t}`)}static materializeTree(e){if(e.termType)return(0,n.getTermRaw)(e);if(Array.isArray(e))return e.map(a.materializeTree);{const t={};for(const r in e)t[r]=a.materializeTree(e[r]);return t}}sparqlJsonResultsToTree(e,t){return this.bindingsToTree(this.parser.parseJsonResults(e),t||{singularizeVariables:{}})}bindingsToTree(e,t){const r=t&&t.singularizeVariables[""];let n=r?{}:[];for(const i of e){const e=r?{}:[{}];for(const n in i){const o=n.split(this.delimiter),s=i[n];a.addValueToTree(r?e:e[0],o,s,"",t,this.delimiter)}n=a.mergeTrees(n,e).result}return this.materializeRdfJsTerms&&(n=a.materializeTree(n)),n}}t.Converter=a},31709:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(82626),t)},82626:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SparqlXmlParser=void 0;const n=r(91194),i=r(6928),a=r(51887);t.SparqlXmlParser=class{constructor(e){e=e||{},this.dataFactory=e.dataFactory||new n.DataFactory,this.prefixVariableQuestionMark=!!e.prefixVariableQuestionMark}parseXmlResultsStream(e){const t=e=>y.emit("error",e);e.on("error",t);const r=new i.SaxesParser,n=[];let o=!1,s=!1;const c=[];let u,l={},d="",h="",p="",f=[];r.on("error",t),r.on("opentag",(e=>{"variable"===e.name&&this.stackEquals(n,["sparql","head"])?c.push(this.dataFactory.variable(e.attributes.name)):"results"===e.name&&this.stackEquals(n,["sparql"])?s=!0:"result"===e.name&&this.stackEquals(n,["sparql","results"])?l={}:"binding"===e.name&&this.stackEquals(n,["sparql","results","result"])?(d=e.attributes.name||"",h="",u="",p="",f=[]):"triple"===e.name&&this.stackBeginsWith(n,["sparql","results","result"])?f.push({components:{}}):"triple"===n[n.length-1]&&this.stackBeginsWith(n,["sparql","results","result","binding"])?(h="",u="",p="",["subject","predicate","object"].includes(e.name)?f[f.length-1].currentComponent=e.name:t(new Error(`Illegal quoted triple component '${e.name}' found on line ${r.line+1}`))):this.stackBeginsWith(n,["sparql","results","result","binding"])&&(h=e.name,u="xml:lang"in e.attributes?e.attributes["xml:lang"]:"datatype"in e.attributes?this.dataFactory.namedNode(e.attributes.datatype):void 0),n.push(e.name)})),r.on("closetag",(e=>{if(this.stackEquals(n,["sparql","head"])&&(y.emit("variables",c),o=!0),this.stackEquals(n,["sparql","results","result"])&&y.push(l),this.stackBeginsWith(n,["sparql","results","result","binding"])){let e;if(!d&&h)t(new Error(`Terms should have a name on line ${r.line+1}`));else if("uri"===h)e=this.dataFactory.namedNode(p);else if("bnode"===h)e=this.dataFactory.blankNode(p);else if("literal"===h)e=this.dataFactory.literal(p,u);else if("triple"===n[n.length-1]){const n=f.pop();n&&n.components.subject&&n.components.predicate&&n.components.object?e=this.dataFactory.quad(n.components.subject,n.components.predicate,n.components.object):t(new Error(`Incomplete quoted triple on line ${r.line+1}`))}else h&&t(new Error(`Invalid term type '${h}' on line ${r.line+1}`));if(e)if(f.length>0){const n=f[f.length-1];n.components[n.currentComponent]&&t(new Error(`The ${n.currentComponent} in a quoted triple on line ${r.line+1} was already defined before`)),n.components[n.currentComponent]=e}else{const t=this.prefixVariableQuestionMark?"?"+d:d;l[t]=e}h=void 0}n.pop()})),r.on("text",(e=>{this.stackBeginsWith(n,["sparql","results","result","binding"])&&n[n.length-1]===h&&(p=e)}));const y=e.on("end",(e=>{s?o||y.emit("variables",[]):y.emit("error",new Error("No valid SPARQL query results were found."))})).pipe(new a.Transform({objectMode:!0,transform(e,t,n){r.write(e),n()}}));return y}parseXmlBooleanStream(e){return new Promise(((t,r)=>{const n=new i.SaxesParser,a=[];n.on("error",r),n.on("opentag",(e=>{a.push(e.name)})),n.on("closetag",(e=>{a.pop()})),n.on("text",(e=>{this.stackEquals(a,["sparql","boolean"])&&t("true"===e)})),e.on("error",r).on("data",(e=>n.write(e))).on("end",(()=>r(new Error("No valid ASK response was found."))))}))}stackEquals(e,t){return e.length===t.length&&e.every(((e,r)=>t[r]===e))}stackBeginsWith(e,t){return e.length>=t.length&&t.every(((t,r)=>e[r]===t))}}},29038:(e,t,r)=>{var n=r(10715);e.exports=function(e,t,r){"function"==typeof t&&(r=t,t=null);var i="",a=new n((function(r,n){e.on("data",(function(e){i+="string"==typeof t?e.toString(t):e.toString()})),e.on("end",(function(){r(i)})),e.on("error",n)}));return r&&a.then((function(e){r(null,e)}),r),a}},30214:(e,t,r)=>{"use strict";var n=r(77834).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function a(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=u,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=l,this.end=d,t=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function o(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2==0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function u(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function l(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function p(e){return e&&e.length?this.write(e):""}t.StringDecoder=a,a.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0?(i>0&&(e.lastNeed=i-1),i):--n=0?(i>0&&(e.lastNeed=i-2),i):--n=0?(i>0&&(2===i?i=0:e.lastNeed=i-3),i):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},a.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},19415:e=>{!function(t){"use strict";var r=function(){function e(e){this.options=e}return e.prototype.toString=function(){return JSON&&JSON.stringify?JSON.stringify(this.options):this.options},e}(),n={isArray:function(e){return"[object Array]"===Object.prototype.toString.apply(e)},isString:function(e){return"[object String]"===Object.prototype.toString.apply(e)},isNumber:function(e){return"[object Number]"===Object.prototype.toString.apply(e)},isBoolean:function(e){return"[object Boolean]"===Object.prototype.toString.apply(e)},join:function(e,t){var r,n="",i=!0;for(r=0;r="0"&&e<="9"}return{isAlpha:function(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"},isDigit:e,isHexDigit:function(t){return e(t)||t>="a"&&t<="f"||t>="A"&&t<="F"}}}(),a=function(){var e=function(e){return e<=127?1:194<=e&&e<=223?2:224<=e&&e<=239?3:240<=e&&e<=244?4:0},t=function(e){return 128<=e&&e<=191};function r(e,t){return"%"===e.charAt(t)&&i.isHexDigit(e.charAt(t+1))&&i.isHexDigit(e.charAt(t+2))}function n(e,t){return parseInt(e.substr(t,2),16)}return{encodeCharacter:function(e){var t,r,n="",i=function(e){return unescape(encodeURIComponent(e))}(e);for(r=0;r1?r+=n:r+=c(n)||s(n)?n:a.encodeCharacter(n);return r},encodeLiteralCharacter:function(e,t){var r=a.pctCharAt(e,t);return r.length>1||c(r)||s(r)?r:a.encodeCharacter(r)}}}(),l=function(){var e={};function t(t){e[t]={symbol:t,separator:"?"===t?"&":""===t||"+"===t||"#"===t?",":t,named:";"===t||"&"===t||"?"===t,ifEmpty:"&"===t||"?"===t?"=":"",first:"+"===t?"":t,encode:"+"===t||"#"===t?u.encodePassReserved:u.encode,toString:function(){return this.symbol}}}return t(""),t("+"),t("#"),t("."),t("/"),t(";"),t("?"),t("&"),{valueOf:function(t){return e[t]?e[t]:"=,!@|".indexOf(t)>=0?null:e[""]}}}();function d(e){var t;if(null==e)return!1;if(n.isArray(e))return e.length>0;if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return!0;for(t in e)if(e.hasOwnProperty(t)&&d(e[t]))return!0;return!1}var h=function(){function e(e){this.literal=u.encodeLiteral(e)}return e.prototype.expand=function(){return this.literal},e.prototype.toString=e.prototype.expand,e}(),p=function(){function e(e){var t,n,s=[],c=null,u=null,d=null,h="";function p(){var t=e.substring(u,n);if(0===t.length)throw new r({expressionText:e,message:"a varname must be specified",position:n});c={varname:t,exploded:!1,maxLength:null},u=null}function y(){if(d===n)throw new r({expressionText:e,message:"after a ':' you have to specify the length",position:n});c.maxLength=parseInt(e.substring(d,n),10),d=null}for(t=function(t){var i=l.valueOf(t);if(null===i)throw new r({expressionText:e,message:"illegal use of reserved operator",position:n,operator:t});return i}(e.charAt(0)),n=t.symbol.length,u=n;n=4)throw new r({expressionText:e,message:"A :prefix must have max 4 digits",position:n});continue}y()}if(":"!==h)if("*"!==h){if(","!==h)throw new r({expressionText:e,message:"illegal character",character:h,position:n});s.push(c),c=null,u=n+1}else{if(null===c)throw new r({expressionText:e,message:"exploded without varspec",position:n});if(c.exploded)throw new r({expressionText:e,message:"exploded twice",position:n});if(c.maxLength)throw new r({expressionText:e,message:"an explode (*) MUST NOT follow to a prefix",position:n});c.exploded=!0}else{if(null!==c.maxLength)throw new r({expressionText:e,message:"only one :maxLength is allowed per varspec",position:n});if(c.exploded)throw new r({expressionText:e,message:"an exploeded varspec MUST NOT be varspeced",position:n});d=n+1}}return null!==u&&p(),null!==d&&y(),s.push(c),new f(e,t,s)}return function(t){var n,i,a=[],o=null,s=0;for(n=0;n{function n(e){try{if(!r.g.localStorage)return!1}catch(e){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},60130:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"NIL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(t,"parse",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(t,"v1",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(t,"v3",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(t,"v4",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"v5",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"version",{enumerable:!0,get:function(){return c.default}});var n=h(r(27343)),i=h(r(46076)),a=h(r(85854)),o=h(r(13940)),s=h(r(15384)),c=h(r(25791)),u=h(r(77888)),l=h(r(49926)),d=h(r(9964));function h(e){return e&&e.__esModule?e:{default:e}}},2763:(e,t)=>{"use strict";function r(e){return 14+(e+64>>>9<<4)+1}function n(e,t){const r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function i(e,t,r,i,a,o){return n((s=n(n(t,e),n(i,o)))<<(c=a)|s>>>32-c,r);var s,c}function a(e,t,r,n,a,o,s){return i(t&r|~t&n,e,t,a,o,s)}function o(e,t,r,n,a,o,s){return i(t&n|r&~n,e,t,a,o,s)}function s(e,t,r,n,a,o,s){return i(t^r^n,e,t,a,o,s)}function c(e,t,r,n,a,o,s){return i(r^(t|~n),e,t,a,o,s)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){if("string"==typeof e){const t=unescape(encodeURIComponent(e));e=new Uint8Array(t.length);for(let r=0;r>5]>>>i%32&255,a=parseInt(n.charAt(r>>>4&15)+n.charAt(15&r),16);t.push(a)}return t}(function(e,t){e[t>>5]|=128<>5]|=(255&e[r/8])<{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};t.default=r},15384:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default="00000000-0000-0000-0000-000000000000"},9964:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};t.default=function(e){if(!(0,i.default)(e))throw TypeError("Invalid UUID");let t;const r=new Uint8Array(16);return r[0]=(t=parseInt(e.slice(0,8),16))>>>24,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r[4]=(t=parseInt(e.slice(9,13),16))>>>8,r[5]=255&t,r[6]=(t=parseInt(e.slice(14,18),16))>>>8,r[7]=255&t,r[8]=(t=parseInt(e.slice(19,23),16))>>>8,r[9]=255&t,r[10]=(t=parseInt(e.slice(24,36),16))/1099511627776&255,r[11]=t/4294967296&255,r[12]=t>>>24&255,r[13]=t>>>16&255,r[14]=t>>>8&255,r[15]=255&t,r}},76678:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i},41874:(e,t)=>{"use strict";let r;Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){if(!r&&(r="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!r))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return r(n)};const n=new Uint8Array(16)},13254:(e,t)=>{"use strict";function r(e,t,r,n){switch(e){case 0:return t&r^~t&n;case 1:case 3:return t^r^n;case 2:return t&r^t&n^r&n}}function n(e,t){return e<>>32-t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e){const t=[1518500249,1859775393,2400959708,3395469782],i=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof e){const t=unescape(encodeURIComponent(e));e=[];for(let r=0;r>>0;d=l,l=u,u=n(c,30)>>>0,c=o,o=s}i[0]=i[0]+o>>>0,i[1]=i[1]+c>>>0,i[2]=i[2]+u>>>0,i[3]=i[3]+l>>>0,i[4]=i[4]+d>>>0}return[i[0]>>24&255,i[0]>>16&255,i[0]>>8&255,255&i[0],i[1]>>24&255,i[1]>>16&255,i[1]>>8&255,255&i[1],i[2]>>24&255,i[2]>>16&255,i[2]>>8&255,255&i[2],i[3]>>24&255,i[3]>>16&255,i[3]>>8&255,255&i[3],i[4]>>24&255,i[4]>>16&255,i[4]>>8&255,255&i[4]]}},49926:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.unsafeStringify=o;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};const a=[];for(let e=0;e<256;++e)a.push((e+256).toString(16).slice(1));function o(e,t=0){return a[e[t+0]]+a[e[t+1]]+a[e[t+2]]+a[e[t+3]]+"-"+a[e[t+4]]+a[e[t+5]]+"-"+a[e[t+6]]+a[e[t+7]]+"-"+a[e[t+8]]+a[e[t+9]]+"-"+a[e[t+10]]+a[e[t+11]]+a[e[t+12]]+a[e[t+13]]+a[e[t+14]]+a[e[t+15]]}t.default=function(e,t=0){const r=o(e,t);if(!(0,i.default)(r))throw TypeError("Stringified UUID is invalid");return r}},27343:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(41874))&&n.__esModule?n:{default:n},a=r(49926);let o,s,c=0,u=0;t.default=function(e,t,r){let n=t&&r||0;const l=t||new Array(16);let d=(e=e||{}).node||o,h=void 0!==e.clockseq?e.clockseq:s;if(null==d||null==h){const t=e.random||(e.rng||i.default)();null==d&&(d=o=[1|t[0],t[1],t[2],t[3],t[4],t[5]]),null==h&&(h=s=16383&(t[6]<<8|t[7]))}let p=void 0!==e.msecs?e.msecs:Date.now(),f=void 0!==e.nsecs?e.nsecs:u+1;const y=p-c+(f-u)/1e4;if(y<0&&void 0===e.clockseq&&(h=h+1&16383),(y<0||p>c)&&void 0===e.nsecs&&(f=0),f>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");c=p,u=f,s=h,p+=122192928e5;const g=(1e4*(268435455&p)+f)%4294967296;l[n++]=g>>>24&255,l[n++]=g>>>16&255,l[n++]=g>>>8&255,l[n++]=255&g;const m=p/4294967296*1e4&268435455;l[n++]=m>>>8&255,l[n++]=255&m,l[n++]=m>>>24&15|16,l[n++]=m>>>16&255,l[n++]=h>>>8|128,l[n++]=255&h;for(let e=0;e<6;++e)l[n+e]=d[e];return t||(0,a.unsafeStringify)(l)}},46076:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(r(18679)),i=a(r(2763));function a(e){return e&&e.__esModule?e:{default:e}}var o=(0,n.default)("v3",48,i.default);t.default=o},18679:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.URL=t.DNS=void 0,t.default=function(e,t,r){function n(e,n,o,s){var c;if("string"==typeof e&&(e=function(e){e=unescape(encodeURIComponent(e));const t=[];for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=o(r(74267)),i=o(r(41874)),a=r(49926);function o(e){return e&&e.__esModule?e:{default:e}}t.default=function(e,t,r){if(n.default.randomUUID&&!t&&!e)return n.default.randomUUID();const o=(e=e||{}).random||(e.rng||i.default)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=o[e];return t}return(0,a.unsafeStringify)(o)}},13940:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(r(18679)),i=a(r(13254));function a(e){return e&&e.__esModule?e:{default:e}}var o=(0,n.default)("v5",80,i.default);t.default=o},77888:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(76678))&&n.__esModule?n:{default:n};t.default=function(e){return"string"==typeof e&&i.default.test(e)}},25791:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(77888))&&n.__esModule?n:{default:n};t.default=function(e){if(!(0,i.default)(e))throw TypeError("Invalid UUID");return parseInt(e.slice(14,15),16)}},99650:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(94817),t)},94817:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateIri=t.IriValidationStrategy=void 0;const r=function(){const e="[!$&'()*+,;=]",t="%[a-fA-F0-9]{2}",r="([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",n=`${r}\\.${r}\\.${r}\\.${r}`,i="[a-fA-F0-9]{1,4}",a=`(${i}:${i}|${n})`,o="[a-zA-Z0-9\\-._~ -퟿豈-﷏ﷰ-￯𐀀-🿽𠀀-𯿽𰀀-𿿽񀀀-񏿽񐀀-񟿽񠀀-񯿽񰀀-񿿽򀀀-򏿽򐀀-򟿽򠀀-򯿽򰀀-򿿽󀀀-󏿽󐀀-󟿽󡀀-󯿽]",s=`(${o}|${t}|${e}|[:@])*`,c=`(${s})+`,u=`(${s})*`;return new RegExp(`^[a-zA-Z][a-zA-Z0-9+\\-.]*:(\\/\\/((${o}|${t}|${e}|:)*@)?(\\[(((${i}:){6}${a}|::(${i}:){5}${a}|(${i})?::(${i}:){4}${a}|((${i}:){0,1}${i})?::(${i}:){3}${a}|((${i}:){0,2}${i})?::(${i}:){2}${a}|((${i}:){0,3}${i})?::${i}:${a}|((${i}:){0,4}${i})?::${a}|((${i}:){0,5}${i})?::${i}|((${i}:){0,6}${i})?::)|v[a-fA-F0-9]+\\.(${e}|${e}|":)+)\\]|${n}|(${o}|${t}|${e})*)(:[0-9]*)?(\\/${u})*|\\/(${c}(\\/${u})*)?|${c}(\\/${u})*|)(\\?(${s}|[-󰀀-󿿽􀀀-􏿽]|[\\/?])*)?(#(${s}|[\\/?])*)?$`,"u")}(),n=/^[A-Za-z][\d+-.A-Za-z]*:[^\u0000-\u0020"<>\\^`{|}]*$/u;var i;!function(e){e.Strict="strict",e.Pragmatic="pragmatic",e.None="none"}(i=t.IriValidationStrategy||(t.IriValidationStrategy={})),t.validateIri=function(e,t=i.Strict){switch(t){case i.Strict:return r.test(e)?void 0:new Error(`Invalid IRI according to RFC 3987: '${e}'`);case i.Pragmatic:return n.test(e)?void 0:new Error(`Invalid IRI according to RDF Turtle: '${e}'`);case i.None:return;default:return new Error(`Not supported validation strategy "${t}"`)}}},25919:(e,t,r)=>{e.exports=function e(t,r,n){function i(o,s){if(!r[o]){if(!t[o]){if(a)return a(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var u=r[o]={exports:{}};t[o][0].call(u.exports,(function(e){return i(t[o][1][e]||e)}),u,u.exports,e,t,r,n)}return r[o].exports}for(var a=void 0,o=0;o=0;s--)if(c[s]!==u[s])return!1;for(s=c.length-1;s>=0;s--)if(!h(e[o=c[s]],t[o],r,n))return!1;return!0}(e,t,r,s))}return r?e===t:e==t}function p(e){return"[object Arguments]"==Object.prototype.toString.call(e)}function f(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function y(e,t,r,n){var i;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=function(e){var t;try{e()}catch(e){t=e}return t}(t),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),e&&!i&&l(i,r,"Missing expected exception"+n);var a="string"==typeof n,o=!e&&i&&!r;if((!e&&g.isError(i)&&a&&f(i,r)||o)&&l(i,r,"Got unwanted exception"+n),e&&i&&r&&!f(i,r)||!e&&i)throw i}var g=e("util/"),m=Object.prototype.hasOwnProperty,b=Array.prototype.slice,v="foo"===function(){}.name,_=t.exports=d,w=/\s*function\s+([^\(\s]*)\s*/;_.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=function(e){return c(u(e.actual),128)+" "+e.operator+" "+c(u(e.expected),128)}(this),this.generatedMessage=!0);var t=e.stackStartFunction||l;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var r=new Error;if(r.stack){var n=r.stack,i=s(t),a=n.indexOf("\n"+i);if(a>=0){var o=n.indexOf("\n",a+1);n=n.substring(o+1)}this.stack=n}}},g.inherits(_.AssertionError,Error),_.fail=l,_.ok=d,_.equal=function(e,t,r){e!=t&&l(e,t,r,"==",_.equal)},_.notEqual=function(e,t,r){e==t&&l(e,t,r,"!=",_.notEqual)},_.deepEqual=function(e,t,r){h(e,t,!1)||l(e,t,r,"deepEqual",_.deepEqual)},_.deepStrictEqual=function(e,t,r){h(e,t,!0)||l(e,t,r,"deepStrictEqual",_.deepStrictEqual)},_.notDeepEqual=function(e,t,r){h(e,t,!1)&&l(e,t,r,"notDeepEqual",_.notDeepEqual)},_.notDeepStrictEqual=function e(t,r,n){h(t,r,!0)&&l(t,r,n,"notDeepStrictEqual",e)},_.strictEqual=function(e,t,r){e!==t&&l(e,t,r,"===",_.strictEqual)},_.notStrictEqual=function(e,t,r){e===t&&l(e,t,r,"!==",_.notStrictEqual)},_.throws=function(e,t,r){y(!0,e,t,r)},_.doesNotThrow=function(e,t,r){y(!1,e,t,r)},_.ifError=function(e){if(e)throw e};var T=Object.keys||function(e){var t=[];for(var r in e)m.call(e,r)&&t.push(r);return t}}).call(this,void 0!==r.g?r.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"util/":7}],3:[function(e,t,r){},{}],4:[function(e,t,r){function n(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function a(e){if(l===setTimeout)return setTimeout(e,0);if((l===n||!l)&&setTimeout)return l=setTimeout,setTimeout(e,0);try{return l(e,0)}catch(t){try{return l.call(null,e,0)}catch(t){return l.call(this,e,0)}}}function o(){y&&p&&(y=!1,p.length?f=p.concat(f):g=-1,f.length&&s())}function s(){if(!y){var e=a(o);y=!0;for(var t=f.length;t;){for(p=f,f=[];++g1)for(var r=1;r=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(t)?r.showHidden=t:t&&n._extend(r,t),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=a),s(r,e,r.depth)}function a(e,t){var r=i.styles[t];return r?"["+i.colors[r][0]+"m"+e+"["+i.colors[r][1]+"m":e}function o(e,t){return e}function s(e,t,r){if(e.customInspect&&t&&_(t.inspect)&&t.inspect!==n.inspect&&(!t.constructor||t.constructor.prototype!==t)){var i=t.inspect(r,e);return f(i)||(i=s(e,i,r)),i}var a=function(e,t){if(y(t))return e.stylize("undefined","undefined");if(f(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}return p(t)?e.stylize(""+t,"number"):d(t)?e.stylize(""+t,"boolean"):h(t)?e.stylize("null","null"):void 0}(e,t);if(a)return a;var o=Object.keys(t),m=function(e){var t={};return e.forEach((function(e,r){t[e]=!0})),t}(o);if(e.showHidden&&(o=Object.getOwnPropertyNames(t)),v(t)&&(o.indexOf("message")>=0||o.indexOf("description")>=0))return c(t);if(0===o.length){if(_(t)){var w=t.name?": "+t.name:"";return e.stylize("[Function"+w+"]","special")}if(g(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(b(t))return e.stylize(Date.prototype.toString.call(t),"date");if(v(t))return c(t)}var T,O="",E=!1,x=["{","}"];return l(t)&&(E=!0,x=["[","]"]),_(t)&&(O=" [Function"+(t.name?": "+t.name:"")+"]"),g(t)&&(O=" "+RegExp.prototype.toString.call(t)),b(t)&&(O=" "+Date.prototype.toUTCString.call(t)),v(t)&&(O=" "+c(t)),0!==o.length||E&&0!=t.length?r<0?g(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special"):(e.seen.push(t),T=E?function(e,t,r,n,i){for(var a=[],o=0,s=t.length;o60?r[0]+(""===t?"":t+"\n ")+" "+e.join(",\n ")+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}(T,O,x)):x[0]+O+x[1]}function c(e){return"["+Error.prototype.toString.call(e)+"]"}function u(e,t,r,n,i,a){var o,c,u;if((u=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]}).get?c=u.set?e.stylize("[Getter/Setter]","special"):e.stylize("[Getter]","special"):u.set&&(c=e.stylize("[Setter]","special")),S(n,i)||(o="["+i+"]"),c||(e.seen.indexOf(u.value)<0?(c=h(r)?s(e,u.value,null):s(e,u.value,r-1)).indexOf("\n")>-1&&(c=a?c.split("\n").map((function(e){return" "+e})).join("\n").substr(2):"\n"+c.split("\n").map((function(e){return" "+e})).join("\n")):c=e.stylize("[Circular]","special")),y(o)){if(a&&i.match(/^\d+$/))return c;(o=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.substr(1,o.length-2),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+c}function l(e){return Array.isArray(e)}function d(e){return"boolean"==typeof e}function h(e){return null===e}function p(e){return"number"==typeof e}function f(e){return"string"==typeof e}function y(e){return void 0===e}function g(e){return m(e)&&"[object RegExp]"===w(e)}function m(e){return"object"==typeof e&&null!==e}function b(e){return m(e)&&"[object Date]"===w(e)}function v(e){return m(e)&&("[object Error]"===w(e)||e instanceof Error)}function _(e){return"function"==typeof e}function w(e){return Object.prototype.toString.call(e)}function T(e){return e<10?"0"+e.toString(10):e.toString(10)}function S(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var O=/%[sdj%]/g;n.format=function(e){if(!f(e)){for(var t=[],r=0;r=a)return e;switch(e){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(e){return"[Circular]"}default:return e}})),s=n[r];r3&&void 0!==arguments[3]?arguments[3]:1,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return 1},a=Object.create(Le.prototype);return o(a),M(a,Object.create(Be.prototype),e,t,r,n,i),a}function o(e){e._state="readable",e._reader=void 0,e._storedError=void 0,e._disturbed=!1}function s(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readableStreamController")}function c(e){return void 0!==e._reader}function u(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._reader._readIntoRequests.push(n)}))}function l(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._reader._readRequests.push(n)}))}function d(e,t){return e._disturbed=!0,"closed"===e._state?Promise.resolve(void 0):"errored"===e._state?Promise.reject(e._storedError):(h(e),e._readableStreamController[Ce](t).then((function(){})))}function h(e){e._state="closed";var t=e._reader;if(void 0!==t){if(!0===_(t)){var r=!0,n=!1,i=void 0;try{for(var a,o=t._readRequests[Symbol.iterator]();!(r=(a=o.next()).done);r=!0)(0,a.value._resolve)(de(void 0,!0))}catch(e){n=!0,i=e}finally{try{!r&&o.return&&o.return()}finally{if(n)throw i}}t._readRequests=[]}!function(e){e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(t)}}function p(e,t){e._state="errored",e._storedError=t;var r=e._reader;if(void 0!==r){if(!0===_(r)){var n=!0,i=!1,a=void 0;try{for(var o,s=r._readRequests[Symbol.iterator]();!(n=(o=s.next()).done);n=!0)o.value._reject(t)}catch(e){i=!0,a=e}finally{try{!n&&s.return&&s.return()}finally{if(i)throw a}}r._readRequests=[]}else{var c=!0,u=!1,l=void 0;try{for(var d,h=r._readIntoRequests[Symbol.iterator]();!(c=(d=h.next()).done);c=!0)d.value._reject(t)}catch(e){u=!0,l=e}finally{try{!c&&h.return&&h.return()}finally{if(u)throw l}}r._readIntoRequests=[]}re(r,t),r._closedPromise.catch((function(){}))}}function f(e,t,r){e._reader._readRequests.shift()._resolve(de(t,r))}function y(e){return e._reader._readIntoRequests.length}function g(e){return e._reader._readRequests.length}function m(e){var t=e._reader;return void 0!==t&&!1!==v(t)}function b(e){var t=e._reader;return void 0!==t&&!1!==_(t)}function v(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readIntoRequests")}function _(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_readRequests")}function w(e,t){e._ownerReadableStream=t,t._reader=e,"readable"===t._state?function(e){e._closedPromise=new Promise((function(t,r){e._closedPromise_resolve=t,e._closedPromise_reject=r}))}(e):"closed"===t._state?function(e){e._closedPromise=Promise.resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(e):(function(e,t){e._closedPromise=Promise.reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}(e,t._storedError),e._closedPromise.catch((function(){})))}function T(e,t){return d(e._ownerReadableStream,t)}function S(e){"readable"===e._ownerReadableStream._state?re(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):function(e,t){e._closedPromise=Promise.reject(t)}(e,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),e._closedPromise.catch((function(){})),e._ownerReadableStream._reader=void 0,e._ownerReadableStream=void 0}function O(e,t){var r=e._ownerReadableStream;return r._disturbed=!0,"errored"===r._state?Promise.reject(r._storedError):function(e,t){var r=e._controlledReadableByteStream,n=1;t.constructor!==DataView&&(n=t.constructor.BYTES_PER_ELEMENT);var i=t.constructor,a={buffer:ye(t.buffer),byteOffset:t.byteOffset,byteLength:t.byteLength,bytesFilled:0,elementSize:n,ctor:i,readerType:"byob"};if(e._pendingPullIntos.length>0)return e._pendingPullIntos.push(a),u(r);if("closed"===r._state){var o=new t.constructor(a.buffer,a.byteOffset,0);return Promise.resolve(de(o,!0))}if(e._queueTotalSize>0){if(!0===Q(e,a)){var s=q(a);return H(e),Promise.resolve(de(s,!1))}if(!0===e._closeRequested){var c=new TypeError("Insufficient bytes to fill elements in the given buffer");return W(e,c),Promise.reject(c)}}e._pendingPullIntos.push(a);var l=u(r);return F(e),l}(r._readableStreamController,t)}function E(e){var t=e._ownerReadableStream;return t._disturbed=!0,"closed"===t._state?Promise.resolve(de(void 0,!0)):"errored"===t._state?Promise.reject(t._storedError):t._readableStreamController[Me]()}function x(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableStream")}function A(e){!1!==R(e)&&(!0!==e._pulling?(e._pulling=!0,e._pullAlgorithm().then((function(){if(e._pulling=!1,!0===e._pullAgain)return e._pullAgain=!1,A(e)}),(function(t){N(e,t)})).catch(_e)):e._pullAgain=!0)}function R(e){var t=e._controlledReadableStream;return!1!==C(e)&&!1!==e._started&&(!0===c(t)&&g(t)>0||j(e)>0)}function I(e){var t=e._controlledReadableStream;e._closeRequested=!0,0===e._queue.length&&h(t)}function P(e,t){var r=e._controlledReadableStream;if(!0===c(r)&&g(r)>0)f(r,t,!1);else{var n=void 0;try{n=e._strategySizeAlgorithm(t)}catch(t){throw N(e,t),t}try{Se(e,t,n)}catch(t){throw N(e,t),t}}A(e)}function D(e,t){var r=e._controlledReadableStream;Oe(e),p(r,t)}function N(e,t){"readable"===e._controlledReadableStream._state&&D(e,t)}function j(e){var t=e._controlledReadableStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function C(e){var t=e._controlledReadableStream._state;return!1===e._closeRequested&&"readable"===t}function M(e,t,r,n,i,a,o){t._controlledReadableStream=e,t._queue=void 0,t._queueTotalSize=void 0,Oe(t),t._started=!1,t._closeRequested=!1,t._pullAgain=!1,t._pulling=!1,t._strategySizeAlgorithm=o,t._strategyHWM=a,t._pullAlgorithm=n,t._cancelAlgorithm=i,e._readableStreamController=t;var s=r();Promise.resolve(s).then((function(){t._started=!0,A(t)}),(function(e){N(t,e)})).catch(_e)}function L(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledReadableByteStream")}function k(e){return!!ve(e)&&!!Object.prototype.hasOwnProperty.call(e,"_associatedReadableByteStreamController")}function F(e){!1!==function(e){var t=e._controlledReadableByteStream;return"readable"===t._state&&!0!==e._closeRequested&&!1!==e._started&&(!0===b(t)&&g(t)>0||!0===m(t)&&y(t)>0||J(e)>0)}(e)&&(!0!==e._pulling?(e._pulling=!0,e._pullAlgorithm().then((function(){e._pulling=!1,!0===e._pullAgain&&(e._pullAgain=!1,F(e))}),(function(t){"readable"===e._controlledReadableByteStream._state&&W(e,t)})).catch(_e)):e._pullAgain=!0)}function B(e){G(e),e._pendingPullIntos=[]}function U(e,t){var r=!1;"closed"===e._state&&(r=!0);var n=q(t);"default"===t.readerType?f(e,n,r):function(e,t,r){e._reader._readIntoRequests.shift()._resolve(de(t,r))}(e,n,r)}function q(e){var t=e.bytesFilled,r=e.elementSize;return new e.ctor(e.buffer,e.byteOffset,t/r)}function V(e,t,r,n){e._queue.push({buffer:t,byteOffset:r,byteLength:n}),e._queueTotalSize+=n}function Q(e,t){var r=t.elementSize,n=t.bytesFilled-t.bytesFilled%r,i=Math.min(e._queueTotalSize,t.byteLength-t.bytesFilled),a=t.bytesFilled+i,o=a-a%r,s=i,c=!1;o>n&&(s=o-t.bytesFilled,c=!0);for(var u=e._queue;s>0;){var l=u[0],d=Math.min(s,l.byteLength),h=t.byteOffset+t.bytesFilled;ue(t.buffer,h,l.buffer,l.byteOffset,d),l.byteLength===d?u.shift():(l.byteOffset+=d,l.byteLength-=d),e._queueTotalSize-=d,$(e,d,t),s-=d}return c}function $(e,t,r){G(e),r.bytesFilled+=t}function H(e){0===e._queueTotalSize&&!0===e._closeRequested?h(e._controlledReadableByteStream):F(e)}function G(e){void 0!==e._byobRequest&&(e._byobRequest._associatedReadableByteStreamController=void 0,e._byobRequest._view=void 0,e._byobRequest=void 0)}function z(e){for(;e._pendingPullIntos.length>0;){if(0===e._queueTotalSize)return;var t=e._pendingPullIntos[0];!0===Q(e,t)&&(X(e),U(e._controlledReadableByteStream,t))}}function K(e,t){var r=e._pendingPullIntos[0];if("closed"===e._controlledReadableByteStream._state){if(0!==t)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream");!function(e,t){t.buffer=ye(t.buffer);var r=e._controlledReadableByteStream;if(!0===m(r))for(;y(r)>0;)U(r,X(e))}(e,r)}else!function(e,t,r){if(r.bytesFilled+t>r.byteLength)throw new RangeError("bytesWritten out of range");if($(e,t,r),!(r.bytesFilled0){var i=r.byteOffset+r.bytesFilled,a=r.buffer.slice(i-n,i);V(e,a,0,a.byteLength)}r.buffer=ye(r.buffer),r.bytesFilled-=n,U(e._controlledReadableByteStream,r),z(e)}}(e,t,r)}function X(e){var t=e._pendingPullIntos.shift();return G(e),t}function W(e,t){var r=e._controlledReadableByteStream;B(e),Oe(e),p(r,t)}function J(e){var t=e._controlledReadableByteStream._state;return"errored"===t?null:"closed"===t?0:e._strategyHWM-e._queueTotalSize}function Y(e,t,r,n,i,a,o){t._controlledReadableByteStream=e,t._pullAgain=!1,t._pulling=!1,B(t),t._queue=t._queueTotalSize=void 0,Oe(t),t._closeRequested=!1,t._started=!1,t._strategyHWM=ge(a),t._pullAlgorithm=n,t._cancelAlgorithm=i,t._autoAllocateChunkSize=o,t._pendingPullIntos=[],e._readableStreamController=t;var s=r();Promise.resolve(s).then((function(){t._started=!0,F(t)}),(function(r){"readable"===e._state&&W(t,r)})).catch(_e)}function Z(e){return new TypeError("ReadableStream.prototype."+e+" can only be used on a ReadableStream")}function ee(e){return new TypeError("Cannot "+e+" a stream using a released reader")}function te(e){return new TypeError("ReadableStreamDefaultReader.prototype."+e+" can only be used on a ReadableStreamDefaultReader")}function re(e,t){e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0}function ne(e){return new TypeError("ReadableStreamBYOBReader.prototype."+e+" can only be used on a ReadableStreamBYOBReader")}function ie(e){return new TypeError("ReadableStreamDefaultController.prototype."+e+" can only be used on a ReadableStreamDefaultController")}function ae(e){return new TypeError("ReadableStreamBYOBRequest.prototype."+e+" can only be used on a ReadableStreamBYOBRequest")}function oe(e){return new TypeError("ReadableByteStreamController.prototype."+e+" can only be used on a ReadableByteStreamController")}var se=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.size,a=r.highWaterMark;n(this,e),o(this);var s=t.type;if("bytes"===String(s)){if(void 0===a&&(a=0),a=ge(a),void 0!==i)throw new RangeError("The strategy for a byte stream cannot have a size function");!function(e,t,r){var n=Object.create(qe.prototype),i=le(t,"pull",0,[n]),a=le(t,"cancel",1,[]),o=t.autoAllocateChunkSize;if(void 0!==o&&(!1===Number.isInteger(o)||o<=0))throw new RangeError("autoAllocateChunkSize must be a positive integer");Y(e,n,(function(){return pe(t,"start",[n])}),i,a,r,o)}(this,t,a)}else{if(void 0!==s)throw new RangeError("Invalid type is specified");void 0===a&&(a=1),function(e,t,r,n){var i=Object.create(Be.prototype),a=le(t,"pull",0,[i]),o=le(t,"cancel",1,[]);M(e,i,(function(){return pe(t,"start",[i])}),a,o,r,n)}(this,t,a=ge(a),me(i))}}return se(e,[{key:"cancel",value:function(e){return!1===s(this)?Promise.reject(Z("cancel")):!0===c(this)?Promise.reject(new TypeError("Cannot cancel a stream that already has a reader")):d(this,e)}},{key:"getReader",value:function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).mode;if(!1===s(this))throw Z("getReader");if(void 0===e)return i(this);if("byob"===(e=String(e)))return function(e){return new Fe(e)}(this);throw new RangeError("Invalid mode is specified")}},{key:"pipeThrough",value:function(e,t){var r=e.writable,n=e.readable;if(void 0===r||void 0===n)throw new TypeError("readable and writable arguments must be defined");return function(e){try{Promise.prototype.then.call(e,void 0,(function(){}))}catch(e){}}(this.pipeTo(r,t)),n}},{key:"pipeTo",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.preventClose,a=r.preventAbort,o=r.preventCancel;if(!1===s(this))return Promise.reject(Z("pipeTo"));if(!1===Ae(e))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));if(n=Boolean(n),a=Boolean(a),o=Boolean(o),!0===c(this))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream"));if(!0===Re(e))return Promise.reject(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream"));var u=i(this),l=xe(e),h=!1,p=Promise.resolve();return new Promise((function(r,i){function s(){var e=p;return p.then((function(){return e!==p?s():void 0}))}function c(e,t,r){"errored"===e._state?r(e._storedError):t.catch(r).catch(_e)}function f(t,r,n){function i(){t().then((function(){return g(r,n)}),(function(e){return g(!0,e)})).catch(_e)}!0!==h&&(h=!0,"writable"===e._state&&!1===je(e)?s().then(i):i())}function y(t,r){!0!==h&&(h=!0,"writable"===e._state&&!1===je(e)?s().then((function(){return g(t,r)})).catch(_e):g(t,r))}function g(e,t){De(l),S(u),e?i(t):r(void 0)}if(c(t,u._closedPromise,(function(t){!1===a?f((function(){return Ie(e,t)}),!0,t):y(!0,t)})),c(e,l._closedPromise,(function(e){!1===o?f((function(){return d(t,e)}),!0,e):y(!0,e)})),function(e,t,r){"closed"===e._state?r():t.then(r).catch(_e)}(t,u._closedPromise,(function(){!1===n?f((function(){return Pe(l)})):y()})),!0===je(e)||"closed"===e._state){var m=new TypeError("the destination writable stream closed before all data could be piped to it");!1===o?f((function(){return d(t,m)}),!0,m):y(!0,m)}(function e(){return!0===h?Promise.resolve():l._readyPromise.then((function(){return E(u).then((function(e){var t=e.value;!0!==e.done&&(p=Ne(l,t).catch((function(){})))}))})).then(e)})().catch((function(e){p=Promise.resolve(),_e(e)}))}))}},{key:"tee",value:function(){if(!1===s(this))throw Z("tee");var e=function(e,t){function r(){return E(o).then((function(e){var t=e.value;if(!0===e.done&&!1===s&&(!1===c&&I(p._readableStreamController),!1===u&&I(f._readableStreamController),s=!0),!0!==s){var r=t,n=t;!1===c&&P(p._readableStreamController,r),!1===u&&P(f._readableStreamController,n)}}))}function n(){}var o=i(e),s=!1,c=!1,u=!1,l=void 0,h=void 0,p=void 0,f=void 0,y=void 0,g=new Promise((function(e){y=e}));return p=a(n,r,(function(t){if(c=!0,l=t,!0===u){var r=be([l,h]),n=d(e,r);y(n)}return g})),f=a(n,r,(function(t){if(u=!0,h=t,!0===c){var r=be([l,h]),n=d(e,r);y(n)}return g})),o._closedPromise.catch((function(e){!0!==s&&(N(p._readableStreamController,e),N(f._readableStreamController,e),s=!0)})),[p,f]}(this);return be(e)}},{key:"locked",get:function(){if(!1===s(this))throw Z("locked");return c(this)}}]),e}();t.exports={CreateReadableByteStream:function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0,a=Object.create(Le.prototype);return o(a),Y(a,Object.create(qe.prototype),e,t,r,n,i),a},CreateReadableStream:a,ReadableStream:Le,IsReadableStreamDisturbed:function(e){return e._disturbed},ReadableStreamDefaultControllerClose:I,ReadableStreamDefaultControllerEnqueue:P,ReadableStreamDefaultControllerError:D,ReadableStreamDefaultControllerGetDesiredSize:j,ReadableStreamDefaultControllerHasBackpressure:function(e){return!0!==R(e)},ReadableStreamDefaultControllerCanCloseOrEnqueue:C};var ke=function(){function e(t){if(n(this,e),!1===s(t))throw new TypeError("ReadableStreamDefaultReader can only be constructed with a ReadableStream instance");if(!0===c(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");w(this,t),this._readRequests=[]}return se(e,[{key:"cancel",value:function(e){return!1===_(this)?Promise.reject(te("cancel")):void 0===this._ownerReadableStream?Promise.reject(ee("cancel")):T(this,e)}},{key:"read",value:function(){return!1===_(this)?Promise.reject(te("read")):void 0===this._ownerReadableStream?Promise.reject(ee("read from")):E(this)}},{key:"releaseLock",value:function(){if(!1===_(this))throw te("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");S(this)}}},{key:"closed",get:function(){return!1===_(this)?Promise.reject(te("closed")):this._closedPromise}}]),e}(),Fe=function(){function e(t){if(n(this,e),!s(t))throw new TypeError("ReadableStreamBYOBReader can only be constructed with a ReadableStream instance given a byte source");if(!1===L(t._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");if(c(t))throw new TypeError("This stream has already been locked for exclusive reading by another reader");w(this,t),this._readIntoRequests=[]}return se(e,[{key:"cancel",value:function(e){return v(this)?void 0===this._ownerReadableStream?Promise.reject(ee("cancel")):T(this,e):Promise.reject(ne("cancel"))}},{key:"read",value:function(e){return v(this)?void 0===this._ownerReadableStream?Promise.reject(ee("read from")):ArrayBuffer.isView(e)?!0===fe(e.buffer)?Promise.reject(new TypeError("Cannot read into a view onto a detached ArrayBuffer")):0===e.byteLength?Promise.reject(new TypeError("view must have non-zero byteLength")):O(this,e):Promise.reject(new TypeError("view must be an array buffer view")):Promise.reject(ne("read"))}},{key:"releaseLock",value:function(){if(!v(this))throw ne("releaseLock");if(void 0!==this._ownerReadableStream){if(this._readIntoRequests.length>0)throw new TypeError("Tried to release a reader lock when that reader has pending read() calls un-settled");S(this)}}},{key:"closed",get:function(){return v(this)?this._closedPromise:Promise.reject(ne("closed"))}}]),e}(),Be=function(){function e(){throw n(this,e),new TypeError}return se(e,[{key:"close",value:function(){if(!1===x(this))throw ie("close");if(!1===C(this))throw new TypeError("The stream is not in a state that permits close");I(this)}},{key:"enqueue",value:function(e){if(!1===x(this))throw ie("enqueue");if(!1===C(this))throw new TypeError("The stream is not in a state that permits enqueue");return P(this,e)}},{key:"error",value:function(e){if(!1===x(this))throw ie("error");var t=this._controlledReadableStream;if("readable"!==t._state)throw new TypeError("The stream is "+t._state+" and so cannot be errored");D(this,e)}},{key:Ce,value:function(e){return Oe(this),this._cancelAlgorithm(e)}},{key:Me,value:function(){var e=this._controlledReadableStream;if(this._queue.length>0){var t=Te(this);return!0===this._closeRequested&&0===this._queue.length?h(e):A(this),Promise.resolve(de(t,!1))}var r=l(e);return A(this),r}},{key:"desiredSize",get:function(){if(!1===x(this))throw ie("desiredSize");return j(this)}}]),e}(),Ue=function(){function e(){throw n(this,e),new TypeError("ReadableStreamBYOBRequest cannot be used directly")}return se(e,[{key:"respond",value:function(e){if(!1===k(this))throw ae("respond");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(!0===fe(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");!function(e,t){if(t=Number(t),!1===he(t))throw new RangeError("bytesWritten must be a finite");K(e,t)}(this._associatedReadableByteStreamController,e)}},{key:"respondWithNewView",value:function(e){if(!1===k(this))throw ae("respond");if(void 0===this._associatedReadableByteStreamController)throw new TypeError("This BYOB request has been invalidated");if(!ArrayBuffer.isView(e))throw new TypeError("You can only respond with array buffer views");if(!0===fe(e.buffer))throw new TypeError("The supplied view's buffer has been detached and so cannot be used as a response");!function(e,t){var r=e._pendingPullIntos[0];if(r.byteOffset+r.bytesFilled!==t.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(r.byteLength!==t.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");r.buffer=t.buffer,K(e,t.byteLength)}(this._associatedReadableByteStreamController,e)}},{key:"view",get:function(){if(!1===k(this))throw ae("view");return this._view}}]),e}(),qe=function(){function e(){throw n(this,e),new TypeError("ReadableByteStreamController constructor cannot be used directly")}return se(e,[{key:"close",value:function(){if(!1===L(this))throw oe("close");if(!0===this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");var e=this._controlledReadableByteStream._state;if("readable"!==e)throw new TypeError("The stream (in "+e+" state) is not in the readable state and cannot be closed");!function(e){var t=e._controlledReadableByteStream;if(e._queueTotalSize>0)e._closeRequested=!0;else{if(e._pendingPullIntos.length>0&&e._pendingPullIntos[0].bytesFilled>0){var r=new TypeError("Insufficient bytes to fill elements in the given buffer");throw W(e,r),r}h(t)}}(this)}},{key:"enqueue",value:function(e){if(!1===L(this))throw oe("enqueue");if(!0===this._closeRequested)throw new TypeError("stream is closed or draining");var t=this._controlledReadableByteStream._state;if("readable"!==t)throw new TypeError("The stream (in "+t+" state) is not in the readable state and cannot be enqueued to");if(!ArrayBuffer.isView(e))throw new TypeError("You can only enqueue array buffer views when using a ReadableByteStreamController");if(!0===fe(e.buffer))throw new TypeError("Cannot enqueue a view onto a detached ArrayBuffer");!function(e,t){var r=e._controlledReadableByteStream,n=t.buffer,i=t.byteOffset,a=t.byteLength,o=ye(n);!0===b(r)?0===g(r)?V(e,o,i,a):f(r,new Uint8Array(o,i,a),!1):!0===m(r)?(V(e,o,i,a),z(e)):V(e,o,i,a)}(this,e)}},{key:"error",value:function(e){if(!1===L(this))throw oe("error");var t=this._controlledReadableByteStream;if("readable"!==t._state)throw new TypeError("The stream is "+t._state+" and so cannot be errored");W(this,e)}},{key:Ce,value:function(e){return this._pendingPullIntos.length>0&&(this._pendingPullIntos[0].bytesFilled=0),Oe(this),this._cancelAlgorithm(e)}},{key:Me,value:function(){var e=this._controlledReadableByteStream;if(this._queueTotalSize>0){var t=this._queue.shift();this._queueTotalSize-=t.byteLength,H(this);var r=void 0;try{r=new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}catch(e){return Promise.reject(e)}return Promise.resolve(de(r,!1))}var n=this._autoAllocateChunkSize;if(void 0!==n){var i=void 0;try{i=new ArrayBuffer(n)}catch(e){return Promise.reject(e)}var a={buffer:i,byteOffset:0,byteLength:n,bytesFilled:0,elementSize:1,ctor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(a)}var o=l(e);return F(this),o}},{key:"byobRequest",get:function(){if(!1===L(this))throw oe("byobRequest");if(void 0===this._byobRequest&&this._pendingPullIntos.length>0){var e=this._pendingPullIntos[0],t=new Uint8Array(e.buffer,e.byteOffset+e.bytesFilled,e.byteLength-e.bytesFilled),r=Object.create(Ue.prototype);(function(e,t,r){e._associatedReadableByteStreamController=t,e._view=r})(r,this,t),this._byobRequest=r}return this._byobRequest}},{key:"desiredSize",get:function(){if(!1===L(this))throw oe("desiredSize");return J(this)}}]),e}()},{"./helpers.js":10,"./queue-with-sizes.js":11,"./utils.js":14,"./writable-stream.js":15,"better-assert":16}],13:[function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t,r,n,i,a){function u(){return t}e._writable=N(u,(function(t){return function(e,t){y("TransformStreamDefaultSinkWriteAlgorithm()");var r=e._transformStreamController;return!0===e._backpressure?e._backpressureChangePromise.then((function(){var n=e._writable;if("erroring"===n._state)throw n._storedError;return r._transformAlgorithm(t)})):r._transformAlgorithm(t)}(e,t)}),(function(){return function(e){y("TransformStreamDefaultSinkCloseAlgorithm()");var t=e._readable;return e._transformStreamController._flushAlgorithm().then((function(){if("errored"===t._state)throw t._storedError;var e=t._readableStreamController;!0===P(e)&&E(e)})).catch((function(r){throw o(e,r),t._storedError}))}(e)}),(function(){return function(e){return o(e,new TypeError("Writable side aborted")),Promise.resolve()}(e)}),r,n),e._readable=O(u,(function(){return function(e){return y("TransformStreamDefaultSourcePullAlgorithm()"),c(e,!1),e._backpressureChangePromise}(e)}),(function(t){return s(e,t),Promise.resolve()}),i,a),e._backpressure=void 0,e._backpressureChangePromise=void 0,e._backpressureChangePromise_resolve=void 0,c(e,!0),e._transformStreamController=void 0}function a(e){return!!_(e)&&!!Object.prototype.hasOwnProperty.call(e,"_transformStreamController")}function o(e,t){y("TransformStreamError()"),"readable"===e._readable._state&&A(e._readable._readableStreamController,t),s(e,t)}function s(e,t){j(e._writable._writableStreamController,t),!0===e._backpressure&&c(e,!1)}function c(e,t){y("TransformStreamSetBackpressure() [backpressure = "+t+"]"),void 0!==e._backpressureChangePromise&&e._backpressureChangePromise_resolve(),e._backpressureChangePromise=new Promise((function(t){e._backpressureChangePromise_resolve=t})),e._backpressure=t}function u(e){return!!_(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledTransformStream")}function l(e,t,r,n){t._controlledTransformStream=e,e._transformStreamController=t,t._transformAlgorithm=r,t._flushAlgorithm=n}function d(e,t){y("TransformStreamDefaultControllerEnqueue()");var r=e._controlledTransformStream,n=r._readable._readableStreamController;if(!1===P(n))throw new TypeError("Readable side is not in a state that permits enqueue");try{x(n,t)}catch(e){throw s(r,e),r._readable._storedError}I(n)!==r._backpressure&&c(r,!0)}function h(e){return new TypeError("TransformStreamDefaultController.prototype."+e+" can only be used on a TransformStreamDefaultController")}function p(e){return new TypeError("TransformStream.prototype."+e+" can only be used on a TransformStream")}var f=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(n(this,e),void 0!==t.readableType)throw new RangeError("Invalid readable type specified");if(void 0!==t.writableType)throw new RangeError("Invalid writable type specified");var s=r.size,c=T(s),u=r.highWaterMark;void 0===u&&(u=1),u=w(u);var h=a.size,p=T(h),f=a.highWaterMark;void 0===f&&(f=0),f=w(f);var y=void 0;i(this,new Promise((function(e){y=e})),u,c,f,p),function(e,t){var r=Object.create(M.prototype),n=function(e){try{return d(r,e),Promise.resolve()}catch(e){return Promise.reject(e)}},i=t.transform;if(void 0!==i){if("function"!=typeof i)throw new TypeError("transform is not a method");n=function(n){return v(i,t,[n,r]).catch((function(t){throw o(e,t),t}))}}var a=b(t,"flush",0,[r]);l(e,r,n,a)}(this,t);var g=m(t,"start",[this._transformStreamController]);y(g)}return f(e,[{key:"readable",get:function(){if(!1===a(this))throw p("readable");return this._readable}},{key:"writable",get:function(){if(!1===a(this))throw p("writable");return this._writable}}]),e}(),M=function(){function e(){throw n(this,e),new TypeError("TransformStreamDefaultController instances cannot be created directly")}return f(e,[{key:"enqueue",value:function(e){if(!1===u(this))throw h("enqueue");d(this,e)}},{key:"error",value:function(e){if(!1===u(this))throw h("error");!function(e,t){o(e._controlledTransformStream,t)}(this,e)}},{key:"terminate",value:function(){if(!1===u(this))throw h("terminate");!function(e){y("TransformStreamDefaultControllerTerminate()");var t=e._controlledTransformStream,r=t._readable._readableStreamController;!0===P(r)&&E(r),s(t,new TypeError("TransformStream terminated"))}(this)}},{key:"desiredSize",get:function(){if(!1===u(this))throw h("desiredSize");var e=this._controlledTransformStream._readable._readableStreamController;return R(e)}}]),e}();t.exports={CreateTransformStream:function(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return 1},o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:function(){return 1},c=Object.create(C.prototype),u=void 0;i(c,new Promise((function(e){u=e})),n,a,o,s),l(c,Object.create(M.prototype),t,r);var d=e();return u(d),c},TransformStream:C}},{"./helpers.js":10,"./readable-stream.js":12,"./writable-stream.js":15,"better-assert":16,debug:18}],14:[function(e,t,r){"use strict";var n=e("better-assert");r.rethrowAssertionErrorRejection=function(e){e&&e.constructor===n.AssertionError&&setTimeout((function(){throw e}),0)}},{"better-assert":16}],15:[function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e){return new Y(e)}function a(e){e._state="writable",e._storedError=void 0,e._writer=void 0,e._writableStreamController=void 0,e._writeRequests=[],e._inFlightWriteRequest=void 0,e._closeRequest=void 0,e._inFlightCloseRequest=void 0,e._pendingAbortRequest=void 0,e._backpressure=!1}function o(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_writableStreamController")}function s(e){return void 0!==e._writer}function c(e,t){var r=e._state;if("closed"===r)return Promise.resolve(void 0);if("errored"===r)return Promise.reject(e._storedError);var n=new TypeError("Requested to abort");if(void 0!==e._pendingAbortRequest)return Promise.reject(n);var i=!1;"erroring"===r&&(i=!0,t=void 0);var a=new Promise((function(r,n){e._pendingAbortRequest={_resolve:r,_reject:n,_reason:t,_wasAlreadyErroring:i}}));return!1===i&&l(e,n),a}function u(e,t){L("WritableStreamDealWithRejection(stream, %o)",t),"writable"!==e._state?d(e):l(e,t)}function l(e,t){L("WritableStreamStartErroring(stream, %o)",t);var r=e._writableStreamController;e._state="erroring",e._storedError=t;var n=e._writer;void 0!==n&&b(n,t),!1===function(e){return void 0===e._inFlightWriteRequest&&void 0===e._inFlightCloseRequest?(L("WritableStreamHasOperationMarkedInFlight() is false"),!1):(L("WritableStreamHasOperationMarkedInFlight() is true"),!0)}(e)&&!0===r._started&&d(e)}function d(e){L("WritableStreamFinishErroring()"),e._state="errored",e._writableStreamController[W]();var t=e._storedError,r=!0,n=!1,i=void 0;try{for(var a,o=e._writeRequests[Symbol.iterator]();!(r=(a=o.next()).done);r=!0)a.value._reject(t)}catch(e){n=!0,i=e}finally{try{!r&&o.return&&o.return()}finally{if(n)throw i}}if(e._writeRequests=[],void 0!==e._pendingAbortRequest){var s=e._pendingAbortRequest;if(e._pendingAbortRequest=void 0,!0===s._wasAlreadyErroring)return s._reject(t),void p(e);e._writableStreamController[X](s._reason).then((function(){s._resolve(),p(e)}),(function(t){s._reject(t),p(e)}))}else p(e)}function h(e){return void 0!==e._closeRequest||void 0!==e._inFlightCloseRequest}function p(e){L("WritableStreamRejectCloseAndClosedPromiseIfNeeded()"),void 0!==e._closeRequest&&(e._closeRequest._reject(e._storedError),e._closeRequest=void 0);var t=e._writer;void 0!==t&&(D(t,e._storedError),t._closedPromise.catch((function(){})))}function f(e,t){var r=e._writer;void 0!==r&&t!==e._backpressure&&(!0===t?function(e){L("defaultWriterReadyPromiseReset()"),e._readyPromise=new Promise((function(t,r){e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}(r):C(r)),e._backpressure=t}function y(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_ownerWritableStream")}function g(e){var t=e._ownerWritableStream,r=t._state;if("closed"===r||"errored"===r)return Promise.reject(new TypeError("The stream (in "+r+" state) is not in the writable state and cannot be closed"));var n=new Promise((function(e,r){var n={_resolve:e,_reject:r};t._closeRequest=n}));return!0===t._backpressure&&"writable"===r&&C(e),function(e){G(e,"close",0),S(e)}(t._writableStreamController),n}function m(e,t){"pending"===e._closedPromiseState?D(e,t):function(e,t){e._closedPromise=Promise.reject(t),e._closedPromiseState="rejected"}(e,t),e._closedPromise.catch((function(){}))}function b(e,t){L("WritableStreamDefaultWriterEnsureReadyPromiseRejected(writer, %o)",t),"pending"===e._readyPromiseState?function(e,t){L("defaultWriterReadyPromiseReject(writer, %o)",t),e._readyPromise_reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected"}(e,t):function(e,t){L("defaultWriterReadyPromiseResetToRejected(writer, %o)",t),e._readyPromise=Promise.reject(t),e._readyPromiseState="rejected"}(e,t),e._readyPromise.catch((function(){}))}function v(e){var t=e._ownerWritableStream,r=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");b(e,r),m(e,r),t._writer=void 0,e._ownerWritableStream=void 0}function _(e,t){var r=e._ownerWritableStream,n=r._writableStreamController,i=function(e,t){try{return e._strategySizeAlgorithm(t)}catch(t){return O(e,t),1}}(n,t);if(r!==e._ownerWritableStream)return Promise.reject(I("write to"));var a=r._state;if("errored"===a)return Promise.reject(r._storedError);if(!0===h(r)||"closed"===a)return Promise.reject(new TypeError("The stream is closing or closed and cannot be written to"));if("erroring"===a)return Promise.reject(r._storedError);var o=function(e){return new Promise((function(t,r){var n={_resolve:t,_reject:r};e._writeRequests.push(n)}))}(r);return function(e,t,r){var n={chunk:t};try{G(e,n,r)}catch(t){return void O(e,t)}var i=e._controlledWritableStream;!1===h(i)&&"writable"===i._state&&f(i,E(e)),S(e)}(n,t,i),o}function w(e,t,r,n,i,a,o,s){t._controlledWritableStream=e,e._writableStreamController=t,t._queue=void 0,t._queueTotalSize=void 0,K(t),t._started=!1,t._strategySizeAlgorithm=s,t._strategyHWM=o,t._writeAlgorithm=n,t._closeAlgorithm=i,t._abortAlgorithm=a;var c=E(t);f(e,c);var l=r();Promise.resolve(l).then((function(){t._started=!0,S(t)}),(function(r){t._started=!0,u(e,r)})).catch(Q)}function T(e){return e._strategyHWM-e._queueTotalSize}function S(e){L("WritableStreamDefaultControllerAdvanceQueueIfNeeded()");var t=e._controlledWritableStream;if(!1!==e._started&&void 0===t._inFlightWriteRequest){var r=t._state;if("closed"!==r&&"errored"!==r)if("erroring"!==r){if(0!==e._queue.length){var n=z(e);"close"===n?function(e){var t=e._controlledWritableStream;(function(e){e._inFlightCloseRequest=e._closeRequest,e._closeRequest=void 0})(t),H(e),e._closeAlgorithm().then((function(){!function(e){e._inFlightCloseRequest._resolve(void 0),e._inFlightCloseRequest=void 0,"erroring"===e._state&&(e._storedError=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._resolve(),e._pendingAbortRequest=void 0)),e._state="closed";var t=e._writer;void 0!==t&&function(e){e._closedPromise_resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved"}(t)}(t)}),(function(e){!function(e,t){e._inFlightCloseRequest._reject(t),e._inFlightCloseRequest=void 0,void 0!==e._pendingAbortRequest&&(e._pendingAbortRequest._reject(t),e._pendingAbortRequest=void 0),u(e,t)}(t,e)})).catch(Q)}(e):function(e,t){var r=e._controlledWritableStream;(function(e){e._inFlightWriteRequest=e._writeRequests.shift()})(r),e._writeAlgorithm(t).then((function(){!function(e){e._inFlightWriteRequest._resolve(void 0),e._inFlightWriteRequest=void 0}(r);var t=r._state;if(H(e),!1===h(r)&&"writable"===t){var n=E(e);f(r,n)}S(e)}),(function(e){!function(e,t){e._inFlightWriteRequest._reject(t),e._inFlightWriteRequest=void 0,u(e,t)}(r,e)})).catch(Q)}(e,n.chunk)}}else d(t)}}function O(e,t){"writable"===e._controlledWritableStream._state&&x(e,t)}function E(e){return T(e)<=0}function x(e,t){l(e._controlledWritableStream,t)}function A(e){return new TypeError("WritableStream.prototype."+e+" can only be used on a WritableStream")}function R(e){return new TypeError("WritableStreamDefaultWriter.prototype."+e+" can only be used on a WritableStreamDefaultWriter")}function I(e){return new TypeError("Cannot "+e+" a stream using a released writer")}function P(e){e._closedPromise=new Promise((function(t,r){e._closedPromise_resolve=t,e._closedPromise_reject=r,e._closedPromiseState="pending"}))}function D(e,t){e._closedPromise_reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected"}function N(e,t){L("defaultWriterReadyPromiseInitializeAsRejected(writer, %o)",t),e._readyPromise=Promise.reject(t),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="rejected"}function j(e){L("defaultWriterReadyPromiseInitializeAsResolved()"),e._readyPromise=Promise.resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled"}function C(e){L("defaultWriterReadyPromiseResolve()"),e._readyPromise_resolve(void 0),e._readyPromise_resolve=void 0,e._readyPromise_reject=void 0,e._readyPromiseState="fulfilled"}var M=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{},r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=r.size,o=r.highWaterMark,s=void 0===o?1:o;if(n(this,e),a(this),void 0!==t.type)throw new RangeError("Invalid type is specified");var c=q(i);!function(e,t,r,n){var i=Object.create(Z.prototype),a=F(t,"write",1,[i]),o=F(t,"close",0,[]),s=F(t,"abort",1,[]);w(e,i,(function(){return B(t,"start",[i])}),a,o,s,r,n)}(this,t,s=U(s),c)}return M(e,[{key:"abort",value:function(e){return!1===o(this)?Promise.reject(A("abort")):!0===s(this)?Promise.reject(new TypeError("Cannot abort a stream that already has a writer")):c(this,e)}},{key:"getWriter",value:function(){if(!1===o(this))throw A("getWriter");return i(this)}},{key:"locked",get:function(){if(!1===o(this))throw A("locked");return s(this)}}]),e}();t.exports={AcquireWritableStreamDefaultWriter:i,CreateWritableStream:function(e,t,r,n){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:function(){return 1},s=Object.create(J.prototype);return a(s),w(s,Object.create(Z.prototype),e,t,r,n,i,o),s},IsWritableStream:o,IsWritableStreamLocked:s,WritableStream:J,WritableStreamAbort:c,WritableStreamDefaultControllerErrorIfNeeded:O,WritableStreamDefaultWriterCloseWithErrorPropagation:function(e){var t=e._ownerWritableStream,r=t._state;return!0===h(t)||"closed"===r?Promise.resolve():"errored"===r?Promise.reject(t._storedError):g(e)},WritableStreamDefaultWriterRelease:v,WritableStreamDefaultWriterWrite:_,WritableStreamCloseQueuedOrInFlight:h};var Y=function(){function e(t){if(n(this,e),!1===o(t))throw new TypeError("WritableStreamDefaultWriter can only be constructed with a WritableStream instance");if(!0===s(t))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=t,t._writer=this;var r=t._state;if("writable"===r)!1===h(t)&&!0===t._backpressure?function(e){L("defaultWriterReadyPromiseInitialize()"),e._readyPromise=new Promise((function(t,r){e._readyPromise_resolve=t,e._readyPromise_reject=r})),e._readyPromiseState="pending"}(this):j(this),P(this);else if("erroring"===r)N(this,t._storedError),this._readyPromise.catch((function(){})),P(this);else if("closed"===r)j(this),function(e){e._closedPromise=Promise.resolve(void 0),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="resolved"}(this);else{var i=t._storedError;N(this,i),this._readyPromise.catch((function(){})),function(e,t){e._closedPromise=Promise.reject(t),e._closedPromise_resolve=void 0,e._closedPromise_reject=void 0,e._closedPromiseState="rejected"}(this,i),this._closedPromise.catch((function(){}))}}return M(e,[{key:"abort",value:function(e){return!1===y(this)?Promise.reject(R("abort")):void 0===this._ownerWritableStream?Promise.reject(I("abort")):function(e,t){return c(e._ownerWritableStream,t)}(this,e)}},{key:"close",value:function(){if(!1===y(this))return Promise.reject(R("close"));var e=this._ownerWritableStream;return void 0===e?Promise.reject(I("close")):!0===h(e)?Promise.reject(new TypeError("cannot close an already-closing stream")):g(this)}},{key:"releaseLock",value:function(){if(!1===y(this))throw R("releaseLock");void 0!==this._ownerWritableStream&&v(this)}},{key:"write",value:function(e){return!1===y(this)?Promise.reject(R("write")):void 0===this._ownerWritableStream?Promise.reject(I("write to")):_(this,e)}},{key:"closed",get:function(){return!1===y(this)?Promise.reject(R("closed")):this._closedPromise}},{key:"desiredSize",get:function(){if(!1===y(this))throw R("desiredSize");if(void 0===this._ownerWritableStream)throw I("desiredSize");return e=this._ownerWritableStream,"errored"===(t=e._state)||"erroring"===t?null:"closed"===t?0:T(e._writableStreamController);var e,t}},{key:"ready",get:function(){return!1===y(this)?Promise.reject(R("ready")):this._readyPromise}}]),e}(),Z=function(){function e(){throw n(this,e),new TypeError("WritableStreamDefaultController cannot be constructed explicitly")}return M(e,[{key:"error",value:function(e){if(!1===function(e){return!!V(e)&&!!Object.prototype.hasOwnProperty.call(e,"_controlledWritableStream")}(this))throw new TypeError("WritableStreamDefaultController.prototype.error can only be used on a WritableStreamDefaultController");"writable"===this._controlledWritableStream._state&&x(this,e)}},{key:X,value:function(e){return this._abortAlgorithm(e)}},{key:W,value:function(){K(this)}}]),e}()},{"./helpers.js":10,"./queue-with-sizes.js":11,"./utils.js":14,"better-assert":16,debug:18}],16:[function(e,t,r){(function(r){var n=e("assert").AssertionError,i=e("callsite"),a=e("fs");t.exports=r.env.NO_ASSERT?function(){}:function(e){if(!e){var t=i(),r=t[1],o=r.getFileName(),s=r.getLineNumber(),c=(c=a.readFileSync(o,"utf8")).split("\n")[s-1].match(/assert\((.*)\)/)[1];throw new n({message:c,stackStartFunction:t[0].getFunction()})}}}).call(this,e("_process"))},{_process:4,assert:2,callsite:17,fs:3}],17:[function(e,t,r){t.exports=function(){var e=Error.prepareStackTrace;Error.prepareStackTrace=function(e,t){return t};var t=new Error;Error.captureStackTrace(t,arguments.callee);var r=t.stack;return Error.prepareStackTrace=e,r}},{}],18:[function(e,t,r){(function(n){function i(){var e;try{e=r.storage.debug}catch(e){}return!e&&void 0!==n&&"env"in n&&(e=n.env.DEBUG),e}(r=t.exports=e("./debug")).log=function(){return"object"==typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},r.formatArgs=function(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+r.humanize(this.diff),t){var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0,a=0;e[0].replace(/%[a-zA-Z%]/g,(function(e){"%%"!==e&&(i++,"%c"===e&&(a=i))})),e.splice(a,0,n)}},r.save=function(e){try{null==e?r.storage.removeItem("debug"):r.storage.debug=e}catch(e){}},r.load=i,r.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},r.storage="undefined"!=typeof chrome&&void 0!==chrome.storage?chrome.storage.local:function(){try{return window.localStorage}catch(e){}}(),r.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],r.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}},r.enable(i())}).call(this,e("_process"))},{"./debug":19,_process:4}],19:[function(e,t,r){function n(e){function t(){if(t.enabled){var e=t,i=+new Date,a=i-(n||i);e.diff=a,e.prev=n,e.curr=i,n=i;for(var o=new Array(arguments.length),s=0;s100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]);switch((t[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return r*d;case"days":case"day":case"d":return r*l;case"hours":case"hour":case"hrs":case"hr":case"h":return r*u;case"minutes":case"minute":case"mins":case"min":case"m":return r*c;case"seconds":case"second":case"secs":case"sec":case"s":return r*s;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function i(e){return e>=l?Math.round(e/l)+"d":e>=u?Math.round(e/u)+"h":e>=c?Math.round(e/c)+"m":e>=s?Math.round(e/s)+"s":e+"ms"}function a(e){return o(e,l,"day")||o(e,u,"hour")||o(e,c,"minute")||o(e,s,"second")||e+" ms"}function o(e,t,r){if(!(e0)return n(e);if("number"===r&&!1===isNaN(e))return t.long?a(e):i(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},{}]},{},[1])(1)},53291:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="\t\n\r -퟿-�𐀀-􏿿",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u"),t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=32&&e<=55295||10===e||13===e||9===e||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},90183:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||e>=97&&e<=122||58===e||95===e||8204===e||8205===e||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR="-퟿-�𐀀-􏿿",t.RESTRICTED_CHAR="-\b\v\f--„†-Ÿ",t.S=" \t\r\n",t.NAME_START_CHAR=":A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NAME_CHAR="-"+t.NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.CHAR_RE=new RegExp("^["+t.CHAR+"]$","u"),t.RESTRICTED_CHAR_RE=new RegExp("^["+t.RESTRICTED_CHAR+"]$","u"),t.S_RE=new RegExp("^["+t.S+"]+$","u"),t.NAME_START_CHAR_RE=new RegExp("^["+t.NAME_START_CHAR+"]$","u"),t.NAME_CHAR_RE=new RegExp("^["+t.NAME_CHAR+"]$","u"),t.NAME_RE=new RegExp("^["+t.NAME_START_CHAR+"]["+t.NAME_CHAR+"]*$","u"),t.NMTOKEN_RE=new RegExp("^["+t.NAME_CHAR+"]+$","u"),t.S_LIST=[32,10,13,9],t.isChar=function(e){return e>=1&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isRestrictedChar=function(e){return e>=1&&e<=8||11===e||12===e||e>=14&&e<=31||e>=127&&e<=132||e>=134&&e<=159},t.isCharAndNotRestricted=function(e){return 9===e||10===e||13===e||e>31&&e<127||133===e||e>159&&e<=55295||e>=57344&&e<=65533||e>=65536&&e<=1114111},t.isS=function(e){return 32===e||10===e||13===e||9===e},t.isNameStartChar=r,t.isNameChar=function(e){return r(e)||e>=48&&e<=57||45===e||46===e||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},99977:(e,t)=>{"use strict";function r(e){return e>=65&&e<=90||95===e||e>=97&&e<=122||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e>=8204&&e<=8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}Object.defineProperty(t,"__esModule",{value:!0}),t.NC_NAME_START_CHAR="A-Z_a-zÀ-ÖØ-öø-˿Ͱ-ͽͿ-῿‌-‍⁰-↏Ⰰ-⿯、-퟿豈-﷏ﷰ-�𐀀-󯿿",t.NC_NAME_CHAR="-"+t.NC_NAME_START_CHAR+".0-9·̀-ͯ‿-⁀",t.NC_NAME_START_CHAR_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]$","u"),t.NC_NAME_CHAR_RE=new RegExp("^["+t.NC_NAME_CHAR+"]$","u"),t.NC_NAME_RE=new RegExp("^["+t.NC_NAME_START_CHAR+"]["+t.NC_NAME_CHAR+"]*$","u"),t.isNCNameStartChar=r,t.isNCNameChar=function(e){return r(e)||45===e||46===e||e>=48&&e<=57||183===e||e>=768&&e<=879||e>=8255&&e<=8256}},93344:e=>{"use strict";e.exports=function e(t){if("number"==typeof t&&isNaN(t))throw new Error("NaN is not allowed");if("number"==typeof t&&!isFinite(t))throw new Error("Infinity is not allowed");return null===t||"object"!=typeof t?JSON.stringify(t):t.toJSON instanceof Function?e(t.toJSON()):Array.isArray(t)?`[${t.reduce(((t,r,n)=>`${t}${0===n?"":","}${e(void 0===r||"symbol"==typeof r?null:r)}`),"")}]`:`{${Object.keys(t).sort().reduce(((r,n)=>void 0===t[n]||"symbol"==typeof t[n]?r:`${r}${0===r.length?"":","}${e(n)}:${e(t[n])}`),"")}}`}},82197:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&n(t,e,r);return i(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.Parser=void 0;var o=a(r(95630)),s=r(73094),c=new Set(["input","option","optgroup","select","button","datalist","textarea"]),u=new Set(["p"]),l=new Set(["thead","tbody"]),d=new Set(["dd","dt"]),h=new Set(["rt","rp"]),p=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",u],["h1",u],["h2",u],["h3",u],["h4",u],["h5",u],["h6",u],["select",c],["input",c],["output",c],["button",c],["datalist",c],["textarea",c],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",d],["dt",d],["address",u],["article",u],["aside",u],["blockquote",u],["details",u],["div",u],["dl",u],["fieldset",u],["figcaption",u],["figure",u],["footer",u],["form",u],["header",u],["hr",u],["main",u],["nav",u],["ol",u],["pre",u],["section",u],["table",u],["ul",u],["rt",h],["rp",h],["tbody",l],["tfoot",l]]),f=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),y=new Set(["math","svg"]),g=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),m=/\s|\//,b=function(){function e(e,t){var r,n,i,a,s;void 0===t&&(t={}),this.options=t,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=null!=e?e:{},this.htmlMode=!this.options.xmlMode,this.lowerCaseTagNames=null!==(r=t.lowerCaseTags)&&void 0!==r?r:this.htmlMode,this.lowerCaseAttributeNames=null!==(n=t.lowerCaseAttributeNames)&&void 0!==n?n:this.htmlMode,this.tokenizer=new(null!==(i=t.Tokenizer)&&void 0!==i?i:o.default)(this.options,this),this.foreignContext=[!this.htmlMode],null===(s=(a=this.cbs).onparserinit)||void 0===s||s.call(a,this)}return e.prototype.ontext=function(e,t){var r,n,i=this.getSlice(e,t);this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,i),this.startIndex=t},e.prototype.ontextentity=function(e,t){var r,n;this.endIndex=t-1,null===(n=(r=this.cbs).ontext)||void 0===n||n.call(r,(0,s.fromCodePoint)(e)),this.startIndex=t},e.prototype.isVoidElement=function(e){return this.htmlMode&&f.has(e)},e.prototype.onopentagname=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);this.lowerCaseTagNames&&(r=r.toLowerCase()),this.emitOpenTag(r)},e.prototype.emitOpenTag=function(e){var t,r,n,i;this.openTagStart=this.startIndex,this.tagname=e;var a=this.htmlMode&&p.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[0]);){var o=this.stack.shift();null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,o,!0)}this.isVoidElement(e)||(this.stack.unshift(e),this.htmlMode&&(y.has(e)?this.foreignContext.unshift(!0):g.has(e)&&this.foreignContext.unshift(!1))),null===(i=(n=this.cbs).onopentagname)||void 0===i||i.call(n,e),this.cbs.onopentag&&(this.attribs={})},e.prototype.endOpenTag=function(e){var t,r;this.startIndex=this.openTagStart,this.attribs&&(null===(r=(t=this.cbs).onopentag)||void 0===r||r.call(t,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""},e.prototype.onopentagend=function(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1},e.prototype.onclosetag=function(e,t){var r,n,i,a,o,s,c,u;this.endIndex=t;var l=this.getSlice(e,t);if(this.lowerCaseTagNames&&(l=l.toLowerCase()),this.htmlMode&&(y.has(l)||g.has(l))&&this.foreignContext.shift(),this.isVoidElement(l))this.htmlMode&&"br"===l&&(null===(a=(i=this.cbs).onopentagname)||void 0===a||a.call(i,"br"),null===(s=(o=this.cbs).onopentag)||void 0===s||s.call(o,"br",{},!0),null===(u=(c=this.cbs).onclosetag)||void 0===u||u.call(c,"br",!1));else{var d=this.stack.indexOf(l);if(-1!==d)for(var h=0;h<=d;h++){var p=this.stack.shift();null===(n=(r=this.cbs).onclosetag)||void 0===n||n.call(r,p,h!==d)}else this.htmlMode&&"p"===l&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=t+1},e.prototype.onselfclosingtag=function(e){this.endIndex=e,this.options.recognizeSelfClosing||this.foreignContext[0]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)},e.prototype.closeCurrentTag=function(e){var t,r,n=this.tagname;this.endOpenTag(e),this.stack[0]===n&&(null===(r=(t=this.cbs).onclosetag)||void 0===r||r.call(t,n,!e),this.stack.shift())},e.prototype.onattribname=function(e,t){this.startIndex=e;var r=this.getSlice(e,t);this.attribname=this.lowerCaseAttributeNames?r.toLowerCase():r},e.prototype.onattribdata=function(e,t){this.attribvalue+=this.getSlice(e,t)},e.prototype.onattribentity=function(e){this.attribvalue+=(0,s.fromCodePoint)(e)},e.prototype.onattribend=function(e,t){var r,n;this.endIndex=t,null===(n=(r=this.cbs).onattribute)||void 0===n||n.call(r,this.attribname,this.attribvalue,e===o.QuoteType.Double?'"':e===o.QuoteType.Single?"'":e===o.QuoteType.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""},e.prototype.getInstructionName=function(e){var t=e.search(m),r=t<0?e:e.substr(0,t);return this.lowerCaseTagNames&&(r=r.toLowerCase()),r},e.prototype.ondeclaration=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("!".concat(n),"!".concat(r))}this.startIndex=t+1},e.prototype.onprocessinginstruction=function(e,t){this.endIndex=t;var r=this.getSlice(e,t);if(this.cbs.onprocessinginstruction){var n=this.getInstructionName(r);this.cbs.onprocessinginstruction("?".concat(n),"?".concat(r))}this.startIndex=t+1},e.prototype.oncomment=function(e,t,r){var n,i,a,o;this.endIndex=t,null===(i=(n=this.cbs).oncomment)||void 0===i||i.call(n,this.getSlice(e,t-r)),null===(o=(a=this.cbs).oncommentend)||void 0===o||o.call(a),this.startIndex=t+1},e.prototype.oncdata=function(e,t,r){var n,i,a,o,s,c,u,l,d,h;this.endIndex=t;var p=this.getSlice(e,t-r);!this.htmlMode||this.options.recognizeCDATA?(null===(i=(n=this.cbs).oncdatastart)||void 0===i||i.call(n),null===(o=(a=this.cbs).ontext)||void 0===o||o.call(a,p),null===(c=(s=this.cbs).oncdataend)||void 0===c||c.call(s)):(null===(l=(u=this.cbs).oncomment)||void 0===l||l.call(u,"[CDATA[".concat(p,"]]")),null===(h=(d=this.cbs).oncommentend)||void 0===h||h.call(d)),this.startIndex=t+1},e.prototype.onend=function(){var e,t;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(var r=0;r=this.buffers[0].length;)this.shiftBuffer();for(var r=this.buffers[0].slice(e-this.bufferOffset,t-this.bufferOffset);t-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),r+=this.buffers[0].slice(0,t-this.bufferOffset);return r},e.prototype.shiftBuffer=function(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()},e.prototype.write=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".write() after done!")):(this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++))},e.prototype.end=function(e){var t,r;this.ended?null===(r=(t=this.cbs).onerror)||void 0===r||r.call(t,new Error(".end() after done!")):(e&&this.write(e),this.ended=!0,this.tokenizer.end())},e.prototype.pause=function(){this.tokenizer.pause()},e.prototype.resume=function(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndex{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.QuoteType=void 0;var n,i,a,o=r(73094);function s(e){return e===n.Space||e===n.NewLine||e===n.Tab||e===n.FormFeed||e===n.CarriageReturn}function c(e){return e===n.Slash||e===n.Gt||s(e)}!function(e){e[e.Tab=9]="Tab",e[e.NewLine=10]="NewLine",e[e.FormFeed=12]="FormFeed",e[e.CarriageReturn=13]="CarriageReturn",e[e.Space=32]="Space",e[e.ExclamationMark=33]="ExclamationMark",e[e.Number=35]="Number",e[e.Amp=38]="Amp",e[e.SingleQuote=39]="SingleQuote",e[e.DoubleQuote=34]="DoubleQuote",e[e.Dash=45]="Dash",e[e.Slash=47]="Slash",e[e.Zero=48]="Zero",e[e.Nine=57]="Nine",e[e.Semi=59]="Semi",e[e.Lt=60]="Lt",e[e.Eq=61]="Eq",e[e.Gt=62]="Gt",e[e.Questionmark=63]="Questionmark",e[e.UpperA=65]="UpperA",e[e.LowerA=97]="LowerA",e[e.UpperF=70]="UpperF",e[e.LowerF=102]="LowerF",e[e.UpperZ=90]="UpperZ",e[e.LowerZ=122]="LowerZ",e[e.LowerX=120]="LowerX",e[e.OpeningSquareBracket=91]="OpeningSquareBracket"}(n||(n={})),function(e){e[e.Text=1]="Text",e[e.BeforeTagName=2]="BeforeTagName",e[e.InTagName=3]="InTagName",e[e.InSelfClosingTag=4]="InSelfClosingTag",e[e.BeforeClosingTagName=5]="BeforeClosingTagName",e[e.InClosingTagName=6]="InClosingTagName",e[e.AfterClosingTagName=7]="AfterClosingTagName",e[e.BeforeAttributeName=8]="BeforeAttributeName",e[e.InAttributeName=9]="InAttributeName",e[e.AfterAttributeName=10]="AfterAttributeName",e[e.BeforeAttributeValue=11]="BeforeAttributeValue",e[e.InAttributeValueDq=12]="InAttributeValueDq",e[e.InAttributeValueSq=13]="InAttributeValueSq",e[e.InAttributeValueNq=14]="InAttributeValueNq",e[e.BeforeDeclaration=15]="BeforeDeclaration",e[e.InDeclaration=16]="InDeclaration",e[e.InProcessingInstruction=17]="InProcessingInstruction",e[e.BeforeComment=18]="BeforeComment",e[e.CDATASequence=19]="CDATASequence",e[e.InSpecialComment=20]="InSpecialComment",e[e.InCommentLike=21]="InCommentLike",e[e.BeforeSpecialS=22]="BeforeSpecialS",e[e.SpecialStartSequence=23]="SpecialStartSequence",e[e.InSpecialTag=24]="InSpecialTag",e[e.InEntity=25]="InEntity"}(i||(i={})),function(e){e[e.NoValue=0]="NoValue",e[e.Unquoted=1]="Unquoted",e[e.Single=2]="Single",e[e.Double=3]="Double"}(a=t.QuoteType||(t.QuoteType={}));var u={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},l=function(){function e(e,t){var r=e.xmlMode,n=void 0!==r&&r,a=e.decodeEntities,s=void 0===a||a,c=this;this.cbs=t,this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.entityStart=0,this.baseState=i.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.xmlMode=n,this.decodeEntities=s,this.entityDecoder=new o.EntityDecoder(n?o.xmlDecodeTree:o.htmlDecodeTree,(function(e,t){return c.emitCodePoint(e,t)}))}return e.prototype.reset=function(){this.state=i.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=i.Text,this.currentSequence=void 0,this.running=!0,this.offset=0},e.prototype.write=function(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()},e.prototype.end=function(){this.running&&this.finish()},e.prototype.pause=function(){this.running=!1},e.prototype.resume=function(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=i.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateSpecialStartSequence=function(e){var t=this.sequenceIndex===this.currentSequence.length;if(t?c(e):(32|e)===this.currentSequence[this.sequenceIndex]){if(!t)return void this.sequenceIndex++}else this.isSpecial=!1;this.sequenceIndex=0,this.state=i.InTagName,this.stateInTagName(e)},e.prototype.stateInSpecialTag=function(e){if(this.sequenceIndex===this.currentSequence.length){if(e===n.Gt||s(e)){var t=this.index-this.currentSequence.length;if(this.sectionStart=n.LowerA&&e<=n.LowerZ||e>=n.UpperA&&e<=n.UpperZ}(e)},e.prototype.startSpecial=function(e,t){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=t,this.state=i.SpecialStartSequence},e.prototype.stateBeforeTagName=function(e){if(e===n.ExclamationMark)this.state=i.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===n.Questionmark)this.state=i.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){var t=32|e;this.sectionStart=this.index,this.xmlMode||t!==u.TitleEnd[2]?this.state=this.xmlMode||t!==u.ScriptEnd[2]?i.InTagName:i.BeforeSpecialS:this.startSpecial(u.TitleEnd,3)}else e===n.Slash?this.state=i.BeforeClosingTagName:(this.state=i.Text,this.stateText(e))},e.prototype.stateInTagName=function(e){c(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateBeforeClosingTagName=function(e){s(e)||(e===n.Gt?this.state=i.Text:(this.state=this.isTagStartChar(e)?i.InClosingTagName:i.InSpecialComment,this.sectionStart=this.index))},e.prototype.stateInClosingTagName=function(e){(e===n.Gt||s(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterClosingTagName,this.stateAfterClosingTagName(e))},e.prototype.stateAfterClosingTagName=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeAttributeName=function(e){e===n.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=i.InSpecialTag,this.sequenceIndex=0):this.state=i.Text,this.sectionStart=this.index+1):e===n.Slash?this.state=i.InSelfClosingTag:s(e)||(this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateInSelfClosingTag=function(e){e===n.Gt?(this.cbs.onselfclosingtag(this.index),this.state=i.Text,this.sectionStart=this.index+1,this.isSpecial=!1):s(e)||(this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e))},e.prototype.stateInAttributeName=function(e){(e===n.Eq||c(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=i.AfterAttributeName,this.stateAfterAttributeName(e))},e.prototype.stateAfterAttributeName=function(e){e===n.Eq?this.state=i.BeforeAttributeValue:e===n.Slash||e===n.Gt?(this.cbs.onattribend(a.NoValue,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):s(e)||(this.cbs.onattribend(a.NoValue,this.index),this.state=i.InAttributeName,this.sectionStart=this.index)},e.prototype.stateBeforeAttributeValue=function(e){e===n.DoubleQuote?(this.state=i.InAttributeValueDq,this.sectionStart=this.index+1):e===n.SingleQuote?(this.state=i.InAttributeValueSq,this.sectionStart=this.index+1):s(e)||(this.sectionStart=this.index,this.state=i.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))},e.prototype.handleInAttributeValue=function(e,t){e===t||!this.decodeEntities&&this.fastForwardTo(t)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(t===n.DoubleQuote?a.Double:a.Single,this.index),this.state=i.BeforeAttributeName):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateInAttributeValueDoubleQuotes=function(e){this.handleInAttributeValue(e,n.DoubleQuote)},e.prototype.stateInAttributeValueSingleQuotes=function(e){this.handleInAttributeValue(e,n.SingleQuote)},e.prototype.stateInAttributeValueNoQuotes=function(e){s(e)||e===n.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(a.Unquoted,this.index),this.state=i.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===n.Amp&&this.startEntity()},e.prototype.stateBeforeDeclaration=function(e){e===n.OpeningSquareBracket?(this.state=i.CDATASequence,this.sequenceIndex=0):this.state=e===n.Dash?i.BeforeComment:i.InDeclaration},e.prototype.stateInDeclaration=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateInProcessingInstruction=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeComment=function(e){e===n.Dash?(this.state=i.InCommentLike,this.currentSequence=u.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=i.InDeclaration},e.prototype.stateInSpecialComment=function(e){(e===n.Gt||this.fastForwardTo(n.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=i.Text,this.sectionStart=this.index+1)},e.prototype.stateBeforeSpecialS=function(e){var t=32|e;t===u.ScriptEnd[3]?this.startSpecial(u.ScriptEnd,4):t===u.StyleEnd[3]?this.startSpecial(u.StyleEnd,4):(this.state=i.InTagName,this.stateInTagName(e))},e.prototype.startEntity=function(){this.baseState=this.state,this.state=i.InEntity,this.entityStart=this.index,this.entityDecoder.startEntity(this.xmlMode?o.DecodingMode.Strict:this.baseState===i.Text||this.baseState===i.InSpecialTag?o.DecodingMode.Legacy:o.DecodingMode.Attribute)},e.prototype.stateInEntity=function(){var e=this.entityDecoder.write(this.buffer,this.index-this.offset);e>=0?(this.state=this.baseState,0===e&&(this.index=this.entityStart)):this.index=this.offset+this.buffer.length-1},e.prototype.cleanup=function(){this.running&&this.sectionStart!==this.index&&(this.state===i.Text||this.state===i.InSpecialTag&&0===this.sequenceIndex?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):this.state!==i.InAttributeValueDq&&this.state!==i.InAttributeValueSq&&this.state!==i.InAttributeValueNq||(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))},e.prototype.shouldContinue=function(){return this.index=e||(this.state===i.InCommentLike?this.currentSequence===u.CdataEnd?this.cbs.oncdata(this.sectionStart,e,0):this.cbs.oncomment(this.sectionStart,e,0):this.state===i.InTagName||this.state===i.BeforeAttributeName||this.state===i.BeforeAttributeValue||this.state===i.AfterAttributeName||this.state===i.InAttributeName||this.state===i.InAttributeValueSq||this.state===i.InAttributeValueDq||this.state===i.InAttributeValueNq||this.state===i.InClosingTagName||this.cbs.ontext(this.sectionStart,e))},e.prototype.emitCodePoint=function(e,t){this.baseState!==i.Text&&this.baseState!==i.InSpecialTag?(this.sectionStart{},72056:()=>{},89227:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isIterator=t.isIterable=t.isSourceExpression=t.isPromise=t.isEventEmitter=t.isFunction=t.range=t.union=t.fromIterable=t.fromIterator=t.fromArray=t.single=t.empty=t.wrap=t.WrappingIterator=t.ClonedIterator=t.UnionIterator=t.MultiTransformIterator=t.SimpleTransformIterator=t.TransformIterator=t.BufferedIterator=t.MappingIterator=t.DESTINATION=t.identity=t.IntegerIterator=t.ArrayIterator=t.SingletonIterator=t.EmptyIterator=t.AsyncIterator=t.DESTROYED=t.ENDED=t.CLOSED=t.CLOSING=t.OPEN=t.INIT=t.setTaskScheduler=t.getTaskScheduler=t.scheduleTask=t.LinkedList=void 0;const n=r(22699),i=r(16821);Object.defineProperty(t,"LinkedList",{enumerable:!0,get:function(){return i.LinkedList}});let a=r(13805).createTaskScheduler();t.scheduleTask=function(e){a(e)},t.getTaskScheduler=function(){return a},t.setTaskScheduler=function(e){a=e},t.INIT=1,t.OPEN=2,t.CLOSING=4,t.CLOSED=8,t.ENDED=16,t.DESTROYED=32;class o extends n.EventEmitter{constructor(e=t.OPEN){super(),this._readable=!1,this._state=e,this.on("newListener",s)}_changeState(e,r=!1){const n=e>this._state&&this._statethis.emit("end"))):this.emit("end"))),n}read(){return null}forEach(e,t){this.on("data",j(e,t))}close(){this._changeState(t.CLOSED)&&this._endAsync()}destroy(e){this.done||this._destroy(e,(t=>{(e=e||t)&&this.emit("error",e),this._end(!0)}))}_destroy(e,t){t()}_end(e=!1){this._changeState(e?t.DESTROYED:t.ENDED)&&(this._readable=!1,this.removeAllListeners("readable"),this.removeAllListeners("data"),this.removeAllListeners("end"))}_endAsync(){a((()=>this._end()))}get readable(){return this._readable}set readable(e){e=Boolean(e)&&!this.done,this._readable!==e&&(this._readable=e,e&&a((()=>this.emit("readable"))))}get closed(){return this._state>=t.CLOSING}get ended(){return this._state===t.ENDED}get destroyed(){return this._state===t.DESTROYED}get done(){return this._state>=t.ENDED}toString(){const e=this._toStringDetails();return`[${this.constructor.name}${e?` ${e}`:""}]`}_toStringDetails(){return""}toArray(e){const t=[],r="number"==typeof(null==e?void 0:e.limit)?e.limit:1/0;return this.ended||r<=0?Promise.resolve(t):new Promise(((e,n)=>{const i=()=>e(t),a=o=>{t.push(o),t.length>=r&&(this.removeListener("error",n),this.removeListener("data",a),this.removeListener("end",i),e(t))};this.on("error",n),this.on("data",a),this.on("end",i)}))}getProperty(e,t){const r=this._properties;if(!t)return r&&r[e];if(r&&e in r)a((()=>t(r[e])));else{let r;(r=this._propertyCallbacks)||(this._propertyCallbacks=r=Object.create(null)),e in r?r[e].push(t):r[e]=[t]}}setProperty(e,t){(this._properties||(this._properties=Object.create(null)))[e]=t;const r=this._propertyCallbacks||{},n=r[e];if(n){for(e in delete r[e],a((()=>{for(const e of n)e(t)})),r)return;delete this._propertyCallbacks}}getProperties(){const e=this._properties,t={};for(const r in e)t[r]=e[r];return t}setProperties(e){for(const t in e)this.setProperty(t,e[t])}copyProperties(e,t){for(const r of t)e.getProperty(r,(e=>this.setProperty(r,e)))}transform(e){return new O(this,e)}map(e,t){return new y(this,j(e,t))}filter(e,t){return this.map((function(r){return e.call(t||this,r)?r:null}))}uniq(e=f){const t=new Set;return this.filter((function(r){const n=e.call(this,r);return!t.has(n)&&(t.add(n),!0)}))}prepend(e){return this.transform({prepend:e})}append(e){return this.transform({append:e})}surround(e,t){return this.transform({prepend:e,append:t})}skip(e){return this.map((t=>e-- >0?null:t))}take(e){return this.transform({limit:e})}range(e,t){return this.transform({offset:e,limit:Math.max(t-e+1,0)})}clone(){return new A(this)}}function s(e){"data"===e&&(this.removeListener("newListener",s),u(this,"readable",c),this.readable&&a((()=>c.call(this))))}function c(){let e;for(;0!==this.listenerCount("data")&&null!==(e=this.read());)this.emit("data",e);0!==this.listenerCount("data")||this.done||(this.removeListener("readable",c),u(this,"newListener",s))}function u(e,t,r){e.listeners(t).includes(r)||e.on(t,r)}t.AsyncIterator=o;class l extends o{constructor(){super(),this._changeState(t.ENDED,!0)}}t.EmptyIterator=l;class d extends o{constructor(e){super(),this._item=e,null===e?this.close():this.readable=!0}read(){const e=this._item;return this._item=null,this.close(),e}_toStringDetails(){return null===this._item?"":`(${this._item})`}}t.SingletonIterator=d;class h extends o{constructor(e=[],{autoStart:t=!0,preserve:r=!0}={}){super();const n=r||!Array.isArray(e)?[...e]:e;this._index=0,this._sourceStarted=!1!==t,this._truncateThreshold=r?-1:64,this._sourceStarted&&0===n.length?this.close():this._buffer=n,this.readable=!0}read(){this._sourceStarted||(this._sourceStarted=!0);let e=null;return this._buffer&&(this._index=t&&this.close(),Promise.resolve(i)}}t.ArrayIterator=h;class p extends o{constructor({start:e=0,step:t=1,end:r}={}){super(),Number.isFinite(e)&&(e=Math.trunc(e)),this._next=e,Number.isFinite(t)&&(t=Math.trunc(t)),this._step=t;const n=t>=0,i=n?1/0:-1/0;Number.isFinite(r)?r=Math.trunc(r):r!==-i&&(r=i),this._last=r,!Number.isFinite(e)||(n?e>r:e=0?n>r:nthis._init(r))),this._sourceStarted=!1!==r}get maxBufferSize(){return this._maxBufferSize}set maxBufferSize(e){e!==1/0&&(e=Number.isFinite(e)?Math.max(Math.trunc(e),1):4),this._maxBufferSize!==e&&(this._maxBufferSize=e,this._state===t.OPEN&&this._fillBuffer())}_init(e){let r=!1;this._reading=!0,this._begin((()=>{if(r)throw new Error("done callback called multiple times");r=!0,this._reading=!1,this._changeState(t.OPEN),e?this._fillBufferAsync():this.readable=!0}))}_begin(e){e()}read(){if(this.done)return null;this._sourceStarted||(this._sourceStarted=!0);const e=this._buffer;let t;return e.empty?(t=null,this.readable=!1):t=e.shift(),!this._reading&&e.length0&&(this._pushedCount=0,this._reading=!0,this._read(e,(()=>{if(!e)throw new Error("done callback called multiple times");e=0,this._reading=!1,this.closed?this._completeClose():this._pushedCount&&(this.readable=!0,this._buffer.length{this._reading=!1,this._fillBuffer()})))}close(){this._reading?this._changeState(t.CLOSING):this._completeClose()}_completeClose(){this._changeState(t.CLOSED)&&(this._reading=!0,this._flush((()=>{if(!this._reading)throw new Error("done callback called multiple times");this._reading=!1,this._buffer.empty&&this._endAsync()})))}_destroy(e,t){this._buffer.clear(),t()}_flush(e){e()}_toStringDetails(){const e=this._buffer;return`{${e.empty?"":`next: ${e.first}, `}buffer: ${e.length}}`}}t.BufferedIterator=m;class b extends m{constructor(e,t=e||{}){super(t),this._boundPush=e=>this._push(e),k(e)||(e=t.source),M(e)?this.source=e:e&&(this._createSource=L(e)?()=>e:e,this._sourceStarted&&this._loadSourceAsync()),this._optional=Boolean(t.optional),this._destroySource=!1!==t.destroySource}get source(){return C(this._createSource)&&this._loadSourceAsync(),this._source}set source(e){const r=this._source=this._validateSource(e);r[t.DESTINATION]=this,this.done?this._destroySource&&r.destroy():r.done?this.close():(r.on("end",T),r.on("readable",S),r.on("error",_))}_loadSourceAsync(){C(this._createSource)&&(Promise.resolve(this._createSource()).then((e=>{delete this._createSource,this.source=e,this._fillBuffer()}),(e=>this.emit("error",e))),this._createSource=null)}_validateSource(e,t=!1){if(this._source||void 0!==this._createSource)throw new Error("The source cannot be changed after it has been set");return g(e,t)}_read(e,t){const r=()=>{this._pushedCountthis._readAndTransform(r,t))):t()};this._readAndTransform(r,t)}_readAndTransform(e,t){let r;const n=this.source;!n||n.done||null===(r=n.read())?t():this._optional?this._optionalTransform(r,e):this._transform(r,e,this._boundPush)}_optionalTransform(e,t){const r=this._pushedCount;this._transform(e,(()=>{r===this._pushedCount&&this._push(e),t()}),this._boundPush)}_transform(e,t,r){r(e),t()}_closeWhenDone(){this.close()}_end(e){const r=this._source;r&&(r.removeListener("end",T),r.removeListener("error",_),r.removeListener("readable",S),delete r[t.DESTINATION],this._destroySource&&r.destroy()),super._end(e)}}function v(){this[t.DESTINATION].readable=!0}function _(e){this[t.DESTINATION].emit("error",e)}function w(){this[t.DESTINATION].close()}function T(){this[t.DESTINATION]._closeWhenDone()}function S(){!1!==this[t.DESTINATION]._sourceStarted&&this[t.DESTINATION]._fillBuffer()}t.TransformIterator=b;class O extends b{constructor(e,t){if(super(e,t),this._offset=0,this._limit=1/0,this._filter=e=>!0,t=t||(k(e)?null:e)){const e=C(t)?t:t.transform,{limit:r,offset:n,filter:i,map:a,prepend:o,append:s}=t;n===1/0||r===-1/0?this._limit=0:(Number.isFinite(n)&&(this._offset=Math.max(Math.trunc(n),0)),Number.isFinite(r)&&(this._limit=Math.max(Math.trunc(r),0)),C(i)&&(this._filter=i),C(a)&&(this._map=a),this._transform=C(e)?e:null),o&&(this._prepender=M(o)?o:N(o)),s&&(this._appender=M(s)?s:N(s))}}_read(e,t){const r=()=>this._readAndTransformSimple(e,n,t);function n(){a(r)}this._readAndTransformSimple(e,n,t)}_readAndTransformSimple(e,t,r){let n;const{source:i}=this;if(i&&!i.done){for(0===this._limit&&this.close();!this.closed&&this._pushedCountthis._push(e);!e||e.done?t():(e.on("data",r),e.on("end",(function n(){e.removeListener("data",r),e.removeListener("end",n),t()})))}}t.SimpleTransformIterator=O,t.MultiTransformIterator=class extends b{constructor(e,t){if(super(e,t),this._transformerQueue=[],t){const e=C(t)?t:t.multiTransform;e&&(this._createTransformer=e)}}_read(e,r){const n=this._transformerQueue,i=this._optional;let a,o;for(;(a=n[0])&&a.transformer.done;){i&&null!==a.item&&(e--,this._push(a.item)),n.shift();const{transformer:t}=a;t.removeListener("end",S),t.removeListener("readable",S),t.removeListener("error",_)}const{source:s}=this;for(;s&&!s.done&&n.length0&&null!==(o=t.read());)this._push(o),i&&(a.item=null)}else s&&s.done&&this.close();r()}_createTransformer(e){return new d(e)}_closeWhenDone(){this._transformerQueue.length||this.close()}_end(e){if(super._end(e),this._destroySource)for(const e of this._transformerQueue)e.transformer.destroy()}};class E extends m{constructor(e,t={}){super(t),this._sources=[],this._currentSource=-1;const r=!1!==t.autoStart;if(M(e))e.on("error",(e=>this.emit("error",e))),this._pending={loading:!1,sources:e},r&&this._loadSources();else if(Array.isArray(e)&&e.length>0)for(const t of e)this._addSource(t);else r&&this.close();this._destroySources=!1!==t.destroySources}_loadSources(){const e=this._pending.sources;this._pending.loading=!0,e.done?(delete this._pending,this.close()):(e.on("data",(e=>{this._addSource(e),this._fillBufferAsync()})),e.on("end",(()=>{delete this._pending,this._fillBuffer()})))}_addSource(e){L(e)&&(e=P(e)),e.done||(this._sources.push(e),e[t.DESTINATION]=this,e.on("error",_),e.on("readable",S),e.on("end",x))}_removeEmptySources(){this._sources=this._sources.filter(((e,t)=>(e.done&&t<=this._currentSource&&this._currentSource--,!e.done))),this._fillBuffer()}_read(e,t){var r;!1===(null===(r=this._pending)||void 0===r?void 0:r.loading)&&this._loadSources();let n,i=0;for(;i!==(i=e);)for(let t=0;t0;t++)this._currentSource=(this._currentSource+1)%this._sources.length,null!==(n=this._sources[this._currentSource].read())&&(e--,this._push(n));this._pending||0!==this._sources.length||this.close(),t()}_end(e=!1){if(super._end(e),this._destroySources){for(const e of this._sources)e.destroy();this._pending&&(this._pending.sources.destroy(),delete this._pending)}}}function x(){this[t.DESTINATION]._removeEmptySources()}t.UnionIterator=E;class A extends b{constructor(e){super(e,{autoStart:!1}),this._readPosition=0,this._reading=!1,e&&(this.readable=!0)}_init(){}close(){o.prototype.close.call(this)}get source(){return super.source}set source(e){const r=this._source=this._validateSource(e),n=r&&r[t.DESTINATION]||(r[t.DESTINATION]=new R(r));this.done?this._destroySource&&r.destroy():n.endsAt(0)?this.close():(n.register(this),!1!==r._sourceStarted&&null===n.readAt(0)||(this.readable=!0));const i=this._propertyCallbacks;for(const e in i){const t=i[e];for(const r of t)this._getSourceProperty(e,r)}}_validateSource(e,r=!1){const n=e&&e[t.DESTINATION];return super._validateSource(e,!n||n instanceof R)}getProperty(e,t){const{source:r}=this,n=this._properties,i=n&&e in n;if(!t)return i?n&&n[e]:r&&r.getProperty(e);super.getProperty(e,t),r&&!i&&this._getSourceProperty(e,t)}_getSourceProperty(e,t){this.source.getProperty(e,(r=>{this._properties&&e in this._properties||t(r)}))}getProperties(){const e=this.source?this.source.getProperties():{},t=this._properties;for(const r in t)e[r]=t[r];return e}_toStringDetails(){return`{source: ${this.source?this.source.toString():"none"}}`}read(){this._sourceStarted||(this._sourceStarted=!0);const e=this.source;let r=null;if(!this.done&&e){const n=e[t.DESTINATION];null!==(r=n.readAt(this._readPosition))?this._readPosition++:this.readable=!1,n.endsAt(this._readPosition)&&this.close()}return r}_end(e){const r=this.source,n=null==r?void 0:r[t.DESTINATION];n&&n.unregister(this),m.prototype._end.call(this,e)}}t.ClonedIterator=A;class R{constructor(e){if(this._history=[],this._trackers=new Set,this._source=e,!e.done){const t=()=>{for(const e of this._trackers)e.readable=!0},r=e=>{for(const t of this._trackers)t.emit("error",e)},n=()=>{for(const e of this._trackers)!1!==e._sourceStarted&&e._readPosition===this._history.length&&e.close();this._trackers.clear(),e.removeListener("end",n),e.removeListener("error",r),e.removeListener("readable",t)};e.on("end",n),e.on("error",r),e.on("readable",t)}}register(e){this._source.done||this._trackers.add(e)}unregister(e){this._trackers.delete(e)}readAt(e){let t=null;return e{this._source=null,this.source=e})).catch((e=>this.emit("error",e)))):e&&(this.source=e)}set source(e){let r=e;if(null!==this._source)throw new Error("The source cannot be changed after it has been set");if(F(r)&&(r=r[Symbol.iterator]()),B(r)){let e=r;r=new n.EventEmitter,r.read=()=>{if(null!==e){let t;for(;!(t=e.next()).done;)if(null!==t.value)return t.value;e=null,this.close()}return null}}else r=g(r);this.done?this._destroySource&&C(r.destroy)&&r.destroy():(r[t.DESTINATION]=this,r.on("end",w),r.on("error",_),r.on("readable",v),this._source=r,this.readable=!1!==r.readable)}read(){if(null!==this._source&&!1!==this._source.readable){const e=this._source.read();if(null!==e)return e;this.readable=!1}return null}_end(e=!1){null!==this._source&&(this._source.removeListener("end",w),this._source.removeListener("error",_),this._source.removeListener("readable",v),delete this._source[t.DESTINATION],this._destroySource&&C(this._source.destroy)&&this._source.destroy(),this._source=null),super._end(e)}}function P(e,t){if(t&&("autoStart"in t||"optional"in t||"source"in t||"maxBufferSize"in t))return e&&!M(e)&&(e=new I(e)),new b(e,t);if(!e)return D();if(L(e))return new I(e,t);if(e instanceof o)return e;if(Array.isArray(e))return N(e);if(F(e)||B(e)||M(e))return new I(e,t);throw new TypeError(`Invalid source: ${e}`)}function D(){return new l}function N(e){return new h(e)}function j(e,t){return t?e.bind(t):e}function C(e){return"function"==typeof e}function M(e){return C(null==e?void 0:e.on)}function L(e){return C(null==e?void 0:e.then)}function k(e){return e&&(M(e)||L(e)||C(e))}function F(e){return e&&Symbol.iterator in e}function B(e){return C(null==e?void 0:e.next)}t.WrappingIterator=I,t.wrap=P,t.empty=D,t.single=function(e){return new d(e)},t.fromArray=N,t.fromIterator=function(e){return new I(e)},t.fromIterable=function(e){return new I(e)},t.union=function(e){return new E(e)},t.range=function(e,t,r){return new p({start:e,end:t,step:r})},t.isFunction=C,t.isEventEmitter=M,t.isPromise=L,t.isSourceExpression=k,t.isIterable=F,t.isIterator=B},16821:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedList=void 0,t.LinkedList=class{constructor(){this._length=0,this._head=null,this._tail=null}get length(){return this._length}get first(){var e;return null===(e=this._head)||void 0===e?void 0:e.value}get last(){var e;return null===(e=this._tail)||void 0===e?void 0:e.value}get empty(){return null===this._head}push(e){const t={value:e,next:null};null===this._tail?this._head=this._tail=t:this._tail.next=this._tail=t,this._length++}shift(){if(null===this._head)return;const{value:e,next:t}=this._head;return this._head=t,null===t&&(this._tail=null),this._length--,e}clear(){this._length=0,this._head=this._tail=null}}},13805:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createTaskScheduler=void 0;const r=Promise.resolve(void 0);t.createTaskScheduler=function(){const e="function"==typeof queueMicrotask?queueMicrotask:e=>r.then(e),t="function"==typeof setImmediate?setImmediate:e=>setTimeout(e,0);let n=0,i=null;return r=>{null!==i?i.push(r):++n<100?e(r):(i=[r],t((()=>{for(const t of i)e(t);i=null,n=0})))}}},70463:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LRUCache=void 0;const r="object"==typeof performance&&performance&&"function"==typeof performance.now?performance:Date,n=new Set,i="object"==typeof process&&process?process:{},a=(e,t,r,n)=>{"function"==typeof i.emitWarning?i.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)};let o=globalThis.AbortController,s=globalThis.AbortSignal;if(void 0===o){s=class{onabort;_onabort=[];reason;aborted=!1;addEventListener(e,t){this._onabort.push(t)}},o=class{constructor(){t()}signal=new s;abort(e){if(!this.signal.aborted){this.signal.reason=e,this.signal.aborted=!0;for(const t of this.signal._onabort)t(e);this.signal.onabort?.(e)}}};let e="1"!==i.env?.LRU_CACHE_IGNORE_AC_WARNING;const t=()=>{e&&(e=!1,a("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",t))}}Symbol("type");const c=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e),u=e=>c(e)?e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?l:null:null;class l extends Array{constructor(e){super(e),this.fill(0)}}class d{heap;length;static#e=!1;static create(e){const t=u(e);if(!t)return[];d.#e=!0;const r=new d(e,t);return d.#e=!1,r}constructor(e,t){if(!d.#e)throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new t(e),this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}}class h{#t;#r;#n;#i;#a;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#o;#s;#c;#u;#l;#d;#h;#p;#f;#y;#g;#m;#b;#v;#_;#w;#T;static unsafeExposeInternals(e){return{starts:e.#b,ttls:e.#v,sizes:e.#m,keyMap:e.#c,keyList:e.#u,valList:e.#l,next:e.#d,prev:e.#h,get head(){return e.#p},get tail(){return e.#f},free:e.#y,isBackgroundFetch:t=>e.#S(t),backgroundFetch:(t,r,n,i)=>e.#O(t,r,n,i),moveToTail:t=>e.#E(t),indexes:t=>e.#x(t),rindexes:t=>e.#A(t),isStale:t=>e.#R(t)}}get max(){return this.#t}get maxSize(){return this.#r}get calculatedSize(){return this.#s}get size(){return this.#o}get fetchMethod(){return this.#a}get dispose(){return this.#n}get disposeAfter(){return this.#i}constructor(e){const{max:t=0,ttl:r,ttlResolution:i=1,ttlAutopurge:o,updateAgeOnGet:s,updateAgeOnHas:l,allowStale:p,dispose:f,disposeAfter:y,noDisposeOnSet:g,noUpdateTTL:m,maxSize:b=0,maxEntrySize:v=0,sizeCalculation:_,fetchMethod:w,noDeleteOnFetchRejection:T,noDeleteOnStaleGet:S,allowStaleOnFetchRejection:O,allowStaleOnFetchAbort:E,ignoreFetchAbort:x}=e;if(0!==t&&!c(t))throw new TypeError("max option must be a nonnegative integer");const A=t?u(t):Array;if(!A)throw new Error("invalid max value: "+t);if(this.#t=t,this.#r=b,this.maxEntrySize=v||this.#r,this.sizeCalculation=_,this.sizeCalculation){if(!this.#r&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if("function"!=typeof this.sizeCalculation)throw new TypeError("sizeCalculation set to non-function")}if(void 0!==w&&"function"!=typeof w)throw new TypeError("fetchMethod must be a function if specified");if(this.#a=w,this.#w=!!w,this.#c=new Map,this.#u=new Array(t).fill(void 0),this.#l=new Array(t).fill(void 0),this.#d=new A(t),this.#h=new A(t),this.#p=0,this.#f=0,this.#y=d.create(t),this.#o=0,this.#s=0,"function"==typeof f&&(this.#n=f),"function"==typeof y?(this.#i=y,this.#g=[]):(this.#i=void 0,this.#g=void 0),this.#_=!!this.#n,this.#T=!!this.#i,this.noDisposeOnSet=!!g,this.noUpdateTTL=!!m,this.noDeleteOnFetchRejection=!!T,this.allowStaleOnFetchRejection=!!O,this.allowStaleOnFetchAbort=!!E,this.ignoreFetchAbort=!!x,0!==this.maxEntrySize){if(0!==this.#r&&!c(this.#r))throw new TypeError("maxSize must be a positive integer if specified");if(!c(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");this.#I()}if(this.allowStale=!!p,this.noDeleteOnStaleGet=!!S,this.updateAgeOnGet=!!s,this.updateAgeOnHas=!!l,this.ttlResolution=c(i)||0===i?i:1,this.ttlAutopurge=!!o,this.ttl=r||0,this.ttl){if(!c(this.ttl))throw new TypeError("ttl must be a positive integer if specified");this.#P()}if(0===this.#t&&0===this.ttl&&0===this.#r)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!this.#t&&!this.#r){const e="LRU_CACHE_UNBOUNDED";(e=>!n.has(e))(e)&&(n.add(e),a("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",e,h))}}getRemainingTTL(e){return this.#c.has(e)?1/0:0}#P(){const e=new l(this.#t),t=new l(this.#t);this.#v=e,this.#b=t,this.#D=(n,i,a=r.now())=>{if(t[n]=0!==i?a:0,e[n]=i,0!==i&&this.ttlAutopurge){const e=setTimeout((()=>{this.#R(n)&&this.delete(this.#u[n])}),i+1);e.unref&&e.unref()}},this.#N=n=>{t[n]=0!==e[n]?r.now():0},this.#j=(r,a)=>{if(e[a]){const o=e[a],s=t[a];r.ttl=o,r.start=s,r.now=n||i();const c=r.now-s;r.remainingTTL=o-c}};let n=0;const i=()=>{const e=r.now();if(this.ttlResolution>0){n=e;const t=setTimeout((()=>n=0),this.ttlResolution);t.unref&&t.unref()}return e};this.getRemainingTTL=r=>{const a=this.#c.get(r);if(void 0===a)return 0;const o=e[a],s=t[a];return 0===o||0===s?1/0:o-((n||i())-s)},this.#R=r=>0!==e[r]&&0!==t[r]&&(n||i())-t[r]>e[r]}#N=()=>{};#j=()=>{};#D=()=>{};#R=()=>!1;#I(){const e=new l(this.#t);this.#s=0,this.#m=e,this.#C=t=>{this.#s-=e[t],e[t]=0},this.#M=(e,t,r,n)=>{if(this.#S(t))return 0;if(!c(r)){if(!n)throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");if("function"!=typeof n)throw new TypeError("sizeCalculation must be a function");if(r=n(t,e),!c(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}return r},this.#L=(t,r,n)=>{if(e[t]=r,this.#r){const r=this.#r-e[t];for(;this.#s>r;)this.#k(!0)}this.#s+=e[t],n&&(n.entrySize=r,n.totalCalculatedSize=this.#s)}}#C=e=>{};#L=(e,t,r)=>{};#M=(e,t,r,n)=>{if(r||n)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0};*#x({allowStale:e=this.allowStale}={}){if(this.#o)for(let t=this.#f;this.#F(t)&&(!e&&this.#R(t)||(yield t),t!==this.#p);)t=this.#h[t]}*#A({allowStale:e=this.allowStale}={}){if(this.#o)for(let t=this.#p;this.#F(t)&&(!e&&this.#R(t)||(yield t),t!==this.#f);)t=this.#d[t]}#F(e){return void 0!==e&&this.#c.get(this.#u[e])===e}*entries(){for(const e of this.#x())void 0===this.#l[e]||void 0===this.#u[e]||this.#S(this.#l[e])||(yield[this.#u[e],this.#l[e]])}*rentries(){for(const e of this.#A())void 0===this.#l[e]||void 0===this.#u[e]||this.#S(this.#l[e])||(yield[this.#u[e],this.#l[e]])}*keys(){for(const e of this.#x()){const t=this.#u[e];void 0===t||this.#S(this.#l[e])||(yield t)}}*rkeys(){for(const e of this.#A()){const t=this.#u[e];void 0===t||this.#S(this.#l[e])||(yield t)}}*values(){for(const e of this.#x())void 0===this.#l[e]||this.#S(this.#l[e])||(yield this.#l[e])}*rvalues(){for(const e of this.#A())void 0===this.#l[e]||this.#S(this.#l[e])||(yield this.#l[e])}[Symbol.iterator](){return this.entries()}find(e,t={}){for(const r of this.#x()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;if(void 0!==i&&e(i,this.#u[r],this))return this.get(this.#u[r],t)}}forEach(e,t=this){for(const r of this.#x()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;void 0!==i&&e.call(t,i,this.#u[r],this)}}rforEach(e,t=this){for(const r of this.#A()){const n=this.#l[r],i=this.#S(n)?n.__staleWhileFetching:n;void 0!==i&&e.call(t,i,this.#u[r],this)}}purgeStale(){let e=!1;for(const t of this.#A({allowStale:!0}))this.#R(t)&&(this.delete(this.#u[t]),e=!0);return e}dump(){const e=[];for(const t of this.#x({allowStale:!0})){const n=this.#u[t],i=this.#l[t],a=this.#S(i)?i.__staleWhileFetching:i;if(void 0===a||void 0===n)continue;const o={value:a};if(this.#v&&this.#b){o.ttl=this.#v[t];const e=r.now()-this.#b[t];o.start=Math.floor(Date.now()-e)}this.#m&&(o.size=this.#m[t]),e.unshift([n,o])}return e}load(e){this.clear();for(const[t,n]of e){if(n.start){const e=Date.now()-n.start;n.start=r.now()-e}this.set(t,n.value,n)}}set(e,t,r={}){if(void 0===t)return this.delete(e),this;const{ttl:n=this.ttl,start:i,noDisposeOnSet:a=this.noDisposeOnSet,sizeCalculation:o=this.sizeCalculation,status:s}=r;let{noUpdateTTL:c=this.noUpdateTTL}=r;const u=this.#M(e,t,r.size||0,o);if(this.maxEntrySize&&u>this.maxEntrySize)return s&&(s.set="miss",s.maxEntrySizeExceeded=!0),this.delete(e),this;let l=0===this.#o?void 0:this.#c.get(e);if(void 0===l)l=0===this.#o?this.#f:0!==this.#y.length?this.#y.pop():this.#o===this.#t?this.#k(!1):this.#o,this.#u[l]=e,this.#l[l]=t,this.#c.set(e,l),this.#d[this.#f]=l,this.#h[l]=this.#f,this.#f=l,this.#o++,this.#L(l,u,s),s&&(s.set="add"),c=!1;else{this.#E(l);const r=this.#l[l];if(t!==r){if(this.#w&&this.#S(r)){r.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:t}=r;void 0===t||a||(this.#_&&this.#n?.(t,e,"set"),this.#T&&this.#g?.push([t,e,"set"]))}else a||(this.#_&&this.#n?.(r,e,"set"),this.#T&&this.#g?.push([r,e,"set"]));if(this.#C(l),this.#L(l,u,s),this.#l[l]=t,s){s.set="replace";const e=r&&this.#S(r)?r.__staleWhileFetching:r;void 0!==e&&(s.oldValue=e)}}else s&&(s.set="update")}if(0===n||this.#v||this.#P(),this.#v&&(c||this.#D(l,n,i),s&&this.#j(s,l)),!a&&this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}return this}pop(){try{for(;this.#o;){const e=this.#l[this.#p];if(this.#k(!0),this.#S(e)){if(e.__staleWhileFetching)return e.__staleWhileFetching}else if(void 0!==e)return e}}finally{if(this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}}}#k(e){const t=this.#p,r=this.#u[t],n=this.#l[t];return this.#w&&this.#S(n)?n.__abortController.abort(new Error("evicted")):(this.#_||this.#T)&&(this.#_&&this.#n?.(n,r,"evict"),this.#T&&this.#g?.push([n,r,"evict"])),this.#C(t),e&&(this.#u[t]=void 0,this.#l[t]=void 0,this.#y.push(t)),1===this.#o?(this.#p=this.#f=0,this.#y.length=0):this.#p=this.#d[t],this.#c.delete(r),this.#o--,t}has(e,t={}){const{updateAgeOnHas:r=this.updateAgeOnHas,status:n}=t,i=this.#c.get(e);if(void 0!==i){const e=this.#l[i];if(this.#S(e)&&void 0===e.__staleWhileFetching)return!1;if(!this.#R(i))return r&&this.#N(i),n&&(n.has="hit",this.#j(n,i)),!0;n&&(n.has="stale",this.#j(n,i))}else n&&(n.has="miss");return!1}peek(e,t={}){const{allowStale:r=this.allowStale}=t,n=this.#c.get(e);if(void 0!==n&&(r||!this.#R(n))){const e=this.#l[n];return this.#S(e)?e.__staleWhileFetching:e}}#O(e,t,r,n){const i=void 0===t?void 0:this.#l[t];if(this.#S(i))return i;const a=new o,{signal:s}=r;s?.addEventListener("abort",(()=>a.abort(s.reason)),{signal:a.signal});const c={signal:a.signal,options:r,context:n},u=(n,i=!1)=>{const{aborted:o}=a.signal,s=r.ignoreFetchAbort&&void 0!==n;if(r.status&&(o&&!i?(r.status.fetchAborted=!0,r.status.fetchError=a.signal.reason,s&&(r.status.fetchAbortIgnored=!0)):r.status.fetchResolved=!0),o&&!s&&!i)return l(a.signal.reason);const u=d;return this.#l[t]===d&&(void 0===n?u.__staleWhileFetching?this.#l[t]=u.__staleWhileFetching:this.delete(e):(r.status&&(r.status.fetchUpdated=!0),this.set(e,n,c.options))),n},l=n=>{const{aborted:i}=a.signal,o=i&&r.allowStaleOnFetchAbort,s=o||r.allowStaleOnFetchRejection,c=s||r.noDeleteOnFetchRejection,u=d;if(this.#l[t]===d&&(c&&void 0!==u.__staleWhileFetching?o||(this.#l[t]=u.__staleWhileFetching):this.delete(e)),s)return r.status&&void 0!==u.__staleWhileFetching&&(r.status.returnedStale=!0),u.__staleWhileFetching;if(u.__returned===u)throw n};r.status&&(r.status.fetchDispatched=!0);const d=new Promise(((t,n)=>{const o=this.#a?.(e,i,c);o&&o instanceof Promise&&o.then((e=>t(void 0===e?void 0:e)),n),a.signal.addEventListener("abort",(()=>{r.ignoreFetchAbort&&!r.allowStaleOnFetchAbort||(t(void 0),r.allowStaleOnFetchAbort&&(t=e=>u(e,!0)))}))})).then(u,(e=>(r.status&&(r.status.fetchRejected=!0,r.status.fetchError=e),l(e)))),h=Object.assign(d,{__abortController:a,__staleWhileFetching:i,__returned:void 0});return void 0===t?(this.set(e,h,{...c.options,status:void 0}),t=this.#c.get(e)):this.#l[t]=h,h}#S(e){if(!this.#w)return!1;const t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof o}async fetch(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,ttl:a=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:s=0,sizeCalculation:c=this.sizeCalculation,noUpdateTTL:u=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:d=this.allowStaleOnFetchRejection,ignoreFetchAbort:h=this.ignoreFetchAbort,allowStaleOnFetchAbort:p=this.allowStaleOnFetchAbort,context:f,forceRefresh:y=!1,status:g,signal:m}=t;if(!this.#w)return g&&(g.fetch="get"),this.get(e,{allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:i,status:g});const b={allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:i,ttl:a,noDisposeOnSet:o,size:s,sizeCalculation:c,noUpdateTTL:u,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:d,allowStaleOnFetchAbort:p,ignoreFetchAbort:h,status:g,signal:m};let v=this.#c.get(e);if(void 0===v){g&&(g.fetch="miss");const t=this.#O(e,v,b,f);return t.__returned=t}{const t=this.#l[v];if(this.#S(t)){const e=r&&void 0!==t.__staleWhileFetching;return g&&(g.fetch="inflight",e&&(g.returnedStale=!0)),e?t.__staleWhileFetching:t.__returned=t}const i=this.#R(v);if(!y&&!i)return g&&(g.fetch="hit"),this.#E(v),n&&this.#N(v),g&&this.#j(g,v),t;const a=this.#O(e,v,b,f),o=void 0!==a.__staleWhileFetching&&r;return g&&(g.fetch=i?"stale":"refresh",o&&i&&(g.returnedStale=!0)),o?a.__staleWhileFetching:a.__returned=a}}get(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:i=this.noDeleteOnStaleGet,status:a}=t,o=this.#c.get(e);if(void 0!==o){const t=this.#l[o],s=this.#S(t);return a&&this.#j(a,o),this.#R(o)?(a&&(a.get="stale"),s?(a&&r&&void 0!==t.__staleWhileFetching&&(a.returnedStale=!0),r?t.__staleWhileFetching:void 0):(i||this.delete(e),a&&r&&(a.returnedStale=!0),r?t:void 0)):(a&&(a.get="hit"),s?t.__staleWhileFetching:(this.#E(o),n&&this.#N(o),t))}a&&(a.get="miss")}#B(e,t){this.#h[t]=e,this.#d[e]=t}#E(e){e!==this.#f&&(e===this.#p?this.#p=this.#d[e]:this.#B(this.#h[e],this.#d[e]),this.#B(this.#f,e),this.#f=e)}delete(e){let t=!1;if(0!==this.#o){const r=this.#c.get(e);if(void 0!==r)if(t=!0,1===this.#o)this.clear();else{this.#C(r);const t=this.#l[r];this.#S(t)?t.__abortController.abort(new Error("deleted")):(this.#_||this.#T)&&(this.#_&&this.#n?.(t,e,"delete"),this.#T&&this.#g?.push([t,e,"delete"])),this.#c.delete(e),this.#u[r]=void 0,this.#l[r]=void 0,r===this.#f?this.#f=this.#h[r]:r===this.#p?this.#p=this.#d[r]:(this.#d[this.#h[r]]=this.#d[r],this.#h[this.#d[r]]=this.#h[r]),this.#o--,this.#y.push(r)}}if(this.#T&&this.#g?.length){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}return t}clear(){for(const e of this.#A({allowStale:!0})){const t=this.#l[e];if(this.#S(t))t.__abortController.abort(new Error("deleted"));else{const r=this.#u[e];this.#_&&this.#n?.(t,r,"delete"),this.#T&&this.#g?.push([t,r,"delete"])}}if(this.#c.clear(),this.#l.fill(void 0),this.#u.fill(void 0),this.#v&&this.#b&&(this.#v.fill(0),this.#b.fill(0)),this.#m&&this.#m.fill(0),this.#p=0,this.#f=0,this.#y.length=0,this.#s=0,this.#o=0,this.#T&&this.#g){const e=this.#g;let t;for(;t=e?.shift();)this.#i?.(...t)}}}t.LRUCache=h},3048:e=>{"use strict";e.exports=JSON.parse('{"http://schema.org/":{"properties":{"additionalType":{"subPropertyOf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#type"}}},"http://microformats.org/profile/hcard":{}}')},44299:e=>{"use strict";e.exports=JSON.parse('{"@context":{"alternate":"http://www.w3.org/1999/xhtml/vocab#alternate","appendix":"http://www.w3.org/1999/xhtml/vocab#appendix","cite":"http://www.w3.org/1999/xhtml/vocab#cite","bookmark":"http://www.w3.org/1999/xhtml/vocab#bookmark","contents":"http://www.w3.org/1999/xhtml/vocab#contents","chapter":"http://www.w3.org/1999/xhtml/vocab#chapter","copyright":"http://www.w3.org/1999/xhtml/vocab#copyright","first":"http://www.w3.org/1999/xhtml/vocab#first","glossary":"http://www.w3.org/1999/xhtml/vocab#glossary","help":"http://www.w3.org/1999/xhtml/vocab#help","icon":"http://www.w3.org/1999/xhtml/vocab#icon","index":"http://www.w3.org/1999/xhtml/vocab#index","last":"http://www.w3.org/1999/xhtml/vocab#last","license":"http://www.w3.org/1999/xhtml/vocab#license","meta":"http://www.w3.org/1999/xhtml/vocab#meta","next":"http://www.w3.org/1999/xhtml/vocab#next","prev":"http://www.w3.org/1999/xhtml/vocab#prev","previous":"http://www.w3.org/1999/xhtml/vocab#previous","section":"http://www.w3.org/1999/xhtml/vocab#section","start":"http://www.w3.org/1999/xhtml/vocab#start","stylesheet":"http://www.w3.org/1999/xhtml/vocab#stylesheet","subsection":"http://www.w3.org/1999/xhtml/vocab#subsection","top":"http://www.w3.org/1999/xhtml/vocab#top","up":"http://www.w3.org/1999/xhtml/vocab#up","p3pv1":"http://www.w3.org/1999/xhtml/vocab#p3pv1"}}')},59261:e=>{"use strict";e.exports=JSON.parse('{"@context":{"as":"https://www.w3.org/ns/activitystreams#","cat":"http://www.w3.org/ns/dcat#","cc":"http://creativecommons.org/ns#","cnt":"http://www.w3.org/2008/content#","csvw":"http://www.w3.org/ns/csvw#","ctag":"http://commontag.org/ns#","dc":"http://purl.org/dc/terms/","dc11":"http://purl.org/dc/elements/1.1/","dcat":"http://www.w3.org/ns/dcat#","dcterms":"http://purl.org/dc/terms/","dqv":"http://www.w3.org/ns/dqv#","duv":"https://www.w3.org/TR/vocab-duv#","earl":"http://www.w3.org/ns/earl#","foaf":"http://xmlns.com/foaf/0.1/","gldp":"http://www.w3.org/ns/people#","gr":"http://purl.org/goodrelations/v1#","grddl":"http://www.w3.org/2003/g/data-view#","ht":"http://www.w3.org/2006/http#","ical":"http://www.w3.org/2002/12/cal/icaltzd#","ldp":"http://www.w3.org/ns/ldp#","ma":"http://www.w3.org/ns/ma-ont#","oa":"http://www.w3.org/ns/oa#","odrl":"http://www.w3.org/ns/odrl/2/","og":"http://ogp.me/ns#","org":"http://www.w3.org/ns/org#","owl":"http://www.w3.org/2002/07/owl#","prov":"http://www.w3.org/ns/prov#","ptr":"http://www.w3.org/2009/pointers#","qb":"http://purl.org/linked-data/cube#","rev":"http://purl.org/stuff/rev#","rdf":"http://www.w3.org/1999/02/22-rdf-syntax-ns#","rdfa":"http://www.w3.org/ns/rdfa#","rdfs":"http://www.w3.org/2000/01/rdf-schema#","rif":"http://www.w3.org/2007/rif#","rr":"http://www.w3.org/ns/r2rml#","schema":"http://schema.org/","sd":"http://www.w3.org/ns/sparql-service-description#","sioc":"http://rdfs.org/sioc/ns#","skos":"http://www.w3.org/2004/02/skos/core#","skosxl":"http://www.w3.org/2008/05/skos-xl#","ssn":"http://www.w3.org/ns/ssn/","sosa":"http://www.w3.org/ns/sosa/","time":"http://www.w3.org/2006/time#","v":"http://rdf.data-vocabulary.org/#","vcard":"http://www.w3.org/2006/vcard/ns#","void":"http://rdfs.org/ns/void#","wdr":"http://www.w3.org/2007/05/powder#","wdrs":"http://www.w3.org/2007/05/powder-s#","xhv":"http://www.w3.org/1999/xhtml/vocab#","xml":"http://www.w3.org/XML/1998/namespace","xsd":"http://www.w3.org/2001/XMLSchema#","describedby":"http://www.w3.org/2007/05/powder-s#describedby","license":"http://www.w3.org/1999/xhtml/vocab#license","role":"http://www.w3.org/1999/xhtml/vocab#role"}}')}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var a=t[n]={exports:{}};return e[n].call(a.exports,a,a.exports,r),a.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n=r(2159);Comunica=n})(); //# sourceMappingURL=comunica-browser.js.map \ No newline at end of file diff --git a/versions/latest/engines/query-sparql-file/comunica-browser.js.map b/versions/latest/engines/query-sparql-file/comunica-browser.js.map index 39129bb..bb95467 100644 --- a/versions/latest/engines/query-sparql-file/comunica-browser.js.map +++ b/versions/latest/engines/query-sparql-file/comunica-browser.js.map @@ -1 +1 @@ -{"version":3,"file":"comunica-browser.js","mappings":"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AG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EA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CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,SAAU,CAAC,EAAG,YAAa,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,EAAG,WAAY,CAAC,EAAG,UAAW,CAAC,KAAM,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,YAAa,CAAC,EAAG,YAAa,CAAC,EAAG,WAAY,CAAC,EAAG,YAAa,CAAC,EAAG,eAAgB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AU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,SAAU,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UAAW,CAAC,EAAG,UA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AAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,IAAIC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,KAAKC,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C,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAA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AAI,CAAC,EAAE,IAAIC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,IAAIC,EAAI,CAAC,GAAG,IAAIC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,IAAI,KAAKC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,GAAG,GAAG,IAAIC,EAAI,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,IAAIC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAIC,EAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAKC,EAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,KAAKC,EAAI,CAAC,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,IAAI,IAAI,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,EAAI,CAAC,GAAG,GAAG,GAAG,GAAG,IAAIC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,EAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKsb,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAI,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,IAAIC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAIC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAIC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,KAAKC,GAAK,CAAC,GAAG,GAAG,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,IAAIC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,IAAIC,GAAK,CAAC,GAAG,IAAIC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,IAAIC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,IAAIC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,IAAI,KAAKC,GAAK,CAAC,GAAG,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,GAAG,IAAIC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,GAAG,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,IAAIC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKC,GAAK,CAAC,EAAE,KAAK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AAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,C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GAAG,OAAO,GAEf,KAAK,GAAG,OAAO,GAEf,KAAK,GAAG,OAAO,GAEf,KAAK,GAAG,OAAO,GAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,GAAG,OAAO,IAEf,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,GAEhB,KAAK,IAAI,OAAO,GAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,GAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,GAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,MAAO,WAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,GAEhB,KAAK,IAAI,OAAO,IAEhB,KAAK,IAAI,OAAO,EAEhB,KAAK,IAAI,MAAO,UAEhB,KAAK,IAAIjlI,QAAQzxE,IAAIy2M,EAAIhF,QAGzB,EACAwE,MAAO,CAAC,wBAAwB,aAAa,eAAe,eAAe,iBAAiB,gBAAgB,WAAW,WAAW,WAAW,WAAW,kBAAkB,cAAc,WAAW,WAAW,iBAAiB,YAAY,aAAa,cAAc,cAAc,WAAW,eAAe,cAAc,YAAY,aAAa,cAAc,eAAe,eAAe,UAAU,aAAa,eAAe,aAAa,cAAc,aAAa,eAAe,YAAY,WAAW,aAAa,aAAa,4CAA4C,4CAA4C,6CAA6C,aAAa,eAAe,eAAe,cAAc,gBAAgB,cAAc,YAAY,WAAW,iBAAiB,gBAAgB,aAAa,cAAc,cAAc,cAAc,eAAe,WAAW,WAAW,aAAa,aAAa,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,aAAa,WAAW,UAAU,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,YAAY,UAAU,cAAc,cAAc,gCAAgC,kNAAkN,4CAA4C,2FAA2F,eAAe,iBAAiB,WAAW,eAAe,cAAc,eAAe,gBAAgB,eAAe,cAAc,+BAA+B,qBAAqB,kBAAkB,aAAa,mBAAmB,iDAAiD,grBAAgrB,mnDAAmnD,gsBAAgsB,4cAA4c,uCAAuC,iBAAiB,yBAAyB,gGAAgG,qBAAqB,6BAA6B,oGAAoG,oBAAoB,4BAA4B,mGAAmG,0BAA0B,sOAAsO,sOAAsO,8NAA8N,+NAA+N,6CAA6C,6CAA6C,UAAU,UAAU,WACtsNI,WAAY,CAAC,QAAU,CAAC,MAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,WAAY,KAKxb,SAASvvO,KACPC,KAAKqqO,GAAK,CAAC,CACb,CAEA,OALA32N,GAAO+uH,MAAQA,GAIf1iI,GAAO2B,UAAYgS,GAAOA,GAAO3T,OAASA,GACnC,IAAIA,EACV,CA9vDkB,GA8vDdkE,EAAOC,QAAQuhP,aCr0DpB,MAAMvL,EACJ,WAAAlrO,GACE,OAAOuhE,GAAYvwE,IACrB,CAEA,MAAA6gC,CAAOy+B,GACL,OAAOA,GAAUt/D,KAAKgsB,WAAaszC,EAAMtzC,QAC3C,EAGF5qB,OAAO+C,eAAe+1O,EAASx4O,UAAW,QAAS,CACjD2F,YAAY,EACZnH,MAAO,MAGTkB,OAAO+C,eAAe+1O,EAASx4O,UAAW,WAAY,CACpD2F,YAAY,EACZnH,MAAO,aAKT,IAAIqwE,EAAW,IAAI2pK,EAEnBj2O,EAAOC,QAAQ,EAAWg2O,kBC1B1B,IAAIn6O,EAAS,gBACTmgP,EAAY,EAAQ,OACpBhG,EAAW,YACX,YAAElxN,GAAgB,EAAQ,OAE9B/kB,EAAOC,QAAU,CAYfnE,OAAQ,UAAU,SAAEiJ,EAAQ,QAAE+nB,EAAO,QAAEyK,EAAO,WAAEiU,EAAU,eAAEq+H,EAAc,2BAAE+hF,EAA0B,SAAExD,GAAa,CAAC,GAGpH,IAAIyD,EAAe,CAAC,EACpB,IAAK,IAAI5oP,KAAU8B,GAAY,CAAC,EAC9B8mP,EAAa5oP,GAAU8B,EAAS9B,GAIlC,IAAIwM,EAAS,IAAI3T,EAYjB,OAXA2T,EAAOzG,MAAQ,WAQb,OAPAlN,EAAOq1C,KAAOrkB,GAAW,GACzBhxB,EAAOiJ,SAAW5H,OAAO2G,OAAO+nP,GAChC/vP,EAAOy7B,QAAUA,GAAW,IAAIxS,EAChCjpB,EAAO0vC,WAAaxQ,QAAQwQ,GAC5B1vC,EAAOssP,SAAWptN,QAAQotN,GAE1BtsP,EAAO+tK,eAAiB7uI,QAAQ6uI,IAAmB7uI,QAAQ4wN,GACpD9vP,EAAO2B,UAAUuL,MAAM1G,MAAMmN,EAAQqO,UAC9C,EACArO,EAAOu6N,aAAeluO,EAAOkuO,aACtBv6N,CACT,EACAwsO,UAAWA,EACXhG,SAAUA,uCCxCZ,IAAIpyO,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGyF,EAAgBxI,MAAQA,KAAKwI,cAAiB,SAASP,EAAG/D,GAC1D,IAAK,IAAIuE,KAAKR,EAAa,YAANQ,GAAoBrH,OAAOM,UAAUgH,eAAeC,KAAKzE,EAASuE,IAAIX,EAAgB5D,EAAS+D,EAAGQ,EAC3H,EACArH,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDsI,EAAa,EAAQ,MAA2BtE,gCCfhD9C,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQikH,sBAAmB,EAC3B,MAAMx/F,EAAqB,EAAQ,OAC7B8sB,EAAoB,EAAQ,OAE5Bs6M,EAAa,EAAQ,OAiK3B7rP,EAAQikH,iBA5JR,MACI,WAAAn5G,CAAYq7G,GACR,IAAIvlH,EACJulH,EAAWA,GAAY,CAAC,EACxBrqH,KAAKk/D,YAAcmrD,EAASnrD,aAAe,IAAIv2C,EAAmBK,YAClEhpB,KAAK2uC,6BAA+B07E,EAAS17E,2BAC7C3uC,KAAKgwP,kCAA0F,QAArDlrP,EAAKulH,EAAS2lI,yCAAsD,IAAPlrP,GAAgBA,CAC3H,CAMA,gBAAAmrP,CAAiBC,GACb,OAAOA,EAAeplO,QAAQI,SAAS/lB,KAAKgrP,GAAgBnwP,KAAKowP,kBAAkBD,IACvF,CAUA,sBAAAvnI,CAAuBH,GACnB,MAAM3D,EAAiB3hH,GAAUotC,EAAa7sC,KAAK,QAASP,GAC5DslH,EAAqB1tG,GAAG,QAAS+pG,GACjC,MAAM8yD,EAAa,IAAIm4E,EACvBn4E,EAAWj2K,QAAUmjH,EACrB,IAAIurI,GAAiB,EACjBC,GAAe,EACnB14E,EAAWj0K,QAAWzD,IAClB,GAAuB,SAAnB03K,EAAWn3K,KAA8C,IAA5Bm3K,EAAWj3K,MAAMY,QAA4C,SAA5Bq2K,EAAWj3K,MAAM,GAAGF,IAClF8vC,EAAa7sC,KAAK,YAAaxD,EAAMiF,KAAK+4F,GAAMl+F,KAAKk/D,YAAYr1C,SAASq0E,MAC1EmyJ,GAAiB,OAEhB,GAAuB,YAAnBz4E,EAAWn3K,KAAiD,IAA5Bm3K,EAAWj3K,MAAMY,OACtD+uP,GAAe,OAEd,GAA8B,iBAAnB14E,EAAWn3K,KAAgD,IAA5Bm3K,EAAWj3K,MAAMY,QAA4C,YAA5Bq2K,EAAWj3K,MAAM,GAAGF,KAAiD,aAA5Bm3K,EAAWj3K,MAAM,GAAGF,IACzI,IACI8vC,EAAahtC,KAAKvD,KAAKowP,kBAAkBlwP,GAC7C,CACA,MAAOiD,GACHotC,EAAa7sC,KAAK,QAASP,EAC/B,KAEwB,aAAnBy0K,EAAWn3K,KAAkD,IAA5Bm3K,EAAWj3K,MAAMY,QACvDgvC,EAAa7sC,KAAK,WAAYxD,EAClC,EAEJ,MAAMqwC,EAAek4E,EAChB1tG,GAAG,OAAOopB,IACNmsN,GAAiBtwP,KAAKgwP,kCAGjBK,GACN9/M,EAAa7sC,KAAK,YAAa,IAH/B6sC,EAAa7sC,KAAK,QAAS,IAAI3B,MAAM,6CAIzC,IAEC8qD,KAAK,IAAIpX,EAAkB+hI,UAAU,CACtCxyH,YAAY,EACZ,SAAA1kC,CAAUhH,EAAOmB,EAAUrN,GACvBwqK,EAAWj1K,MAAM2W,GACjBlM,GACJ,KAEJ,OAAOmjC,CACX,CAMA,iBAAA6/M,CAAkBD,GACd,MAAMjlO,EAAW,CAAC,EAClB,IAAK,MAAMzqB,KAAO0vP,EAAa,CAC3B,MAAMxsH,EAAWwsH,EAAY1vP,GAC7ByqB,EAASlrB,KAAK2uC,2BAA8B,IAAMluC,EAAOA,GAAOT,KAAKuwP,eAAe5sH,EACxF,CACA,OAAOz4G,CACX,CAMA,cAAAqlO,CAAe5sH,GACX,IAAIzjI,EACJ,OAAQyjI,EAASj3H,MACb,IAAK,QACDxM,EAAQF,KAAKk/D,YAAYrgC,UAAU8kG,EAASzjI,OAC5C,MACJ,IAAK,UAEGA,EADAyjI,EAAS,YACD3jI,KAAKk/D,YAAYhoB,QAAQysF,EAASzjI,MAAOyjI,EAAS,aAErDA,EAASvsF,SACNp3C,KAAKk/D,YAAYhoB,QAAQysF,EAASzjI,MAAOF,KAAKk/D,YAAY/O,UAAUwzE,EAASvsF,WAG7Ep3C,KAAKk/D,YAAYhoB,QAAQysF,EAASzjI,OAE9C,MACJ,IAAK,gBAEDA,EAAQF,KAAKk/D,YAAYhoB,QAAQysF,EAASzjI,MAAOF,KAAKk/D,YAAY/O,UAAUwzE,EAASvsF,WACrF,MACJ,IAAK,SACD,MAAMo5M,EAAc7sH,EAASzjI,MAC7B,KAAKswP,GAAgBA,EAAY7mO,SAAY6mO,EAAYhnO,WAAcgnO,EAAY5mO,QAC/E,MAAM,IAAI7nB,MAAM,0BAA4BC,KAAKC,UAAU0hI,IAE/DzjI,EAAQF,KAAKk/D,YAAY3nC,KAAKv3B,KAAKuwP,eAAeC,EAAY7mO,SAAU3pB,KAAKuwP,eAAeC,EAAYhnO,WAAYxpB,KAAKuwP,eAAeC,EAAY5mO,SACpJ,MACJ,QACI1pB,EAAQF,KAAKk/D,YAAY/O,UAAUwzE,EAASzjI,OAGpD,OAAOA,CACX,CAOA,gBAAAuwP,CAAiBP,GACb,GAAI,YAAaA,EACb,OAAOA,EAAevgE,QAE1B,MAAM,IAAI5tL,MAAM,mCACpB,CAOA,sBAAA2mH,CAAuBD,GACnB,OAAO,IAAI5iH,SAAQ,CAACC,EAASC,KACzB,MAAM2N,EAAS,IAAIq8O,EACnBr8O,EAAO/R,QAAUoE,EACjB2N,EAAO/P,QAAWzD,IACK,YAAfwT,EAAOjT,KAAsC,kBAAVP,GAA+C,IAAxBwT,EAAO/S,MAAMY,QACvEuE,EAAQ5F,EACZ,EAEJuoH,EACK1tG,GAAG,QAAShV,GACZgV,GAAG,QAAQgkF,GAAKrrF,EAAO/Q,MAAMo8F,KAC7BhkF,GAAG,OAAO,IAAMhV,EAAO,IAAIhE,MAAM,sCAAqC,GAEnF,uCCpKJ,IAAI+F,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGyF,EAAgBxI,MAAQA,KAAKwI,cAAiB,SAASP,EAAG/D,GAC1D,IAAK,IAAIuE,KAAKR,EAAa,YAANQ,GAAoBrH,OAAOM,UAAUgH,eAAeC,KAAKzE,EAASuE,IAAIX,EAAgB5D,EAAS+D,EAAGQ,EAC3H,EACArH,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDsI,EAAa,EAAQ,OAAoBtE,iCCfzC9C,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQ0wC,eAAY,EACpB,MAAM87M,EAAgB,EAAQ,OACxB9oI,EAAqB,EAAQ,OAInC,MAAMhzE,EACF,WAAA5lC,CAAYq7G,IACRA,EAAWA,GAAY,CAAEsmI,UAAW,MAC3BhiN,4BAA6B,EACtC3uC,KAAK2wP,UAAYtmI,EAASsmI,WAAa,IACvC3wP,KAAK0T,OAAS,IAAIk0G,EAAmBO,iBAAiBkC,GACtDrqH,KAAKq6C,sBAAwBgwE,EAAShwE,qBAC1C,CAWA,qBAAOu2M,CAAeh0K,EAAMlzD,EAAMxpB,EAAO2wP,EAAa12M,EAAQw2M,GAC1D,MAAMlwP,EAAMipB,EAAK,GACXwsI,EAAU26F,EAAeA,EAAcF,EAAYlwP,EAAOA,EAC1DqwP,EAAc32M,EAAOpF,qBAAqBmhH,GAChD,GAAoB,IAAhBxsI,EAAKnoB,OAEDuvP,EACKl0K,EAAKn8E,KACNm8E,EAAKn8E,GAAOP,IAIX08E,EAAKn8E,KACNm8E,EAAKn8E,GAAO,IAEhBm8E,EAAKn8E,GAAK8C,KAAKrD,QAGlB,CAED,IAAI6wP,EACAD,GACKl0K,EAAKn8E,KACNm8E,EAAKn8E,GAAO,CAAC,GAEjBswP,EAAWn0K,EAAKn8E,KAGXm8E,EAAKn8E,KACNm8E,EAAKn8E,GAAO,CAAC,CAAC,IAElBswP,EAAWn0K,EAAKn8E,GAAK,IAEzBm0C,EAAUg8M,eAAeG,EAAUrnO,EAAKllB,MAAM,GAAItE,EAAOg2J,EAAS/7G,EAAQw2M,EAC9E,CACJ,CAOA,iBAAOK,CAAWC,EAAOC,GACrB,UAAWD,UAAiBC,EACxB,MAAM,IAAInvP,MAAM,kDAAkDkvP,gBAAoBC,KAE1F,GAAIvmP,MAAMC,QAAQqmP,KAAWtmP,MAAMC,QAAQsmP,GACvC,MAAM,IAAInvP,MAAM,iDAAiD4I,MAAMC,QAAQqmP,gBAAoBtmP,MAAMC,QAAQsmP,MAErH,GAAqB,iBAAVD,GAAuC,iBAAVC,EAAoB,CACxD,GAAID,EAAMjlO,UAAYklO,EAAMllO,SACxB,OAAIilO,EAAMpwN,OAAOqwN,GACN,CAAErzM,OAAO,EAAMh6C,OAAQotP,GAGvB,CAAEpzM,OAAO,EAAOh6C,OAAQotP,GAGvC,GAAItmP,MAAMC,QAAQqmP,IAAUtmP,MAAMC,QAAQsmP,GAAQ,CAC9C,GAAID,EAAM1vP,OAAS,EAAG,CAClB,MAAMiiE,EAAS,GACf,IAAI3lB,GAAQ,EACZ,IAAK,MAAMszM,KAAgBF,EAAO,CAC9B,MAAMG,EAAgBx8M,EAAUo8M,WAAWG,EAAcD,EAAM,IAC3DE,EAAcvzM,OACdA,GAAQ,EACR2lB,EAAOjgE,KAAK6tP,EAAcvtP,SAG1B2/D,EAAOjgE,KAAK4tP,EAEpB,CACA,GAAItzM,EACA,MAAO,CAAEA,OAAO,EAAMh6C,OAAQ2/D,EAEtC,CACA,MAAO,CAAE3lB,OAAO,EAAMh6C,OAAQotP,EAAMvzN,OAAOwzN,GAC/C,CACK,CACD,MAAM1tL,EAAS,CAAC,EAChB,IAAK,MAAMw7H,KAAQkyD,EACf1tL,EAAOw7H,GAAQkyD,EAAMlyD,GAEzB,IAAK,MAAMD,KAAQkyD,EACf,GAAIztL,EAAOu7H,GAAO,CACd,MAAMqyD,EAAgBx8M,EAAUo8M,WAAWC,EAAMlyD,GAAOv7H,EAAOu7H,IAC/D,IAAIqyD,EAAcvzM,MAId,MAAO,CAAEA,OAAO,EAAOh6C,OAAQotP,GAH/BztL,EAAOu7H,GAAQqyD,EAAcvtP,MAKrC,MAEI2/D,EAAOu7H,GAAQkyD,EAAMlyD,GAG7B,MAAO,CAAElhJ,OAAO,EAAMh6C,OAAQ2/D,EAClC,CACJ,CAEI,MAAM,IAAIzhE,MAAM,iCAAiCkvP,gBAAoBC,IAE7E,CAOA,sBAAOG,CAAgBz0K,GACnB,GAAIA,EAAK5wD,SACL,OAAO,EAAI0kO,EAAchnD,YAAY9sH,GAEpC,GAAIjyE,MAAMC,QAAQgyE,GACnB,OAAOA,EAAKz3E,IAAIyvC,EAAUy8M,iBAEzB,CACD,MAAMC,EAAe,CAAC,EACtB,IAAK,MAAM7wP,KAAOm8E,EACd00K,EAAa7wP,GAAOm0C,EAAUy8M,gBAAgBz0K,EAAKn8E,IAEvD,OAAO6wP,CACX,CACJ,CAOA,uBAAAC,CAAwBrB,EAAgB/1M,GACpC,OAAOn6C,KAAKo6C,eAAep6C,KAAK0T,OAAOu8O,iBAAiBC,GAAiB/1M,GAAU,CAAEpF,qBAAsB,CAAC,GAChH,CAOA,cAAAqF,CAAeH,EAAeE,GAC1B,MAAMq3M,EAAer3M,GAAUA,EAAOpF,qBAAqB,IAC3D,IAAI6nC,EAAO40K,EAAe,CAAC,EAAI,GAC/B,IAAK,MAAMtmO,KAAY+uB,EAAe,CAClC,MAAMs8H,EAAUi7E,EAAe,CAAC,EAAI,CAAC,CAAC,GACtC,IAAK,MAAM/wP,KAAOyqB,EAAU,CACxB,MAAMxB,EAAOjpB,EAAIuE,MAAMhF,KAAK2wP,WACtBzwP,EAAQgrB,EAASzqB,GACvBm0C,EAAUg8M,eAAeY,EAAej7E,EAAUA,EAAQ,GAAI7sJ,EAAMxpB,EAAO,GAAIi6C,EAAQn6C,KAAK2wP,UAChG,CACA/zK,EAAOhoC,EAAUo8M,WAAWp0K,EAAM25F,GAAS1yK,MAC/C,CAIA,OAHI7D,KAAKq6C,wBACLuiC,EAAOhoC,EAAUy8M,gBAAgBz0K,IAE9BA,CACX,EAEJ14E,EAAQ0wC,UAAYA,sCCvLpB,IAAI9sC,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGyF,EAAgBxI,MAAQA,KAAKwI,cAAiB,SAASP,EAAG/D,GAC1D,IAAK,IAAIuE,KAAKR,EAAa,YAANQ,GAAoBrH,OAAOM,UAAUgH,eAAeC,KAAKzE,EAASuE,IAAIX,EAAgB5D,EAAS+D,EAAGQ,EAC3H,EACArH,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDsI,EAAa,EAAQ,OAA0BtE,iCCf/C9C,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQmkH,qBAAkB,EAC1B,MAAM1/F,EAAqB,EAAQ,OAC7Bk2L,EAAU,EAAQ,MAClBppK,EAAoB,EAAQ,OAgMlCvxC,EAAQmkH,gBA3LR,MACI,WAAAr5G,CAAYq7G,GACRA,EAAWA,GAAY,CAAC,EACxBrqH,KAAKk/D,YAAcmrD,EAASnrD,aAAe,IAAIv2C,EAAmBK,YAClEhpB,KAAK2uC,6BAA+B07E,EAAS17E,0BACjD,CAUA,qBAAAo6E,CAAsBN,GAClB,MAAM3D,EAAiB3hH,GAAUotC,EAAa7sC,KAAK,QAASP,GAC5DslH,EAAqB1tG,GAAG,QAAS+pG,GACjC,MAAMpxG,EAAS,IAAImrM,EAAQjuM,YACrBjQ,EAAQ,GACd,IAAI0vP,GAAiB,EACjBC,GAAe,EACnB,MAAMh5N,EAAY,GAClB,IAGIm6N,EAHAC,EAAkB,CAAC,EACnBC,EAAqB,GACrBC,EAAqB,GAErBC,EAAc,GACdC,EAAuB,GAC3Bp+O,EAAOqH,GAAG,QAAS+pG,GACnBpxG,EAAOqH,GAAG,WAAW3B,IACA,aAAbA,EAAIpP,MAAuBhK,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,SAC9D22B,EAAU/zB,KAAKvD,KAAKk/D,YAAYr1C,SAASzQ,EAAIiE,WAAWrT,OAEtC,YAAboP,EAAIpP,MAAsBhK,KAAK+xP,YAAYpxP,EAAO,CAAC,WACxD2vP,GAAe,EAEG,WAAbl3O,EAAIpP,MAAqBhK,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,YACjE+wP,EAAkB,CAAC,EAED,YAAbt4O,EAAIpP,MAAsBhK,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,UAAW,YAC7EgxP,EAAqBv4O,EAAIiE,WAAWrT,MAAQ,GAC5C4nP,EAAqB,GACrBH,EAA2B,GAC3BI,EAAc,GACdC,EAAuB,IAEL,WAAb14O,EAAIpP,MAAqBhK,KAAKgyP,gBAAgBrxP,EAAO,CAAC,SAAU,UAAW,WAChFmxP,EAAqBvuP,KAAK,CAAEwxL,WAAY,CAAC,IAER,WAA5Bp0L,EAAMA,EAAMY,OAAS,IAAmBvB,KAAKgyP,gBAAgBrxP,EAAO,CAAC,SAAU,UAAW,SAAU,aACzGixP,EAAqB,GACrBH,EAA2B,GAC3BI,EAAc,GACT,CAAC,UAAW,YAAa,UAAU71O,SAAS5C,EAAIpP,MAIjD8nP,EAAqBA,EAAqBvwP,OAAS,GAAG0wP,iBAAmB74O,EAAIpP,KAH7E86G,EAAc,IAAI/iH,MAAM,oCAAoCqX,EAAIpP,uBAAuB0J,EAAOhE,KAAO,OAMpG1P,KAAKgyP,gBAAgBrxP,EAAO,CAAC,SAAU,UAAW,SAAU,cACjEixP,EAAqBx4O,EAAIpP,KAErBynP,EADA,aAAcr4O,EAAIiE,WACSjE,EAAIiE,WAAW,YAErC,aAAcjE,EAAIiE,WACIrd,KAAKk/D,YAAY/O,UAAU/2C,EAAIiE,WAAW+5B,eAG1Cj3C,GAGnCQ,EAAM4C,KAAK6V,EAAIpP,KAAK,IAExB0J,EAAOqH,GAAG,YAAY3B,IAQlB,GAPIpZ,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,WACnC4vC,EAAa7sC,KAAK,YAAa4zB,GAC/B+4N,GAAiB,GAEjBrwP,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,UAAW,YAC9C4vC,EAAahtC,KAAKmuP,GAElB1xP,KAAKgyP,gBAAgBrxP,EAAO,CAAC,SAAU,UAAW,SAAU,YAAa,CAEzE,IAAI69B,EACJ,IAAKmzN,GAAsBC,EACvB9sI,EAAc,IAAI/iH,MAAM,oCAAoC2R,EAAOhE,KAAO,WAEzE,GAA2B,QAAvBkiP,EACLpzN,EAAOx+B,KAAKk/D,YAAY/O,UAAU0hM,QAEjC,GAA2B,UAAvBD,EACLpzN,EAAOx+B,KAAKk/D,YAAYrgC,UAAUgzN,QAEjC,GAA2B,YAAvBD,EACLpzN,EAAOx+B,KAAKk/D,YAAYhoB,QAAQ26M,EAAaJ,QAE5C,GAAgC,WAA5B9wP,EAAMA,EAAMY,OAAS,GAAiB,CAC3C,MAAM2wP,EAAsBJ,EAAqBtuP,MAC7C0uP,GAAuBA,EAAoBn9D,WAAWprK,SAAWuoO,EAAoBn9D,WAAWvrK,WAAa0oO,EAAoBn9D,WAAWnrK,OAC5I4U,EAAOx+B,KAAKk/D,YAAY3nC,KAAK26N,EAAoBn9D,WAAWprK,QAASuoO,EAAoBn9D,WAAWvrK,UAAW0oO,EAAoBn9D,WAAWnrK,QAG9Ik7F,EAAc,IAAI/iH,MAAM,oCAAoC2R,EAAOhE,KAAO,KAElF,MACSkiP,GACL9sI,EAAc,IAAI/iH,MAAM,sBAAsB6vP,cAA+Bl+O,EAAOhE,KAAO,MAE/F,GAAI8uB,EACA,GAAIszN,EAAqBvwP,OAAS,EAAG,CAEjC,MAAM2wP,EAAsBJ,EAAqBA,EAAqBvwP,OAAS,GAC3E2wP,EAAoBn9D,WAAWm9D,EAAoBD,mBACnDntI,EAAc,IAAI/iH,MAAM,OAAOmwP,EAAoBD,+CAA+Cv+O,EAAOhE,KAAO,iCAEpHwiP,EAAoBn9D,WAAWm9D,EAAoBD,kBAAoBzzN,CAC3E,KACK,CAED,MAAM/9B,EAAMT,KAAK2uC,2BAA8B,IAAMgjN,EAAsBA,EAC3ED,EAAgBjxP,GAAO+9B,CAC3B,CAEJozN,OAAqBzxP,CACzB,CACAQ,EAAM6C,KAAK,IAEfkQ,EAAOqH,GAAG,QAAQnX,IACV5D,KAAKgyP,gBAAgBrxP,EAAO,CAAC,SAAU,UAAW,SAAU,aAAeA,EAAMA,EAAMY,OAAS,KAAOqwP,IACvGC,EAAcjuP,EAClB,IAEJ,MAAM2sC,EAAek4E,EAChB1tG,GAAG,OAAOopB,IACNmsN,EAGKD,GACN9/M,EAAa7sC,KAAK,YAAa,IAH/B6sC,EAAa7sC,KAAK,QAAS,IAAI3B,MAAM,6CAIzC,IAEC8qD,KAAK,IAAIpX,EAAkB+hI,UAAU,CACtCxyH,YAAY,EACZ,SAAA1kC,CAAUhH,EAAOmB,EAAUrN,GACvBsG,EAAO/Q,MAAM2W,GACblM,GACJ,KAEJ,OAAOmjC,CACX,CAOA,qBAAAu4E,CAAsBL,GAClB,OAAO,IAAI5iH,SAAQ,CAACC,EAASC,KACzB,MAAM2N,EAAS,IAAImrM,EAAQjuM,YACrBjQ,EAAQ,GACd+S,EAAOqH,GAAG,QAAShV,GACnB2N,EAAOqH,GAAG,WAAW3B,IACjBzY,EAAM4C,KAAK6V,EAAIpP,KAAK,IAExB0J,EAAOqH,GAAG,YAAYopB,IAClBxjC,EAAM6C,KAAK,IAEfkQ,EAAOqH,GAAG,QAAQnX,IACV5D,KAAK+xP,YAAYpxP,EAAO,CAAC,SAAU,aACnCmF,EAAiB,SAATlC,EACZ,IAEJ6kH,EACK1tG,GAAG,QAAShV,GACZgV,GAAG,QAAQgkF,GAAKrrF,EAAO/Q,MAAMo8F,KAC7BhkF,GAAG,OAAO,IAAMhV,EAAO,IAAIhE,MAAM,sCAAqC,GAEnF,CACA,WAAAgwP,CAAYv2J,EAAGI,GACX,OAAOJ,EAAEj6F,SAAWq6F,EAAEr6F,QAAUi6F,EAAE3/D,OAAM,CAACqiE,EAAG78F,IAAMu6F,EAAEv6F,KAAO68F,GAC/D,CACA,eAAA8zJ,CAAgBx2J,EAAGI,GACf,OAAOJ,EAAEj6F,QAAUq6F,EAAEr6F,QAAUq6F,EAAE//D,OAAM,CAACqiE,EAAG78F,IAAMm6F,EAAEn6F,KAAO68F,GAC9D,oBCnMJ,IAAIr4F,EAAU,EAAQ,OAEtB5B,EAAOC,QAAU,SAAUkb,EAAQm0H,EAAKrD,GACjB,mBAARqD,IACPrD,EAAKqD,EACLA,EAAM,MAGV,IAAIlvI,EAAM,GAENoE,EAAI,IAAI5C,GAAS,SAAUC,EAASC,GACpCqZ,EAAOrE,GAAG,QAAQ,SAAUwE,GACxBlb,GAAuB,iBAARkvI,EAAoBh0H,EAAK/d,SAAS+xI,GAAOh0H,EAAK/d,UACjE,IACA4d,EAAOrE,GAAG,OAAO,WACbjV,EAAQzB,EACZ,IACA+a,EAAOrE,GAAG,QAAShV,EACvB,IAIA,OAHImqI,GACAznI,EAAEnC,MAAK,SAAUjC,GAAO6rI,EAAG,KAAM7rI,EAAK,GAAG6rI,GAEtCznI,CACX,gCCEA,IAAI1L,EAAS,gBAGT2pG,EAAa3pG,EAAO2pG,YAAc,SAAUjsF,GAE9C,QADAA,EAAW,GAAKA,IACIA,EAASnV,eAC3B,IAAK,MAAM,IAAK,OAAO,IAAK,QAAQ,IAAK,QAAQ,IAAK,SAAS,IAAK,SAAS,IAAK,OAAO,IAAK,QAAQ,IAAK,UAAU,IAAK,WAAW,IAAK,MACxI,OAAO,EACT,QACE,OAAO,EAEb,EA0CA,SAAS0rN,EAAcv2M,GAErB,IAAIuqN,EACJ,OAFAhlO,KAAKya,SAXP,SAA2B84H,GACzB,IAAI4+G,EA/BN,SAA4B5+G,GAC1B,IAAKA,EAAK,MAAO,OAEjB,IADA,IAAI6+G,IAEF,OAAQ7+G,GACN,IAAK,OACL,IAAK,QACH,MAAO,OACT,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,WACH,MAAO,UACT,IAAK,SACL,IAAK,SACH,MAAO,SACT,IAAK,SACL,IAAK,QACL,IAAK,MACH,OAAOA,EACT,QACE,GAAI6+G,EAAS,OACb7+G,GAAO,GAAKA,GAAKjuI,cACjB8sP,GAAU,EAGlB,CAKaC,CAAmB9+G,GAC9B,GAAoB,iBAAT4+G,IAAsBp1P,EAAO2pG,aAAeA,IAAeA,EAAW6sC,IAAO,MAAM,IAAIxxI,MAAM,qBAAuBwxI,GAC/H,OAAO4+G,GAAQ5+G,CACjB,CAOkBkoF,CAAkBhhN,GAE1Bza,KAAKya,UACX,IAAK,UACHza,KAAK4D,KAAO0uP,EACZtyP,KAAKyC,IAAM8vP,EACXvtB,EAAK,EACL,MACF,IAAK,OACHhlO,KAAKwyP,SAAWC,EAChBztB,EAAK,EACL,MACF,IAAK,SACHhlO,KAAK4D,KAAO8uP,EACZ1yP,KAAKyC,IAAMkwP,EACX3tB,EAAK,EACL,MACF,QAGE,OAFAhlO,KAAK2C,MAAQiwP,OACb5yP,KAAKyC,IAAMowP,GAGf7yP,KAAK8yP,SAAW,EAChB9yP,KAAK+yP,UAAY,EACjB/yP,KAAKgzP,SAAWj2P,EAAO0pG,YAAYu+H,EACrC,CAmCA,SAASiuB,EAAcC,GACrB,OAAIA,GAAQ,IAAa,EAAWA,GAAQ,GAAM,EAAa,EAAWA,GAAQ,GAAM,GAAa,EAAWA,GAAQ,GAAM,GAAa,EACpIA,GAAQ,GAAM,GAAQ,GAAK,CACpC,CA0DA,SAAST,EAAalwP,GACpB,IAAIkG,EAAIzI,KAAK+yP,UAAY/yP,KAAK8yP,SAC1Bp3J,EAtBN,SAA6BxyF,EAAM3G,EAAKkG,GACtC,GAAwB,MAAV,IAATlG,EAAI,IAEP,OADA2G,EAAK4pP,SAAW,EACT,IAET,GAAI5pP,EAAK4pP,SAAW,GAAKvwP,EAAIhB,OAAS,EAAG,CACvC,GAAwB,MAAV,IAATgB,EAAI,IAEP,OADA2G,EAAK4pP,SAAW,EACT,IAET,GAAI5pP,EAAK4pP,SAAW,GAAKvwP,EAAIhB,OAAS,GACZ,MAAV,IAATgB,EAAI,IAEP,OADA2G,EAAK4pP,SAAW,EACT,GAGb,CACF,CAKUK,CAAoBnzP,KAAMuC,GAClC,YAAUpC,IAANu7F,EAAwBA,EACxB17F,KAAK8yP,UAAYvwP,EAAIhB,QACvBgB,EAAIG,KAAK1C,KAAKgzP,SAAUvqP,EAAG,EAAGzI,KAAK8yP,UAC5B9yP,KAAKgzP,SAASxxP,SAASxB,KAAKya,SAAU,EAAGza,KAAK+yP,aAEvDxwP,EAAIG,KAAK1C,KAAKgzP,SAAUvqP,EAAG,EAAGlG,EAAIhB,aAClCvB,KAAK8yP,UAAYvwP,EAAIhB,QACvB,CA0BA,SAAS+wP,EAAU/vP,EAAKlB,GACtB,IAAKkB,EAAIhB,OAASF,GAAK,GAAM,EAAG,CAC9B,IAAIq6F,EAAIn5F,EAAIf,SAAS,UAAWH,GAChC,GAAIq6F,EAAG,CACL,IAAIvoF,EAAIuoF,EAAEr8F,WAAWq8F,EAAEn6F,OAAS,GAChC,GAAI4R,GAAK,OAAUA,GAAK,MAKtB,OAJAnT,KAAK8yP,SAAW,EAChB9yP,KAAK+yP,UAAY,EACjB/yP,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,GACpCvB,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,GAC7Bm6F,EAAEl3F,MAAM,GAAI,EAEvB,CACA,OAAOk3F,CACT,CAIA,OAHA17F,KAAK8yP,SAAW,EAChB9yP,KAAK+yP,UAAY,EACjB/yP,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,GAC7BgB,EAAIf,SAAS,UAAWH,EAAGkB,EAAIhB,OAAS,EACjD,CAIA,SAASgxP,EAAShwP,GAChB,IAAIm5F,EAAIn5F,GAAOA,EAAIhB,OAASvB,KAAK2C,MAAMJ,GAAO,GAC9C,GAAIvC,KAAK8yP,SAAU,CACjB,IAAIrwP,EAAMzC,KAAK+yP,UAAY/yP,KAAK8yP,SAChC,OAAOp3J,EAAI17F,KAAKgzP,SAASxxP,SAAS,UAAW,EAAGiB,EAClD,CACA,OAAOi5F,CACT,CAEA,SAASg3J,EAAWnwP,EAAKlB,GACvB,IAAIuB,GAAKL,EAAIhB,OAASF,GAAK,EAC3B,OAAU,IAANuB,EAAgBL,EAAIf,SAAS,SAAUH,IAC3CrB,KAAK8yP,SAAW,EAAIlwP,EACpB5C,KAAK+yP,UAAY,EACP,IAANnwP,EACF5C,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,IAEpCvB,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,GACpCvB,KAAKgzP,SAAS,GAAKzwP,EAAIA,EAAIhB,OAAS,IAE/BgB,EAAIf,SAAS,SAAUH,EAAGkB,EAAIhB,OAASqB,GAChD,CAEA,SAAS+vP,EAAUpwP,GACjB,IAAIm5F,EAAIn5F,GAAOA,EAAIhB,OAASvB,KAAK2C,MAAMJ,GAAO,GAC9C,OAAIvC,KAAK8yP,SAAiBp3J,EAAI17F,KAAKgzP,SAASxxP,SAAS,SAAU,EAAG,EAAIxB,KAAK8yP,UACpEp3J,CACT,CAGA,SAASk3J,EAAYrwP,GACnB,OAAOA,EAAIf,SAASxB,KAAKya,SAC3B,CAEA,SAASo4O,EAAUtwP,GACjB,OAAOA,GAAOA,EAAIhB,OAASvB,KAAK2C,MAAMJ,GAAO,EAC/C,CA1NA2B,EAAQ8sN,cAAgBA,EA6BxBA,EAActvN,UAAUiB,MAAQ,SAAUJ,GACxC,GAAmB,IAAfA,EAAIhB,OAAc,MAAO,GAC7B,IAAIm6F,EACAr6F,EACJ,GAAIrB,KAAK8yP,SAAU,CAEjB,QAAU3yP,KADVu7F,EAAI17F,KAAKwyP,SAASjwP,IACG,MAAO,GAC5BlB,EAAIrB,KAAK8yP,SACT9yP,KAAK8yP,SAAW,CAClB,MACEzxP,EAAI,EAEN,OAAIA,EAAIkB,EAAIhB,OAAem6F,EAAIA,EAAI17F,KAAK4D,KAAKrB,EAAKlB,GAAKrB,KAAK4D,KAAKrB,EAAKlB,GAC/Dq6F,GAAK,EACd,EAEAs1H,EAActvN,UAAUe,IAwGxB,SAAiBF,GACf,IAAIm5F,EAAIn5F,GAAOA,EAAIhB,OAASvB,KAAK2C,MAAMJ,GAAO,GAC9C,OAAIvC,KAAK8yP,SAAiBp3J,EAAI,IACvBA,CACT,EAzGAs1H,EAActvN,UAAUkC,KA0FxB,SAAkBrB,EAAKlB,GACrB,IAAI+xP,EArEN,SAA6BlqP,EAAM3G,EAAKlB,GACtC,IAAIyB,EAAIP,EAAIhB,OAAS,EACrB,GAAIuB,EAAIzB,EAAG,OAAO,EAClB,IAAI2jO,EAAKiuB,EAAc1wP,EAAIO,IAC3B,OAAIkiO,GAAM,GACJA,EAAK,IAAG97N,EAAK4pP,SAAW9tB,EAAK,GAC1BA,KAEHliO,EAAIzB,IAAa,IAAR2jO,EAAkB,GACjCA,EAAKiuB,EAAc1wP,EAAIO,MACb,GACJkiO,EAAK,IAAG97N,EAAK4pP,SAAW9tB,EAAK,GAC1BA,KAEHliO,EAAIzB,IAAa,IAAR2jO,EAAkB,GACjCA,EAAKiuB,EAAc1wP,EAAIO,MACb,GACJkiO,EAAK,IACI,IAAPA,EAAUA,EAAK,EAAO97N,EAAK4pP,SAAW9tB,EAAK,GAE1CA,GAEF,CACT,CA8CcquB,CAAoBrzP,KAAMuC,EAAKlB,GAC3C,IAAKrB,KAAK8yP,SAAU,OAAOvwP,EAAIf,SAAS,OAAQH,GAChDrB,KAAK+yP,UAAYK,EACjB,IAAI3wP,EAAMF,EAAIhB,QAAU6xP,EAAQpzP,KAAK8yP,UAErC,OADAvwP,EAAIG,KAAK1C,KAAKgzP,SAAU,EAAGvwP,GACpBF,EAAIf,SAAS,OAAQH,EAAGoB,EACjC,EA9FAuuN,EAActvN,UAAU8wP,SAAW,SAAUjwP,GAC3C,GAAIvC,KAAK8yP,UAAYvwP,EAAIhB,OAEvB,OADAgB,EAAIG,KAAK1C,KAAKgzP,SAAUhzP,KAAK+yP,UAAY/yP,KAAK8yP,SAAU,EAAG9yP,KAAK8yP,UACzD9yP,KAAKgzP,SAASxxP,SAASxB,KAAKya,SAAU,EAAGza,KAAK+yP,WAEvDxwP,EAAIG,KAAK1C,KAAKgzP,SAAUhzP,KAAK+yP,UAAY/yP,KAAK8yP,SAAU,EAAGvwP,EAAIhB,QAC/DvB,KAAK8yP,UAAYvwP,EAAIhB,MACvB,cChIC,SAAU+xP,GACP,aAEJ,IAAIC,EAAoB,WAEpB,SAASA,EAAkBzsP,GACvB9G,KAAK8G,QAAUA,CACnB,CAWA,OATAysP,EAAiB7xP,UAAUF,SAAW,WAClC,OAAIQ,MAAQA,KAAKC,UACND,KAAKC,UAAUjC,KAAK8G,SAGpB9G,KAAK8G,OAEpB,EAEOysP,CACX,CAhBuB,GAkBnBC,EAkFO,CACH5oP,QAlFJ,SAAkB1K,GACd,MAAkD,mBAA3CkB,OAAOM,UAAUF,SAAS+E,MAAMrG,EAC3C,EAiFIggM,SA/EJ,SAAmBhgM,GACf,MAAkD,oBAA3CkB,OAAOM,UAAUF,SAAS+E,MAAMrG,EAC3C,EA8EIm+G,SA5EJ,SAAmBn+G,GACf,MAAkD,oBAA3CkB,OAAOM,UAAUF,SAAS+E,MAAMrG,EAC3C,EA2EIuzP,UAzEJ,SAAoBvzP,GAChB,MAAkD,qBAA3CkB,OAAOM,UAAUF,SAAS+E,MAAMrG,EAC3C,EAwEImF,KAtEJ,SAAeuyF,EAAK1uB,GAChB,IAGI/qD,EAFAta,EAAS,GACT6sD,GAAQ,EAEZ,IAAKvyC,EAAQ,EAAGA,EAAQy5E,EAAIr2F,OAAQ4c,GAAS,EACrCuyC,EACAA,GAAQ,EAGR7sD,GAAUqlE,EAEdrlE,GAAU+zF,EAAIz5E,GAElB,OAAOta,CACX,EAwDIsB,IAtDJ,SAAcyyF,EAAK+6D,GAIf,IAHA,IACI9uJ,EAAS,GACTsa,EAAQ,EACLA,EAAQy5E,EAAIr2F,OAAQ4c,GAAS,EAChCta,EAAON,KAAKovJ,EAAO/6D,EAAIz5E,KAE3B,OAAOta,CACX,EA+CIoB,OA7CJ,SAAiB2yF,EAAKpuE,GAIlB,IAHA,IACI3lB,EAAS,GACTsa,EAAQ,EACLA,EAAQy5E,EAAIr2F,OAAQ4c,GAAS,EAC5BqL,EAAUouE,EAAIz5E,KACdta,EAAON,KAAKq0F,EAAIz5E,IAGxB,OAAOta,CACX,EAoCI6vP,WAhBJ,SAASA,EAAY9pO,GACjB,MAA6B,mBAAlBxoB,OAAOgnB,OAnBtB,SAAsCwB,GAClC,GAAsB,iBAAXA,GAAkC,OAAXA,EAC9B,OAAOA,EAGX,IAAI48B,EAAUmtM,EACd,IAAKA,KAFLvyP,OAAOgnB,OAAOwB,GAEOA,EACbA,EAAOlhB,eAAeirP,IAGE,iBAFxBntM,EAAW58B,EAAO+pO,KAGdD,EAAWltM,GAIvB,OAAO58B,CACX,CAIegqO,CAA4BhqO,GAEhCA,CACX,GAeAiqO,EAAc,WAMd,SAASC,EAASC,GACd,OAAOA,GAAO,KAAOA,GAAO,GAChC,CAMA,MAAO,CACHC,QAbJ,SAAkBD,GACd,OAAQA,GAAO,KAAOA,GAAO,KAAUA,GAAO,KAAOA,GAAO,GAChE,EAYID,QAASA,EACT3tG,WAPJ,SAAqB4tG,GACjB,OAAOD,EAAQC,IAASA,GAAO,KAAOA,GAAO,KAASA,GAAO,KAAOA,GAAO,GAC/E,EAOJ,CAnBiB,GAqBbE,EAAc,WACd,IAAIC,EAKU,SAAUC,GAChB,OAAIA,GAAiB,IACV,EAEF,KAAQA,GAAiBA,GAAiB,IACxC,EAEF,KAAQA,GAAiBA,GAAiB,IACxC,EAEF,KAAQA,GAAiBA,GAAiB,IACxC,EAGJ,CACX,EApBAD,EAqB0B,SAAU1wH,GAChC,OAAO,KAAQA,GAAYA,GAAY,GAC3C,EA2BJ,SAAS4wH,EAAqBxwP,EAAMpB,GAChC,MAA8B,MAAvBoB,EAAKq4F,OAAOz5F,IAAkBqxP,EAAW1tG,WAAWviJ,EAAKq4F,OAAOz5F,EAAQ,KAAOqxP,EAAW1tG,WAAWviJ,EAAKq4F,OAAOz5F,EAAQ,GACpI,CAQA,SAAS6xP,EAAWzwP,EAAMpB,GACtB,OAAOU,SAASU,EAAK0jF,OAAO9kF,EAAO,GAAI,GAC3C,CAgDA,MAAO,CACH8xP,gBAhFJ,SAA0BP,GACtB,IAGIQ,EACAp2O,EAHAta,EAAS,GACT2wP,EAjCI,SAAUT,GAEd,OAAOjd,SAASjtH,mBAAmBkqI,GACvC,CA8BaG,CAAYH,GAGzB,IAAK51O,EAAQ,EAAGA,EAAQq2O,EAAOjzP,OAAQ4c,GAAS,EAE5Cta,GAAU,MADV0wP,EAAQC,EAAOn1P,WAAW8e,IACD,GAAO,IAAM,IAAMo2O,EAAM/yP,SAAS,IAAI4D,cAEnE,OAAOvB,CACX,EAsEI4wP,aA3CJ,SAAuBV,GACnB,IAAKK,EAAoBL,EAAK,GAC1B,OAAO,EAEX,IAAII,EAAgBE,EAAUN,EAAK,GAC/BW,EAAWR,EAAcC,GAC7B,GAAiB,IAAbO,EACA,OAAO,EAEX,IAAK,IAAIC,EAAa,EAAGA,EAAaD,EAAUC,GAAc,EAC1D,IAAKP,EAAoBL,EAAK,EAAEY,KAAgBT,EAA8BG,EAAUN,EAAK,EAAEY,EAAa,IACxG,OAAO,EAGf,OAAO,CACX,EA6BIC,UArBJ,SAAmBhxP,EAAM03E,GACrB,IAAIy4K,EAAMnwP,EAAKq4F,OAAO3gB,GACtB,IAAK84K,EAAoBxwP,EAAM03E,GAC3B,OAAOy4K,EAEX,IAAIc,EAAeR,EAAUzwP,EAAM03E,EAAa,GAC5Co5K,EAAWR,EAAcW,GAC7B,GAAiB,IAAbH,EACA,OAAOX,EAEX,IAAK,IAAIY,EAAa,EAAGA,EAAaD,EAAUC,GAAc,EAC1D,IAAKP,EAAoBxwP,EAAM03E,EAAa,EAAIq5K,KAAgBT,EAA8BG,EAAUzwP,EAAM03E,EAAa,EAAIq5K,EAAa,IACxI,OAAOZ,EAGf,OAAOnwP,EAAK0jF,OAAOhM,EAAY,EAAIo5K,EACvC,EAOJ,CApHiB,GAsHbI,EAOA,SAAoBf,GAChB,OAAOF,EAAWG,QAAQD,IAAQF,EAAWC,QAAQC,IAAgB,MAARA,GAAeE,EAAWQ,aAAaV,EACxG,EATAe,EAgBA,SAAuBf,GACnB,OAAOF,EAAWG,QAAQD,IAAQF,EAAWC,QAAQC,IAAgB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,CAC9G,EAlBAe,EA0BA,SAAqBf,GACjB,MAAe,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GACjJ,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,GAAuB,MAARA,CAClG,EAaAgB,EAAkB,WAElB,SAASphJ,EAAQ/vG,EAAMoxP,GACnB,IAEI72O,EADAta,EAAS,GAETkwP,EAAM,GAIV,IAHoB,iBAATnwP,GAAqC,kBAATA,IACnCA,EAAOA,EAAKpC,YAEX2c,EAAQ,EAAGA,EAAQva,EAAKrC,OAAQ4c,GAAS41O,EAAIxyP,OAC9CwyP,EAAMnwP,EAAKq4F,OAAO99E,GAClBta,GAAUixP,EAA2Bf,IAASiB,GAAgBF,EAAyBf,GAAQA,EAAME,EAAWK,gBAAgBP,GAEpI,OAAOlwP,CACX,CAiCA,MAAO,CACH8vG,OAAQA,EACRshJ,mBAjCJ,SAA6BrxP,GACzB,OAAO+vG,EAAO/vG,GAAM,EACxB,EAgCIsxP,cApBJ,SAAwBh+M,GACpB,IAEI/4B,EADAta,EAAS,GAETkwP,EAAM,GACV,IAAK51O,EAAQ,EAAGA,EAAQ+4B,EAAQ31C,OAAQ4c,GAAS41O,EAAIxyP,QACjDwyP,EAAME,EAAWW,UAAU19M,EAAS/4B,IAC5B5c,OAAS,EACbsC,GAAUkwP,EAGVlwP,GAAUixP,EAAyBf,IAAQe,EAA2Bf,GAAOA,EAAME,EAAWK,gBAAgBP,GAGtH,OAAOlwP,CACX,EAMIsxP,uBA/BJ,SAAiCj+M,EAAS/4B,GACtC,IAAI41O,EAAME,EAAWW,UAAU19M,EAAS/4B,GACxC,OAAI41O,EAAIxyP,OAAS,GAINuzP,EAAyBf,IAAQe,EAA2Bf,GAH5DA,EAGyEE,EAAWK,gBAAgBP,EAEnH,EA0BJ,CAvDqB,GA2DjBqB,EAAa,WAEb,IACIC,EAAW,CAAC,EAEhB,SAASttP,EAAQ+kO,GACbuoB,EAASvoB,GAAU,CACfA,OAAQA,EACR5jK,UAAuB,MAAX4jK,EAAkB,IAAkB,KAAXA,GAA4B,MAAXA,GAA6B,MAAXA,EAAkB,IAAMA,EAChGjqM,MAAkB,MAAXiqM,GAA6B,MAAXA,GAA6B,MAAXA,EAC3CwoB,QAAqB,MAAXxoB,GAA6B,MAAXA,EAAkB,IAAM,GACpDp8K,MAAmB,MAAXo8K,EAAmB,GAAKA,EAChCn5H,OAAoB,MAAXm5H,GAA6B,MAAXA,EAAkBioB,EAAeE,mBAAqBF,EAAephJ,OAChGnyG,SAAU,WACN,OAAOxB,KAAK8sO,MAChB,EAER,CAUA,OARA/kO,EAAO,IACPA,EAAO,KACPA,EAAO,KACPA,EAAO,KACPA,EAAO,KACPA,EAAO,KACPA,EAAO,KACPA,EAAO,KACA,CACHizD,QAAS,SAAU+4L,GACf,OAAIsB,EAAStB,GACFsB,EAAStB,GAEhB,QAAQjqP,QAAQiqP,IAAQ,EACjB,KAEJsB,EAAS,GACpB,EAER,CAtCgB,GAmDhB,SAASE,EAAW3rO,GAChB,IACI+pO,EACJ,GAAI/pO,QACA,OAAO,EAEX,GAAI4pO,EAAa5oP,QAAQgf,GAErB,OAAOA,EAAOroB,OAAS,EAE3B,GAAsB,iBAAXqoB,GAAyC,iBAAXA,GAAyC,kBAAXA,EAEnE,OAAO,EAGX,IAAK+pO,KAAgB/pO,EACjB,GAAIA,EAAOlhB,eAAeirP,IAAiB4B,EAAU3rO,EAAO+pO,IACxD,OAAO,EAGf,OAAO,CACX,CAEA,IAAI6B,EAAqB,WACrB,SAASA,EAAmBt+M,GACxBl3C,KAAKk3C,QAAU69M,EAAeG,cAAch+M,EAChD,CAQA,OANAs+M,EAAkB9zP,UAAUglD,OAAS,WACjC,OAAO1mD,KAAKk3C,OAChB,EAEAs+M,EAAkB9zP,UAAUF,SAAWg0P,EAAkB9zP,UAAUglD,OAE5D8uM,CACX,CAZwB,GAcpBvoP,EAAS,WAET,SAASwoP,EAAiBC,GACtB,IACIhvN,EAKAvoB,EAJAw3O,EAAW,GACXC,EAAU,KACVC,EAAe,KACfC,EAAiB,KAEjB/B,EAAM,GAEV,SAASgC,IACL,IAAIC,EAAUN,EAAen3J,UAAUs3J,EAAc13O,GACrD,GAAuB,IAAnB63O,EAAQz0P,OACR,MAAM,IAAIgyP,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,8BAA+BgG,SAAUoJ,IAElHy3O,EAAU,CAACI,QAASA,EAASC,UAAU,EAAO7mO,UAAW,MACzDymO,EAAe,IACnB,CAEA,SAASK,IACL,GAAIJ,IAAmB33O,EACnB,MAAM,IAAIo1O,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,6CAA8CgG,SAAUoJ,IAEjIy3O,EAAQxmO,UAAYlsB,SAASwyP,EAAen3J,UAAUu3J,EAAgB33O,GAAQ,IAC9E23O,EAAiB,IACrB,CAaA,IAXApvN,EAAY,SAAUyvN,GAClB,IAAI56N,EAAK65N,EAAUp6L,QAAQm7L,GAC3B,GAAW,OAAP56N,EACA,MAAM,IAAIg4N,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,mCAAoCgG,SAAUoJ,EAAOuoB,SAAUyvN,IAExI,OAAO56N,CACX,CANW,CAMTm6N,EAAez5J,OAAO,IACxB99E,EAAQuoB,EAASomM,OAAOvrO,OAExBs0P,EAAe13O,EAERA,EAAQu3O,EAAen0P,OAAQ4c,GAAS41O,EAAIxyP,OAAQ,CAGvD,GAFAwyP,EAAME,EAAWW,UAAUc,EAAgBv3O,GAEtB,OAAjB03O,EAAuB,CAGvB,GAAY,MAAR9B,EAAa,CACb,GAAI8B,IAAiB13O,EACjB,MAAM,IAAIo1O,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,sCAAuCgG,SAAUoJ,IAE1H,QACJ,CACA,GAAI22O,EAAwBf,GACxB,SAEJgC,GACJ,CACA,GAAuB,OAAnBD,EAAyB,CACzB,GAAI33O,IAAU23O,GAA0B,MAAR/B,EAC5B,MAAM,IAAIR,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,wCAAyCgG,SAAUoJ,IAE5H,GAAI01O,EAAWC,QAAQC,GAAM,CACzB,GAAI51O,EAAQ23O,GAAkB,EAC1B,MAAM,IAAIvC,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,mCAAoCgG,SAAUoJ,IAEvH,QACJ,CACA+3O,GACJ,CACA,GAAY,MAARnC,EAUJ,GAAY,MAARA,EAAJ,CAcA,GAAY,MAARA,EAMJ,MAAM,IAAIR,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,oBAAqBkvL,UAAW81D,EAAKh/O,SAAUoJ,IALhHw3O,EAASpyP,KAAKqyP,GACdA,EAAU,KACVC,EAAe13O,EAAQ,CAL3B,KAZA,CACI,GAAgB,OAAZy3O,EACA,MAAM,IAAIrC,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,2BAA4BgG,SAAUoJ,IAE/G,GAAIy3O,EAAQK,SACR,MAAM,IAAI1C,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,iBAAkBgG,SAAUoJ,IAErG,GAAIy3O,EAAQxmO,UACR,MAAM,IAAImkO,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,6CAA8CgG,SAAUoJ,IAEjIy3O,EAAQK,UAAW,CAEvB,KAtBA,CACI,GAA0B,OAAtBL,EAAQxmO,UACR,MAAM,IAAImkO,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,6CAA8CgG,SAAUoJ,IAEjI,GAAIy3O,EAAQK,SACR,MAAM,IAAI1C,EAAiB,CAACmC,eAAgBA,EAAgB3mP,QAAS,6CAA8CgG,SAAUoJ,IAEjI23O,EAAiB33O,EAAQ,CAE7B,CAsBJ,CAQA,OAPqB,OAAjB03O,GACAE,IAEmB,OAAnBD,GACAI,IAEJP,EAASpyP,KAAKqyP,GACP,IAAIQ,EAAmBV,EAAgBhvN,EAAUivN,EAC5D,CA4DA,OA1DA,SAAgBU,GAEZ,IACIl4O,EACA41O,EACA9tN,EAAc,GACdqwN,EAAiB,KACjBC,EAAe,EACnB,IAAKp4O,EAAQ,EAAGA,EAAQk4O,EAAgB90P,OAAQ4c,GAAS,EAErD,GADA41O,EAAMsC,EAAgBp6J,OAAO99E,GACR,OAAjBo4O,EAAJ,CAcA,GAAuB,OAAnBD,EAuBJ,MAAM,IAAIv0P,MAAM,4BArBZ,GAAY,MAARgyP,EACA,MAAM,IAAIR,EAAiB,CAACiD,aAAcH,EAAiBtnP,QAAS,uBAAwBgG,SAAUoJ,IAE1G,GAAY,MAAR41O,EAAa,CACb,GAAIuC,EAAiB,IAAMn4O,EACvB,MAAM,IAAIo1O,EAAiB,CAACiD,aAAcH,EAAiBtnP,QAAS,eAAgBgG,SAAUuhP,IAElG,IACIrwN,EAAY1iC,KAAKkyP,EAAgBY,EAAgB93J,UAAU+3J,EAAiB,EAAGn4O,IACnF,CACA,MAAOhb,GACH,GAAIA,EAAMzB,YAAc6xP,EAAiB7xP,UACrC,MAAM,IAAI6xP,EAAiB,CAACiD,aAAcH,EAAiBtnP,QAAS5L,EAAM2D,QAAQiI,QAASgG,SAAUuhP,EAAiBnzP,EAAM2D,QAAQiO,SAAU0hP,QAAStzP,EAAM2D,UAEjK,MAAM3D,CACV,CACAmzP,EAAiB,KACjBC,EAAep4O,EAAQ,CAC3B,CAtBJ,KAZA,CACI,GAAY,MAAR41O,EACA,MAAM,IAAIR,EAAiB,CAACiD,aAAcH,EAAiBtnP,QAAS,wBAAyBgG,SAAUoJ,IAE/F,MAAR41O,IACIwC,EAAep4O,GACf8nB,EAAY1iC,KAAK,IAAIiyP,EAAkBa,EAAgB93J,UAAUg4J,EAAcp4O,KAEnFo4O,EAAe,KACfD,EAAiBn4O,EAGzB,CA2BJ,GAAuB,OAAnBm4O,EACA,MAAM,IAAI/C,EAAiB,CAACiD,aAAcH,EAAiBtnP,QAAS,iBAAkBgG,SAAUuhP,IAKpG,OAHIC,EAAeF,EAAgB90P,QAC/B0kC,EAAY1iC,KAAK,IAAIiyP,EAAkBa,EAAgB/uK,OAAOivK,KAE3D,IAAIG,EAAYL,EAAiBpwN,EAC5C,CAGJ,CA1KY,GA4KRmwN,EAAsB,WAEtB,SAASO,EAAaz2P,GAClB,OAAQ8B,MAAQA,KAAKC,UAAaD,KAAKC,UAAU/B,GAASA,CAC9D,CAEA,SAASquD,EAASruD,GACd,IAAKq1P,EAAUr1P,GACX,OAAO,EAEX,GAAIszP,EAAatzD,SAAShgM,GACtB,MAAiB,KAAVA,EAEX,GAAIszP,EAAan1I,SAASn+G,IAAUszP,EAAaC,UAAUvzP,GACvD,OAAO,EAEX,GAAIszP,EAAa5oP,QAAQ1K,GACrB,OAAwB,IAAjBA,EAAMqB,OAEjB,IAAK,IAAIoyP,KAAgBzzP,EACrB,GAAIA,EAAMwI,eAAeirP,GACrB,OAAO,EAGf,OAAO,CACX,CAEA,SAASiD,EAAehtO,GACpB,IAEI+pO,EADA9vP,EAAS,GAEb,IAAK8vP,KAAgB/pO,EACbA,EAAOlhB,eAAeirP,IACtB9vP,EAAON,KAAK,CAACyG,KAAM2pP,EAAczzP,MAAO0pB,EAAO+pO,KAGvD,OAAO9vP,CACX,CAEA,SAASuyP,EAAoBI,EAAc9vN,EAAUivN,GACjD31P,KAAKw2P,aAAeA,EACpBx2P,KAAK0mC,SAAWA,EAChB1mC,KAAK21P,SAAWA,CACpB,CAMA,SAASkB,EAAkBjB,EAASlvN,EAAUxmC,GAC1C,IAAI2D,EAAS,GAEb,GADA3D,EAAQA,EAAMsB,WACVklC,EAAS7D,MAAO,CAEhB,GADAh/B,GAAUkxP,EAAeG,cAAcU,EAAQI,SACjC,KAAV91P,EAEA,OADA2D,EAAU6iC,EAAS4uN,QAGvBzxP,GAAU,GACd,CAKA,OAJ0B,OAAtB+xP,EAAQxmO,YACRlvB,EAAQA,EAAMonF,OAAO,EAAGsuK,EAAQxmO,YAEpCvrB,EAAU6iC,EAASitE,OAAOzzG,EAE9B,CAEA,SAAS42P,EAAcC,GACnB,OAAOxB,EAAUwB,EAAU72P,MAC/B,CAEA,SAAS82P,EAAkBpB,EAASlvN,EAAUxmC,GAC1C,IACI03F,EAAM,GACN/zF,EAAS,GACb,GAAI6iC,EAAS7D,MAAO,CAEhB,GADAh/B,GAAUkxP,EAAeG,cAAcU,EAAQI,SAC3CznM,EAAQruD,GAER,OADA2D,EAAU6iC,EAAS4uN,QAGvBzxP,GAAU,GACd,CAeA,OAdI2vP,EAAa5oP,QAAQ1K,IACrB03F,EAAM13F,EACN03F,EAAM47J,EAAavuP,OAAO2yF,EAAK29J,GAC/B39J,EAAM47J,EAAaruP,IAAIyyF,EAAKlxD,EAASitE,QACrC9vG,GAAU2vP,EAAanuP,KAAKuyF,EAAK,OAGjCA,EAAMg/J,EAAc12P,GACpB03F,EAAM47J,EAAavuP,OAAO2yF,EAAKk/J,GAC/Bl/J,EAAM47J,EAAaruP,IAAIyyF,GAAK,SAAUm/J,GAClC,OAAOrwN,EAASitE,OAAOojJ,EAAU/sP,MAAQ,IAAM08B,EAASitE,OAAOojJ,EAAU72P,MAC7E,IACA2D,GAAU2vP,EAAanuP,KAAKuyF,EAAK,MAE9B/zF,CACX,CAEA,SAASozP,EAAqBrB,EAASlvN,EAAUxmC,GAC7C,IAEI03F,EAAM,GA6BV,OA9Bc47J,EAAa5oP,QAAQ1K,IAG/B03F,EAAM13F,EACN03F,EAAM47J,EAAavuP,OAAO2yF,EAAK29J,GAC/B39J,EAAM47J,EAAaruP,IAAIyyF,GAAK,SAAUs/J,GAClC,IAAIp9J,EAAMi7J,EAAeG,cAAcU,EAAQI,SAO/C,OANIznM,EAAQ2oM,GACRp9J,GAAOpzD,EAAS4uN,QAGhBx7J,GAAO,IAAMpzD,EAASitE,OAAOujJ,GAE1Bp9J,CACX,MAGAlC,EAAMg/J,EAAc12P,GACpB03F,EAAM47J,EAAavuP,OAAO2yF,EAAKk/J,GAC/Bl/J,EAAM47J,EAAaruP,IAAIyyF,GAAK,SAAUm/J,GAClC,IAAIj9J,EAAMi7J,EAAeG,cAAc6B,EAAU/sP,MAOjD,OANIukD,EAAQwoM,EAAU72P,OAClB45F,GAAOpzD,EAAS4uN,QAGhBx7J,GAAO,IAAMpzD,EAASitE,OAAOojJ,EAAU72P,OAEpC45F,CACX,KAEG05J,EAAanuP,KAAKuyF,EAAKlxD,EAASwiC,UAC3C,CAEA,SAASiuL,EAAuBzwN,EAAUxmC,GACtC,IACI03F,EAAM,GACN/zF,EAAS,GAiBb,OAhBI2vP,EAAa5oP,QAAQ1K,IACrB03F,EAAM13F,EACN03F,EAAM47J,EAAavuP,OAAO2yF,EAAK29J,GAC/B39J,EAAM47J,EAAaruP,IAAIyyF,EAAKlxD,EAASitE,QACrC9vG,GAAU2vP,EAAanuP,KAAKuyF,EAAKlxD,EAASwiC,aAG1C0uB,EAAMg/J,EAAc12P,GACpB03F,EAAM47J,EAAavuP,OAAO2yF,GAAK,SAAUm/J,GACrC,OAAOxB,EAAUwB,EAAU72P,MAC/B,IACA03F,EAAM47J,EAAaruP,IAAIyyF,GAAK,SAAUm/J,GAClC,OAAOrwN,EAASitE,OAAOojJ,EAAU/sP,MAAQ,IAAM08B,EAASitE,OAAOojJ,EAAU72P,MAC7E,IACA2D,GAAU2vP,EAAanuP,KAAKuyF,EAAKlxD,EAASwiC,YAEvCrlE,CACX,CAwDA,OAvKAuyP,EAAmB10P,UAAUF,SAAW,WACpC,OAAOxB,KAAKw2P,YAChB,EAgHAJ,EAAmB10P,UAAUglD,OAAS,SAAUpvB,GAC5C,IAEInZ,EACAy3O,EACA11P,EAHAyiL,EAAW,GAMXj8I,EAAW1mC,KAAK0mC,SAGpB,IAAKvoB,EAAQ,EAAGA,EAAQne,KAAK21P,SAASp0P,OAAQ4c,GAAS,EAKnD,GAAIje,OAHJA,EAAQo3B,GADRs+N,EAAU51P,KAAK21P,SAASx3O,IACE63O,UAU1B,GAJIJ,EAAQK,SAGCzC,EAAa5oP,QAAQ1K,GACb,iBAAVA,GAAuC,iBAAVA,GAAuC,kBAAVA,EACjEyiL,EAASp/K,KAAKszP,EAAkBjB,EAASlvN,EAAUxmC,QAElD,IAAI01P,EAAQxmO,WAAammO,EAAUr1P,GAEpC,MAAM,IAAI6B,MAAM,oGAAsG/B,KAAO,SAAW22P,EAAYz2P,IAE9I01P,EAAQK,SAKTV,EAAUr1P,KACXwmC,EAAS7D,MACT8/I,EAASp/K,KAAK0zP,EAAoBrB,EAASlvN,EAAUxmC,IAGrDyiL,EAASp/K,KAAK4zP,EAAsBzwN,EAAUxmC,MAT9CwmC,EAAS7D,OAAU0rB,EAAQruD,IAC3ByiL,EAASp/K,KAAKyzP,EAAkBpB,EAASlvN,EAAUxmC,GAU3D,CAGJ,OAAwB,IAApByiL,EAASphL,OACF,GAGAmlC,EAASgqB,MAAQ8iM,EAAanuP,KAAKs9K,EAAUj8I,EAASwiC,UAErE,EAEOktL,CACX,CArNyB,GAuNrBM,EAAe,WACf,SAASA,EAAaF,EAAcvwN,GAChCjmC,KAAKw2P,aAAeA,EACpBx2P,KAAKimC,YAAcA,EACnButN,EAAaE,WAAW1zP,KAC5B,CAmBA,OAjBA02P,EAAYh1P,UAAUF,SAAW,WAC7B,OAAOxB,KAAKw2P,YAChB,EAEAE,EAAYh1P,UAAUglD,OAAS,SAAUpvB,GAErC,IACInZ,EACAta,EAAS,GACb,IAAKsa,EAAQ,EAAGA,EAAQne,KAAKimC,YAAY1kC,OAAQ4c,GAAS,EACtDta,GAAU7D,KAAKimC,YAAY9nB,GAAOuoC,OAAOpvB,GAE7C,OAAOzzB,CACX,EAEA6yP,EAAYzpP,MAAQA,EACpBypP,EAAYnD,iBAAmBA,EACxBmD,CACX,CAzBkB,IA6BhB,SAAUA,GAIAzyP,EAAOC,QAAUwyP,CAazB,CAnBApD,CAAeoD,EAEnB,CA31BA,mBCiDA,SAAS51N,EAAQ92B,GAEf,IACE,IAAK,EAAAqnD,EAAO+lM,aAAc,OAAO,CACnC,CAAE,MAAOjzN,GACP,OAAO,CACT,CACA,IAAIgH,EAAM,EAAAkmB,EAAO+lM,aAAaptP,GAC9B,OAAI,MAAQmhC,GACyB,SAA9BjpC,OAAOipC,GAAK7lC,aACrB,CA7DArB,EAAOC,QAoBP,SAAoBm7D,EAAIlkD,GACtB,GAAI2lB,EAAO,iBACT,OAAOu+B,EAGT,IAAIymD,GAAS,EAeb,OAdA,WACE,IAAKA,EAAQ,CACX,GAAIhlF,EAAO,oBACT,MAAM,IAAI/+B,MAAMoZ,GACP2lB,EAAO,oBAChB4pE,QAAQlkC,MAAMrrD,GAEduvF,QAAQ/jC,KAAKxrD,GAEf2qG,GAAS,CACX,CACA,OAAOzmD,EAAG94D,MAAMvG,KAAM+hB,UACxB,CAGF,gCC5CA3gB,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETkB,OAAO+C,eAAeD,EAAS,MAAO,CACpCmD,YAAY,EACZC,IAAK,WACH,OAAO+vP,EAAKz0N,OACd,IAEFxhC,OAAO+C,eAAeD,EAAS,QAAS,CACtCmD,YAAY,EACZC,IAAK,WACH,OAAOgwP,EAAO10N,OAChB,IAEFxhC,OAAO+C,eAAeD,EAAS,YAAa,CAC1CmD,YAAY,EACZC,IAAK,WACH,OAAOiwP,EAAW30N,OACpB,IAEFxhC,OAAO+C,eAAeD,EAAS,KAAM,CACnCmD,YAAY,EACZC,IAAK,WACH,OAAOkwP,EAAG50N,OACZ,IAEFxhC,OAAO+C,eAAeD,EAAS,KAAM,CACnCmD,YAAY,EACZC,IAAK,WACH,OAAOmwP,EAAI70N,OACb,IAEFxhC,OAAO+C,eAAeD,EAAS,KAAM,CACnCmD,YAAY,EACZC,IAAK,WACH,OAAOowP,EAAI90N,OACb,IAEFxhC,OAAO+C,eAAeD,EAAS,KAAM,CACnCmD,YAAY,EACZC,IAAK,WACH,OAAOqwP,EAAI/0N,OACb,IAEFxhC,OAAO+C,eAAeD,EAAS,WAAY,CACzCmD,YAAY,EACZC,IAAK,WACH,OAAOswP,EAAUh1N,OACnB,IAEFxhC,OAAO+C,eAAeD,EAAS,UAAW,CACxCmD,YAAY,EACZC,IAAK,WACH,OAAOuwP,EAASj1N,OAClB,IAGF,IAAI40N,EAAKp+H,EAAuB,EAAQ,QAEpCq+H,EAAMr+H,EAAuB,EAAQ,QAErCs+H,EAAMt+H,EAAuB,EAAQ,QAErCu+H,EAAMv+H,EAAuB,EAAQ,QAErCi+H,EAAOj+H,EAAuB,EAAQ,QAEtCy+H,EAAWz+H,EAAuB,EAAQ,QAE1Cw+H,EAAYx+H,EAAuB,EAAQ,QAE3Cm+H,EAAan+H,EAAuB,EAAQ,QAE5Ck+H,EAASl+H,EAAuB,EAAQ,OAE5C,SAASA,EAAuBvvH,GAAO,OAAOA,GAAOA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,EAAO,6BCf9F,SAASiuP,EAAgBC,GACvB,OAAwC,IAAhCA,EAAe,KAAO,GAAK,GAAU,CAC/C,CAsHA,SAASC,EAAQh5N,EAAG28D,GAClB,MAAMs8J,GAAW,MAAJj5N,IAAmB,MAAJ28D,GAE5B,OADa38D,GAAK,KAAO28D,GAAK,KAAOs8J,GAAO,KAC9B,GAAW,MAANA,CACrB,CAcA,SAASC,EAAOh/O,EAAGsiF,EAAGI,EAAG58D,EAAG95B,EAAG8+F,GAC7B,OAAOg0J,GATcj5O,EASQi5O,EAAQA,EAAQx8J,EAAGtiF,GAAI8+O,EAAQh5N,EAAGglE,OATrCm0J,EAS0CjzP,GARhD6Z,IAAQ,GAAKo5O,EAQuCv8J,GAT1E,IAAuB78E,EAAKo5O,CAU5B,CAEA,SAASC,EAAM58J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAG95B,EAAG8+F,GAC/B,OAAOk0J,EAAOt8J,EAAIzoF,GAAKyoF,EAAImD,EAAGvD,EAAGI,EAAG58D,EAAG95B,EAAG8+F,EAC5C,CAEA,SAASq0J,EAAM78J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAG95B,EAAG8+F,GAC/B,OAAOk0J,EAAOt8J,EAAImD,EAAI5rF,GAAK4rF,EAAGvD,EAAGI,EAAG58D,EAAG95B,EAAG8+F,EAC5C,CAEA,SAASs0J,EAAM98J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAG95B,EAAG8+F,GAC/B,OAAOk0J,EAAOt8J,EAAIzoF,EAAI4rF,EAAGvD,EAAGI,EAAG58D,EAAG95B,EAAG8+F,EACvC,CAEA,SAASu0J,EAAM/8J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAG95B,EAAG8+F,GAC/B,OAAOk0J,EAAO/kP,GAAKyoF,GAAKmD,GAAIvD,EAAGI,EAAG58D,EAAG95B,EAAG8+F,EAC1C,CAzNA5iG,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAyNlBA,EAAA,QAnMA,SAAa+J,GACX,GAAqB,iBAAVA,EAAoB,CAC7B,MAAMkN,EAAM27N,SAASjtH,mBAAmB57G,IAExCA,EAAQ,IAAIpC,WAAWsP,EAAI5Z,QAE3B,IAAK,IAAIF,EAAI,EAAGA,EAAI8Z,EAAI5Z,SAAUF,EAChC4M,EAAM5M,GAAK8Z,EAAI9b,WAAWgC,EAE9B,CAEA,OAOF,SAA8BoM,GAC5B,MAAMwnB,EAAS,GACTujO,EAA0B,GAAf/qP,EAAMlM,OACjBk3P,EAAS,mBAEf,IAAK,IAAIp3P,EAAI,EAAGA,EAAIm3P,EAAUn3P,GAAK,EAAG,CACpC,MAAM29B,EAAIvxB,EAAMpM,GAAK,KAAOA,EAAI,GAAK,IAC/Bu1O,EAAM1zO,SAASu1P,EAAOx8J,OAAOj9D,IAAM,EAAI,IAAQy5N,EAAOx8J,OAAW,GAAJj9D,GAAW,IAC9E/J,EAAO1xB,KAAKqzO,EACd,CAEA,OAAO3hN,CACT,CAnBSyjO,CAiCT,SAAoB15N,EAAGk7D,GAErBl7D,EAAEk7D,GAAO,IAAM,KAAQA,EAAM,GAC7Bl7D,EAAE84N,EAAgB59J,GAAO,GAAKA,EAC9B,IAAIsB,EAAI,WACJI,GAAK,UACLzoF,GAAK,WACL4rF,EAAI,UAER,IAAK,IAAI19F,EAAI,EAAGA,EAAI29B,EAAEz9B,OAAQF,GAAK,GAAI,CACrC,MAAMs3P,EAAOn9J,EACPo9J,EAAOh9J,EACPi9J,EAAO1lP,EACP2lP,EAAO/5J,EACbvD,EAAI48J,EAAM58J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,GAAI,GAAI,WAChC09F,EAAIq5J,EAAMr5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,IAAK,WACrC8R,EAAIilP,EAAMjlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,GAAI,WACpCu6F,EAAIw8J,EAAMx8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,YACrCm6F,EAAI48J,EAAM58J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,WACpC09F,EAAIq5J,EAAMr5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,GAAI,YACpC8R,EAAIilP,EAAMjlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,IAAK,YACrCu6F,EAAIw8J,EAAMx8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,UACrCm6F,EAAI48J,EAAM58J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,EAAG,YACnC09F,EAAIq5J,EAAMr5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,IAAK,YACrC8R,EAAIilP,EAAMjlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,IAAK,OACtCu6F,EAAIw8J,EAAMx8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,IAAK,YACtCm6F,EAAI48J,EAAM58J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,IAAK,EAAG,YACpC09F,EAAIq5J,EAAMr5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,IAAK,UACtC8R,EAAIilP,EAAMjlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,IAAK,YACtCu6F,EAAIw8J,EAAMx8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,GAAI,YACrCm6F,EAAI68J,EAAM78J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,WACpC09F,EAAIs5J,EAAMt5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,GAAI,YACpC8R,EAAIklP,EAAMllP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,GAAI,WACrCu6F,EAAIy8J,EAAMz8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,GAAI,IAAK,WACjCm6F,EAAI68J,EAAM78J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,WACpC09F,EAAIs5J,EAAMt5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,EAAG,UACpC8R,EAAIklP,EAAMllP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,IAAK,WACtCu6F,EAAIy8J,EAAMz8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,WACrCm6F,EAAI68J,EAAM78J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,EAAG,WACnC09F,EAAIs5J,EAAMt5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,GAAI,YACrC8R,EAAIklP,EAAMllP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,IAAK,WACrCu6F,EAAIy8J,EAAMz8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,GAAI,YACpCm6F,EAAI68J,EAAM78J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,IAAK,GAAI,YACrC09F,EAAIs5J,EAAMt5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,GAAI,UACpC8R,EAAIklP,EAAMllP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,GAAI,YACpCu6F,EAAIy8J,EAAMz8J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,IAAK,YACtCm6F,EAAI88J,EAAM98J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,QACpC09F,EAAIu5J,EAAMv5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,IAAK,YACrC8R,EAAImlP,EAAMnlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,GAAI,YACrCu6F,EAAI08J,EAAM18J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,IAAK,UACtCm6F,EAAI88J,EAAM98J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,YACpC09F,EAAIu5J,EAAMv5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,GAAI,YACpC8R,EAAImlP,EAAMnlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,IAAK,WACrCu6F,EAAI08J,EAAM18J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,IAAK,YACtCm6F,EAAI88J,EAAM98J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,IAAK,EAAG,WACpC09F,EAAIu5J,EAAMv5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,GAAI,IAAK,WACjC8R,EAAImlP,EAAMnlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,IAAK,WACrCu6F,EAAI08J,EAAM18J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,GAAI,UACpCm6F,EAAI88J,EAAM98J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,WACpC09F,EAAIu5J,EAAMv5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,IAAK,WACtC8R,EAAImlP,EAAMnlP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,GAAI,WACrCu6F,EAAI08J,EAAM18J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,WACrCm6F,EAAI+8J,EAAM/8J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,GAAI,GAAI,WAChC09F,EAAIw5J,EAAMx5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,GAAI,YACpC8R,EAAIolP,EAAMplP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,IAAK,YACtCu6F,EAAI28J,EAAM38J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,UACrCm6F,EAAI+8J,EAAM/8J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,IAAK,EAAG,YACpC09F,EAAIw5J,EAAMx5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,GAAI,IAAK,YACrC8R,EAAIolP,EAAMplP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,IAAK,IAAK,SACtCu6F,EAAI28J,EAAM38J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,YACrCm6F,EAAI+8J,EAAM/8J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,EAAG,YACnC09F,EAAIw5J,EAAMx5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,IAAK,UACtC8R,EAAIolP,EAAMplP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,IAAK,YACrCu6F,EAAI28J,EAAM38J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,IAAK,GAAI,YACrCm6F,EAAI+8J,EAAM/8J,EAAGI,EAAGzoF,EAAG4rF,EAAG//D,EAAE39B,EAAI,GAAI,GAAI,WACpC09F,EAAIw5J,EAAMx5J,EAAGvD,EAAGI,EAAGzoF,EAAG6rB,EAAE39B,EAAI,IAAK,IAAK,YACtC8R,EAAIolP,EAAMplP,EAAG4rF,EAAGvD,EAAGI,EAAG58D,EAAE39B,EAAI,GAAI,GAAI,WACpCu6F,EAAI28J,EAAM38J,EAAGzoF,EAAG4rF,EAAGvD,EAAGx8D,EAAE39B,EAAI,GAAI,IAAK,WACrCm6F,EAAIw8J,EAAQx8J,EAAGm9J,GACf/8J,EAAIo8J,EAAQp8J,EAAGg9J,GACfzlP,EAAI6kP,EAAQ7kP,EAAG0lP,GACf95J,EAAIi5J,EAAQj5J,EAAG+5J,EACjB,CAEA,MAAO,CAACt9J,EAAGI,EAAGzoF,EAAG4rF,EACnB,CAtH8Bg6J,CA6H9B,SAAsBtrP,GACpB,GAAqB,IAAjBA,EAAMlM,OACR,MAAO,GAGT,MAAMy3P,EAAyB,EAAfvrP,EAAMlM,OAChB0zB,EAAS,IAAIsrE,YAAYu3J,EAAgBkB,IAE/C,IAAK,IAAI33P,EAAI,EAAGA,EAAI23P,EAAS33P,GAAK,EAChC4zB,EAAO5zB,GAAK,KAAsB,IAAfoM,EAAMpM,EAAI,KAAcA,EAAI,GAGjD,OAAO4zB,CACT,CA1IyCgkO,CAAahrP,GAAuB,EAAfA,EAAM1M,QACpE,8BCrCAH,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAAIg2H,EAAW,CACbg/H,WAFmC,oBAAXp5J,QAA0BA,OAAOo5J,YAAcp5J,OAAOo5J,WAAW/3O,KAAK2+E,SAIhG57F,EAAA,QAAkBg2H,8BCRlB94H,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElBA,EAAA,QADe,oECJf9C,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAEgC2F,EAF5B+tP,GAE4B/tP,EAFO,EAAQ,SAEMA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAmCvF3F,EAAA,QAjCA,SAAek5E,GACb,KAAK,EAAIw6K,EAAUh1N,SAASw6C,GAC1B,MAAMlzE,UAAU,gBAGlB,IAAIg0F,EACJ,MAAMtG,EAAM,IAAI/rF,WAAW,IAuB3B,OArBA+rF,EAAI,IAAMsG,EAAIh7F,SAASk6E,EAAK54E,MAAM,EAAG,GAAI,OAAS,GAClDozF,EAAI,GAAKsG,IAAM,GAAK,IACpBtG,EAAI,GAAKsG,IAAM,EAAI,IACnBtG,EAAI,GAAS,IAAJsG,EAETtG,EAAI,IAAMsG,EAAIh7F,SAASk6E,EAAK54E,MAAM,EAAG,IAAK,OAAS,EACnDozF,EAAI,GAAS,IAAJsG,EAETtG,EAAI,IAAMsG,EAAIh7F,SAASk6E,EAAK54E,MAAM,GAAI,IAAK,OAAS,EACpDozF,EAAI,GAAS,IAAJsG,EAETtG,EAAI,IAAMsG,EAAIh7F,SAASk6E,EAAK54E,MAAM,GAAI,IAAK,OAAS,EACpDozF,EAAI,GAAS,IAAJsG,EAGTtG,EAAI,KAAOsG,EAAIh7F,SAASk6E,EAAK54E,MAAM,GAAI,IAAK,KAAO,cAAgB,IACnEozF,EAAI,IAAMsG,EAAI,WAAc,IAC5BtG,EAAI,IAAMsG,IAAM,GAAK,IACrBtG,EAAI,IAAMsG,IAAM,GAAK,IACrBtG,EAAI,IAAMsG,IAAM,EAAI,IACpBtG,EAAI,IAAU,IAAJsG,EACHtG,CACT,8BCvCAx2F,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElBA,EAAA,QADe,kJCGf,IAAI67F,EAPJ3+F,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,QAOA,WAEE,IAAK67F,IAEHA,EAAoC,oBAAXD,QAA0BA,OAAOC,iBAAmBD,OAAOC,gBAAgB5+E,KAAK2+E,SAEpGC,GACH,MAAM,IAAIh+F,MAAM,4GAIpB,OAAOg+F,EAAgBo5J,EACzB,EAdA,MAAMA,EAAQ,IAAIttP,WAAW,gCCD7B,SAASyoI,EAAEpvI,EAAG85B,EAAG28D,EAAGF,GAClB,OAAQv2F,GACN,KAAK,EACH,OAAO85B,EAAI28D,GAAK38D,EAAIy8D,EAEtB,KAAK,EAML,KAAK,EACH,OAAOz8D,EAAI28D,EAAIF,EAJjB,KAAK,EACH,OAAOz8D,EAAI28D,EAAI38D,EAAIy8D,EAAIE,EAAIF,EAKjC,CAEA,SAAS29J,EAAKp6N,EAAGp8B,GACf,OAAOo8B,GAAKp8B,EAAIo8B,IAAM,GAAKp8B,CAC7B,CAzBAxB,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAkGlBA,EAAA,QA1EA,SAAc+J,GACZ,MAAMsmI,EAAI,CAAC,WAAY,WAAY,WAAY,YACzC8kH,EAAI,CAAC,WAAY,WAAY,WAAY,UAAY,YAE3D,GAAqB,iBAAVprP,EAAoB,CAC7B,MAAMkN,EAAM27N,SAASjtH,mBAAmB57G,IAExCA,EAAQ,GAER,IAAK,IAAI5M,EAAI,EAAGA,EAAI8Z,EAAI5Z,SAAUF,EAChC4M,EAAM1K,KAAK4X,EAAI9b,WAAWgC,GAE9B,MAAYsJ,MAAMC,QAAQqD,KAExBA,EAAQtD,MAAMjJ,UAAU8C,MAAMmE,KAAKsF,IAGrCA,EAAM1K,KAAK,KACX,MAAMjC,EAAI2M,EAAM1M,OAAS,EAAI,EACvB+3P,EAAI30P,KAAKq/E,KAAK1iF,EAAI,IAClBi4P,EAAI,IAAI5uP,MAAM2uP,GAEpB,IAAK,IAAIj4P,EAAI,EAAGA,EAAIi4P,IAAKj4P,EAAG,CAC1B,MAAMu2F,EAAM,IAAI2I,YAAY,IAE5B,IAAK,IAAIz9F,EAAI,EAAGA,EAAI,KAAMA,EACxB80F,EAAI90F,GAAKmL,EAAU,GAAJ5M,EAAa,EAAJyB,IAAU,GAAKmL,EAAU,GAAJ5M,EAAa,EAAJyB,EAAQ,IAAM,GAAKmL,EAAU,GAAJ5M,EAAa,EAAJyB,EAAQ,IAAM,EAAImL,EAAU,GAAJ5M,EAAa,EAAJyB,EAAQ,GAGnIy2P,EAAEl4P,GAAKu2F,CACT,CAEA2hK,EAAED,EAAI,GAAG,IAA2B,GAApBrrP,EAAM1M,OAAS,GAASoD,KAAKm8F,IAAI,EAAG,IACpDy4J,EAAED,EAAI,GAAG,IAAM30P,KAAKu/E,MAAMq1K,EAAED,EAAI,GAAG,KACnCC,EAAED,EAAI,GAAG,IAA2B,GAApBrrP,EAAM1M,OAAS,GAAS,WAExC,IAAK,IAAIF,EAAI,EAAGA,EAAIi4P,IAAKj4P,EAAG,CAC1B,MAAMs0I,EAAI,IAAIp1C,YAAY,IAE1B,IAAK,IAAIyD,EAAI,EAAGA,EAAI,KAAMA,EACxB2xC,EAAE3xC,GAAKu1J,EAAEl4P,GAAG2iG,GAGd,IAAK,IAAIA,EAAI,GAAIA,EAAI,KAAMA,EACzB2xC,EAAE3xC,GAAKo1J,EAAKzjH,EAAE3xC,EAAI,GAAK2xC,EAAE3xC,EAAI,GAAK2xC,EAAE3xC,EAAI,IAAM2xC,EAAE3xC,EAAI,IAAK,GAG3D,IAAIxI,EAAI69J,EAAE,GACNz9J,EAAIy9J,EAAE,GACNlmP,EAAIkmP,EAAE,GACNt6J,EAAIs6J,EAAE,GACNlzP,EAAIkzP,EAAE,GAEV,IAAK,IAAIr1J,EAAI,EAAGA,EAAI,KAAMA,EAAG,CAC3B,MAAM9+F,EAAIP,KAAKu/E,MAAM8f,EAAI,IACnBkxC,EAAIkkH,EAAK59J,EAAG,GAAK84C,EAAEpvI,EAAG02F,EAAGzoF,EAAG4rF,GAAK54F,EAAIouI,EAAErvI,GAAKywI,EAAE3xC,KAAO,EAC3D79F,EAAI44F,EACJA,EAAI5rF,EACJA,EAAIimP,EAAKx9J,EAAG,MAAQ,EACpBA,EAAIJ,EACJA,EAAI05C,CACN,CAEAmkH,EAAE,GAAKA,EAAE,GAAK79J,IAAM,EACpB69J,EAAE,GAAKA,EAAE,GAAKz9J,IAAM,EACpBy9J,EAAE,GAAKA,EAAE,GAAKlmP,IAAM,EACpBkmP,EAAE,GAAKA,EAAE,GAAKt6J,IAAM,EACpBs6J,EAAE,GAAKA,EAAE,GAAKlzP,IAAM,CACtB,CAEA,MAAO,CAACkzP,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,EAAI,IAAa,IAAPA,EAAE,GAAWA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,EAAI,IAAa,IAAPA,EAAE,GAAWA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,EAAI,IAAa,IAAPA,EAAE,GAAWA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,EAAI,IAAa,IAAPA,EAAE,GAAWA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,GAAK,IAAMA,EAAE,IAAM,EAAI,IAAa,IAAPA,EAAE,GACxV,gCClGAj4P,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAClBA,EAAQs1P,gBAAkBA,EAE1B,IAEgC3vP,EAF5B+tP,GAE4B/tP,EAFO,EAAQ,SAEMA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAMvF,MAAM4vP,EAAY,GAElB,IAAK,IAAIp4P,EAAI,EAAGA,EAAI,MAAOA,EACzBo4P,EAAUl2P,MAAMlC,EAAI,KAAOG,SAAS,IAAIgD,MAAM,IAGhD,SAASg1P,EAAgB5hK,EAAK52F,EAAS,GAGrC,OAAOy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAM,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAM,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAM,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAMy4P,EAAU7hK,EAAI52F,EAAS,IAAM,IAAMy4P,EAAU7hK,EAAI52F,EAAS,KAAOy4P,EAAU7hK,EAAI52F,EAAS,KAAOy4P,EAAU7hK,EAAI52F,EAAS,KAAOy4P,EAAU7hK,EAAI52F,EAAS,KAAOy4P,EAAU7hK,EAAI52F,EAAS,KAAOy4P,EAAU7hK,EAAI52F,EAAS,IAChf,CAiBAkD,EAAA,QAfA,SAAmB0zF,EAAK52F,EAAS,GAC/B,MAAMo8E,EAAOo8K,EAAgB5hK,EAAK52F,GAMlC,KAAK,EAAI42P,EAAUh1N,SAASw6C,GAC1B,MAAMlzE,UAAU,+BAGlB,OAAOkzE,CACT,gCCtCAh8E,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAIgC2F,EAJ5B6vP,GAI4B7vP,EAJE,EAAQ,SAIWA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAFnF0tP,EAAa,EAAQ,OAQzB,IAAIoC,EAEAC,EAGAC,EAAa,EACbC,EAAa,EAmFjB51P,EAAA,QAjFA,SAAY4C,EAASvE,EAAKvB,GACxB,IAAIK,EAAIkB,GAAOvB,GAAU,EACzB,MAAM46F,EAAIr5F,GAAO,IAAIoI,MAAM,IAE3B,IAAI6rB,GADJ1vB,EAAUA,GAAW,CAAC,GACH0vB,MAAQmjO,EACvBI,OAAgC55P,IAArB2G,EAAQizP,SAAyBjzP,EAAQizP,SAAWH,EAInE,GAAY,MAARpjO,GAA4B,MAAZujO,EAAkB,CACpC,MAAMC,EAAYlzP,EAAQw9E,SAAWx9E,EAAQmzP,KAAOP,EAAK92N,WAE7C,MAARpM,IAEFA,EAAOmjO,EAAU,CAAgB,EAAfK,EAAU,GAAWA,EAAU,GAAIA,EAAU,GAAIA,EAAU,GAAIA,EAAU,GAAIA,EAAU,KAG3F,MAAZD,IAEFA,EAAWH,EAAiD,OAApCI,EAAU,IAAM,EAAIA,EAAU,IAE1D,CAMA,IAAIE,OAA0B/5P,IAAlB2G,EAAQozP,MAAsBpzP,EAAQozP,MAAQlqO,KAAKC,MAG3DkqO,OAA0Bh6P,IAAlB2G,EAAQqzP,MAAsBrzP,EAAQqzP,MAAQL,EAAa,EAEvE,MAAMM,EAAKF,EAAQL,GAAcM,EAAQL,GAAc,IAavD,GAXIM,EAAK,QAA0Bj6P,IAArB2G,EAAQizP,WACpBA,EAAWA,EAAW,EAAI,QAKvBK,EAAK,GAAKF,EAAQL,SAAiC15P,IAAlB2G,EAAQqzP,QAC5CA,EAAQ,GAINA,GAAS,IACX,MAAM,IAAIp4P,MAAM,mDAGlB83P,EAAaK,EACbJ,EAAaK,EACbP,EAAYG,EAEZG,GAAS,YAET,MAAMG,GAA4B,KAAb,UAARH,GAA6BC,GAAS,WACnDv+J,EAAEv6F,KAAOg5P,IAAO,GAAK,IACrBz+J,EAAEv6F,KAAOg5P,IAAO,GAAK,IACrBz+J,EAAEv6F,KAAOg5P,IAAO,EAAI,IACpBz+J,EAAEv6F,KAAY,IAALg5P,EAET,MAAMC,EAAMJ,EAAQ,WAAc,IAAQ,UAC1Ct+J,EAAEv6F,KAAOi5P,IAAQ,EAAI,IACrB1+J,EAAEv6F,KAAa,IAANi5P,EAET1+J,EAAEv6F,KAAOi5P,IAAQ,GAAK,GAAM,GAE5B1+J,EAAEv6F,KAAOi5P,IAAQ,GAAK,IAEtB1+J,EAAEv6F,KAAO04P,IAAa,EAAI,IAE1Bn+J,EAAEv6F,KAAkB,IAAX04P,EAET,IAAK,IAAIn3P,EAAI,EAAGA,EAAI,IAAKA,EACvBg5F,EAAEv6F,EAAIuB,GAAK4zB,EAAK5zB,GAGlB,OAAOL,IAAO,EAAIg1P,EAAWiC,iBAAiB59J,EAChD,gCCrGAx6F,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAAIszP,EAAKp+H,EAAuB,EAAQ,QAEpCmhI,EAAMnhI,EAAuB,EAAQ,OAEzC,SAASA,EAAuBvvH,GAAO,OAAOA,GAAOA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,EAAO,CAG9F,IAAIqwH,GADO,EAAIs9H,EAAG50N,SAAS,KAAM,GAAM23N,EAAI33N,SAE3C1+B,EAAA,QAAkBg2H,gCCblB94H,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAQ2E,IAAM3E,EAAQs2P,SAAM,EAC5Bt2P,EAAA,QAyBA,SAAa8F,EAAMwQ,EAASigP,GAC1B,SAASC,EAAax6P,EAAO82G,EAAWz0G,EAAKvB,GAC3C,IAAI25P,EAUJ,GARqB,iBAAVz6P,IACTA,EAtBN,SAAuBmE,GACrBA,EAAMyyO,SAASjtH,mBAAmBxlH,IAElC,MAAM4J,EAAQ,GAEd,IAAK,IAAI5M,EAAI,EAAGA,EAAIgD,EAAI9C,SAAUF,EAChC4M,EAAM1K,KAAKc,EAAIhF,WAAWgC,IAG5B,OAAO4M,CACT,CAYc2sP,CAAc16P,IAGC,iBAAd82G,IACTA,GAAY,EAAIsgJ,EAAO10N,SAASo0E,IAGgE,MAAhE,QAA5B2jJ,EAAa3jJ,SAAsC,IAAf2jJ,OAAwB,EAASA,EAAWp5P,QACpF,MAAM2I,UAAU,oEAMlB,IAAI+D,EAAQ,IAAIpC,WAAW,GAAK3L,EAAMqB,QAOtC,GANA0M,EAAMnC,IAAIkrG,GACV/oG,EAAMnC,IAAI5L,EAAO82G,EAAUz1G,QAC3B0M,EAAQwsP,EAASxsP,GACjBA,EAAM,GAAgB,GAAXA,EAAM,GAAYuM,EAC7BvM,EAAM,GAAgB,GAAXA,EAAM,GAAY,IAEzB1L,EAAK,CACPvB,EAASA,GAAU,EAEnB,IAAK,IAAIK,EAAI,EAAGA,EAAI,KAAMA,EACxBkB,EAAIvB,EAASK,GAAK4M,EAAM5M,GAG1B,OAAOkB,CACT,CAEA,OAAO,EAAIg1P,EAAWiC,iBAAiBvrP,EACzC,CAGA,IACEysP,EAAa1wP,KAAOA,CACtB,CAAE,MAAOpI,GAAM,CAKf,OAFA84P,EAAaF,IAAMA,EACnBE,EAAa7xP,IAAMA,EACZ6xP,CACT,EAvEA,IAIgC7wP,EAJ5B0tP,EAAa,EAAQ,OAErBD,GAE4BztP,EAFI,EAAQ,QAESA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAcvF,MAAM2wP,EAAM,uCACZt2P,EAAQs2P,IAAMA,EACd,MAAM3xP,EAAM,uCACZ3E,EAAQ2E,IAAMA,gCC3BdzH,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAAI22P,EAAUzhI,EAAuB,EAAQ,QAEzCsgI,EAAOtgI,EAAuB,EAAQ,QAEtCm+H,EAAa,EAAQ,OAEzB,SAASn+H,EAAuBvvH,GAAO,OAAOA,GAAOA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,EAAO,CA6B9F3F,EAAA,QA3BA,SAAY4C,EAASvE,EAAKvB,GACxB,GAAI65P,EAAQj4N,QAAQs2N,aAAe32P,IAAQuE,EACzC,OAAO+zP,EAAQj4N,QAAQs2N,aAKzB,MAAM4B,GAFNh0P,EAAUA,GAAW,CAAC,GAEDw9E,SAAWx9E,EAAQmzP,KAAOP,EAAK92N,WAMpD,GAHAk4N,EAAK,GAAe,GAAVA,EAAK,GAAY,GAC3BA,EAAK,GAAe,GAAVA,EAAK,GAAY,IAEvBv4P,EAAK,CACPvB,EAASA,GAAU,EAEnB,IAAK,IAAIK,EAAI,EAAGA,EAAI,KAAMA,EACxBkB,EAAIvB,EAASK,GAAKy5P,EAAKz5P,GAGzB,OAAOkB,CACT,CAEA,OAAO,EAAIg1P,EAAWiC,iBAAiBsB,EACzC,gCCrCA15P,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAAIszP,EAAKp+H,EAAuB,EAAQ,QAEpC2hI,EAAO3hI,EAAuB,EAAQ,QAE1C,SAASA,EAAuBvvH,GAAO,OAAOA,GAAOA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,EAAO,CAG9F,IAAIqwH,GADO,EAAIs9H,EAAG50N,SAAS,KAAM,GAAMm4N,EAAKn4N,SAE5C1+B,EAAA,QAAkBg2H,gCCblB94H,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAEgC2F,EAF5BmxP,GAE4BnxP,EAFI,EAAQ,SAESA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAOvF3F,EAAA,QALA,SAAkBk5E,GAChB,MAAuB,iBAATA,GAAqB49K,EAAOp4N,QAAQ34B,KAAKmzE,EACzD,gCCXAh8E,OAAO+C,eAAeD,EAAS,aAAc,CAC3ChE,OAAO,IAETgE,EAAA,aAAkB,EAElB,IAEgC2F,EAF5B+tP,GAE4B/tP,EAFO,EAAQ,SAEMA,EAAIxB,WAAawB,EAAM,CAAE+4B,QAAS/4B,GAWvF3F,EAAA,QATA,SAAiBk5E,GACf,KAAK,EAAIw6K,EAAUh1N,SAASw6C,GAC1B,MAAMlzE,UAAU,gBAGlB,OAAOhH,SAASk6E,EAAK54E,MAAM,GAAI,IAAK,GACtC,sCChBA,IAAIsD,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGyF,EAAgBxI,MAAQA,KAAKwI,cAAiB,SAASP,EAAG/D,GAC1D,IAAK,IAAIuE,KAAKR,EAAa,YAANQ,GAAoBrH,OAAOM,UAAUgH,eAAeC,KAAKzE,EAASuE,IAAIX,EAAgB5D,EAAS+D,EAAGQ,EAC3H,EACArH,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDsI,EAAa,EAAQ,OAAmBtE,+BCfxC9C,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQy7M,YAAcz7M,EAAQi7M,2BAAwB,EAsCtD,MAAM87C,EArCN,WAGI,MACMC,EAAa,gBACbC,EAAc,kBACdC,EAAY,qDACZC,EAAc,GAAGD,OAAeA,OAAeA,OAAeA,IAC9DE,EAAM,mBACNC,EAAO,IAAID,KAAOA,KAAOD,KAUzBG,EAAc,mGACdC,EAAS,IAAID,KAAeL,KAAeD,WAG3CQ,EAAc,IAAID,MAClBE,EAAW,IAAIF,MAWrB,OAAO,IAAI/wK,OADC,uCAHU8wK,KAAeL,KAAeD,kBArB3BI,SAAWC,QAAWD,SAAWC,MAASD,SAAWA,SAAWC,OAAUD,WAAaA,SAAWA,SAAWC,OAAUD,WAAaA,SAAWA,SAAWC,OAAUD,WAAaA,QAAUA,KAAOC,OAAUD,WAAaA,QAAUC,OAAUD,WAAaA,QAAUA,OAASA,WAAaA,2BAC7QJ,KAAcA,cAmBpBG,MADVG,KAAeL,KAAeD,qBADvBS,WADCD,QAAkBC,SADtBD,QAAkBC,aAJzBF,kCADGA,gBAcC,IAC3B,CACyBG,GAEnBC,EAAsB,wDAI5B,IAAI18C,GACJ,SAAWA,GAIPA,EAA8B,OAAI,SAIlCA,EAAiC,UAAI,YAIrCA,EAA4B,KAAI,MACnC,CAbD,CAaGA,EAAwBj7M,EAAQi7M,wBAA0Bj7M,EAAQi7M,sBAAwB,CAAC,IAuB9Fj7M,EAAQy7M,YAZR,SAAqB53K,EAAK+zN,EAAW38C,EAAsBrgG,QACvD,OAAQg9I,GACJ,KAAK38C,EAAsBrgG,OACvB,OAAOm8I,EAAiBhxP,KAAK89B,QAAO5nC,EAAY,IAAI4B,MAAM,uCAAuCgmC,MACrG,KAAKo3K,EAAsBC,UACvB,OAAOy8C,EAAoB5xP,KAAK89B,QAAO5nC,EAAY,IAAI4B,MAAM,yCAAyCgmC,MAC1G,KAAKo3K,EAAsBE,KACvB,OACJ,QACI,OAAO,IAAIt9M,MAAM,sCAAsC+5P,MAEnE,mBClFwE73P,EAAOC,QAAgS,SAAUiC,EAAE69F,EAAEphG,EAAE84F,GAAG,SAASx2F,EAAE8C,EAAE+zP,GAAG,IAAIn5P,EAAEoF,GAAG,CAAC,IAAIg8F,EAAEh8F,GAAG,CAAmE,GAAG3G,EAAE,OAAOA,EAAE2G,GAAE,GAAI,IAAIssI,EAAE,IAAIvyI,MAAM,uBAAuBiG,EAAE,KAAK,MAAMssI,EAAEpzI,KAAK,mBAAmBozI,CAAC,CAAC,IAAIhzI,EAAEsB,EAAEoF,GAAG,CAAC9D,QAAQ,CAAC,GAAG8/F,EAAEh8F,GAAG,GAAGW,KAAKrH,EAAE4C,SAAQ,SAASiC,GAAoB,OAAOjB,EAAlB8+F,EAAEh8F,GAAG,GAAG7B,IAAgBA,EAAE,GAAE7E,EAAEA,EAAE4C,QAAQiC,EAAE69F,EAAEphG,EAAE84F,EAAE,CAAC,OAAO94F,EAAEoF,GAAG9D,OAAO,CAA2C,IAA1C,IAAI7C,OAAE,EAA4C2G,EAAE,EAAEA,EAAE0zF,EAAEn6F,OAAOyG,IAAI9C,EAAEw2F,EAAE1zF,IAAI,OAAO9C,CAAE,CAAzb,CAA2b,CAAC,EAAE,CAAC,SAAS82P,EAAQ/3P,EAAOC,GACt0B,aAAa9C,OAAO+C,eAAeD,EAAQ,aAAa,CAAChE,OAAM,IAAK,IAA4EihE,EAA/D66L,EAAQ,uDAA+E76L,eAAwF86L,EAA/DD,EAAQ,uDAAgFC,eAAeC,EAA0BF,EAAQ,oEAAoEG,EAAqBH,EAAQ,8DAAwII,EAAhEJ,EAAQ,wDAAkFI,gBAAgBl4P,EAAQg4P,0BAA0BA,EAA0Bh4P,EAAQi4P,qBAAqBA,EAAqBj4P,EAAQi9D,eAAeA,EAAej9D,EAAQ+3P,eAAeA,EAAe/3P,EAAQk4P,gBAAgBA,EAAgB,IAAI10H,EAAW,CAACvmE,eAAeA,EAAe86L,eAAeA,EAAeC,0BAA0BA,EAA0BC,qBAAqBA,EAAqBC,gBAAgBA,GAAiBl4P,EAAQ0+B,QAAQ8kG,CAE1hC,EAAE,CAAC,mEAAmE,EAAE,6DAA6D,EAAE,sDAAsD,GAAG,uDAAuD,GAAG,sDAAsD,KAAK,EAAE,CAAC,SAASs0H,EAAQ/3P,EAAOC,IAChV,SAAW+E,GACX,aAAa,SAASs9B,EAAQy9D,EAAE79F,GAAG,GAAG69F,IAAI79F,EAAE,OAAO,EAAE,IAAI,IAAIu1F,EAAEsI,EAAEziG,OAAOqB,EAAEuD,EAAE5E,OAAOF,EAAE,EAAEm6F,EAAE72F,KAAKspC,IAAIytD,EAAE94F,GAAGvB,EAAEm6F,IAAIn6F,EAAE,GAAG2iG,EAAE3iG,KAAK8E,EAAE9E,GAAG,CAACq6F,EAAEsI,EAAE3iG,GAAGuB,EAAEuD,EAAE9E,GAAG,KAAK,CAAC,OAAOq6F,EAAE94F,GAAG,EAAEA,EAAE84F,EAAE,EAAE,CAAC,CAAC,SAAS0L,EAASpD,GAAG,OAAO/6F,EAAOlM,QAAQ,mBAAmBkM,EAAOlM,OAAOqqG,SAASn+F,EAAOlM,OAAOqqG,SAASpD,KAAK,MAAMA,IAAIA,EAAE8G,UAAU,CAAC,SAASuxJ,EAAUr4J,GAAG,OAAO5iG,OAAOM,UAAUF,SAASmH,KAAKq7F,EAAE,CAAC,SAASp6F,EAAOo6F,GAAG,OAAOoD,EAASpD,IAAK,mBAAmB/6F,EAAOU,cAAc,mBAAmBA,YAAYC,OAAOD,YAAYC,OAAOo6F,KAAKA,IAAIA,aAAax3F,aAAaw3F,EAAEliG,QAAQkiG,EAAEliG,kBAAkB6H,cAAe,CAAC,SAASkzG,EAAQ7Y,GAAG,GAAGwmB,EAAK8xI,WAAWt4J,GAAG,CAAC,GAAGu4J,EAAmB,OAAOv4J,EAAEh6F,KAAK,IAAI7D,EAAE69F,EAAExiG,WAAWwC,MAAM8jF,GAAO,OAAO3hF,GAAGA,EAAE,EAAE,CAAC,CAAC,SAASq2P,EAASx4J,EAAE79F,GAAG,MAAM,iBAAiB69F,EAAEA,EAAEziG,OAAO4E,EAAE69F,EAAEA,EAAEx/F,MAAM,EAAE2B,GAAG69F,CAAC,CAAC,SAASoH,EAAQpH,GAAG,GAAGu4J,IAAqB/xI,EAAK8xI,WAAWt4J,GAAG,OAAOwmB,EAAKpf,QAAQpH,GAAG,IAAI79F,EAAE02G,EAAQ7Y,GAAG,MAAM,aAAa79F,EAAE,KAAKA,EAAE,IAAI,GAAG,CAAoH,SAASwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE94F,EAAEvB,GAAG,MAAM,IAAIuxI,EAAO6pH,eAAe,CAAC1tP,QAAQ2sF,EAAEiL,OAAO3C,EAAEy6H,SAASt4N,EAAEugC,SAAS9jC,EAAE85P,mBAAmBr7P,GAAG,CAAC,SAASkN,EAAGy1F,EAAE79F,GAAG69F,GAAGrwF,EAAKqwF,GAAE,EAAG79F,EAAE,KAAKysI,EAAOrkI,GAAG,CAAC,SAASouP,EAAW34J,EAAE79F,EAAEu1F,EAAE94F,GAAG,GAAGohG,IAAI79F,EAAE,OAAM,EAAG,GAAGihG,EAASpD,IAAIoD,EAASjhG,GAAG,OAAO,IAAIogC,EAAQy9D,EAAE79F,GAAG,GAAGqkH,EAAKoyI,OAAO54J,IAAIwmB,EAAKoyI,OAAOz2P,GAAG,OAAO69F,EAAE3kB,YAAYl5E,EAAEk5E,UAAU,GAAGmrC,EAAKqyI,SAAS74J,IAAIwmB,EAAKqyI,SAAS12P,GAAG,OAAO69F,EAAEn9D,SAAS1gC,EAAE0gC,QAAQm9D,EAAE/6F,SAAS9C,EAAE8C,QAAQ+6F,EAAE84J,YAAY32P,EAAE22P,WAAW94J,EAAEmd,YAAYh7G,EAAEg7G,WAAWnd,EAAE+4J,aAAa52P,EAAE42P,WAAW,GAAG,OAAO/4J,GAAG,iBAAiBA,GAAG,OAAO79F,GAAG,iBAAiBA,EAAE,CAAC,GAAGyD,EAAOo6F,IAAIp6F,EAAOzD,IAAIk2P,EAAUr4J,KAAKq4J,EAAUl2P,MAAM69F,aAAag5J,cAAch5J,aAAai5J,cAAc,OAAO,IAAI12N,EAAQ,IAAI16B,WAAWm4F,EAAEliG,QAAQ,IAAI+J,WAAW1F,EAAErE,SAAS,GAAGslG,EAASpD,KAAKoD,EAASjhG,GAAG,OAAM,EAAG,IAAI9E,GAAGuB,EAAEA,GAAG,CAAC+jG,OAAO,GAAG83H,SAAS,KAAK93H,OAAO78F,QAAQk6F,GAAG,OAAO,IAAI3iG,GAAGA,IAAIuB,EAAE67N,SAAS30N,QAAQ3D,KAAKvD,EAAE+jG,OAAOpjG,KAAKygG,GAAGphG,EAAE67N,SAASl7N,KAAK4C,GAAgI,SAAkB69F,EAAE79F,EAAEu1F,EAAE94F,GAAG,GAAG,MAAOohG,GAAP,MAA6B79F,EAAc,OAAM,EAAG,GAAGqkH,EAAK0yI,YAAYl5J,IAAIwmB,EAAK0yI,YAAY/2P,GAAG,OAAO69F,IAAI79F,EAAE,GAAGu1F,GAAGt6F,OAAOwlH,eAAe5iB,KAAK5iG,OAAOwlH,eAAezgH,GAAG,OAAM,EAAG,IAAI9E,EAAE87P,EAAYn5J,GAAGxI,EAAE2hK,EAAYh3P,GAAG,GAAG9E,IAAIm6F,IAAIn6F,GAAGm6F,EAAE,OAAM,EAAG,GAAGn6F,EAAE,OAAyCs7P,EAAlC34J,EAAEo5J,EAAOz0P,KAAKq7F,GAAG79F,EAAEi3P,EAAOz0P,KAAKxC,GAAkBu1F,GAAG,IAAI1zF,EAAE9C,EAAE62P,EAAE/6B,EAAWh9H,GAAGswC,EAAE0sF,EAAW76N,GAAG,GAAG41P,EAAEx6P,SAAS+yI,EAAE/yI,OAAO,OAAM,EAAG,IAAIw6P,EAAExsO,OAAO+kH,EAAE/kH,OAAOrqB,EAAE62P,EAAEx6P,OAAO,EAAE2D,GAAG,EAAEA,IAAI,GAAG62P,EAAE72P,KAAKovI,EAAEpvI,GAAG,OAAM,EAAG,IAAIA,EAAE62P,EAAEx6P,OAAO,EAAE2D,GAAG,EAAEA,IAAI,IAAWy3P,EAAW34J,EAAnBh8F,EAAE+zP,EAAE72P,IAAoBiB,EAAE6B,GAAG0zF,EAAE94F,GAAG,OAAM,EAAG,OAAM,CAAE,CAAtqBy6P,CAASr5J,EAAE79F,EAAEu1F,EAAE94F,GAAG,CAAC,OAAO84F,EAAEsI,IAAI79F,EAAE69F,GAAG79F,CAAC,CAAC,SAASg3P,EAAYn5J,GAAG,MAAM,sBAAsB5iG,OAAOM,UAAUF,SAASmH,KAAKq7F,EAAE,CAAspB,SAASs5J,EAAkBt5J,EAAE79F,GAAG,IAAI69F,IAAI79F,EAAE,OAAM,EAAG,GAAG,mBAAmB/E,OAAOM,UAAUF,SAASmH,KAAKxC,GAAG,OAAOA,EAAE8D,KAAK+5F,GAAG,IAAI,GAAGA,aAAa79F,EAAE,OAAM,CAAE,CAAC,MAAM69F,GAAG,CAAC,OAAOjiG,MAAMoK,cAAchG,KAAI,IAAKA,EAAEwC,KAAK,CAAC,EAAEq7F,EAAE,CAA2D,SAASu5J,EAAQv5J,EAAE79F,EAAEu1F,EAAE94F,GAAG,IAAIvB,EAAE,GAAG,mBAAmB8E,EAAE,MAAM,IAAI+D,UAAU,uCAAuC,iBAAiBwxF,IAAI94F,EAAE84F,EAAEA,EAAE,MAAMr6F,EAA9M,SAAmB2iG,GAAG,IAAI79F,EAAE,IAAI69F,GAAG,CAAC,MAAMA,GAAG79F,EAAE69F,CAAC,CAAC,OAAO79F,CAAC,CAAuJq3P,CAAUr3P,GAAGvD,GAAG84F,GAAGA,EAAE1xF,KAAK,KAAK0xF,EAAE1xF,KAAK,KAAK,MAAMpH,EAAE,IAAIA,EAAE,KAAKohG,IAAI3iG,GAAGsS,EAAKtS,EAAEq6F,EAAE,6BAA6B94F,GAAG,IAAI44F,EAAE,iBAAiB54F,EAAwBsC,GAAG8+F,GAAG3iG,IAAIq6F,EAAE,KAA/BsI,GAAGwmB,EAAKizI,QAAQp8P,IAAsBm6F,GAAG8hK,EAAkBj8P,EAAEq6F,IAAIx2F,IAAIyO,EAAKtS,EAAEq6F,EAAE,yBAAyB94F,GAAGohG,GAAG3iG,GAAGq6F,IAAI4hK,EAAkBj8P,EAAEq6F,KAAKsI,GAAG3iG,EAAE,MAAMA,CAAC,CAAC,IAAImpH,EAAKwxI,EAAQ,SAAS0B,EAAOt8P,OAAOM,UAAUgH,eAAe00P,EAAOzyP,MAAMjJ,UAAU8C,MAAM+3P,EAAmB,QAAQ,WAAe,EAAEvyP,KAAK4oI,EAAO3uI,EAAOC,QAAQqK,EAAGu5E,EAAM,8BAA8B8qD,EAAO6pH,eAAe,SAAwBz4J,GAAGhkG,KAAKgK,KAAK,iBAAiBhK,KAAK2mG,OAAO3C,EAAE2C,OAAO3mG,KAAKy+N,SAASz6H,EAAEy6H,SAASz+N,KAAK0mC,SAASs9D,EAAEt9D,SAASs9D,EAAEj1F,SAAS/O,KAAK+O,QAAQi1F,EAAEj1F,QAAQ/O,KAAK29P,kBAAiB,IAAK39P,KAAK+O,QAAv4F,SAAoBi1F,GAAG,OAAOw4J,EAASpxJ,EAAQpH,EAAE2C,QAAQ,KAAK,IAAI3C,EAAEt9D,SAAS,IAAI81N,EAASpxJ,EAAQpH,EAAEy6H,UAAU,IAAI,CAA6xFhuH,CAAWzwG,MAAMA,KAAK29P,kBAAiB,GAAI,IAAIx3P,EAAE69F,EAAE04J,oBAAoB/oP,EAAK,GAAG5R,MAAMw2H,kBAAkBx2H,MAAMw2H,kBAAkBv4H,KAAKmG,OAAO,CAAC,IAAIu1F,EAAE,IAAI35F,MAAM,GAAG25F,EAAE/6F,MAAM,CAAC,IAAIiC,EAAE84F,EAAE/6F,MAAMU,EAAEw7G,EAAQ12G,GAAGq1F,EAAE54F,EAAEkH,QAAQ,KAAKzI,GAAG,GAAGm6F,GAAG,EAAE,CAAC,IAAIxzF,EAAEpF,EAAEkH,QAAQ,KAAK0xF,EAAE,GAAG54F,EAAEA,EAAE27F,UAAUv2F,EAAE,EAAE,CAAChI,KAAKW,MAAMiC,CAAC,CAAC,CAAC,EAAE4nH,EAAKiqB,SAAS7B,EAAO6pH,eAAe16P,OAAO6wI,EAAOj/H,KAAKA,EAAKi/H,EAAOrkI,GAAGA,EAAGqkI,EAAOlrB,MAAM,SAAe1jB,EAAE79F,EAAEu1F,GAAGsI,GAAG79F,GAAGwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,KAAKk3C,EAAOlrB,MAAM,EAAEkrB,EAAOgrH,SAAS,SAAkB55J,EAAE79F,EAAEu1F,GAAGsI,GAAG79F,GAAGwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,KAAKk3C,EAAOgrH,SAAS,EAAEhrH,EAAOkwB,UAAU,SAAmB9+D,EAAE79F,EAAEu1F,GAAGihK,EAAW34J,EAAE79F,GAAE,IAAKwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,YAAYk3C,EAAOkwB,UAAU,EAAElwB,EAAOirH,gBAAgB,SAAyB75J,EAAE79F,EAAEu1F,GAAGihK,EAAW34J,EAAE79F,GAAE,IAAKwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,kBAAkBk3C,EAAOirH,gBAAgB,EAAEjrH,EAAOkrH,aAAa,SAAsB95J,EAAE79F,EAAEu1F,GAAGihK,EAAW34J,EAAE79F,GAAE,IAAKwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,eAAek3C,EAAOkrH,aAAa,EAAElrH,EAAOmrH,mBAAnkE,SAASA,EAAmB/5J,EAAE79F,EAAEu1F,GAAGihK,EAAW34J,EAAE79F,GAAE,IAAKwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,qBAAqBqiK,EAAmB,EAA+/DnrH,EAAOorH,YAAY,SAAqBh6J,EAAE79F,EAAEu1F,GAAGsI,IAAI79F,GAAGwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,MAAMk3C,EAAOorH,YAAY,EAAEprH,EAAOqrH,eAAe,SAAwBj6J,EAAE79F,EAAEu1F,GAAGsI,IAAI79F,GAAGwN,EAAKqwF,EAAE79F,EAAEu1F,EAAE,MAAMk3C,EAAOqrH,eAAe,EAAErrH,EAAOsrH,OAAO,SAASl6J,EAAE79F,EAAEu1F,GAAG6hK,GAAQ,EAAGv5J,EAAE79F,EAAEu1F,EAAE,EAAEk3C,EAAOurH,aAAa,SAASn6J,EAAE79F,EAAEu1F,GAAG6hK,GAAQ,EAAGv5J,EAAE79F,EAAEu1F,EAAE,EAAEk3C,EAAOwrH,QAAQ,SAASp6J,GAAG,GAAGA,EAAE,MAAMA,CAAC,EAAE,IAAIg9H,EAAW5/N,OAAOD,MAAM,SAAS6iG,GAAG,IAAI79F,EAAE,GAAG,IAAI,IAAIu1F,KAAKsI,EAAE05J,EAAO/0P,KAAKq7F,EAAEtI,IAAIv1F,EAAE5C,KAAKm4F,GAAG,OAAOv1F,CAAC,CAE/mK,GAAEwC,KAAK3I,UAAuB,IAAX,EAAAqxD,EAAyB,EAAAA,EAAyB,oBAATnoD,KAAuBA,KAAyB,oBAAXiW,OAAyBA,OAAS,CAAC,EAErI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,SAAS68O,EAAQ/3P,EAAOC,GAE1C,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS83P,EAAQ/3P,EAAOC,GACjC,SAAS6+L,IAAmB,MAAM,IAAIhhM,MAAM,kCAAkC,CAAC,SAASihM,IAAsB,MAAM,IAAIjhM,MAAM,oCAAoC,CAAC,SAASkhM,EAAW98L,GAAG,GAAG08L,IAAmB5vK,WAAW,OAAOA,WAAW9sB,EAAE,GAAG,IAAI08L,IAAmBE,IAAmBF,IAAmB5vK,WAAW,OAAO4vK,EAAiB5vK,WAAWA,WAAW9sB,EAAE,GAAG,IAAI,OAAO08L,EAAiB18L,EAAE,EAAE,CAAC,MAAM69F,GAAG,IAAI,OAAO6+F,EAAiBl6L,KAAK,KAAKxC,EAAE,EAAE,CAAC,MAAM69F,GAAG,OAAO6+F,EAAiBl6L,KAAK3I,KAAKmG,EAAE,EAAE,CAAC,CAAC,CAAwW,SAASo9L,IAAkBF,GAAUF,IAAeE,GAAS,EAAGF,EAAa5hM,OAAO6hM,EAAMD,EAAazlK,OAAO0lK,GAAOE,GAAY,EAAEF,EAAM7hM,QAAQiiM,IAAa,CAAC,SAASA,IAAa,IAAIH,EAAS,CAAC,IAAIl9L,EAAE88L,EAAWM,GAAiBF,GAAS,EAAG,IAAI,IAAIr/F,EAAEo/F,EAAM7hM,OAAOyiG,GAAG,CAAC,IAAIm/F,EAAaC,EAAMA,EAAM,KAAKE,EAAWt/F,GAAGm/F,GAAcA,EAAaG,GAAYr8K,MAAMq8K,GAAY,EAAEt/F,EAAEo/F,EAAM7hM,MAAM,CAAC4hM,EAAa,KAAKE,GAAS,EAAxwB,SAAyBl9L,GAAG,GAAG28L,IAAqBxuK,aAAa,OAAOA,aAAanuB,GAAG,IAAI28L,IAAqBE,IAAsBF,IAAqBxuK,aAAa,OAAOwuK,EAAmBxuK,aAAaA,aAAanuB,GAAG,IAAI,OAAO28L,EAAmB38L,EAAE,CAAC,MAAM69F,GAAG,IAAI,OAAO8+F,EAAmBn6L,KAAK,KAAKxC,EAAE,CAAC,MAAM69F,GAAG,OAAO8+F,EAAmBn6L,KAAK3I,KAAKmG,EAAE,CAAC,CAAC,CAAqau9L,CAAgBv9L,EAAE,CAAC,CAAC,SAASw9L,EAAKx9L,EAAE69F,GAAGhkG,KAAKkjM,IAAI/8L,EAAEnG,KAAKqf,MAAM2kF,CAAC,CAAC,SAASq3F,IAAO,CAAC,IAAIwH,EAAiBC,EAAmBzwK,EAAQpuB,EAAOC,QAAQ,CAAC,GAAG,WAAW,IAAI2+L,EAAiB,mBAAmB5vK,WAAWA,WAAW8vK,CAAgB,CAAC,MAAM58L,GAAG08L,EAAiBE,CAAgB,CAAC,IAAID,EAAmB,mBAAmBxuK,aAAaA,aAAa0uK,CAAmB,CAAC,MAAM78L,GAAG28L,EAAmBE,CAAmB,CAAC,CAA7Q,GAAiR,IAAIG,EAAaC,EAAM,GAAGC,GAAS,EAAGC,GAAY,EAAEjxK,EAAQuxK,SAAS,SAASz9L,GAAG,IAAI69F,EAAE,IAAIr5F,MAAMoX,UAAUxgB,OAAO,GAAG,GAAGwgB,UAAUxgB,OAAO,EAAE,IAAI,IAAIm6F,EAAE,EAAEA,EAAE35E,UAAUxgB,OAAOm6F,IAAIsI,EAAEtI,EAAE,GAAG35E,UAAU25E,GAAG0nG,EAAM7/L,KAAK,IAAIogM,EAAKx9L,EAAE69F,IAAI,IAAIo/F,EAAM7hM,QAAQ8hM,GAAUJ,EAAWO,EAAW,EAAEG,EAAKjiM,UAAUulB,IAAI,WAAWjnB,KAAKkjM,IAAI38L,MAAM,KAAKvG,KAAKqf,MAAM,EAAEgT,EAAQwxK,MAAM,UAAUxxK,EAAQyxK,SAAQ,EAAGzxK,EAAQ0xK,IAAI,CAAC,EAAE1xK,EAAQ2xK,KAAK,GAAG3xK,EAAQ7X,QAAQ,GAAG6X,EAAQ4xK,SAAS,CAAC,EAAE5xK,EAAQtX,GAAGsgL,EAAKhpK,EAAQ60F,YAAYm0E,EAAKhpK,EAAQqlB,KAAK2jJ,EAAKhpK,EAAQpX,IAAIogL,EAAKhpK,EAAQqf,eAAe2pJ,EAAKhpK,EAAQk1F,mBAAmB8zE,EAAKhpK,EAAQ3uB,KAAK23L,EAAKhpK,EAAQ80F,gBAAgBk0E,EAAKhpK,EAAQ+0F,oBAAoBi0E,EAAKhpK,EAAQ40F,UAAU,SAAS9gH,GAAG,MAAM,EAAE,EAAEksB,EAAQuwC,QAAQ,SAASz8D,GAAG,MAAM,IAAIpE,MAAM,mCAAmC,EAAEswB,EAAQ6xK,IAAI,WAAW,MAAM,GAAG,EAAE7xK,EAAQ8xK,MAAM,SAASh+L,GAAG,MAAM,IAAIpE,MAAM,iCAAiC,EAAEswB,EAAQ+xK,MAAM,WAAW,OAAO,CAAC,CAEpkF,EAAE,CAAC,GAAG,EAAE,CAAC,SAAS43D,EAAQ/3P,EAAOC,GACjC,mBAAmB9C,OAAO2G,OAAO9D,EAAOC,QAAQ,SAAkB8/F,EAAE79F,GAAG69F,EAAEgpE,OAAO7mK,EAAE69F,EAAEtiG,UAAUN,OAAO2G,OAAO5B,EAAEzE,UAAU,CAACsN,YAAY,CAAC9O,MAAM8jG,EAAE38F,YAAW,EAAGiB,UAAS,EAAGC,cAAa,IAAK,EAAEtE,EAAOC,QAAQ,SAAkB8/F,EAAE79F,GAAG69F,EAAEgpE,OAAO7mK,EAAE,IAAI6B,EAAE,WAAW,EAAEA,EAAEtG,UAAUyE,EAAEzE,UAAUsiG,EAAEtiG,UAAU,IAAIsG,EAAEg8F,EAAEtiG,UAAUsN,YAAYg1F,CAAC,CAEnU,EAAE,CAAC,GAAG,EAAE,CAAC,SAASg4J,EAAQ/3P,EAAOC,GACjCD,EAAOC,QAAQ,SAAkB8D,GAAG,OAAOA,GAAG,iBAAiBA,GAAG,mBAAmBA,EAAEtF,MAAM,mBAAmBsF,EAAE4iG,MAAM,mBAAmB5iG,EAAE+kG,SAAS,CAEtJ,EAAE,CAAC,GAAG,EAAE,CAAC,SAASivJ,EAAQ/3P,EAAOC,IACjC,SAAWmuB,EAAQppB,GACnB,SAASmiG,EAAQjlG,EAAEu1F,GAAG,IAAIsI,EAAE,CAAC1lF,KAAK,GAAG+/O,QAAQC,GAAgB,OAAOv8O,UAAUxgB,QAAQ,IAAIyiG,EAAEzpB,MAAMx4D,UAAU,IAAIA,UAAUxgB,QAAQ,IAAIyiG,EAAE66H,OAAO98M,UAAU,IAAI0xO,EAAU/3J,GAAGsI,EAAEu6J,WAAW7iK,EAAEA,GAAGx3F,EAAQs6P,QAAQx6J,EAAEtI,GAAG+iK,EAAYz6J,EAAEu6J,cAAcv6J,EAAEu6J,YAAW,GAAIE,EAAYz6J,EAAEzpB,SAASypB,EAAEzpB,MAAM,GAAGkkL,EAAYz6J,EAAE66H,UAAU76H,EAAE66H,QAAO,GAAI4/B,EAAYz6J,EAAEggH,iBAAiBhgH,EAAEggH,eAAc,GAAIhgH,EAAE66H,SAAS76H,EAAEq6J,QAAQK,GAAkBplI,EAAYt1B,EAAE79F,EAAE69F,EAAEzpB,MAAM,CAAC,SAASmkL,EAAiBv4P,EAAEu1F,GAAG,IAAIsI,EAAEoH,EAAQuzJ,OAAOjjK,GAAG,OAAOsI,EAAE,KAAKoH,EAAQyzH,OAAO76H,GAAG,GAAG,IAAI79F,EAAE,KAAKilG,EAAQyzH,OAAO76H,GAAG,GAAG,IAAI79F,CAAC,CAAC,SAASm4P,EAAen4P,EAAEu1F,GAAG,OAAOv1F,CAAC,CAA6E,SAASmzH,EAAYnzH,EAAEu1F,EAAEsI,GAAG,GAAG79F,EAAE69M,eAAetoH,GAAG4gK,EAAW5gK,EAAE0P,UAAU1P,EAAE0P,UAAUlnG,EAAQknG,WAAW1P,EAAE1sF,aAAa0sF,EAAE1sF,YAAYtN,YAAYg6F,GAAG,CAAC,IAAI94F,EAAE84F,EAAE0P,QAAQpH,EAAE79F,GAAG,OAAO+5L,EAASt9L,KAAKA,EAAE02H,EAAYnzH,EAAEvD,EAAEohG,IAAIphG,CAAC,CAAC,IAAIvB,EAA4jC,SAAyB8E,EAAEu1F,GAAG,GAAG+iK,EAAY/iK,GAAG,OAAOv1F,EAAEk4P,QAAQ,YAAY,aAAa,GAAGn+D,EAASxkG,GAAG,CAAC,IAAIsI,EAAE,IAAIhiG,KAAKC,UAAUy5F,GAAGxtF,QAAQ,SAAS,IAAIA,QAAQ,KAAK,OAAOA,QAAQ,OAAO,KAAK,IAAI,OAAO/H,EAAEk4P,QAAQr6J,EAAE,SAAS,CAAC,OAAOqa,EAAS3iB,GAAGv1F,EAAEk4P,QAAQ,GAAG3iK,EAAE,UAAU+3J,EAAU/3J,GAAGv1F,EAAEk4P,QAAQ,GAAG3iK,EAAE,WAAWkjK,EAAOljK,GAAGv1F,EAAEk4P,QAAQ,OAAO,aAAQ,CAAM,CAA15CQ,CAAgB14P,EAAEu1F,GAAG,GAAGr6F,EAAE,OAAOA,EAAE,IAAI2G,EAAE5G,OAAOD,KAAKu6F,GAAGx2F,EAAlW,SAAqBiB,GAAG,IAAIu1F,EAAE,CAAC,EAAE,OAAOv1F,EAAEuE,SAAQ,SAASvE,EAAE69F,GAAGtI,EAAEv1F,IAAG,CAAE,IAAGu1F,CAAC,CAAyRojK,CAAY92P,GAAG,GAAG7B,EAAEo4P,aAAav2P,EAAE5G,OAAO0J,oBAAoB4wF,IAAI+hK,EAAQ/hK,KAAK1zF,EAAE8B,QAAQ,YAAY,GAAG9B,EAAE8B,QAAQ,gBAAgB,GAAG,OAAOi1P,EAAYrjK,GAAG,GAAG,IAAI1zF,EAAEzG,OAAO,CAAC,GAAG+6P,EAAW5gK,GAAG,CAAC,IAAIqgK,EAAErgK,EAAE1xF,KAAK,KAAK0xF,EAAE1xF,KAAK,GAAG,OAAO7D,EAAEk4P,QAAQ,YAAYtC,EAAE,IAAI,UAAU,CAAC,GAAGc,EAASnhK,GAAG,OAAOv1F,EAAEk4P,QAAQ3zK,OAAOhpF,UAAUF,SAASmH,KAAK+yF,GAAG,UAAU,GAAGkhK,EAAOlhK,GAAG,OAAOv1F,EAAEk4P,QAAQruO,KAAKtuB,UAAUF,SAASmH,KAAK+yF,GAAG,QAAQ,GAAG+hK,EAAQ/hK,GAAG,OAAOqjK,EAAYrjK,EAAE,CAAC,IAA8bjzF,EAA1b0K,EAAE,GAAGqoF,GAAE,EAAGl6F,EAAE,CAAC,IAAI,KAAK,OAAGsJ,EAAQ8wF,KAAKF,GAAE,EAAGl6F,EAAE,CAAC,IAAI,MAAMg7P,EAAW5gK,KAAKvoF,EAAE,cAAcuoF,EAAE1xF,KAAK,KAAK0xF,EAAE1xF,KAAK,IAAI,KAAK6yP,EAASnhK,KAAKvoF,EAAE,IAAIu3E,OAAOhpF,UAAUF,SAASmH,KAAK+yF,IAAIkhK,EAAOlhK,KAAKvoF,EAAE,IAAI6c,KAAKtuB,UAAUs9P,YAAYr2P,KAAK+yF,IAAI+hK,EAAQ/hK,KAAKvoF,EAAE,IAAI4rP,EAAYrjK,IAAI,IAAI1zF,EAAEzG,QAAUi6F,GAAG,GAAGE,EAAEn6F,OAA8ByiG,EAAE,EAAS64J,EAASnhK,GAAGv1F,EAAEk4P,QAAQ3zK,OAAOhpF,UAAUF,SAASmH,KAAK+yF,GAAG,UAAUv1F,EAAEk4P,QAAQ,WAAW,YAAWl4P,EAAEmY,KAAK/a,KAAKm4F,GAAgBjzF,EAAE+yF,EAAiiB,SAAqBr1F,EAAEu1F,EAAEsI,EAAEphG,EAAEvB,GAAG,IAAI,IAAI2G,EAAE,GAAG9C,EAAE,EAAE62P,EAAErgK,EAAEn6F,OAAO2D,EAAE62P,IAAI72P,EAAEwD,EAAegzF,EAAEx5F,OAAOgD,IAAI8C,EAAEzE,KAAK07P,EAAe94P,EAAEu1F,EAAEsI,EAAEphG,EAAEV,OAAOgD,IAAG,IAAK8C,EAAEzE,KAAK,IAAI,OAAOlC,EAAEqJ,SAAQ,SAASrJ,GAAGA,EAAE2C,MAAM,UAAUgE,EAAEzE,KAAK07P,EAAe94P,EAAEu1F,EAAEsI,EAAEphG,EAAEvB,GAAE,GAAI,IAAG2G,CAAC,CAA9wB8xH,CAAY3zH,EAAEu1F,EAAEsI,EAAE9+F,EAAE8C,GAAGA,EAAE7C,KAAI,SAASvC,GAAG,OAAOq8P,EAAe94P,EAAEu1F,EAAEsI,EAAE9+F,EAAEtC,EAAE44F,EAAE,IAAGr1F,EAAEmY,KAAK9a,MAAk/C,SAA8B2C,EAAEu1F,EAAEsI,GAAW,OAAO79F,EAAEq4C,QAAO,SAASr4C,EAAEu1F,GAAG,OAAWA,EAAE5xF,QAAQ,MAAc3D,EAAEu1F,EAAExtF,QAAQ,kBAAkB,IAAI3M,OAAO,CAAC,GAAE,GAAG,GAAGyiG,EAAE,IAAI,KAAKtI,EAAE,GAAGA,EAAE,OAAO,IAAIv1F,EAAEd,KAAK,SAAS,IAAI2+F,EAAE,GAAGA,EAAE,GAAGtI,EAAE,IAAIv1F,EAAEd,KAAK,MAAM,IAAI2+F,EAAE,EAAE,CAAluDk7J,CAAqBz2P,EAAE0K,EAAE7R,IAAhRA,EAAE,GAAG6R,EAAE7R,EAAE,EAAyQ,CAAkW,SAASy9P,EAAY54P,GAAG,MAAM,IAAIpE,MAAML,UAAUF,SAASmH,KAAKxC,GAAG,GAAG,CAAiP,SAAS84P,EAAe94P,EAAEu1F,EAAEsI,EAAEphG,EAAEvB,EAAE2G,GAAG,IAAI9C,EAAE62P,EAAE5oP,EAAE,IAAIA,EAAE/R,OAAOgH,yBAAyBszF,EAAEr6F,IAAI,CAACnB,MAAMw7F,EAAEr6F,KAAKiG,IAAIy0P,EAAE5oP,EAAErH,IAAI3F,EAAEk4P,QAAQ,kBAAkB,WAAWl4P,EAAEk4P,QAAQ,WAAW,WAAWlrP,EAAErH,MAAMiwP,EAAE51P,EAAEk4P,QAAQ,WAAW,YAAY31P,EAAe9F,EAAEvB,KAAK6D,EAAE,IAAI7D,EAAE,KAAK06P,IAAI51P,EAAEmY,KAAKxU,QAAQqJ,EAAEjT,OAAO,GAAG67P,EAAE6C,EAAO56J,GAAGs1B,EAAYnzH,EAAEgN,EAAEjT,MAAM,MAAMo5H,EAAYnzH,EAAEgN,EAAEjT,MAAM8jG,EAAE,IAAIl6F,QAAQ,OAAO,IAAIiyP,EAAE/zP,EAAE+zP,EAAE/2P,MAAM,MAAMG,KAAI,SAASgB,GAAG,MAAM,KAAKA,CAAC,IAAGd,KAAK,MAAMiiF,OAAO,GAAG,KAAKy0K,EAAE/2P,MAAM,MAAMG,KAAI,SAASgB,GAAG,MAAM,MAAMA,CAAC,IAAGd,KAAK,OAAO02P,EAAE51P,EAAEk4P,QAAQ,aAAa,YAAYI,EAAYv5P,GAAG,CAAC,GAAG8C,GAAG3G,EAAE2C,MAAM,SAAS,OAAO+3P,GAAG72P,EAAElD,KAAKC,UAAU,GAAGZ,IAAI2C,MAAM,iCAAiCkB,EAAEA,EAAEoiF,OAAO,EAAEpiF,EAAE3D,OAAO,GAAG2D,EAAEiB,EAAEk4P,QAAQn5P,EAAE,UAAUA,EAAEA,EAAEgJ,QAAQ,KAAK,OAAOA,QAAQ,OAAO,KAAKA,QAAQ,WAAW,KAAKhJ,EAAEiB,EAAEk4P,QAAQn5P,EAAE,UAAU,CAAC,OAAOA,EAAE,KAAK62P,CAAC,CAAwP,SAASnxP,EAAQzE,GAAG,OAAOwE,MAAMC,QAAQzE,EAAE,CAAC,SAASstP,EAAUttP,GAAG,MAAM,kBAAkBA,CAAC,CAAC,SAASy4P,EAAOz4P,GAAG,OAAO,OAAOA,CAAC,CAA8C,SAASk4G,EAASl4G,GAAG,MAAM,iBAAiBA,CAAC,CAAC,SAAS+5L,EAAS/5L,GAAG,MAAM,iBAAiBA,CAAC,CAA+C,SAASs4P,EAAYt4P,GAAG,YAAO,IAASA,CAAC,CAAC,SAAS02P,EAAS12P,GAAG,OAAOg5P,EAASh5P,IAAI,oBAAoBi5P,EAAej5P,EAAE,CAAC,SAASg5P,EAASh5P,GAAG,MAAM,iBAAiBA,GAAG,OAAOA,CAAC,CAAC,SAASy2P,EAAOz2P,GAAG,OAAOg5P,EAASh5P,IAAI,kBAAkBi5P,EAAej5P,EAAE,CAAC,SAASs3P,EAAQt3P,GAAG,OAAOg5P,EAASh5P,KAAK,mBAAmBi5P,EAAej5P,IAAIA,aAAapE,MAAM,CAAC,SAASu6P,EAAWn2P,GAAG,MAAM,mBAAmBA,CAAC,CAAsI,SAASi5P,EAAej5P,GAAG,OAAO/E,OAAOM,UAAUF,SAASmH,KAAKxC,EAAE,CAAC,SAASqzC,EAAIrzC,GAAG,OAAOA,EAAE,GAAG,IAAIA,EAAE3E,SAAS,IAAI2E,EAAE3E,SAAS,GAAG,CAAkK,SAASkH,EAAevC,EAAEu1F,GAAG,OAAOt6F,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAEu1F,EAAE,CAAC,IAAI2jK,EAAa,WAAWn7P,EAAQ6oD,OAAO,SAAS5mD,GAAG,IAAI+5L,EAAS/5L,GAAG,CAAC,IAAI,IAAIu1F,EAAE,GAAGsI,EAAE,EAAEA,EAAEjiF,UAAUxgB,OAAOyiG,IAAItI,EAAEn4F,KAAK6nG,EAAQrpF,UAAUiiF,KAAK,OAAOtI,EAAEr2F,KAAK,IAAI,CAAS2+F,EAAE,EAAV,IAAI,IAAQphG,EAAEmf,UAAU1gB,EAAEuB,EAAErB,OAAOyG,EAAE9F,OAAOiE,GAAG+H,QAAQmxP,GAAa,SAASl5P,GAAG,GAAG,OAAOA,EAAE,MAAM,IAAI,GAAG69F,GAAG3iG,EAAE,OAAO8E,EAAE,OAAOA,GAAG,IAAI,KAAK,OAAOjE,OAAOU,EAAEohG,MAAM,IAAI,KAAK,OAAOlgG,OAAOlB,EAAEohG,MAAM,IAAI,KAAK,IAAI,OAAOhiG,KAAKC,UAAUW,EAAEohG,KAAK,CAAC,MAAM79F,GAAG,MAAM,YAAY,CAAC,QAAQ,OAAOA,EAAE,IAAGjB,EAAEtC,EAAEohG,GAAGA,EAAE3iG,EAAE6D,EAAEtC,IAAIohG,GAAG46J,EAAO15P,KAAKi6P,EAASj6P,GAAG8C,GAAG,IAAI9C,EAAE8C,GAAG,IAAIojG,EAAQlmG,GAAG,OAAO8C,CAAC,EAAE9D,EAAQ4+N,UAAU,SAAS38N,EAAEu1F,GAAG,GAAG+iK,EAAYx1P,EAAOopB,SAAS,OAAO,WAAW,OAAOnuB,EAAQ4+N,UAAU38N,EAAEu1F,GAAGn1F,MAAMvG,KAAK+hB,UAAU,EAAE,IAAG,IAAKsQ,EAAQitO,cAAc,OAAOn5P,EAAE,IAAI69F,GAAE,EAAG,OAAO,WAAsB,IAAIA,EAAE,CAAC,GAAG3xE,EAAQktO,iBAAiB,MAAM,IAAIx9P,MAAM25F,GAAGrpE,EAAQmtO,iBAAiB90J,QAAQlkC,MAAMk1B,GAAGgP,QAAQvnG,MAAMu4F,GAAGsI,GAAE,CAAE,CAAC,OAAO79F,EAAEI,MAAMvG,KAAK+hB,UAAU,CAAC,EAAE,IAAI09O,EAAaC,EAAO,CAAC,EAAEx7P,EAAQ27N,SAAS,SAAS15N,GAAG,GAAGs4P,EAAYgB,KAAgBA,EAAaptO,EAAQ0xK,IAAI47D,YAAY,IAAIx5P,EAAEA,EAAEf,eAAes6P,EAAOv5P,GAAG,GAAG,IAAIukF,OAAO,MAAMvkF,EAAE,MAAM,KAAK8D,KAAKw1P,GAAc,CAAC,IAAI/jK,EAAErpE,EAAQutO,IAAIF,EAAOv5P,GAAG,WAAW,IAAI69F,EAAE9/F,EAAQ6oD,OAAOxmD,MAAMrC,EAAQ6d,WAAW2oF,QAAQvnG,MAAM,YAAYgD,EAAEu1F,EAAEsI,EAAE,CAAC,MAAM07J,EAAOv5P,GAAG,WAAW,EAAE,OAAOu5P,EAAOv5P,EAAE,EAAEjC,EAAQknG,QAAQA,EAAQA,EAAQyzH,OAAO,CAACghC,KAAK,CAAC,EAAE,IAAIC,OAAO,CAAC,EAAE,IAAIC,UAAU,CAAC,EAAE,IAAI9oE,QAAQ,CAAC,EAAE,IAAI+oE,MAAM,CAAC,GAAG,IAAIC,KAAK,CAAC,GAAG,IAAIC,MAAM,CAAC,GAAG,IAAIC,KAAK,CAAC,GAAG,IAAIC,KAAK,CAAC,GAAG,IAAIC,MAAM,CAAC,GAAG,IAAIC,QAAQ,CAAC,GAAG,IAAIC,IAAI,CAAC,GAAG,IAAIC,OAAO,CAAC,GAAG,KAAKp1J,EAAQuzJ,OAAO,CAAC8B,QAAQ,OAAO5yC,OAAO,SAASl+B,QAAQ,SAASxvL,UAAU,OAAOugQ,KAAK,OAAOtgQ,OAAO,QAAQ83E,KAAK,UAAUyoL,OAAO,OAAOz8P,EAAQ0G,QAAQA,EAAQ1G,EAAQuvP,UAAUA,EAAUvvP,EAAQ06P,OAAOA,EAAO16P,EAAQ08P,kBAAruF,SAA2Bz6P,GAAG,OAAO,MAAMA,CAAC,EAA6tFjC,EAAQm6G,SAASA,EAASn6G,EAAQg8L,SAASA,EAASh8L,EAAQ28P,SAA5rF,SAAkB16P,GAAG,MAAM,iBAAiBA,CAAC,EAAiqFjC,EAAQu6P,YAAYA,EAAYv6P,EAAQ24P,SAASA,EAAS34P,EAAQi7P,SAASA,EAASj7P,EAAQ04P,OAAOA,EAAO14P,EAAQu5P,QAAQA,EAAQv5P,EAAQo4P,WAAWA,EAAWp4P,EAAQg5P,YAAv7E,SAAqB/2P,GAAG,OAAO,OAAOA,GAAG,kBAAkBA,GAAG,iBAAiBA,GAAG,iBAAiBA,GAAG,iBAAiBA,QAAG,IAASA,CAAC,EAA20EjC,EAAQkjG,SAAS40J,EAAQ,sBAAsB,IAAI8E,EAAO,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAO58P,EAAQ+0B,IAAI,WAAx1E,IAAyB9yB,EAAWu1F,EAA+zEgP,QAAQzxE,IAAI,WAAt1E9yB,EAAE,IAAI6pB,KAAK0rE,EAAE,CAACliD,EAAIrzC,EAAEkpF,YAAY71C,EAAIrzC,EAAEmpF,cAAc91C,EAAIrzC,EAAEopF,eAAelqF,KAAK,KAAW,CAACc,EAAEipF,UAAU0xK,EAAO36P,EAAEgpF,YAAYuM,GAAGr2F,KAAK,MAAyuEnB,EAAQ6oD,OAAOxmD,MAAMrC,EAAQ6d,WAAW,EAAE7d,EAAQuwI,SAASunH,EAAQ,YAAY93P,EAAQs6P,QAAQ,SAASr4P,EAAEu1F,GAAG,IAAIA,IAAIyjK,EAASzjK,GAAG,OAAOv1F,EAAE,IAAI,IAAI69F,EAAE5iG,OAAOD,KAAKu6F,GAAG94F,EAAEohG,EAAEziG,OAAOqB,KAAKuD,EAAE69F,EAAEphG,IAAI84F,EAAEsI,EAAEphG,IAAI,OAAOuD,CAAC,CAEtqO,GAAEwC,KAAK3I,KAAKg8P,EAAQ,iBAA8B,IAAX,EAAA3qM,EAAyB,EAAAA,EAAyB,oBAATnoD,KAAuBA,KAAyB,oBAAXiW,OAAyBA,OAAS,CAAC,EAEzJ,EAAE,CAAC,qBAAqB,EAAE,SAAW,EAAE,SAAW,IAAI,EAAE,CAAC,SAAS68O,EAAQ/3P,EAAOC,GACjF,aAAyH,IAAI68P,EAAa,WAAW,SAAS1oI,EAAiBlyH,EAAE69F,GAAG,IAAI,IAAItI,EAAE,EAAEA,EAAEsI,EAAEziG,OAAOm6F,IAAI,CAAC,IAAI94F,EAAEohG,EAAEtI,GAAG94F,EAAEyE,WAAWzE,EAAEyE,aAAY,EAAGzE,EAAE2F,cAAa,EAAG,UAAU3F,IAAIA,EAAE0F,UAAS,GAAIlH,OAAO+C,eAAegC,EAAEvD,EAAEnC,IAAImC,EAAE,CAAC,CAAC,OAAO,SAASuD,EAAE69F,EAAEtI,GAAG,OAAOsI,GAAGq0B,EAAiBlyH,EAAEzE,UAAUsiG,GAAGtI,GAAG28B,EAAiBlyH,EAAEu1F,GAAGv1F,CAAC,CAAC,CAA5R,GAAiU66P,EAAxBhF,EAAQ,gBAA4CgF,mBAAmB/8P,EAAOC,QAAQ,WAAW,SAASg4P,EAA0B/1P,GAAG,IAAI69F,EAAE79F,EAAE2lN,eAArjB,SAAyB3lN,EAAE69F,GAAG,KAAK79F,aAAa69F,GAAG,MAAM,IAAI95F,UAAU,oCAAoC,EAAwdwtH,CAAgB13H,KAAKk8P,GAA2B8E,EAAmBhhQ,KAAK,gBAAgBgkG,EAAE,CAAC,OAAO+8J,EAAa7E,EAA0B,CAAC,CAACz7P,IAAI,OAAOP,MAAM,SAAciG,GAAG,OAAOA,EAAEnD,UAAU,KAAKk5P,CAAyB,CAArS,EAEzgB,EAAE,CAAC,eAAe,KAAK,EAAE,CAAC,SAASF,EAAQ/3P,EAAOC,GAClD,aAAyH,IAAI68P,EAAa,WAAW,SAAS1oI,EAAiBlyH,EAAEu1F,GAAG,IAAI,IAAIsI,EAAE,EAAEA,EAAEtI,EAAEn6F,OAAOyiG,IAAI,CAAC,IAAIxI,EAAEE,EAAEsI,GAAGxI,EAAEn0F,WAAWm0F,EAAEn0F,aAAY,EAAGm0F,EAAEjzF,cAAa,EAAG,UAAUizF,IAAIA,EAAElzF,UAAS,GAAIlH,OAAO+C,eAAegC,EAAEq1F,EAAE/6F,IAAI+6F,EAAE,CAAC,CAAC,OAAO,SAASr1F,EAAEu1F,EAAEsI,GAAG,OAAOtI,GAAG28B,EAAiBlyH,EAAEzE,UAAUg6F,GAAGsI,GAAGq0B,EAAiBlyH,EAAE69F,GAAG79F,CAAC,CAAC,CAA5R,GAAiU66P,EAAxBhF,EAAQ,gBAA4CgF,mBAAmB/8P,EAAOC,QAAQ,WAAW,SAASi4P,EAAqBh2P,GAAG,IAAIu1F,EAAEv1F,EAAE2lN,eAAhjB,SAAyB3lN,EAAEu1F,GAAG,KAAKv1F,aAAau1F,GAAG,MAAM,IAAIxxF,UAAU,oCAAoC,EAAmdwtH,CAAgB13H,KAAKm8P,GAAsB6E,EAAmBhhQ,KAAK,gBAAgB07F,EAAE,CAAC,OAAOqlK,EAAa5E,EAAqB,CAAC,CAAC17P,IAAI,OAAOP,MAAM,WAAgB,OAAO,CAAC,KAAKi8P,CAAoB,CAArQ,EAEzgB,EAAE,CAAC,eAAe,KAAK,GAAG,CAAC,SAASH,EAAQ/3P,EAAOC,GACnD,aAAgH,SAAS+8P,EAAK96P,EAAEu1F,EAAEsI,GAAG,GAAG,mBAAmB79F,EAAE,MAAM,IAAI+D,UAAU,8BAA8B,OAAOs6G,SAAS9iH,UAAU6E,MAAMoC,KAAKxC,EAAEu1F,EAAEsI,EAAE,CAAC,SAASk9J,EAAY/6P,EAAEu1F,EAAEsI,GAAG,IAAI,OAAOn+F,QAAQC,QAAQm7P,EAAK96P,EAAEu1F,EAAEsI,GAAG,CAAC,MAAM79F,GAAG,OAAON,QAAQE,OAAOI,EAAE,CAAC,CAAC,IAAI0uH,EAAQ,mBAAmBtrH,QAAQ,iBAAiBA,OAAOe,SAAS,SAASnE,GAAG,cAAcA,CAAC,EAAE,SAASA,GAAG,OAAOA,GAAG,mBAAmBoD,QAAQpD,EAAE6I,cAAczF,QAAQpD,IAAIoD,OAAO7H,UAAU,gBAAgByE,CAAC,EAAkCg7P,GAAzBnF,EAAQ,iBAAgCzyP,OAAO,mCAAkCrF,EAAQk9P,aAAa,SAASj7P,GAAG,MAAM,iBAAY,IAASA,EAAE,YAAY0uH,EAAQ1uH,KAAK,OAAOA,GAAG,mBAAmBA,CAAC,EAAEjC,EAAQ88P,mBAAmB,SAAS76P,EAAEu1F,EAAEsI,GAAG5iG,OAAO+C,eAAegC,EAAEu1F,EAAE,CAACx7F,MAAM8jG,EAAE17F,UAAS,EAAGjB,YAAW,EAAGkB,cAAa,GAAI,EAAErE,EAAQm9P,oBAAoB,SAASl7P,GAAG,OAAOA,EAAE3B,OAAO,EAAEN,EAAQo9P,gBAAgB,SAASn7P,EAAEu1F,EAAEsI,EAAEphG,EAAEoF,GAAG,IAAI6D,WAAW1F,GAAG2F,IAAI,IAAID,WAAWm4F,EAAEphG,EAAEoF,GAAG0zF,EAAE,EAAEx3F,EAAQq9P,uBAAuB,SAASp7P,EAAEu1F,GAAG,IAAIsI,EAAE,CAAC,EAAE,OAAO5iG,OAAO+C,eAAe6/F,EAAE,QAAQ,CAAC9jG,MAAMiG,EAAEkB,YAAW,EAAGiB,UAAS,EAAGC,cAAa,IAAKnH,OAAO+C,eAAe6/F,EAAE,OAAO,CAAC9jG,MAAMw7F,EAAEr0F,YAAW,EAAGiB,UAAS,EAAGC,cAAa,IAAKy7F,CAAC,EAAE9/F,EAAQs9P,0BAA0B,SAASr7P,GAAG,OAAM,IAAKjC,EAAQu9P,oBAAoBt7P,IAAIA,IAAI,GAAG,EAAEjC,EAAQu9P,oBAAoB,SAASt7P,GAAG,QAAM,iBAAiBA,GAAKrC,OAAOC,MAAMoC,IAAMA,EAAE,EAAG,EAAEjC,EAAQ+8P,KAAKA,EAAK/8P,EAAQw9P,oCAAoC,SAASv7P,EAAEu1F,EAAEsI,EAAEphG,GAAG,IAAIoF,EAAE7B,EAAEu1F,GAAG,QAAG,IAAS1zF,EAAE,CAAC,GAAG,mBAAmBA,EAAE,MAAM,IAAIkC,UAAUlC,EAAE,oBAAoB,OAAOg8F,GAAG,KAAK,EAAE,OAAO,WAAW,OAAOk9J,EAAYl5P,EAAE7B,EAAEvD,EAAE,EAAE,KAAK,EAAE,OAAO,SAAS84F,GAAG,IAAIsI,EAAE,CAACtI,GAAGh+D,OAAO96B,GAAG,OAAOs+P,EAAYl5P,EAAE7B,EAAE69F,EAAE,EAAE,CAAC,OAAO,WAAW,OAAOn+F,QAAQC,SAAS,CAAC,EAAE5B,EAAQy9P,aAAa,SAASx7P,EAAEu1F,EAAEsI,GAAG,IAAIphG,EAAEuD,EAAEu1F,GAAG,QAAG,IAAS94F,EAAE,OAAOq+P,EAAKr+P,EAAEuD,EAAE69F,EAAE,EAAE9/F,EAAQg9P,YAAYA,EAAYh9P,EAAQ09P,oBAAoB,SAASz7P,GAAG,IAAIu1F,EAAEv1F,EAAE3B,QAAQ,OAAOpD,OAAO+C,eAAegC,EAAE,aAAa,CAACmB,IAAI,WAAe,OAAO,CAAC,IAAInB,EAAEg7P,IAAgB,EAAGzlK,CAAC,EAAEx3F,EAAQ29P,iBAAiB,SAAS17P,GAAG,OAAOg7P,KAAkBh7P,CAAC,EAAEjC,EAAQ49P,kCAAkC,SAAS37P,GAAG,GAAGA,EAAErC,OAAOqC,GAAGrC,OAAOC,MAAMoC,IAAIA,EAAE,EAAE,MAAM,IAAI0I,WAAW,iFAAiF,OAAO1I,CAAC,EAAEjC,EAAQ69P,kCAAkC,SAAS57P,GAAG,QAAG,IAASA,EAAE,OAAO,WAAW,OAAO,CAAC,EAAE,GAAG,mBAAmBA,EAAE,MAAM,IAAI+D,UAAU,0DAA0D,OAAO,SAASwxF,GAAG,OAAOv1F,EAAEu1F,EAAE,CAAC,CAEhiF,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,SAASsgK,EAAQ/3P,EAAOC,GACpD,aAAwB83P,EAAQ,iBAAnB,IAAqEwF,EAAxBxF,EAAQ,gBAAmDwF,0BAA0Bt9P,EAAQ89P,aAAa,SAAS77P,GAAG,IAAI41P,EAAE51P,EAAE87P,OAAO13P,QAAQ,OAAOpE,EAAE+7P,iBAAiBnG,EAAEj8P,KAAKqG,EAAE+7P,gBAAgB,IAAI/7P,EAAE+7P,gBAAgB,GAAGnG,EAAE77P,KAAK,EAAEgE,EAAQi+P,qBAAqB,SAASh8P,EAAE41P,EAAE/3J,GAAG,GAAGA,EAAElgG,OAAOkgG,IAAIw9J,EAA0Bx9J,GAAG,MAAM,IAAIn1F,WAAW,wDAAwD1I,EAAE87P,OAAO1+P,KAAK,CAACrD,MAAM67P,EAAEj8P,KAAKkkG,IAAI79F,EAAE+7P,iBAAiBl+J,CAAC,EAAE9/F,EAAQk+P,eAAe,SAASj8P,GAAG,OAAOA,EAAE87P,OAAO,GAAG/hQ,KAAK,EAAEgE,EAAQm+P,WAAW,SAASl8P,GAAGA,EAAE87P,OAAO,GAAG97P,EAAE+7P,gBAAgB,CAAC,CAEpnB,EAAE,CAAC,eAAe,GAAG,gBAAgB,KAAK,GAAG,CAAC,SAASlG,EAAQ/3P,EAAOC,GACtE,aAAa,SAASwzH,EAAgBvxH,EAAEu1F,GAAG,KAAKv1F,aAAau1F,GAAG,MAAM,IAAIxxF,UAAU,oCAAoC,CAAoF,SAASo4P,EAAmCn8P,GAAG,OAAO,IAAIo8P,GAA4Bp8P,EAAE,CAAC,SAASq8P,EAAqBr8P,EAAEu1F,EAAEsI,GAAG,IAAIxI,EAAEz5E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,EAAEzgB,EAAEygB,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,WAAW,OAAO,CAAC,EAAE/Z,EAAE5G,OAAO2G,OAAOo5D,GAAez/D,WAAW,OAAO+gQ,EAAyBz6P,GAAG06P,EAAqC16P,EAAE5G,OAAO2G,OAAO46P,GAAgCjhQ,WAAWyE,EAAEu1F,EAAEsI,EAAExI,EAAEl6F,GAAG0G,CAAC,CAA6V,SAASy6P,EAAyBt8P,GAAGA,EAAEo+L,OAAO,WAAWp+L,EAAEy8P,aAAQ,EAAOz8P,EAAE08P,kBAAa,EAAO18P,EAAE28P,YAAW,CAAE,CAAC,SAASC,EAAiB58P,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,4BAA4B,CAA2D,SAAS68P,EAAuB78P,GAAG,YAAO,IAASA,EAAEy8P,OAAO,CAAysC,SAASK,EAAiC98P,GAAG,OAAO,IAAIN,SAAQ,SAAS61F,EAAEsI,GAAG,IAAIxI,EAAE,CAACmuH,SAASjuH,EAAEwnK,QAAQl/J,GAAG79F,EAAEy8P,QAAQO,kBAAkB5/P,KAAKi4F,EAAE,GAAE,CAAC,SAAS4nK,EAA6Bj9P,GAAG,OAAO,IAAIN,SAAQ,SAAS61F,EAAEsI,GAAG,IAAIxI,EAAE,CAACmuH,SAASjuH,EAAEwnK,QAAQl/J,GAAG79F,EAAEy8P,QAAQS,cAAc9/P,KAAKi4F,EAAE,GAAE,CAAC,SAAS8nK,EAAqBn9P,EAAEu1F,GAAG,OAAOv1F,EAAE28P,YAAW,EAAG,WAAW38P,EAAEo+L,OAAO1+L,QAAQC,aAAQ,GAAQ,YAAYK,EAAEo+L,OAAO1+L,QAAQE,OAAOI,EAAE08P,eAAeU,EAAoBp9P,GAAGA,EAAEq9P,0BAA0BC,IAAa/nK,GAAGp1F,MAAK,WAAW,IAAG,CAAC,SAASi9P,EAAoBp9P,GAAGA,EAAEo+L,OAAO,SAAS,IAAI7oG,EAAEv1F,EAAEy8P,QAAQ,QAAG,IAASlnK,EAAE,CAAC,IAAG,IAAKgoK,EAA8BhoK,GAAG,CAAC,IAAIsI,GAAE,EAAGxI,GAAE,EAAGl6F,OAAE,EAAO,IAAI,IAAI,IAAI0G,EAAEpF,EAAE84F,EAAE2nK,cAAc95P,OAAOe,cAAc05F,GAAGh8F,EAAEpF,EAAEsD,QAAQG,MAAM29F,GAAE,GAAG,EAAGh8F,EAAE9H,MAAMypN,UAAU43C,QAAuB,GAAO,GAAI,CAAC,MAAMp7P,GAAGq1F,GAAE,EAAGl6F,EAAE6E,CAAC,CAAC,QAAQ,KAAK69F,GAAGphG,EAAEspN,QAAQtpN,EAAEspN,QAAQ,CAAC,QAAQ,GAAG1wH,EAAE,MAAMl6F,CAAC,CAAC,CAACo6F,EAAE2nK,cAAc,EAAE,EAA20f,SAA2Cl9P,GAAGA,EAAEw9P,4BAAuB,GAAQx9P,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,CAAM,CAAv9fC,CAAkCnoK,EAAE,CAAC,CAAC,SAASooK,EAAoB39P,EAAEu1F,GAAGv1F,EAAEo+L,OAAO,UAAUp+L,EAAE08P,aAAannK,EAAE,IAAIsI,EAAE79F,EAAEy8P,QAAQ,QAAG,IAAS5+J,EAAE,CAAC,IAAG,IAAK0/J,EAA8B1/J,GAAG,CAAC,IAAIxI,GAAE,EAAGl6F,GAAE,EAAG0G,OAAE,EAAO,IAAI,IAAI,IAAIpF,EAAEvB,EAAE2iG,EAAEq/J,cAAc95P,OAAOe,cAAckxF,GAAG54F,EAAEvB,EAAE6E,QAAQG,MAAMm1F,GAAE,EAAG54F,EAAE1C,MAAMgjQ,QAAQxnK,EAAE,CAAC,MAAMv1F,GAAG7E,GAAE,EAAG0G,EAAE7B,CAAC,CAAC,QAAQ,KAAKq1F,GAAGn6F,EAAE6qN,QAAQ7qN,EAAE6qN,QAAQ,CAAC,QAAQ,GAAG5qN,EAAE,MAAM0G,CAAC,CAAC,CAACg8F,EAAEq/J,cAAc,EAAE,KAAK,CAAC,IAAItkK,GAAE,EAAG75F,GAAE,EAAG62P,OAAE,EAAO,IAAI,IAAI,IAAI5oP,EAAEyoF,EAAEoI,EAAEm/J,kBAAkB55P,OAAOe,cAAcy0F,GAAG5rF,EAAEyoF,EAAE11F,QAAQG,MAAM04F,GAAE,EAAG5rF,EAAEjT,MAAMgjQ,QAAQxnK,EAAE,CAAC,MAAMv1F,GAAGjB,GAAE,EAAG62P,EAAE51P,CAAC,CAAC,QAAQ,KAAK44F,GAAGnD,EAAEswH,QAAQtwH,EAAEswH,QAAQ,CAAC,QAAQ,GAAGhnN,EAAE,MAAM62P,CAAC,CAAC,CAAC/3J,EAAEm/J,kBAAkB,EAAE,CAACY,GAAiC//J,EAAEtI,GAAGsI,EAAEggK,eAAevgO,OAAM,WAAW,GAAE,CAAC,CAAgI,SAASwgO,EAAiC99P,EAAEu1F,EAAEsI,GAAG79F,EAAEy8P,QAAQS,cAAc94P,QAAQo/M,SAAS43C,GAAuB7lK,EAAEsI,GAAG,CAAC,SAASkgK,EAAqC/9P,GAAG,OAAOA,EAAEy8P,QAAQO,kBAAkB5hQ,MAAM,CAAC,SAAS4iQ,EAAiCh+P,GAAG,OAAOA,EAAEy8P,QAAQS,cAAc9hQ,MAAM,CAAC,SAAS6iQ,EAA4Bj+P,GAAG,IAAIu1F,EAAEv1F,EAAEy8P,QAAQ,YAAO,IAASlnK,IAAG,IAAK2oK,EAA2B3oK,EAAE,CAAC,SAAS4oK,EAA+Bn+P,GAAG,IAAIu1F,EAAEv1F,EAAEy8P,QAAQ,YAAO,IAASlnK,IAAG,IAAKgoK,EAA8BhoK,EAAE,CAAC,SAAS2oK,EAA2Bl+P,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,oBAAoB,CAAC,SAASu9P,EAA8Bv9P,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,gBAAgB,CAAC,SAASo+P,EAAsCp+P,EAAEu1F,GAAGv1F,EAAEq+P,qBAAqB9oK,EAAEA,EAAEknK,QAAQz8P,EAAE,aAAau1F,EAAE6oG,OAAw+a,SAA8Cp+L,GAAGA,EAAE69P,eAAe,IAAIn+P,SAAQ,SAAS61F,EAAEsI,GAAG79F,EAAEw9P,uBAAuBjoK,EAAEv1F,EAAEy9P,sBAAsB5/J,CAAC,GAAE,CAAnnbygK,CAAqCt+P,GAAG,WAAWu1F,EAAE6oG,OAA8tb,SAAwDp+L,GAAGA,EAAE69P,eAAen+P,QAAQC,aAAQ,GAAQK,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,CAAM,CAAz3bc,CAA+Cv+P,IAAygb,SAAwDA,EAAEu1F,GAAGv1F,EAAE69P,eAAen+P,QAAQE,OAAO21F,GAAGv1F,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,CAAM,CAAnqbe,CAA+Cx+P,EAAEu1F,EAAEmnK,cAAc18P,EAAE69P,eAAevgO,OAAM,WAAW,IAAG,CAAC,SAASmhO,EAAkCz+P,EAAEu1F,GAAG,OAAO4nK,EAAqBn9P,EAAEq+P,qBAAqB9oK,EAAE,CAAC,SAASmpK,EAAmC1+P,GAAG,aAAaA,EAAEq+P,qBAAqBjgE,OAAOw/D,GAAiC59P,EAAE,IAAI+D,UAAU,qFAAwnb,SAAmD/D,EAAEu1F,GAAGv1F,EAAE69P,eAAen+P,QAAQE,OAAO21F,EAAE,CAA7nbopK,CAA0C3+P,EAAE,IAAI+D,UAAU,qFAAqF/D,EAAE69P,eAAevgO,OAAM,WAAW,IAAGt9B,EAAEq+P,qBAAqB5B,aAAQ,EAAOz8P,EAAEq+P,0BAAqB,CAAM,CAAC,SAASO,EAA6B5+P,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEq+P,qBAAqB,OAAOxgK,EAAE8+J,YAAW,EAAG,YAAY9+J,EAAEugG,OAAO1+L,QAAQE,OAAOi+F,EAAE6+J,cAA+rM,SAA8C18P,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAE6+P,8BAA8BxpK,EAAE,EAAEE,EAAE1sF,cAAcxC,WAAWgvF,EAAEE,EAAE1sF,YAAYi2P,mBAAmB,IAAI3jQ,EAAEo6F,EAAE1sF,YAAYhH,EAAE,CAAClG,OAAO8/P,GAAoBlmK,EAAE55F,QAAQklG,WAAWtL,EAAEsL,WAAWhkG,WAAW04F,EAAE14F,WAAWkiQ,YAAY,EAAEC,YAAY3pK,EAAE4nE,KAAK9hK,EAAE8jQ,WAAW,QAAQ,GAAGj/P,EAAEk/P,kBAAkB9jQ,OAAO,EAAE,OAAO4E,EAAEk/P,kBAAkB9hQ,KAAKyE,GAAGi7P,EAAiCj/J,GAAG,GAAG,WAAWA,EAAEugG,OAAO,CAAC,IAAI3hM,EAAE,IAAI84F,EAAE1sF,YAAYhH,EAAElG,OAAOkG,EAAEg/F,WAAW,GAAG,OAAOnhG,QAAQC,QAAQy7P,GAAuB3+P,GAAE,GAAI,CAAC,GAAGuD,EAAE+7P,gBAAgB,EAAE,CAAC,IAAG,IAAKoD,EAA4Dn/P,EAAE6B,GAAG,CAAC,IAAI3G,EAAEkkQ,EAAsDv9P,GAAG,OAAOw9P,EAA6Cr/P,GAAGN,QAAQC,QAAQy7P,GAAuBlgQ,GAAE,GAAI,CAAC,IAAG,IAAK8E,EAAEs/P,gBAAgB,CAAC,IAAI1mK,EAAE,IAAI70F,UAAU,2DAA2D,OAAOw7P,EAAkCv/P,EAAE44F,GAAGl5F,QAAQE,OAAOg5F,EAAE,CAAC,CAAC54F,EAAEk/P,kBAAkB9hQ,KAAKyE,GAAG,IAAI9C,EAAE+9P,EAAiCj/J,GAAG,OAAO2hK,EAA6Cx/P,GAAGjB,CAAC,CAAlwO0gQ,CAAqC5hK,EAAEw/J,0BAA0B9nK,EAAE,CAAC,SAASmqK,EAAgC1/P,GAAG,IAAIu1F,EAAEv1F,EAAEq+P,qBAAqB,OAAO9oK,EAAEonK,YAAW,EAAG,WAAWpnK,EAAE6oG,OAAO1+L,QAAQC,QAAQy7P,QAAuB,GAAO,IAAK,YAAY7lK,EAAE6oG,OAAO1+L,QAAQE,OAAO21F,EAAEmnK,cAAcnnK,EAAE8nK,0BAA0BsC,KAAY,CAAC,SAASC,EAAkC5/P,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,4BAA4B,CAAC,SAAS6/P,EAAgD7/P,IAAG,IAAK8/P,EAA8C9/P,MAAK,IAAKA,EAAE+/P,UAAU//P,EAAE+/P,UAAS,EAAG//P,EAAEggQ,iBAAiB7/P,MAAK,WAAW,GAAGH,EAAE+/P,UAAS,GAAG,IAAK//P,EAAEigQ,WAAW,OAAOjgQ,EAAEigQ,YAAW,EAAGJ,EAAgD7/P,EAAE,IAAE,SAASu1F,GAAG2qK,EAA6ClgQ,EAAEu1F,EAAE,IAAGj4D,MAAM6iO,KAAiCngQ,EAAEigQ,YAAW,EAAG,CAAC,SAASH,EAA8C9/P,GAAG,IAAIu1F,EAAEv1F,EAAEogQ,0BAA0B,OAAM,IAAKC,EAAiDrgQ,KAAK,IAAKA,EAAEsgQ,YAAW,IAAKzD,EAAuBtnK,IAAIyoK,EAAiCzoK,GAAG,GAAGgrK,EAA8CvgQ,GAAG,EAAG,CAAC,SAASwgQ,EAAqCxgQ,GAAG,IAAIu1F,EAAEv1F,EAAEogQ,0BAA0BpgQ,EAAEs/P,iBAAgB,EAAG,IAAIt/P,EAAE87P,OAAO1gQ,QAAQgiQ,EAAoB7nK,EAAE,CAAC,SAASkrK,EAAuCzgQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEogQ,0BAA0B,IAAG,IAAKvD,EAAuBh/J,IAAImgK,EAAiCngK,GAAG,EAAEigK,EAAiCjgK,EAAEtI,GAAE,OAAQ,CAAC,IAAIF,OAAE,EAAO,IAAIA,EAAEr1F,EAAE0gQ,uBAAuBnrK,EAAE,CAAC,MAAMA,GAAG,MAAM2qK,EAA6ClgQ,EAAEu1F,GAAGA,CAAC,CAAC,IAAIymK,GAAqBh8P,EAAEu1F,EAAEF,EAAE,CAAC,MAAME,GAAG,MAAM2qK,EAA6ClgQ,EAAEu1F,GAAGA,CAAC,CAAC,CAACsqK,EAAgD7/P,EAAE,CAAC,SAAS2gQ,EAAqC3gQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEogQ,0BAA0BlE,GAAWl8P,GAAG29P,EAAoB9/J,EAAEtI,EAAE,CAAC,SAAS2qK,EAA6ClgQ,EAAEu1F,GAAG,aAAav1F,EAAEogQ,0BAA0BhiE,QAAQuiE,EAAqC3gQ,EAAEu1F,EAAE,CAAC,SAASgrK,EAA8CvgQ,GAAG,IAAIu1F,EAAEv1F,EAAEogQ,0BAA0BhiE,OAAO,MAAM,YAAY7oG,EAAE,KAAK,WAAWA,EAAE,EAAEv1F,EAAE4gQ,aAAa5gQ,EAAE+7P,eAAe,CAAwH,SAASsE,EAAiDrgQ,GAAG,IAAIu1F,EAAEv1F,EAAEogQ,0BAA0BhiE,OAAO,OAAM,IAAKp+L,EAAEs/P,iBAAiB,aAAa/pK,CAAC,CAAC,SAASgnK,EAAqCv8P,EAAEu1F,EAAEsI,EAAExI,EAAEl6F,EAAE0G,EAAEpF,GAAG84F,EAAE6qK,0BAA0BpgQ,EAAEu1F,EAAEumK,YAAO,EAAOvmK,EAAEwmK,qBAAgB,EAAOG,GAAW3mK,GAAGA,EAAE+qK,UAAS,EAAG/qK,EAAE+pK,iBAAgB,EAAG/pK,EAAE0qK,YAAW,EAAG1qK,EAAEwqK,UAAS,EAAGxqK,EAAEmrK,uBAAuBjkQ,EAAE84F,EAAEqrK,aAAa/+P,EAAE0zF,EAAEyqK,eAAe3qK,EAAEE,EAAEsrK,iBAAiB1lQ,EAAE6E,EAAEq9P,0BAA0B9nK,EAAE,IAAIr6F,EAAE2iG,IAAIn+F,QAAQC,QAAQzE,GAAGiF,MAAK,WAAWo1F,EAAE+qK,UAAS,EAAGT,EAAgDtqK,EAAE,IAAE,SAASv1F,GAAGkgQ,EAA6C3qK,EAAEv1F,EAAE,IAAGs9B,MAAM6iO,GAA+B,CAAwW,SAASW,EAA+B9gQ,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,gCAAgC,CAAC,SAAS+gQ,EAA4B/gQ,GAAG,QAAQi7P,GAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,0CAA0C,CAAC,SAASw/P,EAA6Cx/P,IAAG,IAA4kK,SAAoDA,GAAG,IAAIu1F,EAAEv1F,EAAE6+P,8BAA8B,MAAM,aAAatpK,EAAE6oG,SAAS,IAAKp+L,EAAEs/P,kBAAkB,IAAKt/P,EAAEsgQ,YAAW,IAAKnC,EAA+B5oK,IAAIyoK,EAAiCzoK,GAAG,IAAI,IAAK0oK,EAA4B1oK,IAAIwoK,EAAqCxoK,GAAG,GAAGyrK,EAA2ChhQ,GAAG,EAAK,CAAh8KihQ,CAA2CjhQ,MAAK,IAAKA,EAAE+/P,UAAU//P,EAAE+/P,UAAS,EAAG//P,EAAEggQ,iBAAiB7/P,MAAK,WAAWH,EAAE+/P,UAAS,GAAG,IAAK//P,EAAEigQ,aAAajgQ,EAAEigQ,YAAW,EAAGT,EAA6Cx/P,GAAG,IAAE,SAASu1F,GAAG,aAAav1F,EAAE6+P,8BAA8BzgE,QAAQmhE,EAAkCv/P,EAAEu1F,EAAE,IAAGj4D,MAAM6iO,KAAiCngQ,EAAEigQ,YAAW,EAAG,CAAC,SAASiB,EAAkDlhQ,GAAGmhQ,EAAkDnhQ,GAAGA,EAAEk/P,kBAAkB,EAAE,CAAC,SAASkC,EAAqDphQ,EAAEu1F,GAAG,IAAIsI,GAAE,EAAG,WAAW79F,EAAEo+L,SAASvgG,GAAE,GAAI,IAAIxI,EAAE+pK,EAAsD7pK,GAAG,YAAYA,EAAE0pK,WAAWnB,EAAiC99P,EAAEq1F,EAAEwI,GAA/yM,SAA8C79F,EAAEu1F,EAAEsI,GAAG79F,EAAEy8P,QAAQO,kBAAkB54P,QAAQo/M,SAAS43C,GAAuB7lK,EAAEsI,GAAG,CAAorMwjK,CAAqCrhQ,EAAEq1F,EAAEwI,EAAE,CAAC,SAASuhK,EAAsDp/P,GAAG,IAAIu1F,EAAEv1F,EAAE++P,YAAYlhK,EAAE79F,EAAEg/P,YAAY,OAAO,IAAIh/P,EAAEi9J,KAAKj9J,EAAErE,OAAOqE,EAAE6gG,WAAWtL,EAAEsI,EAAE,CAAC,SAASyjK,EAAgDthQ,EAAEu1F,EAAEsI,EAAExI,GAAGr1F,EAAE87P,OAAO1+P,KAAK,CAACzB,OAAO45F,EAAEsL,WAAWhD,EAAEhhG,WAAWw4F,IAAIr1F,EAAE+7P,iBAAiB1mK,CAAC,CAAC,SAAS8pK,EAA4Dn/P,EAAEu1F,GAAG,IAAIsI,EAAEtI,EAAEypK,YAAY3pK,EAAEE,EAAEwpK,YAAYxpK,EAAEwpK,YAAYlhK,EAAE1iG,EAAEqD,KAAKspC,IAAI9nC,EAAE+7P,gBAAgBxmK,EAAE14F,WAAW04F,EAAEwpK,aAAal9P,EAAE0zF,EAAEwpK,YAAY5jQ,EAAEsB,EAAEoF,EAAEA,EAAEg8F,EAAE3iG,EAAEC,EAAEy9F,GAAE,EAAGn8F,EAAE44F,IAAIn6F,EAAEuB,EAAE84F,EAAEwpK,YAAYnmK,GAAE,GAAI,IAAI,IAAI75F,EAAEiB,EAAE87P,OAAO5gQ,EAAE,GAAG,CAAC,IAAI06P,EAAE72P,EAAE,GAAGiO,EAAExO,KAAKspC,IAAI5sC,EAAE06P,EAAE/4P,YAAY44F,EAAEF,EAAEsL,WAAWtL,EAAEwpK,YAAY5D,GAAgB5lK,EAAE55F,OAAO85F,EAAEmgK,EAAEj6P,OAAOi6P,EAAE/0J,WAAW7zF,GAAG4oP,EAAE/4P,aAAamQ,EAAEjO,EAAEqF,SAASwxP,EAAE/0J,YAAY7zF,EAAE4oP,EAAE/4P,YAAYmQ,GAAGhN,EAAE+7P,iBAAiB/uP,EAAEu0P,EAAuDvhQ,EAAEgN,EAAEuoF,GAAGr6F,GAAG8R,CAAC,CAAC,OAAO4rF,CAAC,CAAC,SAAS2oK,EAAuDvhQ,EAAEu1F,EAAEsI,GAAGsjK,EAAkDnhQ,GAAG69F,EAAEkhK,aAAaxpK,CAAC,CAAC,SAAS8pK,EAA6Cr/P,GAAG,IAAIA,EAAE+7P,kBAAiB,IAAK/7P,EAAEs/P,gBAAgBlC,EAAoBp9P,EAAE6+P,+BAA+BW,EAA6Cx/P,EAAE,CAAC,SAASmhQ,EAAkDnhQ,QAAG,IAASA,EAAEwhQ,eAAexhQ,EAAEwhQ,aAAaC,6CAAwC,EAAOzhQ,EAAEwhQ,aAAaE,WAAM,EAAO1hQ,EAAEwhQ,kBAAa,EAAO,CAAC,SAASG,EAAiE3hQ,GAAG,KAAKA,EAAEk/P,kBAAkB9jQ,OAAO,GAAG,CAAC,GAAG,IAAI4E,EAAE+7P,gBAAgB,OAAO,IAAIxmK,EAAEv1F,EAAEk/P,kBAAkB,IAAG,IAAKC,EAA4Dn/P,EAAEu1F,KAAKqsK,EAAiD5hQ,GAAGohQ,EAAqDphQ,EAAE6+P,8BAA8BtpK,GAAG,CAAC,CAAwkE,SAASssK,EAA4C7hQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEk/P,kBAAkB,GAAG,GAAG,WAAWl/P,EAAE6+P,8BAA8BzgE,OAAO,CAAC,GAAG,IAAI7oG,EAAE,MAAM,IAAIxxF,UAAU,qEAA/pC,SAA0D/D,EAAEu1F,GAAGA,EAAE55F,OAAO8/P,GAAoBlmK,EAAE55F,QAAQ,IAAIkiG,EAAE79F,EAAE6+P,8BAA8B,IAAG,IAAKZ,EAA4BpgK,GAAG,KAAKkgK,EAAqClgK,GAAG,GAAGujK,EAAqDvjK,EAAE+jK,EAAiD5hQ,GAAG,CAAq5B8hQ,CAAiD9hQ,EAAE69F,EAAE,MAAz8B,SAA4D79F,EAAEu1F,EAAEsI,GAAG,GAAGA,EAAEkhK,YAAYxpK,EAAEsI,EAAEhhG,WAAW,MAAM,IAAI6L,WAAW,6BAA6B,GAAG64P,EAAuDvhQ,EAAEu1F,EAAEsI,KAAKA,EAAEkhK,YAAYlhK,EAAEmhK,aAAa,CAAC4C,EAAiD5hQ,GAAG,IAAIq1F,EAAEwI,EAAEkhK,YAAYlhK,EAAEmhK,YAAY,GAAG3pK,EAAE,EAAE,CAAC,IAAIl6F,EAAE0iG,EAAEgD,WAAWhD,EAAEkhK,YAAYl9P,EAAEg8F,EAAEliG,OAAO0C,MAAMlD,EAAEk6F,EAAEl6F,GAAGmmQ,EAAgDthQ,EAAE6B,EAAE,EAAEA,EAAEhF,WAAW,CAACghG,EAAEliG,OAAO8/P,GAAoB59J,EAAEliG,QAAQkiG,EAAEkhK,aAAa1pK,EAAE+rK,EAAqDphQ,EAAE6+P,8BAA8BhhK,GAAG8jK,EAAiE3hQ,EAAE,CAAC,CAA0S+hQ,CAAmD/hQ,EAAEu1F,EAAEsI,EAAE,CAAC,SAAS+jK,EAAiD5hQ,GAAG,IAAIu1F,EAAEv1F,EAAEk/P,kBAAkB96P,QAAQ,OAAO+8P,EAAkDnhQ,GAAGu1F,CAAC,CAAwxC,SAASgqK,EAAkCv/P,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAE6+P,8BAA8BqC,EAAkDlhQ,GAAGk8P,GAAWl8P,GAAG29P,EAAoB9/J,EAAEtI,EAAE,CAAC,SAASyrK,EAA2ChhQ,GAAG,IAAIu1F,EAAEv1F,EAAE6+P,8BAA8BzgE,OAAO,MAAM,YAAY7oG,EAAE,KAAK,WAAWA,EAAE,EAAEv1F,EAAE4gQ,aAAa5gQ,EAAE+7P,eAAe,CAAkmB,SAASiG,EAAkChiQ,EAAEu1F,EAAEsI,EAAExI,EAAEl6F,EAAE0G,EAAEpF,GAAG84F,EAAEspK,8BAA8B7+P,EAAEu1F,EAAE0qK,YAAW,EAAG1qK,EAAEwqK,UAAS,EAAGmB,EAAkD3rK,GAAGA,EAAEumK,OAAOvmK,EAAEwmK,qBAAgB,EAAOG,GAAW3mK,GAAGA,EAAE+pK,iBAAgB,EAAG/pK,EAAE+qK,UAAS,EAAG/qK,EAAEqrK,aAAajF,GAAkC95P,GAAG0zF,EAAEyqK,eAAe3qK,EAAEE,EAAEsrK,iBAAiB1lQ,EAAEo6F,EAAE0sK,uBAAuBxlQ,EAAE84F,EAAE2pK,kBAAkB,GAAGl/P,EAAEq9P,0BAA0B9nK,EAAE,IAAIr6F,EAAE2iG,IAAIn+F,QAAQC,QAAQzE,GAAGiF,MAAK,WAAWo1F,EAAE+qK,UAAS,EAAGd,EAA6CjqK,EAAE,IAAE,SAASsI,GAAG,aAAa79F,EAAEo+L,QAAQmhE,EAAkChqK,EAAEsI,EAAE,IAAGvgE,MAAM6iO,GAA+B,CAAqlB,SAAS+B,EAA0BliQ,GAAG,OAAO,IAAI+D,UAAU,4BAA4B/D,EAAE,wCAAwC,CAAC,SAASmiQ,GAAoBniQ,GAAG,OAAO,IAAI+D,UAAU,UAAU/D,EAAE,oCAAoC,CAAC,SAASoiQ,GAAiCpiQ,GAAG,OAAO,IAAI+D,UAAU,yCAAyC/D,EAAE,qDAAqD,CAAsd,SAAS49P,GAAiC59P,EAAEu1F,GAAGv1F,EAAEy9P,sBAAsBloK,GAAGv1F,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,CAAM,CAA0O,SAAS4E,GAA8BriQ,GAAG,OAAO,IAAI+D,UAAU,sCAAsC/D,EAAE,kDAAkD,CAAC,SAASsiQ,GAAqCtiQ,GAAG,OAAO,IAAI+D,UAAU,6CAA6C/D,EAAE,yDAAyD,CAAC,SAASuiQ,GAA+BviQ,GAAG,OAAO,IAAI+D,UAAU,uCAAuC/D,EAAE,mDAAmD,CAAC,SAASwiQ,GAAwCxiQ,GAAG,OAAO,IAAI+D,UAAU,0CAA0C/D,EAAE,sDAAsD,CAAsJ,IAAI46P,GAAa,WAAW,SAAS1oI,EAAiBlyH,EAAEu1F,GAAG,IAAI,IAAIsI,EAAE,EAAEA,EAAEtI,EAAEn6F,OAAOyiG,IAAI,CAAC,IAAIxI,EAAEE,EAAEsI,GAAGxI,EAAEn0F,WAAWm0F,EAAEn0F,aAAY,EAAGm0F,EAAEjzF,cAAa,EAAG,UAAUizF,IAAIA,EAAElzF,UAAS,GAAIlH,OAAO+C,eAAegC,EAAEq1F,EAAE/6F,IAAI+6F,EAAE,CAAC,CAAC,OAAO,SAASr1F,EAAEu1F,EAAEsI,GAAG,OAAOtI,GAAG28B,EAAiBlyH,EAAEzE,UAAUg6F,GAAGsI,GAAGq0B,EAAiBlyH,EAAE69F,GAAG79F,CAAC,CAAC,CAA5R,GAAgUyiQ,IAAzB5M,EAAQ,iBAA0BA,EAAQ,iBAAgBsF,GAAgBsH,GAAStH,gBAAgBI,GAAoCkH,GAASlH,oCAAoCH,GAAuBqH,GAASrH,uBAAuBC,GAA0BoH,GAASpH,0BAA0BG,GAAaiH,GAASjH,aAAaE,GAAiB+G,GAAS/G,iBAAiBD,GAAoBgH,GAAShH,oBAAoBE,GAAkC8G,GAAS9G,kCAAmFC,IAA7B6G,GAASnH,oBAAsDmH,GAAS7G,mCAAkCV,GAAoBuH,GAASvH,oBAAoBD,GAAawH,GAASxH,aAA6CkF,GAAtBtK,EAAQ,cAAuDsK,+BAA+BuC,GAAU7M,EAAQ,yBAAyBgG,GAAa6G,GAAU7G,aAAaG,GAAqB0G,GAAU1G,qBAAqBE,GAAWwG,GAAUxG,WAAWyG,GAAU9M,EAAQ,wBAAwB+M,GAAmCD,GAAUC,mCAAmCC,GAAiBF,GAAUE,iBAAiBC,GAAuBH,GAAUG,uBAAuBC,GAAoBJ,GAAUI,oBAAoBC,GAAqDL,GAAUK,qDAAqDC,GAAmCN,GAAUM,mCAAmCC,GAAiCP,GAAUO,iCAAiCC,GAAoCR,GAAUQ,oCAAoC7F,GAAYl6P,OAAO,mBAAmBu8P,GAAUv8P,OAAO,iBAAiB43D,GAAe,WAAW,SAASA,IAAiB,IAAIh7D,EAAE4b,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAE25E,EAAE35E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAEiiF,EAAEtI,EAAE57F,KAAK07F,EAAEE,EAAEowH,cAAcp0F,EAAgB13H,KAAKmhE,GAAgBshM,EAAyBziQ,MAAM,IAAIsB,EAAE6E,EAAEuG,KAAK,GAAG,UAAUxK,OAAOZ,GAAG,CAAC,QAAG,IAASk6F,IAAIA,EAAE,GAAGA,EAAEsmK,GAAkCtmK,QAAG,IAASwI,EAAE,MAAM,IAAIn1F,WAAW,+DAAh6J,SAA+D1I,EAAEu1F,EAAEsI,GAAG,IAAIxI,EAAEp6F,OAAO2G,OAAOwhQ,GAA6B7nQ,WAAWJ,EAAEogQ,GAAoChmK,EAAE,OAAO,EAAE,CAACF,IAAIxzF,EAAE05P,GAAoChmK,EAAE,SAAS,EAAE,IAAI94F,EAAE84F,EAAE8tK,sBAAsB,QAAG,IAAS5mQ,KAAI,IAAKkB,OAAOo/F,UAAUtgG,IAAIA,GAAG,GAAG,MAAM,IAAIiM,WAAW,oDAAoDs5P,EAAkChiQ,EAAEq1F,GAAE,WAA0B,OAAOmmK,GAAajmK,EAAE,QAAQ,CAACF,GAAG,GAAEl6F,EAAE0G,EAAEg8F,EAAEphG,EAAE,CAAg/I6mQ,CAAsDzpQ,KAAKmG,EAAEq1F,EAAE,KAAK,CAAC,QAAG,IAASl6F,EAAE,MAAM,IAAIuN,WAAW,kCAA6B,IAAS2sF,IAAIA,EAAE,GAApub,SAAkEr1F,EAAEu1F,EAAEsI,EAAExI,GAAG,IAAIl6F,EAAEF,OAAO2G,OAAO46P,GAAgCjhQ,WAAWsG,EAAE05P,GAAoChmK,EAAE,OAAO,EAAE,CAACp6F,IAAIsB,EAAE8+P,GAAoChmK,EAAE,SAAS,EAAE,IAAIgnK,EAAqCv8P,EAAE7E,GAAE,WAA0B,OAAOqgQ,GAAajmK,EAAE,QAAQ,CAACp6F,GAAG,GAAE0G,EAAEpF,EAAEohG,EAAExI,EAAE,CAAi4akuK,CAAyD1pQ,KAAKmG,EAAEq1F,EAAEsmK,GAAkCtmK,GAAGumK,GAAkC/9J,GAAG,CAAC,CAAC,OAAO+8J,GAAa5/L,EAAe,CAAC,CAAC1gE,IAAI,SAASP,MAAM,SAAgBiG,GAAG,OAAM,IAAK48P,EAAiB/iQ,MAAM6F,QAAQE,OAAOsiQ,EAA0B,YAAW,IAAKrF,EAAuBhjQ,MAAM6F,QAAQE,OAAO,IAAImE,UAAU,qDAAqDo5P,EAAqBtjQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,YAAYP,MAAM,WAAqB,IAAIiG,GAAG4b,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,GAAGrhB,KAAK,IAAG,IAAKqiQ,EAAiB/iQ,MAAM,MAAMqoQ,EAA0B,aAAa,QAAG,IAASliQ,EAAE,OAAOm8P,EAAmCtiQ,MAAM,GAAG,UAAUmG,EAAEjE,OAAOiE,IAAI,OAApyuB,SAAyCA,GAAG,OAAO,IAAIwjQ,GAAyBxjQ,EAAE,CAAytuByjQ,CAAgC5pQ,MAAM,MAAM,IAAI6O,WAAW,4BAA4B,GAAG,CAACpO,IAAI,cAAcP,MAAM,SAAqBiG,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEmC,SAASkzF,EAAEr1F,EAAE6a,SAAS,QAAG,IAASgjF,QAAG,IAASxI,EAAE,MAAM,IAAItxF,UAAU,mDAAmD,OAAzqH,SAAgF/D,GAAG,IAAIN,QAAQnE,UAAU4E,KAAKqC,KAAKxC,OAAE,GAAO,WAAW,GAAE,CAAC,MAAMA,GAAG,CAAC,CAA4hH0jQ,CAAuE7pQ,KAAK8pQ,OAAO9lK,EAAEtI,IAAIF,CAAC,GAAG,CAAC/6F,IAAI,SAASP,MAAM,SAAgBiG,GAAG,IAAIu1F,EAAE17F,KAAKgkG,EAAEjiF,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAEy5E,EAAEwI,EAAE+lK,aAAazoQ,EAAE0iG,EAAEgmK,aAAahiQ,EAAEg8F,EAAEimK,cAAc,IAAG,IAAKlH,EAAiB/iQ,MAAM,OAAO6F,QAAQE,OAAOsiQ,EAA0B,WAAW,IAAG,IAAKW,GAAiB7iQ,GAAG,OAAON,QAAQE,OAAO,IAAImE,UAAU,8EAA8E,GAAGsxF,EAAEv8D,QAAQu8D,GAAGl6F,EAAE29B,QAAQ39B,GAAG0G,EAAEi3B,QAAQj3B,IAAG,IAAKg7P,EAAuBhjQ,MAAM,OAAO6F,QAAQE,OAAO,IAAImE,UAAU,8EAA8E,IAAG,IAAK++P,GAAuB9iQ,GAAG,OAAON,QAAQE,OAAO,IAAImE,UAAU,8EAA8E,IAAItH,EAAE0/P,EAAmCtiQ,MAAMqB,EAAE0nQ,GAAmC5iQ,GAAG44F,GAAE,EAAG75F,EAAEW,QAAQC,UAAU,OAAO,IAAID,SAAQ,SAASm+F,EAAE+3J,GAA6P,SAASmO,IAAwB,IAAI/jQ,EAAEjB,EAAE,OAAOA,EAAEoB,MAAK,WAAW,OAAOH,IAAIjB,EAAEglQ,SAAwB,CAAM,GAAE,CAAC,SAASC,EAAmBhkQ,EAAEu1F,EAAEsI,GAAG,YAAY79F,EAAEo+L,OAAOvgG,EAAE79F,EAAE08P,cAAcnnK,EAAEj4D,MAAMugE,GAAGvgE,MAAM6iO,GAA+B,CAAC,SAAS8D,EAAmB1uK,EAAEsI,EAAExI,GAAG,SAAS6uK,IAAY3uK,IAAIp1F,MAAK,WAAW,OAAOgkQ,EAAStmK,EAAExI,EAAE,IAAE,SAASr1F,GAAG,OAAOmkQ,GAAS,EAAGnkQ,EAAE,IAAGs9B,MAAM6iO,GAA+B,EAAC,IAAKvnK,IAAIA,GAAE,EAAG,aAAa54F,EAAEo+L,SAAQ,IAAK+kE,GAAoCnjQ,GAAG+jQ,IAAwB5jQ,KAAK+jQ,GAAWA,IAAY,CAAC,SAASE,EAAS7uK,EAAEsI,IAAG,IAAKjF,IAAIA,GAAE,EAAG,aAAa54F,EAAEo+L,SAAQ,IAAK+kE,GAAoCnjQ,GAAG+jQ,IAAwB5jQ,MAAK,WAAW,OAAOgkQ,EAAS5uK,EAAEsI,EAAE,IAAGvgE,MAAM6iO,IAAgCgE,EAAS5uK,EAAEsI,GAAG,CAAC,SAASsmK,EAASnkQ,EAAEu1F,GAAG0tK,GAAmC/nQ,GAAGwjQ,EAAmCjiQ,GAAGuD,EAAE41P,EAAErgK,GAAGsI,OAAE,EAAO,CAAC,GAAGmmK,EAAmBzuK,EAAE94F,EAAEohQ,gBAAe,SAAStoK,IAAG,IAAKp6F,EAAE8oQ,GAAmB,WAAW,OAAOlB,GAAoB/iQ,EAAEu1F,EAAE,IAAE,EAAGA,GAAG6uK,GAAS,EAAG7uK,EAAE,IAAGyuK,EAAmBhkQ,EAAE9E,EAAE2iQ,gBAAe,SAAS79P,IAAG,IAAK6B,EAAEoiQ,GAAmB,WAAW,OAAO9G,EAAqB5nK,EAAEv1F,EAAE,IAAE,EAAGA,GAAGokQ,GAAS,EAAGpkQ,EAAE,IAAG,SAA2BA,EAAEu1F,EAAEsI,GAAG,WAAW79F,EAAEo+L,OAAOvgG,IAAItI,EAAEp1F,KAAK09F,GAAGvgE,MAAM6iO,GAA+B,CAAzG,CAA2G5qK,EAAE94F,EAAEohQ,gBAAe,YAAW,IAAKxoK,EAAE4uK,GAAmB,WAAW,OAAOjB,GAAqD9nQ,EAAE,IAAGkpQ,GAAU,KAAG,IAAKjB,GAAoCnjQ,IAAI,WAAWA,EAAEo+L,OAAO,CAAC,IAAIpxL,EAAE,IAAIjJ,UAAU,gFAA+E,IAAKlC,EAAEoiQ,GAAmB,WAAW,OAAO9G,EAAqB5nK,EAAEvoF,EAAE,IAAE,EAAGA,GAAGo3P,GAAS,EAAGp3P,EAAE,EAAr4D,SAASq3P,IAAW,OAAM,IAAKzrK,EAAEl5F,QAAQC,UAAUzE,EAAEopQ,cAAcnkQ,MAAK,WAAW,OAAOu/P,EAAgCjjQ,GAAG0D,MAAK,SAASH,GAAG,IAAIu1F,EAAEv1F,EAAEjG,OAAM,IAAKiG,EAAEE,OAAOnB,EAAEmkQ,GAAiChoQ,EAAEq6F,GAAGj4D,OAAM,WAAW,IAAG,GAAE,IAAGn9B,KAAKkkQ,EAAS,EAA6oDA,GAAW/mO,OAAM,SAASt9B,GAAGjB,EAAEW,QAAQC,UAAUwgQ,GAA+BngQ,EAAE,GAAE,GAAE,GAAG,CAAC1F,IAAI,MAAMP,MAAM,WAAe,IAAG,IAAK6iQ,EAAiB/iQ,MAAM,MAAMqoQ,EAA0B,OAAO,IAAIliQ,EAA13yB,SAA2BA,EAAEu1F,GAAG,SAASgvK,IAAgB,OAAO7E,EAAgC7hK,GAAG19F,MAAK,SAASH,GAAG,IAAIu1F,EAAEv1F,EAAEjG,MAAM,IAAG,IAAKiG,EAAEE,OAAM,IAAKm1F,KAAI,IAAKl6F,GAAGqlQ,EAAqC5nK,EAAEykK,4BAA2B,IAAKx7P,GAAG2+P,EAAqCzhQ,EAAEs+P,2BAA2BhoK,GAAE,IAAI,IAAKA,EAAE,CAAC,IAAIwI,EAAEtI,EAAE94F,EAAE84F,GAAE,IAAKp6F,GAAGslQ,EAAuC7nK,EAAEykK,0BAA0Bx/J,IAAG,IAAKh8F,GAAG4+P,EAAuC1hQ,EAAEs+P,0BAA0B5gQ,EAAE,CAAC,GAAE,CAAC,SAAS+nQ,IAAiB,CAAC,IAAI3mK,EAAEs+J,EAAmCn8P,GAAGq1F,GAAE,EAAGl6F,GAAE,EAAG0G,GAAE,EAAGpF,OAAE,EAAOvB,OAAE,EAAO09F,OAAE,EAAO75F,OAAE,EAAO62P,OAAE,EAAO5oP,EAAE,IAAItN,SAAQ,SAASM,GAAG41P,EAAE51P,CAAC,IAAG,OAAO44F,EAAEyjK,EAAqBmI,EAAeD,GAAc,SAA0BhvK,GAAG,GAAGp6F,GAAE,EAAGsB,EAAE84F,GAAE,IAAK1zF,EAAE,CAAC,IAAIg8F,EAAEq9J,GAAoB,CAACz+P,EAAEvB,IAAIm6F,EAAE8nK,EAAqBn9P,EAAE69F,GAAG+3J,EAAEvgK,EAAE,CAAC,OAAOroF,CAAC,IAAGjO,EAAEs9P,EAAqBmI,EAAeD,GAAc,SAA0BhvK,GAAG,GAAG1zF,GAAE,EAAG3G,EAAEq6F,GAAE,IAAKp6F,EAAE,CAAC,IAAI0iG,EAAEq9J,GAAoB,CAACz+P,EAAEvB,IAAIm6F,EAAE8nK,EAAqBn9P,EAAE69F,GAAG+3J,EAAEvgK,EAAE,CAAC,OAAOroF,CAAC,IAAG6wF,EAAEggK,eAAevgO,OAAM,SAASt9B,IAAG,IAAKq1F,IAAI6qK,EAA6CtnK,EAAEykK,0BAA0Br9P,GAAGkgQ,EAA6CnhQ,EAAEs+P,0BAA0Br9P,GAAGq1F,GAAE,EAAG,IAAG,CAACuD,EAAE75F,EAAE,CAAqrwB0lQ,CAAkB5qQ,MAAS,OAAOqhQ,GAAoBl7P,EAAE,GAAG,CAAC1F,IAAI,SAAS6G,IAAI,WAAe,IAAG,IAAKy7P,EAAiB/iQ,MAAM,MAAMqoQ,EAA0B,UAAU,OAAOrF,EAAuBhjQ,KAAK,KAAKmhE,CAAc,CAAzzJ,GAA6zJl9D,EAAOC,QAAQ,CAAC2mQ,yBAA1y0B,SAAkC1kQ,EAAEu1F,EAAEsI,GAAG,IAAIxI,EAAEz5E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,EAAEzgB,EAAEygB,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,QAAG,EAAO/Z,EAAE5G,OAAO2G,OAAOo5D,GAAez/D,WAAW,OAAO+gQ,EAAyBz6P,GAAGmgQ,EAAkCngQ,EAAE5G,OAAO2G,OAAOwhQ,GAA6B7nQ,WAAWyE,EAAEu1F,EAAEsI,EAAExI,EAAEl6F,GAAG0G,CAAC,EAAig0Bw6P,qBAAqBA,EAAqBrhM,eAAeA,GAAe2pM,0BAA51zB,SAAmC3kQ,GAAG,OAAOA,EAAE28P,UAAU,EAAu1zB6D,qCAAqCA,EAAqCC,uCAAuCA,EAAuCE,qCAAqCA,EAAqCJ,8CAA8CA,EAA8CqE,+CAA9umB,SAAwD5kQ,GAAG,OAAM,IAAK8/P,EAA8C9/P,EAAE,EAAstmBqgQ,iDAAiDA,GAAkD,IAAIjE,GAA4B,WAAW,SAASA,EAA4Bp8P,GAAG,GAAGuxH,EAAgB13H,KAAKuiQ,IAA6B,IAAKQ,EAAiB58P,GAAG,MAAM,IAAI+D,UAAU,sFAAsF,IAAG,IAAK84P,EAAuB78P,GAAG,MAAM,IAAI+D,UAAU,+EAA+Eq6P,EAAsCvkQ,KAAKmG,GAAGnG,KAAKqjQ,cAAc,EAAE,CAAC,OAAOtC,GAAawB,EAA4B,CAAC,CAAC9hQ,IAAI,SAASP,MAAM,SAAgBiG,GAAG,OAAM,IAAKu9P,EAA8B1jQ,MAAM6F,QAAQE,OAAOwiQ,GAAiC,gBAAW,IAASvoQ,KAAKwkQ,qBAAqB3+P,QAAQE,OAAOuiQ,GAAoB,WAAW1D,EAAkC5kQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,OAAOP,MAAM,WAAgB,OAAM,IAAKwjQ,EAA8B1jQ,MAAM6F,QAAQE,OAAOwiQ,GAAiC,cAAS,IAASvoQ,KAAKwkQ,qBAAqB3+P,QAAQE,OAAOuiQ,GAAoB,cAAczC,EAAgC7lQ,KAAK,GAAG,CAACS,IAAI,cAAcP,MAAM,WAAuB,IAAG,IAAKwjQ,EAA8B1jQ,MAAM,MAAMuoQ,GAAiC,eAAe,QAAG,IAASvoQ,KAAKwkQ,qBAAqB,CAAC,GAAGxkQ,KAAKqjQ,cAAc9hQ,OAAO,EAAE,MAAM,IAAI2I,UAAU,uFAAuF26P,EAAmC7kQ,KAAK,CAAC,GAAG,CAACS,IAAI,SAAS6G,IAAI,WAAe,OAAM,IAAKo8P,EAA8B1jQ,MAAM6F,QAAQE,OAAOwiQ,GAAiC,WAAWvoQ,KAAKgkQ,cAAc,KAAKzB,CAA2B,CAAtiD,GAA0iDoH,GAAyB,WAAW,SAASA,EAAyBxjQ,GAAG,GAAGuxH,EAAgB13H,KAAK2pQ,IAA2B5G,EAAiB58P,GAAG,MAAM,IAAI+D,UAAU,uGAAuG,IAAG,IAAK+8P,EAA+B9gQ,EAAEq9P,2BAA2B,MAAM,IAAIt5P,UAAU,+FAA+F,GAAG84P,EAAuB78P,GAAG,MAAM,IAAI+D,UAAU,+EAA+Eq6P,EAAsCvkQ,KAAKmG,GAAGnG,KAAKmjQ,kBAAkB,EAAE,CAAC,OAAOpC,GAAa4I,EAAyB,CAAC,CAAClpQ,IAAI,SAASP,MAAM,SAAgBiG,GAAG,OAAOk+P,EAA2BrkQ,WAAM,IAASA,KAAKwkQ,qBAAqB3+P,QAAQE,OAAOuiQ,GAAoB,WAAW1D,EAAkC5kQ,KAAKmG,GAAGN,QAAQE,OAAOyiQ,GAA8B,UAAU,GAAG,CAAC/nQ,IAAI,OAAOP,MAAM,SAAciG,GAAG,OAAOk+P,EAA2BrkQ,WAAM,IAASA,KAAKwkQ,qBAAqB3+P,QAAQE,OAAOuiQ,GAAoB,cAAc3+P,YAAYC,OAAOzD,IAAG,IAAK07P,GAAiB17P,EAAErE,QAAQ+D,QAAQE,OAAO,IAAImE,UAAU,wDAAwD,IAAI/D,EAAEnD,WAAW6C,QAAQE,OAAO,IAAImE,UAAU,uCAAuC66P,EAA6B/kQ,KAAKmG,GAAGN,QAAQE,OAAO,IAAImE,UAAU,sCAAsCrE,QAAQE,OAAOyiQ,GAA8B,QAAQ,GAAG,CAAC/nQ,IAAI,cAAcP,MAAM,WAAuB,IAAImkQ,EAA2BrkQ,MAAM,MAAMwoQ,GAA8B,eAAe,QAAG,IAASxoQ,KAAKwkQ,qBAAqB,CAAC,GAAGxkQ,KAAKmjQ,kBAAkB5hQ,OAAO,EAAE,MAAM,IAAI2I,UAAU,uFAAuF26P,EAAmC7kQ,KAAK,CAAC,GAAG,CAACS,IAAI,SAAS6G,IAAI,WAAe,OAAO+8P,EAA2BrkQ,MAAMA,KAAKgkQ,eAAen+P,QAAQE,OAAOyiQ,GAA8B,UAAU,KAAKmB,CAAwB,CAA59D,GAAg+DhH,GAAgC,WAAW,SAASA,IAAkC,MAAMjrI,EAAgB13H,KAAK2iQ,GAAiC,IAAIz4P,SAAS,CAAC,OAAO62P,GAAa4B,EAAgC,CAAC,CAACliQ,IAAI,QAAQP,MAAM,WAAiB,IAAG,IAAK6lQ,EAAkC/lQ,MAAM,MAAMyoQ,GAAqC,SAAS,IAAG,IAAKjC,EAAiDxmQ,MAAM,MAAM,IAAIkK,UAAU,mDAAmDy8P,EAAqC3mQ,KAAK,GAAG,CAACS,IAAI,UAAUP,MAAM,SAAiBiG,GAAG,IAAG,IAAK4/P,EAAkC/lQ,MAAM,MAAMyoQ,GAAqC,WAAW,IAAG,IAAKjC,EAAiDxmQ,MAAM,MAAM,IAAIkK,UAAU,qDAAqD,OAAO08P,EAAuC5mQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,QAAQP,MAAM,SAAeiG,GAAG,IAAG,IAAK4/P,EAAkC/lQ,MAAM,MAAMyoQ,GAAqC,SAAS,IAAI/sK,EAAE17F,KAAKumQ,0BAA0B,GAAG,aAAa7qK,EAAE6oG,OAAO,MAAM,IAAIr6L,UAAU,iBAAiBwxF,EAAE6oG,OAAO,6BAA6BuiE,EAAqC9mQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAIgjQ,GAAYvjQ,MAAM,SAAeiG,GAAG,OAAOk8P,GAAWriQ,MAAMA,KAAKgnQ,iBAAiB7gQ,EAAE,GAAG,CAAC1F,IAAIqlQ,GAAU5lQ,MAAM,WAAiB,IAAIiG,EAAEnG,KAAKumQ,0BAA0B,GAAGvmQ,KAAKiiQ,OAAO1gQ,OAAO,EAAE,CAAC,IAAIm6F,EAAEsmK,GAAahiQ,MAAM,OAAM,IAAKA,KAAKylQ,iBAAiB,IAAIzlQ,KAAKiiQ,OAAO1gQ,OAAOgiQ,EAAoBp9P,GAAG6/P,EAAgDhmQ,MAAM6F,QAAQC,QAAQy7P,GAAuB7lK,GAAE,GAAI,CAAC,IAAIsI,EAAEo/J,EAA6Bj9P,GAAG,OAAO6/P,EAAgDhmQ,MAAMgkG,CAAC,GAAG,CAACvjG,IAAI,cAAc6G,IAAI,WAAe,IAAG,IAAKy+P,EAAkC/lQ,MAAM,MAAMyoQ,GAAqC,eAAe,OAAO/B,EAA8C1mQ,KAAK,KAAK2iQ,CAA+B,CAAj2D,GAAq2DqI,GAA0B,WAAW,SAASA,IAA4B,MAAMtzI,EAAgB13H,KAAKgrQ,GAA2B,IAAI9gQ,UAAU,oDAAoD,CAAC,OAAO62P,GAAaiK,EAA0B,CAAC,CAACvqQ,IAAI,UAAUP,MAAM,SAAiBiG,GAAG,IAAG,IAAK+gQ,EAA4BlnQ,MAAM,MAAM0oQ,GAA+B,WAAW,QAAG,IAAS1oQ,KAAK4nQ,wCAAwC,MAAM,IAAI19P,UAAU,0CAA0C,IAAG,IAAK23P,GAAiB7hQ,KAAK6nQ,MAAM/lQ,QAAQ,MAAM,IAAIoI,UAAU,oFAA1viB,SAA6C/D,EAAEu1F,GAAG,GAAGA,EAAE53F,OAAO43F,IAAG,IAAK8lK,GAA0B9lK,GAAG,MAAM,IAAI7sF,WAAW,iCAAiCm5P,EAA4C7hQ,EAAEu1F,EAAE,CAAooiBuvK,CAAoCjrQ,KAAK4nQ,wCAAwCzhQ,EAAE,GAAG,CAAC1F,IAAI,qBAAqBP,MAAM,SAA4BiG,GAAG,IAAG,IAAK+gQ,EAA4BlnQ,MAAM,MAAM0oQ,GAA+B,WAAW,QAAG,IAAS1oQ,KAAK4nQ,wCAAwC,MAAM,IAAI19P,UAAU,0CAA0C,IAAIP,YAAYC,OAAOzD,GAAG,MAAM,IAAI+D,UAAU,gDAAgD,IAAG,IAAK23P,GAAiB17P,EAAErE,QAAQ,MAAM,IAAIoI,UAAU,qFAA9njB,SAAwD/D,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEk/P,kBAAkB,GAAG,GAAGrhK,EAAEgD,WAAWhD,EAAEkhK,cAAcxpK,EAAEsL,WAAW,MAAM,IAAIn4F,WAAW,2DAA2D,GAAGm1F,EAAEhhG,aAAa04F,EAAE14F,WAAW,MAAM,IAAI6L,WAAW,8DAA8Dm1F,EAAEliG,OAAO45F,EAAE55F,OAAOkmQ,EAA4C7hQ,EAAEu1F,EAAE14F,WAAW,CAA4ziBkoQ,CAA+ClrQ,KAAK4nQ,wCAAwCzhQ,EAAE,GAAG,CAAC1F,IAAI,OAAO6G,IAAI,WAAe,IAAG,IAAK4/P,EAA4BlnQ,MAAM,MAAM0oQ,GAA+B,QAAQ,OAAO1oQ,KAAK6nQ,KAAK,KAAKmD,CAAyB,CAA17C,GAA87CzB,GAA6B,WAAW,SAASA,IAA+B,MAAM7xI,EAAgB13H,KAAKupQ,GAA8B,IAAIr/P,UAAU,mEAAmE,CAAC,OAAO62P,GAAawI,EAA6B,CAAC,CAAC9oQ,IAAI,QAAQP,MAAM,WAAiB,IAAG,IAAK+mQ,EAA+BjnQ,MAAM,MAAM2oQ,GAAwC,SAAS,IAAG,IAAK3oQ,KAAKylQ,gBAAgB,MAAM,IAAIv7P,UAAU,8DAA8D,IAAI/D,EAAEnG,KAAKglQ,8BAA8BzgE,OAAO,GAAG,aAAap+L,EAAE,MAAM,IAAI+D,UAAU,kBAAkB/D,EAAE,8DAAhhoB,SAA2CA,GAAG,IAAIu1F,EAAEv1F,EAAE6+P,8BAA8B,GAAG7+P,EAAE+7P,gBAAgB,EAAE/7P,EAAEs/P,iBAAgB,MAAO,CAAC,GAAGt/P,EAAEk/P,kBAAkB9jQ,OAAO,GAAG4E,EAAEk/P,kBAAkB,GAAGH,YAAY,EAAE,CAAC,IAAIlhK,EAAE,IAAI95F,UAAU,2DAA2D,MAAMw7P,EAAkCv/P,EAAE69F,GAAGA,CAAC,CAACu/J,EAAoB7nK,EAAE,CAAC,CAA4unByvK,CAAkCnrQ,KAAK,GAAG,CAACS,IAAI,UAAUP,MAAM,SAAiBiG,GAAG,IAAG,IAAK8gQ,EAA+BjnQ,MAAM,MAAM2oQ,GAAwC,WAAW,IAAG,IAAK3oQ,KAAKylQ,gBAAgB,MAAM,IAAIv7P,UAAU,gCAAgC,IAAIwxF,EAAE17F,KAAKglQ,8BAA8BzgE,OAAO,GAAG,aAAa7oG,EAAE,MAAM,IAAIxxF,UAAU,kBAAkBwxF,EAAE,kEAAkE,IAAI/xF,YAAYC,OAAOzD,GAAG,MAAM,IAAI+D,UAAU,qFAAqF,IAAG,IAAK23P,GAAiB17P,EAAErE,QAAQ,MAAM,IAAIoI,UAAU,sDAA31oB,SAA6C/D,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAE6+P,8BAA8BxpK,EAAEE,EAAE55F,OAAOR,EAAEo6F,EAAEsL,WAAWh/F,EAAE0zF,EAAE14F,WAAWJ,EAAEg/P,GAAoBpmK,IAAG,IAAK8oK,EAA+BtgK,GAAG,IAAImgK,EAAiCngK,GAAGyjK,EAAgDthQ,EAAEvD,EAAEtB,EAAE0G,GAAGi8P,EAAiCjgK,EAAE,IAAIn4F,WAAWjJ,EAAEtB,EAAE0G,IAAG,IAAI,IAAKo8P,EAA4BpgK,IAAIyjK,EAAgDthQ,EAAEvD,EAAEtB,EAAE0G,GAAG8/P,EAAiE3hQ,IAAIshQ,EAAgDthQ,EAAEvD,EAAEtB,EAAE0G,EAAE,CAAs1nBojQ,CAAoCprQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,QAAQP,MAAM,SAAeiG,GAAG,IAAG,IAAK8gQ,EAA+BjnQ,MAAM,MAAM2oQ,GAAwC,SAAS,IAAIjtK,EAAE17F,KAAKglQ,8BAA8B,GAAG,aAAatpK,EAAE6oG,OAAO,MAAM,IAAIr6L,UAAU,iBAAiBwxF,EAAE6oG,OAAO,6BAA6BmhE,EAAkC1lQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAIgjQ,GAAYvjQ,MAAM,SAAeiG,GAAG,OAAOnG,KAAKqlQ,kBAAkB9jQ,OAAO,IAAIvB,KAAKqlQ,kBAAkB,GAAGH,YAAY,GAAG7C,GAAWriQ,MAAMA,KAAKgnQ,iBAAiB7gQ,EAAE,GAAG,CAAC1F,IAAIqlQ,GAAU5lQ,MAAM,WAAiB,IAAIiG,EAAEnG,KAAKglQ,8BAA8B,GAAGhlQ,KAAKkiQ,gBAAgB,EAAE,CAAC,IAAIxmK,EAAE17F,KAAKiiQ,OAAO13P,QAAQvK,KAAKkiQ,iBAAiBxmK,EAAE14F,WAAWwiQ,EAA6CxlQ,MAAM,IAAIgkG,OAAE,EAAO,IAAIA,EAAE,IAAIn4F,WAAW6vF,EAAE55F,OAAO45F,EAAEsL,WAAWtL,EAAE14F,WAAW,CAAC,MAAMmD,GAAG,OAAON,QAAQE,OAAOI,EAAE,CAAC,OAAON,QAAQC,QAAQy7P,GAAuBv9J,GAAE,GAAI,CAAC,IAAIxI,EAAEx7F,KAAKooQ,uBAAuB,QAAG,IAAS5sK,EAAE,CAAC,IAAIl6F,OAAE,EAAO,IAAIA,EAAE,IAAIqI,YAAY6xF,EAAE,CAAC,MAAMr1F,GAAG,OAAON,QAAQE,OAAOI,EAAE,CAAC,IAAI6B,EAAE,CAAClG,OAAOR,EAAE0lG,WAAW,EAAEhkG,WAAWw4F,EAAE0pK,YAAY,EAAEC,YAAY,EAAE/hG,KAAKv3J,WAAWu5P,WAAW,WAAWplQ,KAAKqlQ,kBAAkB9hQ,KAAKyE,EAAE,CAAC,IAAIpF,EAAEwgQ,EAA6Bj9P,GAAG,OAAOw/P,EAA6C3lQ,MAAM4C,CAAC,GAAG,CAACnC,IAAI,cAAc6G,IAAI,WAAe,IAAG,IAAK2/P,EAA+BjnQ,MAAM,MAAM2oQ,GAAwC,eAAe,QAAG,IAAS3oQ,KAAK2nQ,cAAc3nQ,KAAKqlQ,kBAAkB9jQ,OAAO,EAAE,CAAC,IAAI4E,EAAEnG,KAAKqlQ,kBAAkB,GAAG3pK,EAAE,IAAI7vF,WAAW1F,EAAErE,OAAOqE,EAAE6gG,WAAW7gG,EAAE++P,YAAY/+P,EAAEnD,WAAWmD,EAAE++P,aAAalhK,EAAE5iG,OAAO2G,OAAOijQ,GAA0BtpQ,YAA33mB,SAAwCyE,EAAEu1F,EAAEsI,GAAG79F,EAAEyhQ,wCAAwClsK,EAAEv1F,EAAE0hQ,MAAM7jK,CAAC,EAAkymBqnK,CAA+BrnK,EAAEhkG,KAAK07F,GAAG17F,KAAK2nQ,aAAa3jK,CAAC,CAAC,OAAOhkG,KAAK2nQ,YAAY,GAAG,CAAClnQ,IAAI,cAAc6G,IAAI,WAAe,IAAG,IAAK2/P,EAA+BjnQ,MAAM,MAAM2oQ,GAAwC,eAAe,OAAOxB,EAA2CnnQ,KAAK,KAAKupQ,CAA4B,CAA/tG,EAErilC,EAAE,CAAC,eAAe,GAAG,wBAAwB,GAAG,aAAa,GAAG,uBAAuB,GAAG,gBAAgB,KAAK,GAAG,CAAC,SAASvN,EAAQ/3P,EAAOC,GAC3I,aAAa,SAASwzH,EAAgBh8B,EAAEv1F,GAAG,KAAKu1F,aAAav1F,GAAG,MAAM,IAAI+D,UAAU,oCAAoC,CAAmjB,SAASohQ,EAA0B5vK,EAAEv1F,EAAE69F,EAAExI,EAAExzF,EAAEpF,GAAG,SAAS+nQ,IAAiB,OAAOxkQ,CAAC,CAACu1F,EAAE6vK,UAAUC,EAAqBb,GAAe,SAAwBxkQ,GAAG,OAAq2G,SAAkDu1F,EAAEv1F,GAAGslQ,EAAQ,8CAA8C,IAAIznK,EAAEtI,EAAEgwK,2BAA2B,OAAM,IAAKhwK,EAAEiwK,cAAcjwK,EAAEkwK,2BAA2BtlQ,MAAK,WAAW,IAAIk1F,EAAEE,EAAE6vK,UAAU,GAAG,aAAa/vK,EAAE+oG,OAAO,MAAM/oG,EAAEqnK,aAAa,OAAO7+J,EAAE6nK,oBAAoB1lQ,EAAE,IAAG69F,EAAE6nK,oBAAoB1lQ,EAAE,CAAhrH2lQ,CAAyCpwK,EAAEv1F,EAAE,IAAE,WAA0B,OAAqvH,SAAkDu1F,GAAG+vK,EAAQ,8CAA8C,IAAItlQ,EAAEu1F,EAAEqwK,UAAU,OAAOrwK,EAAEgwK,2BAA2BM,kBAAkB1lQ,MAAK,WAAW,GAAG,YAAYH,EAAEo+L,OAAO,MAAMp+L,EAAE08P,aAAa,IAAInnK,EAAEv1F,EAAEq9P,2BAA0B,IAAKgD,EAAiD9qK,IAAIirK,EAAqCjrK,EAAE,IAAGj4D,OAAM,SAASugE,GAAG,MAAMioK,EAAqBvwK,EAAEsI,GAAG79F,EAAE08P,YAAY,GAAE,CAAtqIqJ,CAAyCxwK,EAAE,IAAE,WAA0B,OAA0hH,SAAkDA,GAAG,OAAOuwK,EAAqBvwK,EAAE,IAAIxxF,UAAU,0BAA0BrE,QAAQC,SAAS,CAA/pHqmQ,CAAyCzwK,EAAE,GAAEsI,EAAExI,GAAGE,EAAEqwK,UAAUvJ,EAAqBmI,GAAe,WAAyB,OAA89H,SAAmDjvK,GAAG,OAAO+vK,EAAQ,+CAA+CW,EAA+B1wK,GAAE,GAAIA,EAAEkwK,0BAA0B,CAA5oIS,CAA0C3wK,EAAE,IAAE,SAAyBv1F,GAAG,OAAOmmQ,EAA4C5wK,EAAEv1F,GAAGN,QAAQC,SAAS,GAAEkC,EAAEpF,GAAG84F,EAAEiwK,mBAAc,EAAOjwK,EAAEkwK,gCAA2B,EAAOlwK,EAAE6wK,wCAAmC,EAAOH,EAA+B1wK,GAAE,GAAIA,EAAEgwK,gCAA2B,CAAM,CAAC,SAASc,EAAkB9wK,GAAG,QAAQ0lK,EAAa1lK,MAAMt6F,OAAOM,UAAUgH,eAAeC,KAAK+yF,EAAE,6BAA6B,CAAC,SAASuwK,EAAqBvwK,EAAEv1F,GAAGslQ,EAAQ,0BAA0B,aAAa/vK,EAAEqwK,UAAUxnE,QAAQuiE,EAAqCprK,EAAEqwK,UAAUvI,0BAA0Br9P,GAAGmmQ,EAA4C5wK,EAAEv1F,EAAE,CAAC,SAASmmQ,EAA4C5wK,EAAEv1F,GAAGsmQ,EAA6C/wK,EAAE6vK,UAAUmB,0BAA0BvmQ,IAAG,IAAKu1F,EAAEiwK,eAAeS,EAA+B1wK,GAAE,EAAG,CAAC,SAAS0wK,EAA+B1wK,EAAEv1F,GAAGslQ,EAAQ,oDAAoDtlQ,EAAE,UAAK,IAASu1F,EAAEkwK,4BAA4BlwK,EAAE6wK,qCAAqC7wK,EAAEkwK,2BAA2B,IAAI/lQ,SAAQ,SAASM,GAAGu1F,EAAE6wK,mCAAmCpmQ,CAAC,IAAGu1F,EAAEiwK,cAAcxlQ,CAAC,CAAC,SAASwmQ,EAAmCjxK,GAAG,QAAQ0lK,EAAa1lK,MAAMt6F,OAAOM,UAAUgH,eAAeC,KAAK+yF,EAAE,6BAA6B,CAAC,SAASkxK,EAAsClxK,EAAEv1F,EAAE69F,EAAExI,GAAGr1F,EAAE0mQ,2BAA2BnxK,EAAEA,EAAEgwK,2BAA2BvlQ,EAAEA,EAAE0lQ,oBAAoB7nK,EAAE79F,EAAE6lQ,gBAAgBxwK,CAAC,CAAylB,SAASsxK,EAAwCpxK,EAAEv1F,GAAGslQ,EAAQ,6CAA6C,IAAIznK,EAAEtI,EAAEmxK,2BAA2BrxK,EAAEwI,EAAE+nK,UAAUvI,0BAA0B,IAAG,IAAKgD,EAAiDhrK,GAAG,MAAM,IAAItxF,UAAU,wDAAwD,IAAI08P,EAAuCprK,EAAEr1F,EAAE,CAAC,MAAMu1F,GAAG,MAAM4wK,EAA4CtoK,EAAEtI,GAAGsI,EAAE+nK,UAAUlJ,YAAY,CAACkI,EAA+CvvK,KAAKwI,EAAE2nK,eAAeS,EAA+BpoK,GAAE,EAAG,CAA8iD,SAASykK,EAAqC/sK,GAAG,OAAO,IAAIxxF,UAAU,8CAA8CwxF,EAAE,0DAA0D,CAAC,SAAS2sK,EAA0B3sK,GAAG,OAAO,IAAIxxF,UAAU,6BAA6BwxF,EAAE,yCAAyC,CAAC,IAAIqlK,EAAa,WAAW,SAAS1oI,EAAiB38B,EAAEv1F,GAAG,IAAI,IAAI69F,EAAE,EAAEA,EAAE79F,EAAE5E,OAAOyiG,IAAI,CAAC,IAAIxI,EAAEr1F,EAAE69F,GAAGxI,EAAEn0F,WAAWm0F,EAAEn0F,aAAY,EAAGm0F,EAAEjzF,cAAa,EAAG,UAAUizF,IAAIA,EAAElzF,UAAS,GAAIlH,OAAO+C,eAAeu3F,EAAEF,EAAE/6F,IAAI+6F,EAAE,CAAC,CAAC,OAAO,SAASE,EAAEv1F,EAAE69F,GAAG,OAAO79F,GAAGkyH,EAAiB38B,EAAEh6F,UAAUyE,GAAG69F,GAAGq0B,EAAiB38B,EAAEsI,GAAGtI,CAAC,CAAC,CAA5R,GAAgU+vK,GAAzBzP,EAAQ,iBAAyBA,EAAQ,QAARA,CAAiB,qCAAoC4M,EAAS5M,EAAQ,gBAAgB2F,EAAaiH,EAASjH,aAAaD,EAAoCkH,EAASlH,oCAAoCR,EAAY0H,EAAS1H,YAAYE,EAAawH,EAASxH,aAAaU,EAAkC8G,EAAS9G,kCAAmFC,GAA7B6G,EAASnH,oBAAsDmH,EAAS7G,mCAAkCgL,EAAU/Q,EAAQ,wBAAwBwG,EAAqBuK,EAAUvK,qBAAqBmE,EAAqCoG,EAAUpG,qCAAqCC,EAAuCmG,EAAUnG,uCAAuCE,EAAqCiG,EAAUjG,qCAAqCJ,EAA8CqG,EAAUrG,8CAA8CqE,EAA+CgC,EAAUhC,+CAA+CvE,EAAiDuG,EAAUvG,iDAAiDqC,EAAU7M,EAAQ,wBAAwBwP,EAAqB3C,EAAU2C,qBAAqBiB,EAA6C5D,EAAU4D,6CAA6CrQ,EAAgB,WAAW,SAASA,IAAkB,IAAI1gK,EAAE35E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAE5b,EAAE4b,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAEiiF,EAAEjiF,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAE,GAAG21G,EAAgB13H,KAAKo8P,QAAiB,IAAS1gK,EAAEsxK,aAAa,MAAM,IAAIn+P,WAAW,mCAAmC,QAAG,IAAS6sF,EAAEuxK,aAAa,MAAM,IAAIp+P,WAAW,mCAAmC,IAAI2sF,EAAEr1F,EAAErG,KAAKkI,EAAE+5P,EAAkCvmK,GAAG54F,EAAEuD,EAAE2lN,mBAAc,IAASlpN,IAAIA,EAAE,GAAGA,EAAEk/P,EAAkCl/P,GAAG,IAAItB,EAAE0iG,EAAElkG,KAAKuB,EAAE0gQ,EAAkCzgQ,GAAG2G,EAAE+7F,EAAE8nH,mBAAc,IAAS7jN,IAAIA,EAAE,GAAGA,EAAE65P,EAAkC75P,GAAG,IAAI/C,OAAE,EAAOomQ,EAA0BtrQ,KAAK,IAAI6F,SAAQ,SAAS61F,GAAGx2F,EAAEw2F,CAAC,IAAG94F,EAAEoF,EAAEC,EAAE5G,GAA/3K,SAA8Dq6F,EAAEv1F,GAAG,IAAI69F,EAAE5iG,OAAO2G,OAAOmlQ,EAAiCxrQ,WAAW85F,EAAE,SAA4BE,GAAG,IAAI,OAAOoxK,EAAwC9oK,EAAEtI,GAAG71F,QAAQC,SAAS,CAAC,MAAM41F,GAAG,OAAO71F,QAAQE,OAAO21F,EAAE,CAAC,EAAE1zF,EAAE7B,EAAEma,UAAU,QAAG,IAAStY,EAAE,CAAC,GAAG,mBAAmBA,EAAE,MAAM,IAAIkC,UAAU,6BAA6BsxF,EAAE,SAA4BA,GAAG,OAAO0lK,EAAYl5P,EAAE7B,EAAE,CAACq1F,EAAEwI,IAAIvgE,OAAM,SAASt9B,GAAG,MAAM8lQ,EAAqBvwK,EAAEv1F,GAAGA,CAAC,GAAE,CAAC,CAAC,IAAIvD,EAAE8+P,EAAoCv7P,EAAE,QAAQ,EAAE,CAAC69F,IAAI4oK,EAAsClxK,EAAEsI,EAAExI,EAAE54F,EAAE,CAA2yJuqQ,CAAqDntQ,KAAK07F,GAAG,IAAIqgK,EAAE4F,EAAajmK,EAAE,QAAQ,CAAC17F,KAAK0rQ,6BAA6BxmQ,EAAE62P,EAAE,CAAC,OAAOgF,EAAa3E,EAAgB,CAAC,CAAC37P,IAAI,WAAW6G,IAAI,WAAe,IAAG,IAAKklQ,EAAkBxsQ,MAAM,MAAMqoQ,EAA0B,YAAY,OAAOroQ,KAAK+rQ,SAAS,GAAG,CAACtrQ,IAAI,WAAW6G,IAAI,WAAe,IAAG,IAAKklQ,EAAkBxsQ,MAAM,MAAMqoQ,EAA0B,YAAY,OAAOroQ,KAAKurQ,SAAS,KAAKnP,CAAe,CAAjsC,GAAqsC8Q,EAAiC,WAAW,SAASA,IAAmC,MAAMx1I,EAAgB13H,KAAKktQ,GAAkC,IAAIhjQ,UAAU,wEAAwE,CAAC,OAAO62P,EAAamM,EAAiC,CAAC,CAACzsQ,IAAI,UAAUP,MAAM,SAAiBw7F,GAAG,IAAG,IAAKixK,EAAmC3sQ,MAAM,MAAMyoQ,EAAqC,WAAWqE,EAAwC9sQ,KAAK07F,EAAE,GAAG,CAACj7F,IAAI,QAAQP,MAAM,SAAew7F,GAAG,IAAG,IAAKixK,EAAmC3sQ,MAAM,MAAMyoQ,EAAqC,UAAxyK,SAA+C/sK,EAAEv1F,GAAG8lQ,EAAqBvwK,EAAEmxK,2BAA2B1mQ,EAAE,CAAysKinQ,CAAsCptQ,KAAK07F,EAAE,GAAG,CAACj7F,IAAI,YAAYP,MAAM,WAAqB,IAAG,IAAKysQ,EAAmC3sQ,MAAM,MAAMyoQ,EAAqC,cAAh4K,SAAmD/sK,GAAG+vK,EAAQ,+CAA+C,IAAItlQ,EAAEu1F,EAAEmxK,2BAA2B7oK,EAAE79F,EAAE4lQ,UAAUvI,2BAA0B,IAAKgD,EAAiDxiK,IAAI2iK,EAAqC3iK,GAAGsoK,EAA4CnmQ,EAAE,IAAI+D,UAAU,8BAA8B,CAAyhKmjQ,CAA0CrtQ,KAAK,GAAG,CAACS,IAAI,cAAc6G,IAAI,WAAe,IAAG,IAAKqlQ,EAAmC3sQ,MAAM,MAAMyoQ,EAAqC,eAAe,IAAI/sK,EAAE17F,KAAK6sQ,2BAA2Bd,UAAUvI,0BAA0B,OAAOkD,EAA8ChrK,EAAE,KAAKwxK,CAAgC,CAA3nC,GAA+nCjpQ,EAAOC,QAAQ,CAACopQ,sBAA18S,SAA+B5xK,EAAEv1F,EAAE69F,GAAG,IAAIxI,EAAEz5E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,EAAE/Z,EAAE+Z,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,WAAW,OAAO,CAAC,EAAEnf,EAAEmf,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,EAAEzgB,EAAEygB,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,WAAW,OAAO,CAAC,EAAE1gB,EAAED,OAAO2G,OAAOq0P,EAAgB16P,WAAWuG,OAAE,EAAOqjQ,EAA0BjqQ,EAAE,IAAIwE,SAAQ,SAAS61F,GAAGzzF,EAAEyzF,CAAC,IAAGF,EAAExzF,EAAEpF,EAAEtB,GAAGsrQ,EAAsCvrQ,EAAED,OAAO2G,OAAOmlQ,EAAiCxrQ,WAAWyE,EAAE69F,GAAG,IAAI9+F,EAAEw2F,IAAI,OAAOzzF,EAAE/C,GAAG7D,CAAC,EAAq8R+6P,gBAAgBA,EAE/nT,EAAE,CAAC,eAAe,GAAG,uBAAuB,GAAG,uBAAuB,GAAG,gBAAgB,GAAG,MAAQ,KAAK,GAAG,CAAC,SAASJ,EAAQ/3P,EAAOC,GACrI,aAAa,IAAI0uI,EAAOopH,EAAQ,iBAAiB93P,EAAQoiQ,+BAA+B,SAAS5qK,GAAGA,GAAGA,EAAE1sF,cAAc4jI,EAAO6pH,gBAAgBxpO,YAAW,WAAW,MAAMyoE,CAAC,GAAE,EAAE,CAE/K,EAAE,CAAC,gBAAgB,KAAK,GAAG,CAAC,SAASsgK,EAAQ/3P,EAAOC,GACpD,aAAa,SAASwzH,EAAgBvxH,EAAEu1F,GAAG,KAAKv1F,aAAau1F,GAAG,MAAM,IAAIxxF,UAAU,oCAAoC,CAAC,SAAS6+P,EAAmC5iQ,GAAG,OAAO,IAAIonQ,EAA4BpnQ,EAAE,CAAiX,SAASqnQ,EAAyBrnQ,GAAGA,EAAEo+L,OAAO,WAAWp+L,EAAE08P,kBAAa,EAAO18P,EAAEs8L,aAAQ,EAAOt8L,EAAEumQ,+BAA0B,EAAOvmQ,EAAEsnQ,eAAe,GAAGtnQ,EAAEunQ,2BAAsB,EAAOvnQ,EAAEwnQ,mBAAc,EAAOxnQ,EAAEynQ,2BAAsB,EAAOznQ,EAAE0nQ,0BAAqB,EAAO1nQ,EAAEwlQ,eAAc,CAAE,CAAC,SAAS3C,EAAiB7iQ,GAAG,QAAQi7P,EAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,4BAA4B,CAAC,SAAS8iQ,EAAuB9iQ,GAAG,YAAO,IAASA,EAAEs8L,OAAO,CAAC,SAASymE,EAAoB/iQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEo+L,OAAO,GAAG,WAAWvgG,EAAE,OAAOn+F,QAAQC,aAAQ,GAAQ,GAAG,YAAYk+F,EAAE,OAAOn+F,QAAQE,OAAOI,EAAE08P,cAAc,IAAIxhQ,EAAE,IAAI6I,UAAU,sBAAsB,QAAG,IAAS/D,EAAE0nQ,qBAAqB,OAAOhoQ,QAAQE,OAAO1E,GAAG,IAAIm6F,GAAE,EAAG,aAAawI,IAAIxI,GAAE,EAAGE,OAAE,GAAQ,IAAI1zF,EAAE,IAAInC,SAAQ,SAASm+F,EAAE3iG,GAAG8E,EAAE0nQ,qBAAqB,CAAClkD,SAAS3lH,EAAEk/J,QAAQ7hQ,EAAEysQ,QAAQpyK,EAAEqyK,oBAAoBvyK,EAAE,IAAG,OAAM,IAAKA,GAAGwyK,EAA4B7nQ,EAAE9E,GAAG2G,CAAC,CAAoI,SAASimQ,EAAgC9nQ,EAAEu1F,GAAG+vK,EAAQ,8CAA8C/vK,GAAG,aAAav1F,EAAEo+L,OAAO2pE,EAA6B/nQ,GAAG6nQ,EAA4B7nQ,EAAEu1F,EAAE,CAAC,SAASsyK,EAA4B7nQ,EAAEu1F,GAAG+vK,EAAQ,0CAA0C/vK,GAAG,IAAIsI,EAAE79F,EAAEumQ,0BAA0BvmQ,EAAEo+L,OAAO,WAAWp+L,EAAE08P,aAAannK,EAAE,IAAIr6F,EAAE8E,EAAEs8L,aAAQ,IAASphM,GAAG8sQ,EAAsD9sQ,EAAEq6F,IAAG,IAAg6D,SAAkDv1F,GAAG,YAAO,IAASA,EAAEunQ,4BAAuB,IAASvnQ,EAAEynQ,uBAAuBnC,EAAQ,wDAAuD,IAAKA,EAAQ,uDAAsD,EAAG,CAAhqE2C,CAAyCjoQ,KAAI,IAAK69F,EAAEyiK,UAAUyH,EAA6B/nQ,EAAE,CAAC,SAAS+nQ,EAA6B/nQ,GAAGslQ,EAAQ,kCAAkCtlQ,EAAEo+L,OAAO,UAAUp+L,EAAEumQ,0BAA0B2B,KAAc,IAAI3yK,EAAEv1F,EAAE08P,aAAa7+J,GAAE,EAAG3iG,GAAE,EAAGm6F,OAAE,EAAO,IAAI,IAAI,IAAIxzF,EAAE1G,EAAE6E,EAAEsnQ,eAAelkQ,OAAOe,cAAc05F,GAAGh8F,EAAE1G,EAAE4E,QAAQG,MAAM29F,GAAE,EAAGh8F,EAAE9H,MAAMgjQ,QAAQxnK,EAAE,CAAC,MAAMv1F,GAAG9E,GAAE,EAAGm6F,EAAEr1F,CAAC,CAAC,QAAQ,KAAK69F,GAAG1iG,EAAE4qN,QAAQ5qN,EAAE4qN,QAAQ,CAAC,QAAQ,GAAG7qN,EAAE,MAAMm6F,CAAC,CAAC,CAAC,GAAGr1F,EAAEsnQ,eAAe,QAAG,IAAStnQ,EAAE0nQ,qBAAqB,CAAC,IAAI3oQ,EAAEiB,EAAE0nQ,qBAAqB,GAAG1nQ,EAAE0nQ,0BAAqB,GAAO,IAAK3oQ,EAAE6oQ,oBAAoB,OAAO7oQ,EAAEg+P,QAAQxnK,QAAQ4yK,EAAkDnoQ,GAAGA,EAAEumQ,0BAA0B6B,GAAYrpQ,EAAE4oQ,SAASxnQ,MAAK,WAAWpB,EAAEykN,WAAW2kD,EAAkDnoQ,EAAE,IAAE,SAASu1F,GAAGx2F,EAAEg+P,QAAQxnK,GAAG4yK,EAAkDnoQ,EAAE,GAAE,MAAMmoQ,EAAkDnoQ,EAAE,CAAq3B,SAASmjQ,EAAoCnjQ,GAAG,YAAO,IAASA,EAAEwnQ,oBAAe,IAASxnQ,EAAEynQ,qBAAqB,CAAke,SAASU,EAAkDnoQ,GAAGslQ,EAAQ,4DAAuD,IAAStlQ,EAAEwnQ,gBAAgBxnQ,EAAEwnQ,cAAczK,QAAQ/8P,EAAE08P,cAAc18P,EAAEwnQ,mBAAc,GAAQ,IAAIjyK,EAAEv1F,EAAEs8L,aAAQ,IAAS/mG,IAAI8yK,EAAiC9yK,EAAEv1F,EAAE08P,cAAcnnK,EAAEsoK,eAAevgO,OAAM,WAAW,IAAG,CAAC,SAASgrO,EAAiCtoQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEs8L,aAAQ,IAASz+F,GAAGtI,IAAIv1F,EAAEwlQ,iBAAgB,IAAKjwK,EAAkrR,SAAwCv1F,GAAGslQ,EAAQ,oCAAoCtlQ,EAAEskQ,cAAc,IAAI5kQ,SAAQ,SAAS61F,EAAEsI,GAAG79F,EAAEuoQ,sBAAsBhzK,EAAEv1F,EAAEwoQ,qBAAqB3qK,CAAC,IAAG79F,EAAEyoQ,mBAAmB,SAAS,CAAp4RC,CAA+B7qK,GAAG8qK,EAAiC9qK,IAAI79F,EAAEwlQ,cAAcjwK,CAAC,CAAC,SAASqzK,EAA8B5oQ,GAAG,QAAQi7P,EAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,uBAAuB,CAAqG,SAAS6oQ,EAAiC7oQ,GAAG,IAAIu1F,EAAEv1F,EAAE8oQ,qBAAqBjrK,EAAEtI,EAAE6oG,OAAO,GAAG,WAAWvgG,GAAG,YAAYA,EAAE,OAAOn+F,QAAQE,OAAO,IAAImE,UAAU,kBAAkB85F,EAAE,8DAA8D,IAAI3iG,EAAE,IAAIwE,SAAQ,SAASM,EAAE69F,GAAG,IAAI3iG,EAAE,CAACsoN,SAASxjN,EAAE+8P,QAAQl/J,GAAGtI,EAAEiyK,cAActsQ,CAAC,IAAG,OAAM,IAAKq6F,EAAEiwK,eAAe,aAAa3nK,GAAG8qK,EAAiC3oQ,GAAipG,SAA8CA,GAAGg8P,EAAqBh8P,EAAE,QAAQ,GAAG+oQ,EAAoD/oQ,EAAE,CAAvxGgpQ,CAAqCzzK,EAAEgxK,2BAA2BrrQ,CAAC,CAA6Q,SAAS+tQ,EAAuDjpQ,EAAEu1F,GAAG,YAAYv1F,EAAEkpQ,oBAAoBb,EAAiCroQ,EAAEu1F,GAAqyM,SAAmDv1F,EAAEu1F,GAAGv1F,EAAE69P,eAAen+P,QAAQE,OAAO21F,GAAGv1F,EAAEkpQ,oBAAoB,UAAU,CAA75MC,CAA0CnpQ,EAAEu1F,GAAGv1F,EAAE69P,eAAevgO,OAAM,WAAW,GAAE,CAAC,SAAS0qO,EAAsDhoQ,EAAEu1F,GAAG+vK,EAAQ,oEAAoE/vK,GAAG,YAAYv1F,EAAEyoQ,mBAAojO,SAAyCzoQ,EAAEu1F,GAAG+vK,EAAQ,8CAA8C/vK,GAAGv1F,EAAEwoQ,qBAAqBjzK,GAAGv1F,EAAEuoQ,2BAAsB,EAAOvoQ,EAAEwoQ,0BAAqB,EAAOxoQ,EAAEyoQ,mBAAmB,UAAU,CAA9vOW,CAAgCppQ,EAAEu1F,GAAk7O,SAAkDv1F,EAAEu1F,GAAG+vK,EAAQ,uDAAuD/vK,GAAGv1F,EAAEskQ,cAAc5kQ,QAAQE,OAAO21F,GAAGv1F,EAAEyoQ,mBAAmB,UAAU,CAAzmPY,CAAyCrpQ,EAAEu1F,GAAGv1F,EAAEskQ,cAAchnO,OAAM,WAAW,GAAE,CAAkO,SAAS2lO,EAAmCjjQ,GAAG,IAAIu1F,EAAEv1F,EAAE8oQ,qBAAqBjrK,EAAE,IAAI95F,UAAU,oFAAoFikQ,EAAsDhoQ,EAAE69F,GAAGorK,EAAuDjpQ,EAAE69F,GAAGtI,EAAE+mG,aAAQ,EAAOt8L,EAAE8oQ,0BAAqB,CAAM,CAAC,SAAS5F,EAAiCljQ,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAE8oQ,qBAAqB5tQ,EAAE2iG,EAAE0oK,0BAA0BlxK,EAA2xD,SAAqDr1F,EAAEu1F,GAAG,IAAI,OAAOv1F,EAAE0gQ,uBAAuBnrK,EAAE,CAAC,MAAMA,GAAG,OAAO+wK,EAA6CtmQ,EAAEu1F,GAAG,CAAC,CAAC,CAA97D+zK,CAA4CpuQ,EAAEq6F,GAAG,GAAGsI,IAAI79F,EAAE8oQ,qBAAqB,OAAOppQ,QAAQE,OAAO2pQ,EAA2B,aAAa,IAAI1nQ,EAAEg8F,EAAEugG,OAAO,GAAG,YAAYv8L,EAAE,OAAOnC,QAAQE,OAAOi+F,EAAE6+J,cAAc,IAAG,IAAKyG,EAAoCtlK,IAAI,WAAWh8F,EAAE,OAAOnC,QAAQE,OAAO,IAAImE,UAAU,6DAA6D,GAAG,aAAalC,EAAE,OAAOnC,QAAQE,OAAOi+F,EAAE6+J,cAAc,IAAIvhQ,EAA7+L,SAAuC6E,GAAG,OAAO,IAAIN,SAAQ,SAAS61F,EAAEsI,GAAG,IAAI3iG,EAAE,CAACsoN,SAASjuH,EAAEwnK,QAAQl/J,GAAG79F,EAAEsnQ,eAAelqQ,KAAKlC,EAAE,GAAE,CAA62LsuQ,CAA8B3rK,GAAG,OAAilD,SAA8C79F,EAAEu1F,EAAEsI,GAAG,IAAI3iG,EAAE,CAACiY,MAAMoiF,GAAG,IAAIymK,EAAqBh8P,EAAE9E,EAAE2iG,EAAE,CAAC,MAAMtI,GAAG,YAAY+wK,EAA6CtmQ,EAAEu1F,EAAE,CAAC,IAAIF,EAAEr1F,EAAEypQ,2BAA0B,IAAKtG,EAAoC9tK,IAAI,aAAaA,EAAE+oG,QAAQkqE,EAAiCjzK,EAAEq0K,EAA+C1pQ,IAAI+oQ,EAAoD/oQ,EAAE,CAAx+D2pQ,CAAqCzuQ,EAAEq6F,EAAEF,GAAGl6F,CAAC,CAA8I,SAASyuQ,EAAqC5pQ,EAAEu1F,EAAEsI,EAAE3iG,EAAEm6F,EAAExzF,EAAE1G,EAAE4D,GAAGw2F,EAAEk0K,0BAA0BzpQ,EAAEA,EAAEumQ,0BAA0BhxK,EAAEA,EAAEumK,YAAO,EAAOvmK,EAAEwmK,qBAAgB,EAAOG,EAAW3mK,GAAGA,EAAE+qK,UAAS,EAAG/qK,EAAEmrK,uBAAuB3hQ,EAAEw2F,EAAEqrK,aAAazlQ,EAAEo6F,EAAEs0K,gBAAgB3uQ,EAAEq6F,EAAEu0K,gBAAgBz0K,EAAEE,EAAEw0K,gBAAgBloQ,EAAE,IAAIpF,EAAEitQ,EAA+Cn0K,GAAG+yK,EAAiCtoQ,EAAEvD,GAAG,IAAIm5P,EAAE/3J,IAAIn+F,QAAQC,QAAQi2P,GAAGz1P,MAAK,WAAWo1F,EAAE+qK,UAAS,EAAGyI,EAAoDxzK,EAAE,IAAE,SAASsI,GAAGtI,EAAE+qK,UAAS,EAAGwH,EAAgC9nQ,EAAE69F,EAAE,IAAGvgE,MAAM6iO,EAA+B,CAA8sB,SAAS6J,EAA8ChqQ,GAAG,OAAOA,EAAE4gQ,aAAa5gQ,EAAE+7P,eAAe,CAAga,SAASgN,EAAoD/oQ,GAAGslQ,EAAQ,yDAAyD,IAAI/vK,EAAEv1F,EAAEypQ,0BAA0B,IAAG,IAAKzpQ,EAAEsgQ,eAAU,IAAS/qK,EAAEgyK,sBAAsB,CAAC,IAAI1pK,EAAEtI,EAAE6oG,OAAO,GAAG,WAAWvgG,GAAG,YAAYA,EAAE,GAAG,aAAaA,GAAG,GAAG,IAAI79F,EAAE87P,OAAO1gQ,OAAO,CAAC,IAAIF,EAAE+gQ,EAAej8P,GAAG,UAAU9E,EAAqS,SAAqD8E,GAAG,IAAIu1F,EAAEv1F,EAAEypQ,2BAAr9L,SAAgDzpQ,GAAGA,EAAEynQ,sBAAsBznQ,EAAEwnQ,cAAcxnQ,EAAEwnQ,mBAAc,CAAM,EAA83LyC,CAAuC10K,GAAGsmK,EAAa77P,GAAGA,EAAE8pQ,kBAAkB3pQ,MAAK,YAAxhO,SAA2CH,GAAGA,EAAEynQ,sBAAsBjkD,cAAS,GAAQxjN,EAAEynQ,2BAAsB,EAAO,aAAaznQ,EAAEo+L,SAASp+L,EAAE08P,kBAAa,OAAO,IAAS18P,EAAE0nQ,uBAAuB1nQ,EAAE0nQ,qBAAqBlkD,WAAWxjN,EAAE0nQ,0BAAqB,IAAS1nQ,EAAEo+L,OAAO,SAAS,IAAI7oG,EAAEv1F,EAAEs8L,aAAQ,IAAS/mG,GAA23R,SAA2Cv1F,GAAGA,EAAEw9P,4BAAuB,GAAQx9P,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,EAAOz9P,EAAEkpQ,oBAAoB,UAAU,CAAtiSgB,CAAkC30K,EAAE,CAAysN40K,CAAkC50K,EAAE,IAAE,SAASv1F,IAAvvN,SAAoDA,EAAEu1F,GAAGv1F,EAAEynQ,sBAAsB1K,QAAQxnK,GAAGv1F,EAAEynQ,2BAAsB,OAAO,IAASznQ,EAAE0nQ,uBAAuB1nQ,EAAE0nQ,qBAAqB3K,QAAQxnK,GAAGv1F,EAAE0nQ,0BAAqB,GAAQI,EAAgC9nQ,EAAEu1F,EAAE,CAAw/M60K,CAA2C70K,EAAEv1F,EAAE,IAAGs9B,MAAM6iO,EAA+B,CAApmBkK,CAA4CrqQ,GAAyjB,SAAqDA,EAAEu1F,GAAG,IAAIsI,EAAE79F,EAAEypQ,2BAAvqM,SAAqDzpQ,GAAGA,EAAEunQ,sBAAsBvnQ,EAAEsnQ,eAAeljQ,OAAO,EAAylMkmQ,CAA4CzsK,GAAG79F,EAAE6pQ,gBAAgBt0K,GAAGp1F,MAAK,YAAxmP,SAA2CH,GAAGA,EAAEunQ,sBAAsB/jD,cAAS,GAAQxjN,EAAEunQ,2BAAsB,CAAM,CAA8/OgD,CAAkC1sK,GAAG,IAAItI,EAAEsI,EAAEugG,OAAO,GAAGy9D,EAAa77P,IAAG,IAAKmjQ,EAAoCtlK,IAAI,aAAatI,EAAE,CAAC,IAAIr6F,EAAEwuQ,EAA+C1pQ,GAAGsoQ,EAAiCzqK,EAAE3iG,EAAE,CAAC6tQ,EAAoD/oQ,EAAE,IAAE,SAASA,IAAhyP,SAAoDA,EAAEu1F,GAAGv1F,EAAEunQ,sBAAsBxK,QAAQxnK,GAAGv1F,EAAEunQ,2BAAsB,EAAOO,EAAgC9nQ,EAAEu1F,EAAE,CAAooPi1K,CAA2C3sK,EAAE79F,EAAE,IAAGs9B,MAAM6iO,EAA+B,CAAnmCsK,CAA4CzqQ,EAAE9E,EAAEiY,MAAM,OAAO40P,EAA6BxyK,EAAE,CAAC,CAAC,SAAS+wK,EAA6CtmQ,EAAEu1F,GAAG,aAAav1F,EAAEypQ,0BAA0BrrE,QAAQssE,EAAqC1qQ,EAAEu1F,EAAE,CAAi3B,SAASm0K,EAA+C1pQ,GAAG,OAAOgqQ,EAA8ChqQ,IAAI,CAAC,CAAC,SAAS0qQ,EAAqC1qQ,EAAEu1F,GAAGsyK,EAA4B7nQ,EAAEypQ,0BAA0Bl0K,EAAE,CAAC,SAAS2sK,EAA0BliQ,GAAG,OAAO,IAAI+D,UAAU,4BAA4B/D,EAAE,wCAAwC,CAAC,SAAS2qQ,EAAiC3qQ,GAAG,OAAO,IAAI+D,UAAU,yCAAyC/D,EAAE,qDAAqD,CAAC,SAASupQ,EAA2BvpQ,GAAG,OAAO,IAAI+D,UAAU,UAAU/D,EAAE,oCAAoC,CAAC,SAAS4qQ,EAAqC5qQ,GAAGA,EAAE69P,eAAe,IAAIn+P,SAAQ,SAAS61F,EAAEsI,GAAG79F,EAAEw9P,uBAAuBjoK,EAAEv1F,EAAEy9P,sBAAsB5/J,EAAE79F,EAAEkpQ,oBAAoB,SAAS,GAAE,CAAqY,SAASb,EAAiCroQ,EAAEu1F,GAAGv1F,EAAEy9P,sBAAsBloK,GAAGv1F,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,EAAOz9P,EAAEkpQ,oBAAoB,UAAU,CAA2gB,SAAS2B,EAA8C7qQ,EAAEu1F,GAAG+vK,EAAQ,4DAA4D/vK,GAAGv1F,EAAEskQ,cAAc5kQ,QAAQE,OAAO21F,GAAGv1F,EAAEuoQ,2BAAsB,EAAOvoQ,EAAEwoQ,0BAAqB,EAAOxoQ,EAAEyoQ,mBAAmB,UAAU,CAAC,SAASqC,EAA8C9qQ,GAAGslQ,EAAQ,mDAAmDtlQ,EAAEskQ,cAAc5kQ,QAAQC,aAAQ,GAAQK,EAAEuoQ,2BAAsB,EAAOvoQ,EAAEwoQ,0BAAqB,EAAOxoQ,EAAEyoQ,mBAAmB,WAAW,CAA+mB,SAASE,EAAiC3oQ,GAAGslQ,EAAQ,sCAAsCtlQ,EAAEuoQ,2BAAsB,GAAQvoQ,EAAEuoQ,2BAAsB,EAAOvoQ,EAAEwoQ,0BAAqB,EAAOxoQ,EAAEyoQ,mBAAmB,WAAW,CAAC,IAAI7N,EAAa,WAAW,SAAS1oI,EAAiBlyH,EAAEu1F,GAAG,IAAI,IAAIsI,EAAE,EAAEA,EAAEtI,EAAEn6F,OAAOyiG,IAAI,CAAC,IAAI3iG,EAAEq6F,EAAEsI,GAAG3iG,EAAEgG,WAAWhG,EAAEgG,aAAY,EAAGhG,EAAEkH,cAAa,EAAG,UAAUlH,IAAIA,EAAEiH,UAAS,GAAIlH,OAAO+C,eAAegC,EAAE9E,EAAEZ,IAAIY,EAAE,CAAC,CAAC,OAAO,SAAS8E,EAAEu1F,EAAEsI,GAAG,OAAOtI,GAAG28B,EAAiBlyH,EAAEzE,UAAUg6F,GAAGsI,GAAGq0B,EAAiBlyH,EAAE69F,GAAG79F,CAAC,CAAC,CAA5R,GAAgUslQ,GAAzBzP,EAAQ,iBAAyBA,EAAQ,QAARA,CAAiB,oCAAmC4M,EAAS5M,EAAQ,gBAAgB0F,EAAoCkH,EAASlH,oCAAoCC,EAAaiH,EAASjH,aAAaG,EAAkC8G,EAAS9G,kCAAmFC,GAA7B6G,EAASnH,oBAAsDmH,EAAS7G,mCAAkCX,EAAawH,EAASxH,aAA6CkF,EAAtBtK,EAAQ,cAAuDsK,+BAA+BuC,EAAU7M,EAAQ,yBAAyBgG,EAAa6G,EAAU7G,aAAaG,EAAqB0G,EAAU1G,qBAAqBC,EAAeyG,EAAUzG,eAAeC,EAAWwG,EAAUxG,WAAWkM,EAAWhlQ,OAAO,kBAAkB8kQ,EAAW9kQ,OAAO,kBAAkB0yP,EAAe,WAAW,SAASA,IAAiB,IAAI91P,EAAE4b,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAE25E,EAAE35E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,CAAC,EAAEiiF,EAAEtI,EAAE57F,KAAKuB,EAAEq6F,EAAEowH,cAActwH,OAAE,IAASn6F,EAAE,EAAEA,EAAE,GAAGq2H,EAAgB13H,KAAKi8P,GAAgBuR,EAAyBxtQ,WAAM,IAASmG,EAAEuG,KAAK,MAAM,IAAImC,WAAW,6BAA6B,IAAI7G,EAAE+5P,EAAkC/9J,IAAp3O,SAAgE79F,EAAEu1F,EAAEsI,EAAE3iG,GAAG,IAAIm6F,EAAEp6F,OAAO2G,OAAOmpQ,EAAgCxvQ,WAAWsG,EAAE05P,EAAoChmK,EAAE,QAAQ,EAAE,CAACF,IAAIl6F,EAAEogQ,EAAoChmK,EAAE,QAAQ,EAAE,IAAIx2F,EAAEw8P,EAAoChmK,EAAE,QAAQ,EAAE,IAAIq0K,EAAqC5pQ,EAAEq1F,GAAE,WAA0B,OAAOmmK,EAAajmK,EAAE,QAAQ,CAACF,GAAG,GAAExzF,EAAE1G,EAAE4D,EAAE8+F,EAAE3iG,EAAE,CAA29N8vQ,CAAuDnxQ,KAAKmG,EAAEq1F,EAAEsmK,EAAkCtmK,GAAGxzF,EAAE,CAAC,OAAO+4P,EAAa9E,EAAe,CAAC,CAACx7P,IAAI,QAAQP,MAAM,SAAeiG,GAAG,OAAM,IAAK6iQ,EAAiBhpQ,MAAM6F,QAAQE,OAAOsiQ,EAA0B,WAAU,IAAKY,EAAuBjpQ,MAAM6F,QAAQE,OAAO,IAAImE,UAAU,oDAAoDg/P,EAAoBlpQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,YAAYP,MAAM,WAAqB,IAAG,IAAK8oQ,EAAiBhpQ,MAAM,MAAMqoQ,EAA0B,aAAa,OAAOU,EAAmC/oQ,KAAK,GAAG,CAACS,IAAI,SAAS6G,IAAI,WAAe,IAAG,IAAK0hQ,EAAiBhpQ,MAAM,MAAMqoQ,EAA0B,UAAU,OAAOY,EAAuBjpQ,KAAK,KAAKi8P,CAAc,CAAlmC,GAAsmCh4P,EAAOC,QAAQ,CAAC6kQ,mCAAmCA,EAAmCyC,qBAAjvgB,SAA8BrlQ,EAAEu1F,EAAEsI,EAAE3iG,GAAG,IAAIm6F,EAAEz5E,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,EAAE/Z,EAAE+Z,UAAUxgB,OAAO,QAAG,IAASwgB,UAAU,GAAGA,UAAU,GAAG,WAAW,OAAO,CAAC,EAAEzgB,EAAEF,OAAO2G,OAAOk0P,EAAev6P,WAAW,OAAO8rQ,EAAyBlsQ,GAAGyuQ,EAAqCzuQ,EAAEF,OAAO2G,OAAOmpQ,EAAgCxvQ,WAAWyE,EAAEu1F,EAAEsI,EAAE3iG,EAAEm6F,EAAExzF,GAAG1G,CAAC,EAA46f0nQ,iBAAiBA,EAAiBC,uBAAuBA,EAAuBhN,eAAeA,EAAeiN,oBAAoBA,EAAoBuD,6CAA6CA,EAA6CtD,qDAAznW,SAA8DhjQ,GAAG,IAAIu1F,EAAEv1F,EAAE8oQ,qBAAqBjrK,EAAEtI,EAAE6oG,OAAO,OAAM,IAAK+kE,EAAoC5tK,IAAI,WAAWsI,EAAEn+F,QAAQC,UAAU,YAAYk+F,EAAEn+F,QAAQE,OAAO21F,EAAEmnK,cAAcmM,EAAiC7oQ,EAAE,EAAw9VijQ,mCAAmCA,EAAmCC,iCAAiCA,EAAiCC,oCAAoCA,GAAqC,IAAIiE,EAA4B,WAAW,SAASA,EAA4BpnQ,GAAG,GAAGuxH,EAAgB13H,KAAKutQ,IAA6B,IAAKvE,EAAiB7iQ,GAAG,MAAM,IAAI+D,UAAU,sFAAsF,IAAG,IAAK++P,EAAuB9iQ,GAAG,MAAM,IAAI+D,UAAU,+EAA+ElK,KAAKivQ,qBAAqB9oQ,EAAEA,EAAEs8L,QAAQziM,KAAK,IAAI07F,EAAEv1F,EAAEo+L,OAAO,GAAG,aAAa7oG,GAAE,IAAK4tK,EAAoCnjQ,KAAI,IAAKA,EAAEwlQ,cAA99J,SAA6CxlQ,GAAGslQ,EAAQ,yCAAyCtlQ,EAAEskQ,cAAc,IAAI5kQ,SAAQ,SAAS61F,EAAEsI,GAAG79F,EAAEuoQ,sBAAsBhzK,EAAEv1F,EAAEwoQ,qBAAqB3qK,CAAC,IAAG79F,EAAEyoQ,mBAAmB,SAAS,CAA8wJwC,CAAoCpxQ,MAAMixQ,EAA8CjxQ,MAAM+wQ,EAAqC/wQ,WAAW,GAAG,aAAa07F,EAAEs1K,EAA8ChxQ,KAAKmG,EAAE08P,cAAc7iQ,KAAKyqQ,cAAchnO,OAAM,WAAW,IAAGstO,EAAqC/wQ,WAAW,GAAG,WAAW07F,EAAEu1K,EAA8CjxQ,MAA7/L,SAAwDmG,GAAGA,EAAE69P,eAAen+P,QAAQC,aAAQ,GAAQK,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,EAAOz9P,EAAEkpQ,oBAAoB,UAAU,CAAg0LgC,CAA+CrxQ,UAAU,CAAC,IAAIgkG,EAAE79F,EAAE08P,aAAamO,EAA8ChxQ,KAAKgkG,GAAGhkG,KAAKyqQ,cAAchnO,OAAM,WAAW,IAA52M,SAAwDt9B,EAAEu1F,GAAGv1F,EAAE69P,eAAen+P,QAAQE,OAAO21F,GAAGv1F,EAAEw9P,4BAAuB,EAAOx9P,EAAEy9P,2BAAsB,EAAOz9P,EAAEkpQ,oBAAoB,UAAU,CAAgrMiC,CAA+CtxQ,KAAKgkG,GAAGhkG,KAAKgkQ,eAAevgO,OAAM,WAAW,GAAE,CAAC,CAAC,OAAOs9N,EAAawM,EAA4B,CAAC,CAAC9sQ,IAAI,QAAQP,MAAM,SAAeiG,GAAG,OAAM,IAAK4oQ,EAA8B/uQ,MAAM6F,QAAQE,OAAO+qQ,EAAiC,eAAU,IAAS9wQ,KAAKivQ,qBAAqBppQ,QAAQE,OAAO2pQ,EAA2B,UAA35a,SAA0CvpQ,EAAEu1F,GAAG,OAAOwtK,EAAoB/iQ,EAAE8oQ,qBAAqBvzK,EAAE,CAAk0a61K,CAAiCvxQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,QAAQP,MAAM,WAAiB,IAAG,IAAK6uQ,EAA8B/uQ,MAAM,OAAO6F,QAAQE,OAAO+qQ,EAAiC,UAAU,IAAI3qQ,EAAEnG,KAAKivQ,qBAAqB,YAAO,IAAS9oQ,EAAEN,QAAQE,OAAO2pQ,EAA2B,WAAU,IAAKpG,EAAoCnjQ,GAAGN,QAAQE,OAAO,IAAImE,UAAU,2CAA2C8kQ,EAAiChvQ,KAAK,GAAG,CAACS,IAAI,cAAcP,MAAM,WAAuB,IAAG,IAAK6uQ,EAA8B/uQ,MAAM,MAAM8wQ,EAAiC,oBAAe,IAAS9wQ,KAAKivQ,sBAAsB7F,EAAmCppQ,KAAK,GAAG,CAACS,IAAI,QAAQP,MAAM,SAAeiG,GAAG,OAAM,IAAK4oQ,EAA8B/uQ,MAAM6F,QAAQE,OAAO+qQ,EAAiC,eAAU,IAAS9wQ,KAAKivQ,qBAAqBppQ,QAAQE,OAAO2pQ,EAA2B,aAAarG,EAAiCrpQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI,SAAS6G,IAAI,WAAe,OAAM,IAAKynQ,EAA8B/uQ,MAAM6F,QAAQE,OAAO+qQ,EAAiC,WAAW9wQ,KAAKgkQ,cAAc,GAAG,CAACvjQ,IAAI,cAAc6G,IAAI,WAAe,IAAG,IAAKynQ,EAA8B/uQ,MAAM,MAAM8wQ,EAAiC,eAAe,QAAG,IAAS9wQ,KAAKivQ,qBAAqB,MAAMS,EAA2B,eAAe,OAAl1ah0K,EAAm4a17F,KAA/3aivQ,qBAAsC,aAAjBjrK,EAAEtI,EAAE6oG,SAA4B,aAAavgG,EAAE,KAAK,WAAWA,EAAE,EAAEmsK,EAA8Cz0K,EAAEgxK,2BAAtM,IAA0DhxK,EAAyBsI,CAA+2a,GAAG,CAACvjG,IAAI,QAAQ6G,IAAI,WAAe,OAAM,IAAKynQ,EAA8B/uQ,MAAM6F,QAAQE,OAAO+qQ,EAAiC,UAAU9wQ,KAAKyqQ,aAAa,KAAK8C,CAA2B,CAAp8F,GAAw8F2D,EAAgC,WAAW,SAASA,IAAkC,MAAMx5I,EAAgB13H,KAAKkxQ,GAAiC,IAAIhnQ,UAAU,mEAAmE,CAAC,OAAO62P,EAAamQ,EAAgC,CAAC,CAACzwQ,IAAI,QAAQP,MAAM,SAAeiG,GAAG,IAAG,IAA7xZ,SAA2CA,GAAG,QAAQi7P,EAAaj7P,MAAM/E,OAAOM,UAAUgH,eAAeC,KAAKxC,EAAE,4BAA4B,CAAspZqrQ,CAAkCxxQ,MAAM,MAAM,IAAIkK,UAAU,yGAAyG,aAAalK,KAAK4vQ,0BAA0BrrE,QAAQssE,EAAqC7wQ,KAAKmG,EAAE,GAAG,CAAC1F,IAAI8tQ,EAAWruQ,MAAM,SAAeiG,GAAG,OAAOnG,KAAKkwQ,gBAAgB/pQ,EAAE,GAAG,CAAC1F,IAAI4tQ,EAAWnuQ,MAAM,WAAiBmiQ,EAAWriQ,KAAK,KAAKkxQ,CAA+B,CAAltB,EAEhioB,EAAE,CAAC,eAAe,GAAG,wBAAwB,GAAG,aAAa,GAAG,gBAAgB,GAAG,MAAQ,KAAK,GAAG,CAAC,SAASlV,EAAQ/3P,EAAOC,IAC5H,SAAWmuB,GACsO,IAAIoqO,EAAeT,EAAQ,UAAUS,eAAegV,EAASzV,EAAQ,YAAY0V,EAAG1V,EAAQ,MAAM/3P,EAAOC,QAAQmuB,EAAQ0xK,IAAI4tE,UAAU,WAAW,EAAnY,SAAgBxrQ,GAAG,IAAIA,EAAE,CAAC,IAAIu1F,EAAE+1K,IAAWvsQ,EAAEw2F,EAAE,GAAGsI,EAAE9+F,EAAE0sQ,cAAcvwQ,EAAE6D,EAAE2sQ,gBAAgBjvQ,GAAGA,EAAE8uQ,EAAGI,aAAa9tK,EAAE,SAASh/F,MAAM,MAAM3D,EAAE,GAAG2C,MAAM,kBAAkB,GAAG,MAAM,IAAIy4P,EAAe,CAAC1tP,QAAQnM,EAAE85P,mBAAmBhhK,EAAE,GAAGq2K,eAAe,CAAC,CAE/O,GAAEppQ,KAAK3I,KAAKg8P,EAAQ,YAErB,EAAE,CAAC,SAAW,EAAE,OAAS,EAAE,SAAW,GAAG,GAAK,IAAI,GAAG,CAAC,SAASA,EAAQ/3P,EAAOC,GAC9ED,EAAOC,QAAQ,WAAW,IAAIw3F,EAAE35F,MAAMiwQ,kBAAkBjwQ,MAAMiwQ,kBAAkB,SAASt2K,EAAEv1F,GAAG,OAAOA,CAAC,EAAE,IAAIA,EAAE,IAAIpE,MAAMA,MAAMw2H,kBAAkBpyH,EAAE4b,UAAUkwP,QAAQ,IAAIz2K,EAAEr1F,EAAExF,MAAM,OAAOoB,MAAMiwQ,kBAAkBt2K,EAAEF,CAAC,CAEpN,EAAE,CAAC,GAAG,GAAG,CAAC,SAASwgK,EAAQ/3P,EAAOC,IAClC,SAAWmuB,GAC4uC,SAASohJ,IAAO,IAAIttK,EAAE,IAAIA,EAAEjC,EAAQguQ,QAAQzrM,KAAK,CAAC,MAAMtgE,GAAG,CAAC,OAAOA,QAAG,IAAoBksB,GAAS,QAAQA,IAAUlsB,EAAEksB,EAAQ0xK,IAAIvlG,OAAOr4F,CAAC,EAAmEjC,EAAQD,EAAOC,QAAQ83P,EAAQ,YAAmB/iO,IAA7d,WAAe,MAAM,iBAAiByxE,SAASA,QAAQzxE,KAAKurF,SAAS9iH,UAAU6E,MAAMoC,KAAK+hG,QAAQzxE,IAAIyxE,QAAQ3oF,UAAU,EAA6W7d,EAAQiuQ,WAAlyB,SAAoBhsQ,GAAG,IAAI6B,EAAEhI,KAAKoyQ,UAAU,GAAGjsQ,EAAE,IAAI6B,EAAE,KAAK,IAAIhI,KAAKg3G,WAAWhvG,EAAE,MAAM,KAAK7B,EAAE,IAAI6B,EAAE,MAAM,KAAK,IAAI9D,EAAQmuQ,SAASryQ,KAAKk0F,MAAMlsF,EAAE,CAAC,IAAIhL,EAAE,UAAUgD,KAAKsyQ,MAAMnsQ,EAAE+b,OAAO,EAAE,EAAEllB,EAAE,kBAAkB,IAAIgnG,EAAE,EAAEtI,EAAE,EAAEv1F,EAAE,GAAG+H,QAAQ,eAAc,SAAS/H,GAAG,OAAOA,IAAI69F,IAAI,OAAO79F,IAAIu1F,EAAEsI,GAAG,IAAG79F,EAAE+b,OAAOw5E,EAAE,EAAE1+F,EAAE,CAAC,EAAogBkH,EAAQquQ,KAAlZ,SAAcpsQ,GAAG,IAAI,MAAMA,EAAEjC,EAAQguQ,QAAQM,WAAW,SAAStuQ,EAAQguQ,QAAQzrM,MAAMtgE,CAAC,CAAC,MAAMA,GAAG,CAAC,EAAyTjC,EAAQuvK,KAAKA,EAAKvvK,EAAQkuQ,UAAzkD,WAAqB,QAAQ,oBAAoBjzP,SAASA,OAAOkT,SAAS,aAAalT,OAAOkT,QAAQ3lB,QAAQ,oBAAoB0lB,YAAYA,UAAUN,YAAYM,UAAUN,UAAUxsB,cAActB,MAAM,4BAA4B,oBAAoBuoH,UAAUA,SAASilC,iBAAiBjlC,SAASilC,gBAAgBihH,OAAOlmJ,SAASilC,gBAAgBihH,MAAMC,kBAAkB,oBAAoBvzP,QAAQA,OAAOurF,UAAUvrF,OAAOurF,QAAQioK,SAASxzP,OAAOurF,QAAQkoK,WAAWzzP,OAAOurF,QAAQ4G,QAAQ,oBAAoBl/E,WAAWA,UAAUN,WAAWM,UAAUN,UAAUxsB,cAActB,MAAM,mBAAmBd,SAASwnF,OAAOmoL,GAAG,KAAK,IAAI,oBAAoBzgP,WAAWA,UAAUN,WAAWM,UAAUN,UAAUxsB,cAActB,MAAM,sBAAsB,EAAy3BE,EAAQguQ,QAAQ,oBAAoBY,aAAQ,IAASA,OAAOZ,QAAQY,OAAOZ,QAAQt8P,MAA7S,WAAwB,IAAI,OAAOuJ,OAAOi4O,YAAY,CAAC,MAAMjxP,GAAG,CAAC,CAAkP4sQ,GAAe7uQ,EAAQ26N,OAAO,CAAC,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,UAAU,WAAW36N,EAAQ8uQ,WAAWlwQ,EAAE,SAASqD,GAAG,IAAI,OAAOnE,KAAKC,UAAUkE,EAAE,CAAC,MAAMA,GAAG,MAAM,+BAA+BA,EAAE4I,OAAO,CAAC,EAAE7K,EAAQ+uQ,OAAOx/F,IAEplF,GAAE9qK,KAAK3I,KAAKg8P,EAAQ,YAErB,EAAE,CAAC,UAAU,GAAG,SAAW,IAAI,GAAG,CAAC,SAASA,EAAQ/3P,EAAOC,GAC2E,SAASgvQ,EAAY/sQ,GAAG,SAASsgE,IAAQ,GAAGA,EAAM0sM,QAAQ,CAAC,IAAIhtQ,EAAEsgE,EAAMu9B,GAAG,IAAIh0E,KAAK9qB,EAAE8+F,GAAGtI,GAAGsI,GAAG79F,EAAE+tF,KAAKhvF,EAAEiB,EAAE2yF,KAAK4C,EAAEv1F,EAAE4yF,KAAKiL,EAAEtI,EAAEsI,EAAE,IAAI,IAAIh8F,EAAE,IAAI2C,MAAMoX,UAAUxgB,QAAQqB,EAAE,EAAEA,EAAEoF,EAAEzG,OAAOqB,IAAIoF,EAAEpF,GAAGmf,UAAUnf,GAAGoF,EAAE,GAAG9D,EAAQiiK,OAAOn+J,EAAE,IAAI,iBAAiBA,EAAE,IAAIA,EAAE8xG,QAAQ,MAAM,IAAIte,EAAE,EAAExzF,EAAE,GAAGA,EAAE,GAAGkG,QAAQ,iBAAgB,SAASwtF,EAAEsI,GAAG,GAAG,OAAOtI,EAAE,OAAOA,EAAEF,IAAI,IAAIt2F,EAAEhB,EAAQ8uQ,WAAWhvK,GAAG,GAAG,mBAAmB9+F,EAAE,CAAC,IAAItC,EAAEoF,EAAEwzF,GAAGE,EAAEx2F,EAAEyD,KAAKxC,EAAEvD,GAAGoF,EAAEka,OAAOs5E,EAAE,GAAGA,GAAG,CAAC,OAAOE,CAAC,IAAGx3F,EAAQiuQ,WAAWxpQ,KAAKxC,EAAE6B,IAAIy+D,EAAMxtC,KAAK/0B,EAAQ+0B,KAAKyxE,QAAQzxE,IAAI9X,KAAKupF,UAAUnkG,MAAMJ,EAAE6B,EAAE,CAAC,CAAC,IAAI0zF,EAAE,OAAOj1B,EAAMuwC,UAAU7wG,EAAEsgE,EAAM0sM,QAAQjvQ,EAAQivQ,QAAQhtQ,GAAGsgE,EAAM2rM,UAAUluQ,EAAQkuQ,YAAY3rM,EAAM6rM,MAAlxB,SAAqBnsQ,GAAG,IAAIu1F,EAAEsI,EAAE,EAAE,IAAItI,KAAKv1F,EAAE69F,GAAGA,GAAG,GAAGA,EAAE79F,EAAE9G,WAAWq8F,GAAGsI,GAAG,EAAE,OAAO9/F,EAAQ26N,OAAOl6N,KAAKi/E,IAAIogB,GAAG9/F,EAAQ26N,OAAOt9N,OAAO,CAAmpB6xQ,CAAYjtQ,GAAGsgE,EAAM1lD,QAAQA,EAAQ,mBAAmB7c,EAAQ+K,MAAM/K,EAAQ+K,KAAKw3D,GAAOviE,EAAQw6N,UAAUn7N,KAAKkjE,GAAOA,CAAK,CAAC,SAAS1lD,IAAU,IAAI5a,EAAEjC,EAAQw6N,UAAU50N,QAAQ9J,MAAM,OAAO,IAAImG,IAAIjC,EAAQw6N,UAAUx8M,OAAO/b,EAAE,IAAG,EAAG,EAAgtBjC,EAAQD,EAAOC,QAAQgvQ,EAAYzsM,MAAMysM,EAAYtwO,QAAQswO,GAAoB/sG,OAAnJ,SAAgBhgK,GAAG,OAAOA,aAAapE,MAAMoE,EAAExF,OAAOwF,EAAE4I,QAAQ5I,CAAC,EAAgGjC,EAAQmvQ,QAA5a,WAAmBnvQ,EAAQ+uQ,OAAO,GAAG,EAAuZ/uQ,EAAQ+uQ,OAA90B,SAAgB9sQ,GAAGjC,EAAQquQ,KAAKpsQ,GAAGjC,EAAQi0M,MAAM,GAAGj0M,EAAQovQ,MAAM,GAAG,IAAI53K,EAAEsI,GAAG,iBAAiB79F,EAAEA,EAAE,IAAInB,MAAM,UAAUE,EAAE8+F,EAAEziG,OAAO,IAAIm6F,EAAE,EAAEA,EAAEx2F,EAAEw2F,IAAIsI,EAAEtI,KAAK,OAAOv1F,EAAE69F,EAAEtI,GAAGxtF,QAAQ,MAAM,QAAQ,GAAGhK,EAAQovQ,MAAM/vQ,KAAK,IAAImnF,OAAO,IAAIvkF,EAAEmhF,OAAO,GAAG,MAAMpjF,EAAQi0M,MAAM50M,KAAK,IAAImnF,OAAO,IAAIvkF,EAAE,OAAO,IAAIu1F,EAAE,EAAEA,EAAEx3F,EAAQw6N,UAAUn9N,OAAOm6F,IAAI,CAAC,IAAI1zF,EAAE9D,EAAQw6N,UAAUhjI,GAAG1zF,EAAEmrQ,QAAQjvQ,EAAQivQ,QAAQnrQ,EAAEgvG,UAAU,CAAC,EAAmd9yG,EAAQivQ,QAApb,SAAiBhtQ,GAAG,GAAG,MAAMA,EAAEA,EAAE5E,OAAO,GAAG,OAAM,EAAG,IAAIm6F,EAAEsI,EAAE,IAAItI,EAAE,EAAEsI,EAAE9/F,EAAQovQ,MAAM/xQ,OAAOm6F,EAAEsI,EAAEtI,IAAI,GAAGx3F,EAAQovQ,MAAM53K,GAAGzxF,KAAK9D,GAAG,OAAM,EAAG,IAAIu1F,EAAE,EAAEsI,EAAE9/F,EAAQi0M,MAAM52M,OAAOm6F,EAAEsI,EAAEtI,IAAI,GAAGx3F,EAAQi0M,MAAMz8G,GAAGzxF,KAAK9D,GAAG,OAAM,EAAG,OAAM,CAAE,EAAwOjC,EAAQmuQ,SAASrW,EAAQ,MAAM93P,EAAQw6N,UAAU,GAAGx6N,EAAQi0M,MAAM,GAAGj0M,EAAQovQ,MAAM,GAAGpvQ,EAAQ8uQ,WAAW,CAAC,CAE99D,EAAE,CAAC,GAAK,KAAK,GAAG,CAAC,SAAShX,EAAQ/3P,EAAOC,GACzC,SAAS+I,EAAM9G,GAAG,MAAMA,EAAEjE,OAAOiE,IAAI5E,OAAO,KAAK,CAAC,IAAIm6F,EAAE,wHAAwHlrE,KAAKrqB,GAAG,GAAGu1F,EAAE,CAAC,IAAIF,EAAE+iF,WAAW7iF,EAAE,IAAI,QAAQA,EAAE,IAAI,MAAMp2F,eAAe,IAAI,QAAQ,IAAI,OAAO,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,OAAOk2F,EAAEG,EAAE,IAAI,OAAO,IAAI,MAAM,IAAI,IAAI,OAAOH,EAAEuD,EAAE,IAAI,QAAQ,IAAI,OAAO,IAAI,MAAM,IAAI,KAAK,IAAI,IAAI,OAAOvD,EAAE64C,EAAE,IAAI,UAAU,IAAI,SAAS,IAAI,OAAO,IAAI,MAAM,IAAI,IAAI,OAAO74C,EAAEvzF,EAAE,IAAI,UAAU,IAAI,SAAS,IAAI,OAAO,IAAI,MAAM,IAAI,IAAI,OAAOuzF,EAAEt2F,EAAE,IAAI,eAAe,IAAI,cAAc,IAAI,QAAQ,IAAI,OAAO,IAAI,KAAK,OAAOs2F,EAAE,QAAQ,OAAO,CAAC,CAAC,CAAC,SAAS+3K,EAASptQ,GAAG,OAAOA,GAAG44F,EAAEp6F,KAAKm/E,MAAM39E,EAAE44F,GAAG,IAAI54F,GAAGkuI,EAAE1vI,KAAKm/E,MAAM39E,EAAEkuI,GAAG,IAAIluI,GAAG8B,EAAEtD,KAAKm/E,MAAM39E,EAAE8B,GAAG,IAAI9B,GAAGjB,EAAEP,KAAKm/E,MAAM39E,EAAEjB,GAAG,IAAIiB,EAAE,IAAI,CAAC,SAASqtQ,EAAQrtQ,GAAG,OAAOstQ,EAAOttQ,EAAE44F,EAAE,QAAQ00K,EAAOttQ,EAAEkuI,EAAE,SAASo/H,EAAOttQ,EAAE8B,EAAE,WAAWwrQ,EAAOttQ,EAAEjB,EAAE,WAAWiB,EAAE,KAAK,CAAC,SAASstQ,EAAOvuQ,EAAEiB,EAAEu1F,GAAG,KAAKx2F,EAAEiB,GAAG,OAAOjB,EAAE,IAAIiB,EAAExB,KAAKu/E,MAAMh/E,EAAEiB,GAAG,IAAIu1F,EAAE/2F,KAAKq/E,KAAK9+E,EAAEiB,GAAG,IAAIu1F,EAAE,GAAG,CAAC,IAAIx2F,EAAE,IAAI+C,EAAE,GAAG/C,EAAEmvI,EAAE,GAAGpsI,EAAE82F,EAAE,GAAGs1C,EAAE14C,EAAE,OAAOoD,EAAE96F,EAAOC,QAAQ,SAASgB,EAAEiB,GAAGA,EAAEA,GAAG,CAAC,EAAE,IAAIu1F,SAASx2F,EAAE,GAAG,WAAWw2F,GAAGx2F,EAAE3D,OAAO,EAAE,OAAO0L,EAAM/H,GAAG,GAAG,WAAWw2F,IAAG,IAAK33F,MAAMmB,GAAG,OAAOiB,EAAEutQ,KAAKF,EAAQtuQ,GAAGquQ,EAASruQ,GAAG,MAAM,IAAInD,MAAM,wDAAwDC,KAAKC,UAAUiD,GAAG,CAEpwC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAvEoW,CAuEhW,+BCJf,SAASkM,EAAgB+B,GACrB,OAASA,GAAK,IAAQA,GAAK,IACtBA,GAAK,IAAQA,GAAK,KACb,KAANA,GACM,KAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,MAC9B,CA7EA/R,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IAItDgE,EAAQyvQ,KAAO,oBACfzvQ,EAAQ0vQ,EAAI,UAEZ1vQ,EAAQ2vQ,gBAAkB,gDAC1B3vQ,EAAQ4vQ,UAAY,IAAM5vQ,EAAQ2vQ,gBAAkB,cAIpD3vQ,EAAQ6vQ,QAAU,IAAIrpL,OAAO,KAAOxmF,EAAQyvQ,KAAO,KAAM,KACzDzvQ,EAAQ8vQ,KAAO,IAAItpL,OAAO,KAAOxmF,EAAQ0vQ,EAAI,MAAO,KACpD1vQ,EAAQ+vQ,mBAAqB,IAAIvpL,OAAO,KAAOxmF,EAAQ2vQ,gBAAkB,KAAM,KAC/E3vQ,EAAQgwQ,aAAe,IAAIxpL,OAAO,KAAOxmF,EAAQ4vQ,UAAY,KAAM,KACnE5vQ,EAAQqN,QAAU,IAAIm5E,OAAO,KAAOxmF,EAAQ2vQ,gBAAkB,KAAO3vQ,EAAQ4vQ,UAAY,MAAO,KAChG5vQ,EAAQiwQ,WAAa,IAAIzpL,OAAO,KAAOxmF,EAAQ4vQ,UAAY,MAAO,KASlE5vQ,EAAQoN,OAAS,CALL,GAFH,GACA,GAFC,GAsBVpN,EAAQiN,OANR,SAAgBgC,GACZ,OAAQA,GAdA,IAccA,GAAK,OAhBtB,KAiBDA,GAhBC,KAgBWA,GAlBV,IAkBsBA,GACvBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,OAC9B,EAYAjP,EAAQ+M,IAHR,SAAakC,GACT,OA5BQ,KA4BDA,GA9BF,KA8BiBA,GA7BjB,KA6B6BA,GA/B5B,IA+BwCA,CAClD,EA4BAjP,EAAQkN,gBAAkBA,EAiB1BlN,EAAQmN,WATR,SAAoB8B,GAChB,OAAO/B,EAAgB+B,IAClBA,GAAK,IAAQA,GAAK,IACb,KAANA,GACM,KAANA,GACM,MAANA,GACCA,GAAK,KAAUA,GAAK,KACpBA,GAAK,MAAUA,GAAK,IAC7B,8BCKA,SAAS/B,EAAgB+B,GACrB,OAASA,GAAK,IAAQA,GAAK,IACtBA,GAAK,IAAQA,GAAK,KACb,KAANA,GACM,KAANA,GACM,OAANA,GACM,OAANA,GACCA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,MAC9B,CArHA/R,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IAItDgE,EAAQyvQ,KAAO,cACfzvQ,EAAQkwQ,gBAAkB,oBAC1BlwQ,EAAQ0vQ,EAAI,UAEZ1vQ,EAAQ2vQ,gBAAkB,gDAC1B3vQ,EAAQ4vQ,UAAY,IAAM5vQ,EAAQ2vQ,gBAAkB,cAIpD3vQ,EAAQ6vQ,QAAU,IAAIrpL,OAAO,KAAOxmF,EAAQyvQ,KAAO,KAAM,KACzDzvQ,EAAQmwQ,mBAAqB,IAAI3pL,OAAO,KAAOxmF,EAAQkwQ,gBAAkB,KAAM,KAC/ElwQ,EAAQ8vQ,KAAO,IAAItpL,OAAO,KAAOxmF,EAAQ0vQ,EAAI,MAAO,KACpD1vQ,EAAQ+vQ,mBAAqB,IAAIvpL,OAAO,KAAOxmF,EAAQ2vQ,gBAAkB,KAAM,KAC/E3vQ,EAAQgwQ,aAAe,IAAIxpL,OAAO,KAAOxmF,EAAQ4vQ,UAAY,KAAM,KACnE5vQ,EAAQqN,QAAU,IAAIm5E,OAAO,KAAOxmF,EAAQ2vQ,gBAAkB,KAAO3vQ,EAAQ4vQ,UAAY,MAAO,KAChG5vQ,EAAQiwQ,WAAa,IAAIzpL,OAAO,KAAOxmF,EAAQ4vQ,UAAY,MAAO,KASlE5vQ,EAAQoN,OAAS,CALL,GAFH,GACA,GAFC,GAqBVpN,EAAQiN,OALR,SAAgBgC,GACZ,OAAQA,GAAK,GAAUA,GAAK,OACvBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,OAC9B,EAiBAjP,EAAQowQ,iBARR,SAA0BnhQ,GACtB,OAAQA,GAAK,GAAOA,GAAK,GACf,KAANA,GACM,KAANA,GACCA,GAAK,IAAOA,GAAK,IACjBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,GAC3B,EAuBAjP,EAAQqwQ,uBAVR,SAAgCphQ,GAC5B,OAAc,IAANA,GACG,KAANA,GACM,KAANA,GACAA,EAAI,IAAQA,EAAI,KACV,MAANA,GACAA,EAAI,KAAQA,GAAK,OACjBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,OAC9B,EAYAjP,EAAQ+M,IAHR,SAAakC,GACT,OAjEQ,KAiEDA,GAnEF,KAmEiBA,GAlEjB,KAkE6BA,GApE5B,IAoEwCA,CAClD,EA6BAjP,EAAQkN,gBAAkBA,EAiB1BlN,EAAQmN,WATR,SAAoB8B,GAChB,OAAO/B,EAAgB+B,IAClBA,GAAK,IAAQA,GAAK,IACb,KAANA,GACM,KAANA,GACM,MAANA,GACCA,GAAK,KAAUA,GAAK,KACpBA,GAAK,MAAUA,GAAK,IAC7B,8BCjHA,SAAS1B,EAAkB0B,GACvB,OAASA,GAAK,IAAQA,GAAK,IACjB,KAANA,GACCA,GAAK,IAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAQA,GAAK,KAClBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,KACpBA,GAAK,KAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,MAAUA,GAAK,MACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAUA,GAAK,OACpBA,GAAK,OAAWA,GAAK,MAC9B,CArCA/R,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IAKtDgE,EAAQswQ,mBAAqB,gDAC7BtwQ,EAAQuwQ,aAAe,IAAMvwQ,EAAQswQ,mBAAqB,cAI1DtwQ,EAAQwwQ,sBAAwB,IAAIhqL,OAAO,KAAOxmF,EAAQswQ,mBAAqB,KAAM,KACrFtwQ,EAAQywQ,gBAAkB,IAAIjqL,OAAO,KAAOxmF,EAAQuwQ,aAAe,KAAM,KACzEvwQ,EAAQyN,WAAa,IAAI+4E,OAAO,KAAOxmF,EAAQswQ,mBAAqB,KAAOtwQ,EAAQuwQ,aAAe,MAAO,KA0BzGvwQ,EAAQuN,kBAAoBA,EAiB5BvN,EAAQwN,aATR,SAAsByB,GAClB,OAAO1B,EAAkB0B,IACd,KAANA,GACS,KAANA,GACCA,GAAK,IAAQA,GAAK,IACb,MAANA,GACCA,GAAK,KAAUA,GAAK,KACpBA,GAAK,MAAUA,GAAK,IACjC,0BC1DAlP,EAAOC,QAAU,SAASutG,EAAW7nF,GACnC,GAAsB,iBAAXA,GAAuB7lB,MAAM6lB,GACtC,MAAM,IAAI7nB,MAAM,sBAGlB,GAAsB,iBAAX6nB,IAAwBmd,SAASnd,GAC1C,MAAM,IAAI7nB,MAAM,2BAGlB,OAAe,OAAX6nB,GAAqC,iBAAXA,EACrB5nB,KAAKC,UAAU2nB,GAGpBA,EAAOm8E,kBAAkBye,SACpB/S,EAAU7nF,EAAOm8E,UAGtBp7F,MAAMC,QAAQgf,GAMT,IALQA,EAAO40B,QAAO,CAACwlD,EAAG0N,EAAIC,IAG5B,GAAG3N,IAFW,IAAP2N,EAAW,GAAK,MAERF,OADDtxG,IAAPuxG,GAAkC,iBAAPA,EAAkB,KAAOA,MAEjE,OAYE,IARQtwG,OAAOD,KAAKyoB,GAAQ2F,OAAOivB,QAAO,CAACwlD,EAAG0N,SAChCvxG,IAAfypB,EAAO8nF,IACe,iBAAf9nF,EAAO8nF,GACT1N,EAGF,GAAGA,IADiB,IAAbA,EAAEziG,OAAe,GAAK,MACdkwG,EAAUC,MAAOD,EAAU7nF,EAAO8nF,OACvD,MAEL,sCCtCA,IAAI5pG,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGovG,EAAsBnyG,MAAQA,KAAKmyG,qBAAwB/wG,OAAO2G,OAAS,SAAUC,EAAGk2F,GACxF98F,OAAO+C,eAAe6D,EAAG,UAAW,CAAEX,YAAY,EAAMnH,MAAOg+F,GAClE,EAAI,SAASl2F,EAAGk2F,GACbl2F,EAAW,QAAIk2F,CACnB,GACIkU,EAAgBpyG,MAAQA,KAAKoyG,cAAiB,SAAUjP,GACxD,GAAIA,GAAOA,EAAI96F,WAAY,OAAO86F,EAClC,IAAIt/F,EAAS,CAAC,EACd,GAAW,MAAPs/F,EAAa,IAAK,IAAIpgG,KAAKogG,EAAe,YAANpgG,GAAmB3B,OAAOM,UAAUgH,eAAeC,KAAKw6F,EAAKpgG,IAAI+E,EAAgBjE,EAAQs/F,EAAKpgG,GAEtI,OADAovG,EAAmBtuG,EAAQs/F,GACpBt/F,CACX,EACAzC,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQnE,YAAS,EACjB,IAAIy6I,EAAiBpoC,EAAa,EAAQ,QACtCsR,EAAc,EAAQ,OACtB+2B,EAAW,IAAIl8H,IAAI,CACnB,QACA,SACA,WACA,SACA,SACA,WACA,aAEAm8H,EAAO,IAAIn8H,IAAI,CAAC,MAChBo8H,EAAmB,IAAIp8H,IAAI,CAAC,QAAS,UACrCq8H,EAAU,IAAIr8H,IAAI,CAAC,KAAM,OACzBs8H,EAAU,IAAIt8H,IAAI,CAAC,KAAM,OACzBu8H,EAAmB,IAAIl6H,IAAI,CAC3B,CAAC,KAAM,IAAIrC,IAAI,CAAC,KAAM,KAAM,QAC5B,CAAC,KAAM,IAAIA,IAAI,CAAC,QAChB,CAAC,KAAM,IAAIA,IAAI,CAAC,QAAS,KAAM,QAC/B,CAAC,OAAQ,IAAIA,IAAI,CAAC,OAAQ,OAAQ,YAClC,CAAC,KAAM,IAAIA,IAAI,CAAC,QAChB,CAAC,IAAKm8H,GACN,CAAC,KAAMA,GACP,CAAC,KAAMA,GACP,CAAC,KAAMA,GACP,CAAC,KAAMA,GACP,CAAC,KAAMA,GACP,CAAC,KAAMA,GACP,CAAC,SAAUD,GACX,CAAC,QAASA,GACV,CAAC,SAAUA,GACX,CAAC,SAAUA,GACX,CAAC,WAAYA,GACb,CAAC,WAAYA,GACb,CAAC,SAAU,IAAIl8H,IAAI,CAAC,YACpB,CAAC,WAAY,IAAIA,IAAI,CAAC,WAAY,YAClC,CAAC,KAAMq8H,GACP,CAAC,KAAMA,GACP,CAAC,UAAWF,GACZ,CAAC,UAAWA,GACZ,CAAC,QAASA,GACV,CAAC,aAAcA,GACf,CAAC,UAAWA,GACZ,CAAC,MAAOA,GACR,CAAC,KAAMA,GACP,CAAC,WAAYA,GACb,CAAC,aAAcA,GACf,CAAC,SAAUA,GACX,CAAC,SAAUA,GACX,CAAC,OAAQA,GACT,CAAC,SAAUA,GACX,CAAC,KAAMA,GACP,CAAC,OAAQA,GACT,CAAC,MAAOA,GACR,CAAC,KAAMA,GACP,CAAC,MAAOA,GACR,CAAC,UAAWA,GACZ,CAAC,QAASA,GACV,CAAC,KAAMA,GACP,CAAC,KAAMG,GACP,CAAC,KAAMA,GACP,CAAC,QAASF,GACV,CAAC,QAASA,KAEVI,EAAe,IAAIx8H,IAAI,CACvB,OACA,OACA,WACA,KACA,MACA,UACA,QACA,QACA,KACA,MACA,QACA,UACA,SACA,OACA,OACA,QACA,SACA,QACA,QAEAy8H,EAAyB,IAAIz8H,IAAI,CAAC,OAAQ,QAC1C08H,EAA0B,IAAI18H,IAAI,CAClC,KACA,KACA,KACA,KACA,QACA,iBACA,gBACA,OACA,UAEA28H,EAAY,QACZn7I,EAAwB,WACxB,SAASA,EAAOo7I,EAAKr0I,GAEjB,IAAIhC,EAAImZ,EAAIW,EAAIw8H,EAAIC,OADJ,IAAZv0I,IAAsBA,EAAU,CAAC,GAErC9G,KAAK8G,QAAUA,EAEf9G,KAAKs7E,WAAa,EAElBt7E,KAAKs1G,SAAW,EAKhBt1G,KAAKs7I,aAAe,EACpBt7I,KAAKu7I,QAAU,GACfv7I,KAAKw7I,WAAa,GAClBx7I,KAAKy7I,YAAc,GACnBz7I,KAAK0zG,QAAU,KACf1zG,KAAKW,MAAQ,GACbX,KAAK27I,QAAU,GACf37I,KAAK47I,aAAe,EAEpB57I,KAAK67I,WAAa,EAElB77I,KAAKshB,OAAQ,EACbthB,KAAKm7I,IAAMA,QAAiCA,EAAM,CAAC,EACnDn7I,KAAK40Q,UAAY50Q,KAAK8G,QAAQyhD,QAC9BvoD,KAAK87I,kBAAqD,QAAhCh3I,EAAKgC,EAAQi1I,qBAAkC,IAAPj3I,EAAgBA,EAAK9E,KAAK40Q,SAC5F50Q,KAAKg8I,wBAC0C,QAA1C/9H,EAAKnX,EAAQk1I,+BAA4C,IAAP/9H,EAAgBA,EAAKje,KAAK40Q,SACjF50Q,KAAKi8I,UAAY,IAAkC,QAA5Br9H,EAAK9X,EAAQo1I,iBAA8B,IAAPt9H,EAAgBA,EAAK47H,EAAe53G,SAAS5iC,KAAK8G,QAAS9G,MACtHA,KAAK07I,eAAiB,EAAE17I,KAAK40Q,UACW,QAAvCv5H,GAAMD,EAAKp7I,KAAKm7I,KAAKhmC,oBAAiC,IAAPkmC,GAAyBA,EAAG1yI,KAAKyyI,EAAIp7I,KACzF,CAoWA,OAjWAD,EAAO2B,UAAUgqD,OAAS,SAAUlpD,EAAO8yG,GACvC,IAAIxwG,EAAImZ,EACJsB,EAAOvf,KAAKm8I,SAAS35I,EAAO8yG,GAChCt1G,KAAKs1G,SAAWA,EAAW,EACO,QAAjCr3F,GAAMnZ,EAAK9E,KAAKm7I,KAAKzvF,cAA2B,IAAPztC,GAAyBA,EAAGtV,KAAK7D,EAAIya,GAC/Evf,KAAKs7E,WAAag6B,CACtB,EAEAv1G,EAAO2B,UAAU06I,aAAe,SAAU75B,EAAIjN,GAC1C,IAAIxwG,EAAImZ,EACRje,KAAKs1G,SAAWA,EAAW,EACO,QAAjCr3F,GAAMnZ,EAAK9E,KAAKm7I,KAAKzvF,cAA2B,IAAPztC,GAAyBA,EAAGtV,KAAK7D,GAAI,EAAI4+G,EAAYnnG,eAAegmG,IAC9GviH,KAAKs7E,WAAag6B,CACtB,EAKAv1G,EAAO2B,UAAU46I,cAAgB,SAAUtyI,GACvC,OAAOhK,KAAK40Q,UAAY75H,EAAa5tI,IAAInD,EAC7C,EAEAjK,EAAO2B,UAAU66I,cAAgB,SAAU/5I,EAAO8yG,GAC9Ct1G,KAAKs1G,SAAWA,EAChB,IAAItrG,EAAOhK,KAAKm8I,SAAS35I,EAAO8yG,GAC5Bt1G,KAAK87I,oBACL9xI,EAAOA,EAAK1E,eAEhBtF,KAAKw8I,YAAYxyI,EACrB,EACAjK,EAAO2B,UAAU86I,YAAc,SAAUxyI,GACrC,IAAIlF,EAAImZ,EAAIW,EAAIw8H,EAChBp7I,KAAKs7I,aAAet7I,KAAKs7E,WACzBt7E,KAAKu7I,QAAUvxI,EACf,IAAIyyI,EAAez8I,KAAK40Q,UAAY95H,EAAiBxzI,IAAI0C,GACzD,GAAIyyI,EACA,KAAOz8I,KAAKW,MAAMY,OAAS,GAAKk7I,EAAatvI,IAAInN,KAAKW,MAAM,KAAK,CAC7D,IAAIk1C,EAAU71C,KAAKW,MAAM4J,QACa,QAArC0T,GAAMnZ,EAAK9E,KAAKm7I,KAAK7vF,kBAA+B,IAAPrtC,GAAyBA,EAAGtV,KAAK7D,EAAI+wC,GAAS,EAChG,CAEC71C,KAAKs8I,cAActyI,KACpBhK,KAAKW,MAAMm5G,QAAQ9vG,GACfhK,KAAK40Q,WACD55H,EAAuB7tI,IAAInD,GAC3BhK,KAAK07I,eAAe5hC,SAAQ,GAEvBmhC,EAAwB9tI,IAAInD,IACjChK,KAAK07I,eAAe5hC,SAAQ,KAIC,QAAxCshC,GAAMx8H,EAAK5e,KAAKm7I,KAAKoB,qBAAkC,IAAPnB,GAAyBA,EAAGzyI,KAAKiW,EAAI5U,GAClFhK,KAAKm7I,IAAI1vF,YACTzrD,KAAK0zG,QAAU,CAAC,EACxB,EACA3zG,EAAO2B,UAAUg7I,WAAa,SAAUC,GACpC,IAAI73I,EAAImZ,EACRje,KAAKs7E,WAAat7E,KAAKs7I,aACnBt7I,KAAK0zG,UACgC,QAApCz1F,GAAMnZ,EAAK9E,KAAKm7I,KAAK1vF,iBAA8B,IAAPxtC,GAAyBA,EAAGtV,KAAK7D,EAAI9E,KAAKu7I,QAASv7I,KAAK0zG,QAASipC,GAC9G38I,KAAK0zG,QAAU,MAEf1zG,KAAKm7I,IAAI7vF,YAActrD,KAAKs8I,cAAct8I,KAAKu7I,UAC/Cv7I,KAAKm7I,IAAI7vF,WAAWtrD,KAAKu7I,SAAS,GAEtCv7I,KAAKu7I,QAAU,EACnB,EAEAx7I,EAAO2B,UAAUk7I,aAAe,SAAUtnC,GACtCt1G,KAAKs1G,SAAWA,EAChBt1G,KAAK08I,YAAW,GAEhB18I,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAU4pD,WAAa,SAAU9oD,EAAO8yG,GAC3C,IAAIxwG,EAAImZ,EAAIW,EAAIw8H,EAAIC,EAAIwB,EAAIiB,EAAIC,EAChC/9I,KAAKs1G,SAAWA,EAChB,IAAItrG,EAAOhK,KAAKm8I,SAAS35I,EAAO8yG,GAShC,GARIt1G,KAAK87I,oBACL9xI,EAAOA,EAAK1E,eAEZtF,KAAK40Q,WACJ55H,EAAuB7tI,IAAInD,IACxBixI,EAAwB9tI,IAAInD,KAChChK,KAAK07I,eAAenxI,QAEnBvK,KAAKs8I,cAActyI,GAefhK,KAAK40Q,UAAqB,OAAT5qQ,IAEmB,QAAxCoxI,GAAMx8H,EAAK5e,KAAKm7I,KAAKoB,qBAAkC,IAAPnB,GAAyBA,EAAGzyI,KAAKiW,EAAI,MACjD,QAApCi+H,GAAMxB,EAAKr7I,KAAKm7I,KAAK1vF,iBAA8B,IAAPoxF,GAAyBA,EAAGl0I,KAAK0yI,EAAI,KAAM,CAAC,GAAG,GACtD,QAArC0C,GAAMD,EAAK99I,KAAKm7I,KAAK7vF,kBAA+B,IAAPyyF,GAAyBA,EAAGp1I,KAAKm1I,EAAI,MAAM,QAnB9D,CAC3B,IAAI9yC,EAAMhrG,KAAKW,MAAMmJ,QAAQE,GAC7B,IAAa,IAATghG,EACA,IAAK,IAAI7sF,EAAQ,EAAGA,GAAS6sF,EAAK7sF,IAAS,CACvC,IAAI03B,EAAU71C,KAAKW,MAAM4J,QAEa,QAArC0T,GAAMnZ,EAAK9E,KAAKm7I,KAAK7vF,kBAA+B,IAAPrtC,GAAyBA,EAAGtV,KAAK7D,EAAI+wC,EAAS13B,IAAU6sF,EAC1G,MAEKhrG,KAAK40Q,UAAqB,MAAT5qQ,IAEtBhK,KAAKw8I,YAAY,KACjBx8I,KAAK88I,iBAAgB,GAE7B,CAQA98I,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAUq7I,iBAAmB,SAAUznC,GAC1Ct1G,KAAKs1G,SAAWA,EACZt1G,KAAK8G,QAAQ8kD,sBAAwB5rD,KAAK07I,eAAe,IACzD17I,KAAK88I,iBAAgB,GAErB98I,KAAKs7E,WAAag6B,EAAW,GAI7Bt1G,KAAK48I,aAAatnC,EAE1B,EACAv1G,EAAO2B,UAAUo7I,gBAAkB,SAAUE,GACzC,IAAIl4I,EAAImZ,EACJjU,EAAOhK,KAAKu7I,QAChBv7I,KAAK08I,WAAWM,GAEZh9I,KAAKW,MAAM,KAAOqJ,IAEoB,QAArCiU,GAAMnZ,EAAK9E,KAAKm7I,KAAK7vF,kBAA+B,IAAPrtC,GAAyBA,EAAGtV,KAAK7D,EAAIkF,GAAOgzI,GAC1Fh9I,KAAKW,MAAM4J,QAEnB,EAEAxK,EAAO2B,UAAUu7I,aAAe,SAAUz6I,EAAO8yG,GAC7Ct1G,KAAKs7E,WAAa94E,EAClB,IAAIwH,EAAOhK,KAAKm8I,SAAS35I,EAAO8yG,GAChCt1G,KAAKw7I,WAAax7I,KAAKg8I,wBACjBhyI,EAAK1E,cACL0E,CACV,EAEAjK,EAAO2B,UAAUw7I,aAAe,SAAU16I,EAAO8yG,GAC7Ct1G,KAAKy7I,aAAez7I,KAAKm8I,SAAS35I,EAAO8yG,EAC7C,EAEAv1G,EAAO2B,UAAUy7I,eAAiB,SAAU56B,GACxCviH,KAAKy7I,cAAe,EAAI/3B,EAAYnnG,eAAegmG,EACvD,EAEAxiH,EAAO2B,UAAU07I,YAAc,SAAUC,EAAO/nC,GAC5C,IAAIxwG,EAAImZ,EACRje,KAAKs1G,SAAWA,EACuB,QAAtCr3F,GAAMnZ,EAAK9E,KAAKm7I,KAAKmC,mBAAgC,IAAPr/H,GAAyBA,EAAGtV,KAAK7D,EAAI9E,KAAKw7I,WAAYx7I,KAAKy7I,YAAa4B,IAAU7C,EAAe+C,UAAUC,OACpJ,IACAH,IAAU7C,EAAe+C,UAAUE,OAC/B,IACAJ,IAAU7C,EAAe+C,UAAUG,aAC/Bv9I,EACA,MACVH,KAAK0zG,UACJtyG,OAAOM,UAAUgH,eAAeC,KAAK3I,KAAK0zG,QAAS1zG,KAAKw7I,cACzDx7I,KAAK0zG,QAAQ1zG,KAAKw7I,YAAcx7I,KAAKy7I,aAEzCz7I,KAAKy7I,YAAc,EACvB,EACA17I,EAAO2B,UAAUi8I,mBAAqB,SAAUz9I,GAC5C,IAAIie,EAAQje,EAAMgmD,OAAOg1F,GACrBlxI,EAAOmU,EAAQ,EAAIje,EAAQA,EAAMonF,OAAO,EAAGnpE,GAI/C,OAHIne,KAAK87I,oBACL9xI,EAAOA,EAAK1E,eAET0E,CACX,EAEAjK,EAAO2B,UAAUk8I,cAAgB,SAAUp7I,EAAO8yG,GAC9Ct1G,KAAKs1G,SAAWA,EAChB,IAAIp1G,EAAQF,KAAKm8I,SAAS35I,EAAO8yG,GACjC,GAAIt1G,KAAKm7I,IAAItlC,wBAAyB,CAClC,IAAI7rG,EAAOhK,KAAK29I,mBAAmBz9I,GACnCF,KAAKm7I,IAAItlC,wBAAwB,IAAIn4E,OAAO1zB,GAAO,IAAI0zB,OAAOx9B,GAClE,CAEAF,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAUm0G,wBAA0B,SAAUrzG,EAAO8yG,GACxDt1G,KAAKs1G,SAAWA,EAChB,IAAIp1G,EAAQF,KAAKm8I,SAAS35I,EAAO8yG,GACjC,GAAIt1G,KAAKm7I,IAAItlC,wBAAyB,CAClC,IAAI7rG,EAAOhK,KAAK29I,mBAAmBz9I,GACnCF,KAAKm7I,IAAItlC,wBAAwB,IAAIn4E,OAAO1zB,GAAO,IAAI0zB,OAAOx9B,GAClE,CAEAF,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAU+zG,UAAY,SAAUjzG,EAAO8yG,EAAUt0G,GACpD,IAAI8D,EAAImZ,EAAIW,EAAIw8H,EAChBp7I,KAAKs1G,SAAWA,EACqB,QAApCr3F,GAAMnZ,EAAK9E,KAAKm7I,KAAK1lC,iBAA8B,IAAPx3F,GAAyBA,EAAGtV,KAAK7D,EAAI9E,KAAKm8I,SAAS35I,EAAO8yG,EAAWt0G,IAC1E,QAAvCo6I,GAAMx8H,EAAK5e,KAAKm7I,KAAKzlC,oBAAiC,IAAP0lC,GAAyBA,EAAGzyI,KAAKiW,GAEjF5e,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAUm8I,QAAU,SAAUr7I,EAAO8yG,EAAUt0G,GAClD,IAAI8D,EAAImZ,EAAIW,EAAIw8H,EAAIC,EAAIwB,EAAIiB,EAAIC,EAAIC,EAAIC,EACxCj+I,KAAKs1G,SAAWA,EAChB,IAAIp1G,EAAQF,KAAKm8I,SAAS35I,EAAO8yG,EAAWt0G,IACvChB,KAAK40Q,UAAY50Q,KAAK8G,QAAQo3I,gBACS,QAAvCjgI,GAAMnZ,EAAK9E,KAAKm7I,KAAKxlC,oBAAiC,IAAP13F,GAAyBA,EAAGtV,KAAK7D,GAC/C,QAAjCs2I,GAAMx8H,EAAK5e,KAAKm7I,KAAKzvF,cAA2B,IAAP0vF,GAAyBA,EAAGzyI,KAAKiW,EAAI1e,GACzC,QAArC28I,GAAMxB,EAAKr7I,KAAKm7I,KAAKvlC,kBAA+B,IAAPinC,GAAyBA,EAAGl0I,KAAK0yI,KAG1C,QAApC0C,GAAMD,EAAK99I,KAAKm7I,KAAK1lC,iBAA8B,IAAPsoC,GAAyBA,EAAGp1I,KAAKm1I,EAAI,UAAUpgH,OAAOx9B,EAAO,OAClE,QAAvC+9I,GAAMD,EAAKh+I,KAAKm7I,KAAKzlC,oBAAiC,IAAPuoC,GAAyBA,EAAGt1I,KAAKq1I,IAGrFh+I,KAAKs7E,WAAag6B,EAAW,CACjC,EAEAv1G,EAAO2B,UAAU8pD,MAAQ,WACrB,IAAI1mD,EAAImZ,EACR,GAAIje,KAAKm7I,IAAI7vF,WAAY,CAErBtrD,KAAKs1G,SAAWt1G,KAAKs7E,WACrB,IAAK,IAAIn9D,EAAQ,EAAGA,EAAQne,KAAKW,MAAMY,OAAQ4c,IAC3Cne,KAAKm7I,IAAI7vF,WAAWtrD,KAAKW,MAAMwd,IAAQ,EAE/C,CACiC,QAAhCF,GAAMnZ,EAAK9E,KAAKm7I,KAAK3vF,aAA0B,IAAPvtC,GAAyBA,EAAGtV,KAAK7D,EAC9E,EAIA/E,EAAO2B,UAAUy8I,MAAQ,WACrB,IAAIr5I,EAAImZ,EAAIW,EAAIw8H,EACmB,QAAlCn9H,GAAMnZ,EAAK9E,KAAKm7I,KAAK/lC,eAA4B,IAAPn3F,GAAyBA,EAAGtV,KAAK7D,GAC5E9E,KAAKi8I,UAAUkC,QACfn+I,KAAKu7I,QAAU,GACfv7I,KAAKw7I,WAAa,GAClBx7I,KAAK0zG,QAAU,KACf1zG,KAAKW,MAAMY,OAAS,EACpBvB,KAAKs7E,WAAa,EAClBt7E,KAAKs1G,SAAW,EACwB,QAAvC8lC,GAAMx8H,EAAK5e,KAAKm7I,KAAKhmC,oBAAiC,IAAPimC,GAAyBA,EAAGzyI,KAAKiW,EAAI5e,MACrFA,KAAK27I,QAAQp6I,OAAS,EACtBvB,KAAK07I,eAAen6I,OAAS,EAC7BvB,KAAK07I,eAAe5hC,SAAS95G,KAAK40Q,UAClC50Q,KAAK47I,aAAe,EACpB57I,KAAK67I,WAAa,EAClB77I,KAAKshB,OAAQ,CACjB,EAOAvhB,EAAO2B,UAAU08I,cAAgB,SAAU7+H,GACvCvf,KAAKm+I,QACLn+I,KAAKyC,IAAI8c,EACb,EACAxf,EAAO2B,UAAUy6I,SAAW,SAAU35I,EAAOC,GACzC,KAAOD,EAAQxC,KAAK47I,cAAgB57I,KAAK27I,QAAQ,GAAGp6I,QAChDvB,KAAKq+I,cAGT,IADA,IAAI75I,EAAQxE,KAAK27I,QAAQ,GAAGn3I,MAAMhC,EAAQxC,KAAK47I,aAAcn5I,EAAMzC,KAAK47I,cACjEn5I,EAAMzC,KAAK47I,aAAe57I,KAAK27I,QAAQ,GAAGp6I,QAC7CvB,KAAKq+I,cACL75I,GAASxE,KAAK27I,QAAQ,GAAGn3I,MAAM,EAAG/B,EAAMzC,KAAK47I,cAEjD,OAAOp3I,CACX,EACAzE,EAAO2B,UAAU28I,YAAc,WAC3Br+I,KAAK47I,cAAgB57I,KAAK27I,QAAQ,GAAGp6I,OACrCvB,KAAK67I,aACL77I,KAAK27I,QAAQpxI,OACjB,EAMAxK,EAAO2B,UAAUiB,MAAQ,SAAU2W,GAC/B,IAAIxU,EAAImZ,EACJje,KAAKshB,MAC8B,QAAlCrD,GAAMnZ,EAAK9E,KAAKm7I,KAAK9vI,eAA4B,IAAP4S,GAAyBA,EAAGtV,KAAK7D,EAAI,IAAI/C,MAAM,0BAG9F/B,KAAK27I,QAAQp4I,KAAK+V,GACdtZ,KAAKi8I,UAAUqC,UACft+I,KAAKi8I,UAAUt5I,MAAM2W,GACrBtZ,KAAK67I,cAEb,EAMA97I,EAAO2B,UAAUe,IAAM,SAAU6W,GAC7B,IAAIxU,EAAImZ,EACJje,KAAKshB,MAC8B,QAAlCrD,GAAMnZ,EAAK9E,KAAKm7I,KAAK9vI,eAA4B,IAAP4S,GAAyBA,EAAGtV,KAAK7D,EAAI,IAAI/C,MAAM,wBAG1FuX,GACAtZ,KAAK2C,MAAM2W,GACftZ,KAAKshB,OAAQ,EACbthB,KAAKi8I,UAAUx5I,MACnB,EAIA1C,EAAO2B,UAAU68I,MAAQ,WACrBv+I,KAAKi8I,UAAUsC,OACnB,EAIAx+I,EAAO2B,UAAU88I,OAAS,WAEtB,IADAx+I,KAAKi8I,UAAUuC,SACRx+I,KAAKi8I,UAAUqC,SAClBt+I,KAAK67I,WAAa77I,KAAK27I,QAAQp6I,QAC/BvB,KAAKi8I,UAAUt5I,MAAM3C,KAAK27I,QAAQ37I,KAAK67I,eAEvC77I,KAAKshB,OACLthB,KAAKi8I,UAAUx5I,KACvB,EAOA1C,EAAO2B,UAAU+8I,WAAa,SAAUnlI,GACpCtZ,KAAK2C,MAAM2W,EACf,EAOAvZ,EAAO2B,UAAU2E,KAAO,SAAUiT,GAC9BtZ,KAAKyC,IAAI6W,EACb,EACOvZ,CACX,CAtY2B,GAuY3BmE,EAAQnE,OAASA,gCClgBjBqB,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQq5I,eAAY,EACpB,IACIr/B,EA+BAwgC,EA+CAnB,EA/EA75B,EAAc,EAAQ,OAiE1B,SAASi7B,EAAaxrI,GAClB,OAAQA,IAAM+qG,EAAU0gC,OACpBzrI,IAAM+qG,EAAU2gC,SAChB1rI,IAAM+qG,EAAU4gC,KAChB3rI,IAAM+qG,EAAU6gC,UAChB5rI,IAAM+qG,EAAU8gC,cACxB,CACA,SAASC,EAAkB9rI,GACvB,OAAOA,IAAM+qG,EAAUghC,OAAS/rI,IAAM+qG,EAAUihC,IAAMR,EAAaxrI,EACvE,EAxEA,SAAW+qG,GACPA,EAAUA,EAAe,IAAI,GAAK,MAClCA,EAAUA,EAAmB,QAAI,IAAM,UACvCA,EAAUA,EAAoB,SAAI,IAAM,WACxCA,EAAUA,EAA0B,eAAI,IAAM,iBAC9CA,EAAUA,EAAiB,MAAI,IAAM,QACrCA,EAAUA,EAA2B,gBAAI,IAAM,kBAC/CA,EAAUA,EAAkB,OAAI,IAAM,SACtCA,EAAUA,EAAe,IAAI,IAAM,MACnCA,EAAUA,EAAuB,YAAI,IAAM,cAC3CA,EAAUA,EAAuB,YAAI,IAAM,cAC3CA,EAAUA,EAAgB,KAAI,IAAM,OACpCA,EAAUA,EAAiB,MAAI,IAAM,QACrCA,EAAUA,EAAgB,KAAI,IAAM,OACpCA,EAAUA,EAAgB,KAAI,IAAM,OACpCA,EAAUA,EAAgB,KAAI,IAAM,OACpCA,EAAUA,EAAc,GAAI,IAAM,KAClCA,EAAUA,EAAc,GAAI,IAAM,KAClCA,EAAUA,EAAc,GAAI,IAAM,KAClCA,EAAUA,EAAwB,aAAI,IAAM,eAC5CA,EAAUA,EAAkB,OAAI,IAAM,SACtCA,EAAUA,EAAkB,OAAI,IAAM,SACtCA,EAAUA,EAAkB,OAAI,IAAM,SACtCA,EAAUA,EAAkB,OAAI,KAAO,SACvCA,EAAUA,EAAkB,OAAI,IAAM,SACtCA,EAAUA,EAAkB,OAAI,KAAO,SACvCA,EAAUA,EAAkB,OAAI,KAAO,SACvCA,EAAUA,EAAgC,qBAAI,IAAM,sBACvD,CA5BD,CA4BGA,IAAcA,EAAY,CAAC,IAG9B,SAAWwgC,GACPA,EAAMA,EAAY,KAAI,GAAK,OAC3BA,EAAMA,EAAqB,cAAI,GAAK,gBACpCA,EAAMA,EAAiB,UAAI,GAAK,YAChCA,EAAMA,EAAwB,iBAAI,GAAK,mBACvCA,EAAMA,EAA4B,qBAAI,GAAK,uBAC3CA,EAAMA,EAAwB,iBAAI,GAAK,mBACvCA,EAAMA,EAA2B,oBAAI,GAAK,sBAE1CA,EAAMA,EAA2B,oBAAI,GAAK,sBAC1CA,EAAMA,EAAuB,gBAAI,GAAK,kBACtCA,EAAMA,EAA0B,mBAAI,IAAM,qBAC1CA,EAAMA,EAA4B,qBAAI,IAAM,uBAC5CA,EAAMA,EAA0B,mBAAI,IAAM,qBAC1CA,EAAMA,EAA0B,mBAAI,IAAM,qBAC1CA,EAAMA,EAA0B,mBAAI,IAAM,qBAE1CA,EAAMA,EAAyB,kBAAI,IAAM,oBACzCA,EAAMA,EAAqB,cAAI,IAAM,gBAErCA,EAAMA,EAA+B,wBAAI,IAAM,0BAE/CA,EAAMA,EAAqB,cAAI,IAAM,gBACrCA,EAAMA,EAAqB,cAAI,IAAM,gBACrCA,EAAMA,EAAwB,iBAAI,IAAM,mBACxCA,EAAMA,EAAqB,cAAI,IAAM,gBAErCA,EAAMA,EAAsB,eAAI,IAAM,iBACtCA,EAAMA,EAA4B,qBAAI,IAAM,uBAC5CA,EAAMA,EAAoB,aAAI,IAAM,eACpCA,EAAMA,EAAgB,SAAI,IAAM,UACnC,CA/BD,CA+BGA,IAAUA,EAAQ,CAAC,IAgBtB,SAAWnB,GACPA,EAAUA,EAAmB,QAAI,GAAK,UACtCA,EAAUA,EAAoB,SAAI,GAAK,WACvCA,EAAUA,EAAkB,OAAI,GAAK,SACrCA,EAAUA,EAAkB,OAAI,GAAK,QACxC,CALD,CAKGA,EAAYr5I,EAAQq5I,YAAcr5I,EAAQq5I,UAAY,CAAC,IAO1D,IAAI+B,EAAY,CACZC,MAAO,IAAI1zI,WAAW,CAAC,GAAM,GAAM,GAAM,GAAM,GAAM,KACrD2zI,SAAU,IAAI3zI,WAAW,CAAC,GAAM,GAAM,KACtC4zI,WAAY,IAAI5zI,WAAW,CAAC,GAAM,GAAM,KACxC6zI,UAAW,IAAI7zI,WAAW,CAAC,GAAM,GAAM,IAAM,GAAM,IAAM,IAAM,IAAM,MACrE8zI,SAAU,IAAI9zI,WAAW,CAAC,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,MAC9D+zI,SAAU,IAAI/zI,WAAW,CAAC,GAAM,GAAM,IAAM,IAAM,IAAM,IAAM,OAE9DqwI,EAA2B,WAC3B,SAASA,EAAUp3I,EAAIq2I,GACnB,IAAIl9H,EAAKnZ,EAAGyjD,QAASA,OAAiB,IAAPtqC,GAAwBA,EAAIW,EAAK9Z,EAAG6mD,eAAgBA,OAAwB,IAAP/sC,GAAuBA,EACvHm4F,EAAQ/2G,KACZA,KAAKm7I,IAAMA,EAEXn7I,KAAKY,MAAQ89I,EAAMvqC,KAEnBn0G,KAAK8B,OAAS,GAEd9B,KAAK6/I,aAAe,EAEpB7/I,KAAKme,MAAQ,EAEbne,KAAKylJ,YAAc,EAEnBzlJ,KAAK8/I,UAAYpB,EAAMvqC,KAEvBn0G,KAAK+/I,WAAY,EAEjB//I,KAAKs+I,SAAU,EAEft+I,KAAKgB,OAAS,EACdhB,KAAKggJ,qBAAkB7/I,EACvBH,KAAKigJ,cAAgB,EACrBjgJ,KAAKuoD,QAAUA,EACfvoD,KAAK2rD,eAAiBA,EACtB3rD,KAAK60Q,cAAgB,IAAInxJ,EAAYlG,cAAcj1D,EAAUm7D,EAAY7F,cAAgB6F,EAAY5F,gBAAgB,SAAUyE,EAAIx3G,GAAY,OAAOgsG,EAAM0H,cAAc8D,EAAIx3G,EAAW,GAC7L,CAunBA,OAtnBAmxI,EAAUx6I,UAAUy8I,MAAQ,WACxBn+I,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK8B,OAAS,GACd9B,KAAK6/I,aAAe,EACpB7/I,KAAKme,MAAQ,EACbne,KAAK8/I,UAAYpB,EAAMvqC,KACvBn0G,KAAKggJ,qBAAkB7/I,EACvBH,KAAKs+I,SAAU,EACft+I,KAAKgB,OAAS,CAClB,EACAk7I,EAAUx6I,UAAUiB,MAAQ,SAAU2W,GAClCtZ,KAAKgB,QAAUhB,KAAK8B,OAAOP,OAC3BvB,KAAK8B,OAASwX,EACdtZ,KAAKiN,OACT,EACAivI,EAAUx6I,UAAUe,IAAM,WAClBzC,KAAKs+I,SACLt+I,KAAKugJ,QACb,EACArE,EAAUx6I,UAAU68I,MAAQ,WACxBv+I,KAAKs+I,SAAU,CACnB,EACApC,EAAUx6I,UAAU88I,OAAS,WACzBx+I,KAAKs+I,SAAU,EACXt+I,KAAKme,MAAQne,KAAK8B,OAAOP,OAASvB,KAAKgB,QACvChB,KAAKiN,OAEb,EACAivI,EAAUx6I,UAAU++I,UAAY,SAAUttI,GAClCA,IAAM+qG,EAAUwiC,KACd1gJ,KAAK2rD,gBAAkB3rD,KAAK2gJ,cAAcziC,EAAUwiC,KAClD1gJ,KAAKme,MAAQne,KAAK6/I,cAClB7/I,KAAKm7I,IAAIzvF,OAAO1rD,KAAK6/I,aAAc7/I,KAAKme,OAE5Cne,KAAKY,MAAQ89I,EAAMkC,cACnB5gJ,KAAK6/I,aAAe7/I,KAAKme,OAEpBne,KAAK2rD,gBAAkBx4C,IAAM+qG,EAAU2iC,KAC5C7gJ,KAAK++G,aAEb,EACAm9B,EAAUx6I,UAAUq/I,0BAA4B,SAAU5tI,GACtD,IAAI6tI,EAAQhhJ,KAAKigJ,gBAAkBjgJ,KAAKggJ,gBAAgBz+I,OAMxD,GALcy/I,EAEN/B,EAAkB9rI,IAEb,GAAJA,KAAcnT,KAAKggJ,gBAAgBhgJ,KAAKigJ,gBAI5C,IAAKe,EAEN,YADAhhJ,KAAKigJ,qBAHLjgJ,KAAK+/I,WAAY,EAMrB//I,KAAKigJ,cAAgB,EACrBjgJ,KAAKY,MAAQ89I,EAAMuC,UACnBjhJ,KAAKkhJ,eAAe/tI,EACxB,EAEA+oI,EAAUx6I,UAAUy/I,kBAAoB,SAAUhuI,GAC9C,GAAInT,KAAKigJ,gBAAkBjgJ,KAAKggJ,gBAAgBz+I,OAAQ,CACpD,GAAI4R,IAAM+qG,EAAUihC,IAAMR,EAAaxrI,GAAI,CACvC,IAAIiuI,EAAYphJ,KAAKme,MAAQne,KAAKggJ,gBAAgBz+I,OAClD,GAAIvB,KAAK6/I,aAAeuB,EAAW,CAE/B,IAAIC,EAAcrhJ,KAAKme,MACvBne,KAAKme,MAAQijI,EACbphJ,KAAKm7I,IAAIzvF,OAAO1rD,KAAK6/I,aAAcuB,GACnCphJ,KAAKme,MAAQkjI,CACjB,CAIA,OAHArhJ,KAAK+/I,WAAY,EACjB//I,KAAK6/I,aAAeuB,EAAY,OAChCphJ,KAAKshJ,sBAAsBnuI,EAE/B,CACAnT,KAAKigJ,cAAgB,CACzB,EACS,GAAJ9sI,KAAcnT,KAAKggJ,gBAAgBhgJ,KAAKigJ,eACzCjgJ,KAAKigJ,eAAiB,EAEM,IAAvBjgJ,KAAKigJ,cACNjgJ,KAAKggJ,kBAAoBV,EAAUM,SAE/B5/I,KAAK2rD,gBAAkBx4C,IAAM+qG,EAAU2iC,KACvC7gJ,KAAK++G,cAGJ/+G,KAAK2gJ,cAAcziC,EAAUwiC,MAElC1gJ,KAAKigJ,cAAgB,GAKzBjgJ,KAAKigJ,cAAgBn8I,OAAOqP,IAAM+qG,EAAUwiC,GAEpD,EACAxE,EAAUx6I,UAAU6/I,mBAAqB,SAAUpuI,GAC3CA,IAAMmsI,EAAUC,MAAMv/I,KAAKigJ,iBACrBjgJ,KAAKigJ,gBAAkBX,EAAUC,MAAMh+I,SACzCvB,KAAKY,MAAQ89I,EAAM8C,cACnBxhJ,KAAKggJ,gBAAkBV,EAAUE,SACjCx/I,KAAKigJ,cAAgB,EACrBjgJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,IAIrCne,KAAKigJ,cAAgB,EACrBjgJ,KAAKY,MAAQ89I,EAAM+C,cACnBzhJ,KAAK0hJ,mBAAmBvuI,GAEhC,EAOA+oI,EAAUx6I,UAAUi/I,cAAgB,SAAUxtI,GAC1C,OAASnT,KAAKme,MAAQne,KAAK8B,OAAOP,OAASvB,KAAKgB,QAC5C,GAAIhB,KAAK8B,OAAOzC,WAAWW,KAAKme,MAAQne,KAAKgB,UAAYmS,EACrD,OAAO,EAUf,OADAnT,KAAKme,MAAQne,KAAK8B,OAAOP,OAASvB,KAAKgB,OAAS,GACzC,CACX,EASAk7I,EAAUx6I,UAAUigJ,mBAAqB,SAAUxuI,GAC3CA,IAAMnT,KAAKggJ,gBAAgBhgJ,KAAKigJ,iBAC1BjgJ,KAAKigJ,gBAAkBjgJ,KAAKggJ,gBAAgBz+I,SAC1CvB,KAAKggJ,kBAAoBV,EAAUE,SACnCx/I,KAAKm7I,IAAI0C,QAAQ79I,KAAK6/I,aAAc7/I,KAAKme,MAAO,GAGhDne,KAAKm7I,IAAI1lC,UAAUz1G,KAAK6/I,aAAc7/I,KAAKme,MAAO,GAEtDne,KAAKigJ,cAAgB,EACrBjgJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EACjCne,KAAKY,MAAQ89I,EAAMvqC,MAGK,IAAvBn0G,KAAKigJ,cAENjgJ,KAAK2gJ,cAAc3gJ,KAAKggJ,gBAAgB,MACxChgJ,KAAKigJ,cAAgB,GAGpB9sI,IAAMnT,KAAKggJ,gBAAgBhgJ,KAAKigJ,cAAgB,KAErDjgJ,KAAKigJ,cAAgB,EAE7B,EAOA/D,EAAUx6I,UAAUkgJ,eAAiB,SAAUzuI,GAC3C,OAAOnT,KAAKuoD,SAAW02F,EAAkB9rI,GApOjD,SAAsBA,GAClB,OAASA,GAAK+qG,EAAU2jC,QAAU1uI,GAAK+qG,EAAU4jC,QAC5C3uI,GAAK+qG,EAAU6jC,QAAU5uI,GAAK+qG,EAAU8jC,MACjD,CAiOsDC,CAAa9uI,EAC/D,EACA+oI,EAAUx6I,UAAUwgJ,aAAe,SAAUC,EAAUnhJ,GACnDhB,KAAK+/I,WAAY,EACjB//I,KAAKggJ,gBAAkBmC,EACvBniJ,KAAKigJ,cAAgBj/I,EACrBhB,KAAKY,MAAQ89I,EAAM0D,oBACvB,EACAlG,EAAUx6I,UAAU2gJ,mBAAqB,SAAUlvI,GAC/C,GAAIA,IAAM+qG,EAAUokC,gBAChBtiJ,KAAKY,MAAQ89I,EAAM6D,kBACnBviJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,OAEhC,GAAIhL,IAAM+qG,EAAUskC,aACrBxiJ,KAAKY,MAAQ89I,EAAM+D,wBACnBziJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,OAEhC,GAAIne,KAAK4hJ,eAAezuI,GAAI,CAC7B,IAAIuvI,EAAY,GAAJvvI,EACZnT,KAAK6/I,aAAe7/I,KAAKme,MACpBne,KAAKuoD,SAAWm6F,IAAUpD,EAAUM,SAAS,GAI9C5/I,KAAKY,MACAZ,KAAKuoD,SAAWm6F,IAAUpD,EAAUI,UAAU,GAEzChB,EAAMuC,UADNvC,EAAMiE,eALhB3iJ,KAAKkiJ,aAAa5C,EAAUM,SAAU,EAQ9C,MACSzsI,IAAM+qG,EAAUghC,MACrBl/I,KAAKY,MAAQ89I,EAAMkE,sBAGnB5iJ,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAKygJ,UAAUttI,GAEvB,EACA+oI,EAAUx6I,UAAUw/I,eAAiB,SAAU/tI,GACvC8rI,EAAkB9rI,KAClBnT,KAAKm7I,IAAIoB,cAAcv8I,KAAK6/I,aAAc7/I,KAAKme,OAC/Cne,KAAK6/I,cAAgB,EACrB7/I,KAAKY,MAAQ89I,EAAMmE,oBACnB7iJ,KAAK8iJ,yBAAyB3vI,GAEtC,EACA+oI,EAAUx6I,UAAUqhJ,0BAA4B,SAAU5vI,GAClDwrI,EAAaxrI,KAGRA,IAAM+qG,EAAUihC,GACrBn/I,KAAKY,MAAQ89I,EAAMvqC,MAGnBn0G,KAAKY,MAAQZ,KAAK4hJ,eAAezuI,GAC3BurI,EAAMsE,iBACNtE,EAAMuE,iBACZjjJ,KAAK6/I,aAAe7/I,KAAKme,OAEjC,EACA+9H,EAAUx6I,UAAU4/I,sBAAwB,SAAUnuI,IAC9CA,IAAM+qG,EAAUihC,IAAMR,EAAaxrI,MACnCnT,KAAKm7I,IAAI7vF,WAAWtrD,KAAK6/I,aAAc7/I,KAAKme,OAC5Cne,KAAK6/I,cAAgB,EACrB7/I,KAAKY,MAAQ89I,EAAMwE,oBACnBljJ,KAAKmjJ,yBAAyBhwI,GAEtC,EACA+oI,EAAUx6I,UAAUyhJ,yBAA2B,SAAUhwI,IAEjDA,IAAM+qG,EAAUihC,IAAMn/I,KAAK2gJ,cAAcziC,EAAUihC,OACnDn/I,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EAEzC,EACA+9H,EAAUx6I,UAAUohJ,yBAA2B,SAAU3vI,GACjDA,IAAM+qG,EAAUihC,IAChBn/I,KAAKm7I,IAAIyB,aAAa58I,KAAKme,OACvBne,KAAK+/I,WACL//I,KAAKY,MAAQ89I,EAAM0E,aACnBpjJ,KAAKigJ,cAAgB,GAGrBjgJ,KAAKY,MAAQ89I,EAAMvqC,KAEvBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,GAE5BhL,IAAM+qG,EAAUghC,MACrBl/I,KAAKY,MAAQ89I,EAAM2E,iBAEb1E,EAAaxrI,KACnBnT,KAAKY,MAAQ89I,EAAM4E,gBACnBtjJ,KAAK6/I,aAAe7/I,KAAKme,MAEjC,EACA+9H,EAAUx6I,UAAU6hJ,sBAAwB,SAAUpwI,GAC9CA,IAAM+qG,EAAUihC,IAChBn/I,KAAKm7I,IAAI4B,iBAAiB/8I,KAAKme,OAC/Bne,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EACjCne,KAAK+/I,WAAY,GAEXpB,EAAaxrI,KACnBnT,KAAKY,MAAQ89I,EAAMmE,oBACnB7iJ,KAAK8iJ,yBAAyB3vI,GAEtC,EACA+oI,EAAUx6I,UAAU8hJ,qBAAuB,SAAUrwI,IAC7CA,IAAM+qG,EAAUulC,IAAMxE,EAAkB9rI,MACxCnT,KAAKm7I,IAAI8B,aAAaj9I,KAAK6/I,aAAc7/I,KAAKme,OAC9Cne,KAAK6/I,cAAgB,EACrB7/I,KAAKY,MAAQ89I,EAAMgF,mBACnB1jJ,KAAK2jJ,wBAAwBxwI,GAErC,EACA+oI,EAAUx6I,UAAUiiJ,wBAA0B,SAAUxwI,GAChDA,IAAM+qG,EAAUulC,GAChBzjJ,KAAKY,MAAQ89I,EAAMkF,qBAEdzwI,IAAM+qG,EAAUghC,OAAS/rI,IAAM+qG,EAAUihC,IAC9Cn/I,KAAKm7I,IAAIiC,YAAYG,EAAUG,QAAS19I,KAAKme,OAC7Cne,KAAKY,MAAQ89I,EAAMmE,oBACnB7iJ,KAAK8iJ,yBAAyB3vI,IAExBwrI,EAAaxrI,KACnBnT,KAAKm7I,IAAIiC,YAAYG,EAAUG,QAAS19I,KAAKme,OAC7Cne,KAAKY,MAAQ89I,EAAM4E,gBACnBtjJ,KAAK6/I,aAAe7/I,KAAKme,MAEjC,EACA+9H,EAAUx6I,UAAUmiJ,0BAA4B,SAAU1wI,GAClDA,IAAM+qG,EAAU4lC,aAChB9jJ,KAAKY,MAAQ89I,EAAMqF,mBACnB/jJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,GAE5BhL,IAAM+qG,EAAU8lC,aACrBhkJ,KAAKY,MAAQ89I,EAAMuF,mBACnBjkJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,GAE3BwgI,EAAaxrI,KACnBnT,KAAK6/I,aAAe7/I,KAAKme,MACzBne,KAAKY,MAAQ89I,EAAMwF,mBACnBlkJ,KAAKmkJ,8BAA8BhxI,GAE3C,EACA+oI,EAAUx6I,UAAU0iJ,uBAAyB,SAAUjxI,EAAGkqI,GAClDlqI,IAAMkqI,IACJr9I,KAAK2rD,gBAAkB3rD,KAAK2gJ,cAActD,IAC5Cr9I,KAAKm7I,IAAI+B,aAAal9I,KAAK6/I,aAAc7/I,KAAKme,OAC9Cne,KAAK6/I,cAAgB,EACrB7/I,KAAKm7I,IAAIiC,YAAYC,IAAUn/B,EAAU4lC,YACnCvG,EAAUC,OACVD,EAAUE,OAAQz9I,KAAKme,OAC7Bne,KAAKY,MAAQ89I,EAAMmE,qBAEd7iJ,KAAK2rD,gBAAkBx4C,IAAM+qG,EAAU2iC,KAC5C7gJ,KAAK++G,aAEb,EACAm9B,EAAUx6I,UAAU2iJ,kCAAoC,SAAUlxI,GAC9DnT,KAAKokJ,uBAAuBjxI,EAAG+qG,EAAU4lC,YAC7C,EACA5H,EAAUx6I,UAAU4iJ,kCAAoC,SAAUnxI,GAC9DnT,KAAKokJ,uBAAuBjxI,EAAG+qG,EAAU8lC,YAC7C,EACA9H,EAAUx6I,UAAUyiJ,8BAAgC,SAAUhxI,GACtDwrI,EAAaxrI,IAAMA,IAAM+qG,EAAUihC,IACnCn/I,KAAKm7I,IAAI+B,aAAal9I,KAAK6/I,aAAc7/I,KAAKme,OAC9Cne,KAAK6/I,cAAgB,EACrB7/I,KAAKm7I,IAAIiC,YAAYG,EAAUgH,SAAUvkJ,KAAKme,OAC9Cne,KAAKY,MAAQ89I,EAAMmE,oBACnB7iJ,KAAK8iJ,yBAAyB3vI,IAEzBnT,KAAK2rD,gBAAkBx4C,IAAM+qG,EAAU2iC,KAC5C7gJ,KAAK++G,aAEb,EACAm9B,EAAUx6I,UAAU8iJ,uBAAyB,SAAUrxI,GAC/CA,IAAM+qG,EAAUumC,sBAChBzkJ,KAAKY,MAAQ89I,EAAMgG,cACnB1kJ,KAAKigJ,cAAgB,GAGrBjgJ,KAAKY,MACDuS,IAAM+qG,EAAUymC,KACVjG,EAAMkG,cACNlG,EAAM+C,aAExB,EACAvF,EAAUx6I,UAAUggJ,mBAAqB,SAAUvuI,IAC3CA,IAAM+qG,EAAUihC,IAAMn/I,KAAK2gJ,cAAcziC,EAAUihC,OACnDn/I,KAAKm7I,IAAIyC,cAAc59I,KAAK6/I,aAAc7/I,KAAKme,OAC/Cne,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EAEzC,EACA+9H,EAAUx6I,UAAUmjJ,6BAA+B,SAAU1xI,IACrDA,IAAM+qG,EAAUihC,IAAMn/I,KAAK2gJ,cAAcziC,EAAUihC,OACnDn/I,KAAKm7I,IAAItlC,wBAAwB71G,KAAK6/I,aAAc7/I,KAAKme,OACzDne,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EAEzC,EACA+9H,EAAUx6I,UAAUojJ,mBAAqB,SAAU3xI,GAC3CA,IAAM+qG,EAAUymC,MAChB3kJ,KAAKY,MAAQ89I,EAAM8C,cACnBxhJ,KAAKggJ,gBAAkBV,EAAUG,WAEjCz/I,KAAKigJ,cAAgB,EACrBjgJ,KAAK6/I,aAAe7/I,KAAKme,MAAQ,GAGjCne,KAAKY,MAAQ89I,EAAM+C,aAE3B,EACAvF,EAAUx6I,UAAUqjJ,sBAAwB,SAAU5xI,IAC9CA,IAAM+qG,EAAUihC,IAAMn/I,KAAK2gJ,cAAcziC,EAAUihC,OACnDn/I,KAAKm7I,IAAI1lC,UAAUz1G,KAAK6/I,aAAc7/I,KAAKme,MAAO,GAClDne,KAAKY,MAAQ89I,EAAMvqC,KACnBn0G,KAAK6/I,aAAe7/I,KAAKme,MAAQ,EAEzC,EACA+9H,EAAUx6I,UAAUsjJ,oBAAsB,SAAU7xI,GAChD,IAAIuvI,EAAY,GAAJvvI,EACRuvI,IAAUpD,EAAUI,UAAU,GAC9B1/I,KAAKkiJ,aAAa5C,EAAUI,UAAW,GAElCgD,IAAUpD,EAAUK,SAAS,GAClC3/I,KAAKkiJ,aAAa5C,EAAUK,SAAU,IAGtC3/I,KAAKY,MAAQ89I,EAAMuC,UACnBjhJ,KAAKkhJ,eAAe/tI,GAE5B,EACA+oI,EAAUx6I,UAAUq9G,YAAc,WAC9B/+G,KAAK8/I,UAAY9/I,KAAKY,MACtBZ,KAAKY,MAAQ89I,EAAMo2H,SACnB90Q,KAAKylJ,YAAczlJ,KAAKme,MACxBne,KAAK60Q,cAAc91J,YAAY/+G,KAAKuoD,QAC9Bm7D,EAAYjG,aAAaqB,OACzB9+G,KAAK8/I,YAAcpB,EAAMvqC,MACvBn0G,KAAK8/I,YAAcpB,EAAM0E,aACvB1/B,EAAYjG,aAAamE,OACzB8B,EAAYjG,aAAaiD,UACvC,EACAw7B,EAAUx6I,UAAUqzQ,cAAgB,WAChC,IAAIxzQ,EAASvB,KAAK60Q,cAAclyQ,MAAM3C,KAAK8B,OAAQ9B,KAAKme,MAAQne,KAAKgB,QAEjEO,GAAU,GACVvB,KAAKY,MAAQZ,KAAK8/I,UACH,IAAXv+I,IACAvB,KAAKme,MAAQne,KAAKylJ,cAKtBzlJ,KAAKme,MAAQne,KAAKgB,OAAShB,KAAK8B,OAAOP,OAAS,CAExD,EAIA26I,EAAUx6I,UAAU0kJ,QAAU,WAEtBpmJ,KAAKs+I,SAAWt+I,KAAK6/I,eAAiB7/I,KAAKme,QACvCne,KAAKY,QAAU89I,EAAMvqC,MACpBn0G,KAAKY,QAAU89I,EAAM0E,cAAuC,IAAvBpjJ,KAAKigJ,eAC3CjgJ,KAAKm7I,IAAIzvF,OAAO1rD,KAAK6/I,aAAc7/I,KAAKme,OACxCne,KAAK6/I,aAAe7/I,KAAKme,OAEpBne,KAAKY,QAAU89I,EAAMqF,oBAC1B/jJ,KAAKY,QAAU89I,EAAMuF,oBACrBjkJ,KAAKY,QAAU89I,EAAMwF,qBACrBlkJ,KAAKm7I,IAAI+B,aAAal9I,KAAK6/I,aAAc7/I,KAAKme,OAC9Cne,KAAK6/I,aAAe7/I,KAAKme,OAGrC,EACA+9H,EAAUx6I,UAAU2kJ,eAAiB,WACjC,OAAOrmJ,KAAKme,MAAQne,KAAK8B,OAAOP,OAASvB,KAAKgB,QAAUhB,KAAKs+I,OACjE,EAMApC,EAAUx6I,UAAUuL,MAAQ,WACxB,KAAOjN,KAAKqmJ,kBAAkB,CAC1B,IAAIlzI,EAAInT,KAAK8B,OAAOzC,WAAWW,KAAKme,MAAQne,KAAKgB,QACjD,OAAQhB,KAAKY,OACT,KAAK89I,EAAMvqC,KACPn0G,KAAKygJ,UAAUttI,GACf,MAEJ,KAAKurI,EAAM0D,qBACPpiJ,KAAK+gJ,0BAA0B5tI,GAC/B,MAEJ,KAAKurI,EAAM0E,aACPpjJ,KAAKmhJ,kBAAkBhuI,GACvB,MAEJ,KAAKurI,EAAMgG,cACP1kJ,KAAKuhJ,mBAAmBpuI,GACxB,MAEJ,KAAKurI,EAAMqF,mBACP/jJ,KAAKqkJ,kCAAkClxI,GACvC,MAEJ,KAAKurI,EAAM4E,gBACPtjJ,KAAKwjJ,qBAAqBrwI,GAC1B,MAEJ,KAAKurI,EAAM8C,cACPxhJ,KAAK2hJ,mBAAmBxuI,GACxB,MAEJ,KAAKurI,EAAMuE,iBACPjjJ,KAAK+kJ,sBAAsB5xI,GAC3B,MAEJ,KAAKurI,EAAMmE,oBACP7iJ,KAAK8iJ,yBAAyB3vI,GAC9B,MAEJ,KAAKurI,EAAMuC,UACPjhJ,KAAKkhJ,eAAe/tI,GACpB,MAEJ,KAAKurI,EAAMsE,iBACPhjJ,KAAKshJ,sBAAsBnuI,GAC3B,MAEJ,KAAKurI,EAAMkC,cACP5gJ,KAAKqiJ,mBAAmBlvI,GACxB,MAEJ,KAAKurI,EAAMgF,mBACP1jJ,KAAK2jJ,wBAAwBxwI,GAC7B,MAEJ,KAAKurI,EAAMuF,mBACPjkJ,KAAKskJ,kCAAkCnxI,GACvC,MAEJ,KAAKurI,EAAMkF,qBACP5jJ,KAAK6jJ,0BAA0B1wI,GAC/B,MAEJ,KAAKurI,EAAMkE,qBACP5iJ,KAAK+iJ,0BAA0B5vI,GAC/B,MAEJ,KAAKurI,EAAMwE,oBACPljJ,KAAKmjJ,yBAAyBhwI,GAC9B,MAEJ,KAAKurI,EAAMiE,eACP3iJ,KAAKglJ,oBAAoB7xI,GACzB,MAEJ,KAAKurI,EAAMwF,mBACPlkJ,KAAKmkJ,8BAA8BhxI,GACnC,MAEJ,KAAKurI,EAAM2E,iBACPrjJ,KAAKujJ,sBAAsBpwI,GAC3B,MAEJ,KAAKurI,EAAM+C,cACPzhJ,KAAK0hJ,mBAAmBvuI,GACxB,MAEJ,KAAKurI,EAAM6D,kBACPviJ,KAAKwkJ,uBAAuBrxI,GAC5B,MAEJ,KAAKurI,EAAMkG,cACP5kJ,KAAK8kJ,mBAAmB3xI,GACxB,MAEJ,KAAKurI,EAAM+D,wBACPziJ,KAAK6kJ,6BAA6B1xI,GAClC,MAEJ,KAAKurI,EAAMo2H,SACP90Q,KAAK+0Q,gBAIb/0Q,KAAKme,OACT,CACAne,KAAKomJ,SACT,EACAlK,EAAUx6I,UAAU6+I,OAAS,WACrBvgJ,KAAKY,QAAU89I,EAAMo2H,WACrB90Q,KAAK60Q,cAAcpyQ,MACnBzC,KAAKY,MAAQZ,KAAK8/I,WAEtB9/I,KAAKsmJ,qBACLtmJ,KAAKm7I,IAAI3vF,OACb,EAEA0wF,EAAUx6I,UAAU4kJ,mBAAqB,WACrC,IAAIhxC,EAAWt1G,KAAK8B,OAAOP,OAASvB,KAAKgB,OAErChB,KAAK6/I,cAAgBvqC,IAGrBt1G,KAAKY,QAAU89I,EAAM8C,cACjBxhJ,KAAKggJ,kBAAoBV,EAAUE,SACnCx/I,KAAKm7I,IAAI0C,QAAQ79I,KAAK6/I,aAAcvqC,EAAU,GAG9Ct1G,KAAKm7I,IAAI1lC,UAAUz1G,KAAK6/I,aAAcvqC,EAAU,GAG/Ct1G,KAAKY,QAAU89I,EAAMuC,WAC1BjhJ,KAAKY,QAAU89I,EAAMmE,qBACrB7iJ,KAAKY,QAAU89I,EAAMkF,sBACrB5jJ,KAAKY,QAAU89I,EAAMgF,oBACrB1jJ,KAAKY,QAAU89I,EAAM4E,iBACrBtjJ,KAAKY,QAAU89I,EAAMuF,oBACrBjkJ,KAAKY,QAAU89I,EAAMqF,oBACrB/jJ,KAAKY,QAAU89I,EAAMwF,oBACrBlkJ,KAAKY,QAAU89I,EAAMsE,kBAOrBhjJ,KAAKm7I,IAAIzvF,OAAO1rD,KAAK6/I,aAAcvqC,GAE3C,EACA4mC,EAAUx6I,UAAU+8G,cAAgB,SAAU8D,EAAIx3G,GAC1C/K,KAAK8/I,YAAcpB,EAAMvqC,MACzBn0G,KAAK8/I,YAAcpB,EAAM0E,cACrBpjJ,KAAK6/I,aAAe7/I,KAAKylJ,aACzBzlJ,KAAKm7I,IAAI+B,aAAal9I,KAAK6/I,aAAc7/I,KAAKylJ,aAElDzlJ,KAAK6/I,aAAe7/I,KAAKylJ,YAAc16I,EACvC/K,KAAKme,MAAQne,KAAK6/I,aAAe,EACjC7/I,KAAKm7I,IAAIgC,eAAe56B,KAGpBviH,KAAK6/I,aAAe7/I,KAAKylJ,aACzBzlJ,KAAKm7I,IAAIzvF,OAAO1rD,KAAK6/I,aAAc7/I,KAAKylJ,aAE5CzlJ,KAAK6/I,aAAe7/I,KAAKylJ,YAAc16I,EACvC/K,KAAKme,MAAQne,KAAK6/I,aAAe,EACjC7/I,KAAKm7I,IAAIiB,aAAa75B,EAAIviH,KAAK6/I,cAEvC,EACO3D,CACX,CAppB8B,GAqpB9Bh4I,EAAA,QAAkBg4I,sCC3vBlB,IAAIp0I,EAAmB9H,MAAQA,KAAK8H,kBAAqB1G,OAAO2G,OAAS,SAAUC,EAAGC,EAAGlF,EAAGmF,QAC7E/H,IAAP+H,IAAkBA,EAAKnF,GAC3B,IAAIoF,EAAO/G,OAAOgH,yBAAyBH,EAAGlF,GACzCoF,KAAS,QAASA,GAAQF,EAAEI,WAAaF,EAAKG,UAAYH,EAAKI,gBAClEJ,EAAO,CAAEd,YAAY,EAAMC,IAAK,WAAa,OAAOW,EAAElF,EAAI,IAE5D3B,OAAO+C,eAAe6D,EAAGE,EAAIC,EAChC,EAAI,SAAUH,EAAGC,EAAGlF,EAAGmF,QACT/H,IAAP+H,IAAkBA,EAAKnF,GAC3BiF,EAAEE,GAAMD,EAAElF,EACb,GACGovG,EAAsBnyG,MAAQA,KAAKmyG,qBAAwB/wG,OAAO2G,OAAS,SAAUC,EAAGk2F,GACxF98F,OAAO+C,eAAe6D,EAAG,UAAW,CAAEX,YAAY,EAAMnH,MAAOg+F,GAClE,EAAI,SAASl2F,EAAGk2F,GACbl2F,EAAW,QAAIk2F,CACnB,GACIkU,EAAgBpyG,MAAQA,KAAKoyG,cAAiB,SAAUjP,GACxD,GAAIA,GAAOA,EAAI96F,WAAY,OAAO86F,EAClC,IAAIt/F,EAAS,CAAC,EACd,GAAW,MAAPs/F,EAAa,IAAK,IAAIpgG,KAAKogG,EAAe,YAANpgG,GAAmB3B,OAAOM,UAAUgH,eAAeC,KAAKw6F,EAAKpgG,IAAI+E,EAAgBjE,EAAQs/F,EAAKpgG,GAEtI,OADAovG,EAAmBtuG,EAAQs/F,GACpBt/F,CACX,EACIw4G,EAAmBr8G,MAAQA,KAAKq8G,iBAAoB,SAAUlZ,GAC9D,OAAQA,GAAOA,EAAI96F,WAAc86F,EAAM,CAAE,QAAWA,EACxD,EACA/hG,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQqiJ,SAAWriJ,EAAQsiJ,UAAYtiJ,EAAQszG,QAAUtzG,EAAQouG,YAAcpuG,EAAQg4I,UAAYh4I,EAAQuiJ,gBAAkBviJ,EAAQ8wQ,qBAAuB9wQ,EAAQwiJ,SAAWxiJ,EAAQ4/H,cAAgB5/H,EAAQyiJ,eAAiBziJ,EAAQqwG,WAAarwG,EAAQnE,YAAS,EACtQ,IAAI6mJ,EAAc,EAAQ,OACtBC,EAAc,EAAQ,OAC1BzlJ,OAAO+C,eAAeD,EAAS,SAAU,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAOu/I,EAAY9mJ,MAAQ,IAC3G,IAAIy5G,EAAe,EAAQ,OACvBstC,EAAe,EAAQ,OAW3B,SAAShjB,EAAcvkH,EAAMzY,GACzB,IAAIkU,EAAU,IAAIw+F,EAAajF,gBAAWp0G,EAAW2G,GAErD,OADA,IAAI8/I,EAAY7mJ,OAAOib,EAASlU,GAASrE,IAAI8c,GACtCvE,EAAQ+5F,IACnB,CAYA,SAAS2xC,EAASnnI,EAAMzY,GACpB,OAAOg9H,EAAcvkH,EAAMzY,GAASsvB,QACxC,CA5BAh1B,OAAO+C,eAAeD,EAAS,aAAc,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAOw/I,EAAavyC,UAAY,IAEpHnzG,OAAO+C,eAAeD,EAAS,iBAAkB,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAOw/I,EAAavyC,UAAY,IAaxHrwG,EAAQ4/H,cAAgBA,EAcxB5/H,EAAQwiJ,SAAWA,EAYnBxiJ,EAAQ8wQ,qBAJR,SAA8B5nQ,EAAUtG,EAASigJ,GAC7C,IAAI/rI,EAAU,IAAIw+F,EAAajF,YAAW,SAAUpxG,GAAS,OAAOiK,EAASjK,EAAO6X,EAAQ+5F,KAAO,GAAGjuG,EAASigJ,GAC/G,OAAO,IAAIH,EAAY7mJ,OAAOib,EAASlU,EAC3C,EAcA5C,EAAQuiJ,gBAJR,SAAyBr5I,EAAUtG,EAASigJ,GACxC,IAAI/rI,EAAU,IAAIw+F,EAAajF,WAAWnnG,EAAUtG,EAASigJ,GAC7D,OAAO,IAAIH,EAAY7mJ,OAAOib,EAASlU,EAC3C,EAEA,IAAI0zI,EAAiB,EAAQ,OAC7Bp5I,OAAO+C,eAAeD,EAAS,YAAa,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAO+0G,EAAgBm+B,GAAgB53G,OAAS,IAKnI1+B,EAAQouG,YAAcF,EAAa,EAAQ,QAC3C,IAAI40C,EAAa,EAAQ,OACrBC,EAAa,EAAQ,OACzB7lJ,OAAO+C,eAAeD,EAAS,UAAW,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAO2/I,EAAWzvC,OAAS,IAC5G,IAAI0vC,EAA0B,CAAE3+F,SAAS,GAWzCrkD,EAAQsiJ,UAJR,SAAmBzuC,EAAMjxG,GAErB,YADgB,IAAZA,IAAsBA,EAAUogJ,IAC7B,EAAIF,EAAWxvC,SAASkvC,EAAS3uC,EAAMjxG,GAClD,EAEA5C,EAAQqiJ,SAAWn0C,EAAa,EAAQ,gEC1GxChxG,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQqpJ,WAAarpJ,EAAQkhK,WAAalhK,EAAQ+wQ,mBAAqB/wQ,EAAQgxQ,UAAYhxQ,EAAQixQ,eAAiBjxQ,EAAQo4P,WAAap4P,EAAQk/E,MAAQl/E,EAAQ2/J,MAAQ3/J,EAAQkxQ,aAAelxQ,EAAQmxQ,aAAenxQ,EAAQoxQ,UAAYpxQ,EAAQghC,OAAShhC,EAAQotC,MAAQptC,EAAQmsC,KAAOnsC,EAAQwpD,iBAAmBxpD,EAAQqxQ,eAAiBrxQ,EAAQ67B,cAAgB77B,EAAQ4b,uBAAyB5b,EAAQ6b,wBAA0B7b,EAAQmnB,kBAAoBnnB,EAAQsnB,iBAAmBtnB,EAAQsxQ,gBAAkBtxQ,EAAQgtC,YAAchtC,EAAQuxQ,SAAWvxQ,EAAQwxQ,gBAAkBxxQ,EAAQg7B,cAAgBh7B,EAAQ0hC,kBAAoB1hC,EAAQknB,cAAgBlnB,EAAQ2b,cAAgB3b,EAAQyxQ,UAAYzxQ,EAAQ0xQ,MAAQ1xQ,EAAQ2xQ,OAAS3xQ,EAAQ4xQ,QAAU5xQ,EAAQ6xQ,KAAO7xQ,EAAQ8xQ,KAAO9xQ,EAAQ+xQ,iBAAmB/xQ,EAAQgyQ,iBAAmBhyQ,EAAQwd,aAAexd,EAAQutC,gBAAa,EACz2B,MAAM0kO,EAAW,EAAQ,OACnBC,EAAe,EAAQ,OAC7Bh1Q,OAAO+C,eAAeD,EAAS,aAAc,CAAEmD,YAAY,EAAMC,IAAK,WAAc,OAAO8uQ,EAAa3kO,UAAY,IAEpH,IAAI4kO,EADoB,EAAQ,OACIC,sBAKpCpyQ,EAAQwd,aAHR,SAAsB60P,GAClBF,EAAcE,EAClB,EAMAryQ,EAAQgyQ,iBAHR,WACI,OAAOG,CACX,EAMAnyQ,EAAQ+xQ,iBAHR,SAA0BO,GACtBH,EAAgBG,CACpB,EAQAtyQ,EAAQ8xQ,KAAO,EAMf9xQ,EAAQ6xQ,KAAO,EAMf7xQ,EAAQ4xQ,QAAU,EAOlB5xQ,EAAQ2xQ,OAAS,EAOjB3xQ,EAAQ0xQ,MAAQ,GAQhB1xQ,EAAQyxQ,UAAY,GAKpB,MAAM91P,UAAsBs2P,EAASvxJ,aAEjC,WAAA51G,CAAYynQ,EAAevyQ,EAAQ6xQ,MAC/B51P,QACAngB,KAAK+rQ,WAAY,EACjB/rQ,KAAKukM,OAASkyE,EACdz2Q,KAAK+a,GAAG,cAAe27P,EAC3B,CAUA,YAAAC,CAAa3pC,EAAU4pC,GAAa,GAEhC,MAAM/4N,EAAQmvL,EAAWhtO,KAAKukM,QAAUvkM,KAAKukM,OAASrgM,EAAQ0xQ,MAW9D,OAVI/3N,IACA79C,KAAKukM,OAASyoC,EAEVA,IAAa9oO,EAAQ0xQ,QAChBgB,EAGDP,GAAc,IAAMr2Q,KAAK0D,KAAK,SAF9B1D,KAAK0D,KAAK,SAKfm6C,CACX,CAcA,IAAAt8B,GACI,OAAO,IACX,CA2BA,OAAA7W,CAAQ0C,EAAUlE,GACdlJ,KAAK+a,GAAG,OAAQoG,EAAK/T,EAAUlE,GACnC,CAOA,KAAAqS,GACQvb,KAAK22Q,aAAazyQ,EAAQ2xQ,SAC1B71Q,KAAK62Q,WACb,CAYA,OAAA91P,CAAQ63C,GACC54D,KAAKqG,MACNrG,KAAKmlN,SAASvsJ,GAAOz1D,KACjBy1D,EAAQA,GAASz1D,IAEbnD,KAAK0D,KAAK,QAASk1D,GACvB54D,KAAKkhB,MAAK,EAAK,GAG3B,CAOA,QAAAikM,CAASvsJ,EAAOxrD,GACZA,GACJ,CASA,IAAA8T,CAAKH,GAAU,GACP/gB,KAAK22Q,aAAa51P,EAAU7c,EAAQyxQ,UAAYzxQ,EAAQ0xQ,SACxD51Q,KAAK+rQ,WAAY,EACjB/rQ,KAAKunH,mBAAmB,YACxBvnH,KAAKunH,mBAAmB,QACxBvnH,KAAKunH,mBAAmB,OAEhC,CAKA,SAAAsvJ,GACIR,GAAc,IAAMr2Q,KAAKkhB,QAC7B,CAYA,YAAIF,GACA,OAAOhhB,KAAK+rQ,SAChB,CACA,YAAI/qP,CAASA,GACTA,EAAWie,QAAQje,KAAchhB,KAAKqG,KAElCrG,KAAK+rQ,YAAc/qP,IACnBhhB,KAAK+rQ,UAAY/qP,EAEbA,GACAq1P,GAAc,IAAMr2Q,KAAK0D,KAAK,cAE1C,CAMA,UAAI+Q,GACA,OAAOzU,KAAKukM,QAAUrgM,EAAQ4xQ,OAClC,CAMA,SAAIx0P,GACA,OAAOthB,KAAKukM,SAAWrgM,EAAQ0xQ,KACnC,CAMA,aAAIlzD,GACA,OAAO1iN,KAAKukM,SAAWrgM,EAAQyxQ,SACnC,CAOA,QAAItvQ,GACA,OAAOrG,KAAKukM,QAAUrgM,EAAQ0xQ,KAClC,CAEA,QAAAp0Q,GACI,MAAMi1P,EAAUz2P,KAAK82Q,mBACrB,MAAO,IAAI92Q,KAAKgP,YAAYhF,OAAOysP,EAAU,IAAIA,IAAY,KACjE,CAKA,gBAAAqgB,GACI,MAAO,EACX,CAMA,OAAA78O,CAAQnzB,GACJ,MAAMuD,EAAQ,GACRgR,EAAqF,iBAArEvU,aAAyC,EAASA,EAAQuU,OAAsBvU,EAAQuU,MAAQ61F,IACtH,OAAOlxG,KAAKshB,OAASjG,GAAS,EAAIxV,QAAQC,QAAQuE,GAAS,IAAIxE,SAAQ,CAACC,EAASC,KAE7E,MAAMgxQ,EAAe,IAAMjxQ,EAAQuE,GAC7B2sQ,EAAYx1P,IACdnX,EAAM9G,KAAKie,GACPnX,EAAM9I,QAAU8Z,IAChBrb,KAAK0xC,eAAe,QAAS3rC,GAC7B/F,KAAK0xC,eAAe,OAAQslO,GAC5Bh3Q,KAAK0xC,eAAe,MAAOqlO,GAC3BjxQ,EAAQuE,GACZ,EAGJrK,KAAK+a,GAAG,QAAShV,GACjB/F,KAAK+a,GAAG,OAAQi8P,GAChBh3Q,KAAK+a,GAAG,MAAOg8P,EAAa,GAEpC,CAWA,WAAA7qP,CAAYynO,EAAcvmP,GACtB,MAAM2hL,EAAa/uL,KAAKi3Q,YAExB,IAAK7pQ,EACD,OAAO2hL,GAAcA,EAAW4kE,GAEpC,GAAI5kE,GAAe4kE,KAAgB5kE,EAC/BsnF,GAAc,IAAMjpQ,EAAS2hL,EAAW4kE,UAGvC,CACD,IAAIujB,GACEA,EAAoBl3Q,KAAKm3Q,sBAC3Bn3Q,KAAKm3Q,mBAAqBD,EAAoB91Q,OAAO2G,OAAO,OAC5D4rP,KAAgBujB,EAChBA,EAAkBvjB,GAAcpwP,KAAK6J,GAErC8pQ,EAAkBvjB,GAAgB,CAACvmP,EAC3C,CAEJ,CAMA,WAAAygB,CAAY8lO,EAAczzP,IACHF,KAAKi3Q,cAAgBj3Q,KAAKi3Q,YAAc71Q,OAAO2G,OAAO,QAC9D4rP,GAAgBzzP,EAE3B,MAAMg3Q,EAAoBl3Q,KAAKm3Q,oBAAsB,CAAC,EAChDh0B,EAAY+zB,EAAkBvjB,GACpC,GAAIxQ,EAAW,CAOX,IAAKwQ,YANEujB,EAAkBvjB,GACzB0iB,GAAc,KACV,IAAK,MAAMjpQ,KAAY+1O,EACnB/1O,EAASlN,EAAM,IAGFg3Q,EACjB,cACGl3Q,KAAKm3Q,kBAChB,CACJ,CAKA,aAAAC,GACI,MAAMroF,EAAa/uL,KAAKi3Q,YAClBv0Q,EAAO,CAAC,EACd,IAAK,MAAMsH,KAAQ+kL,EACfrsL,EAAKsH,GAAQ+kL,EAAW/kL,GAC5B,OAAOtH,CACX,CAKA,aAAA20Q,CAActoF,GACV,IAAK,MAAM4kE,KAAgB5kE,EACvB/uL,KAAK6tB,YAAY8lO,EAAc5kE,EAAW4kE,GAClD,CAMA,cAAA2jB,CAAezwO,EAAQ0wO,GACnB,IAAK,MAAM5jB,KAAgB4jB,EACvB1wO,EAAO3a,YAAYynO,GAAczzP,GAASF,KAAK6tB,YAAY8lO,EAAczzP,IAEjF,CAiBA,SAAAogB,CAAUxZ,GACN,OAAO,IAAIiZ,EAAwB/f,KAAM8G,EAC7C,CAQA,GAAA3B,CAAIA,EAAK+D,GACL,OAAO,IAAIssQ,EAAgBx1Q,KAAMmhB,EAAKhc,EAAK+D,GAC/C,CACA,MAAAjE,CAAOA,EAAQiE,GACX,OAAOlJ,KAAKmF,KAAI,SAAUqc,GACtB,OAAOvc,EAAO0D,KAAKO,GAAQlJ,KAAMwhB,GAAQA,EAAO,IACpD,GACJ,CAOA,IAAAg2P,CAAKC,EAAKhC,GACN,MAAMrsE,EAAU,IAAI7qL,IACpB,OAAOve,KAAKiF,QAAO,SAAUuc,GACzB,MAAMkvI,EAAS+mH,EAAG9uQ,KAAK3I,KAAMwhB,GAC7B,OAAK4nL,EAAQj8L,IAAIujJ,KACb04C,EAAQ3qL,IAAIiyI,IACL,EAGf,GACJ,CAOA,OAAAzmH,CAAQ5/B,GACJ,OAAOrK,KAAKsgB,UAAU,CAAE2pB,QAAS5/B,GACrC,CAOA,MAAAtB,CAAOsB,GACH,OAAOrK,KAAKsgB,UAAU,CAAEvX,OAAQsB,GACpC,CAQA,QAAAqtQ,CAASztO,EAASlhC,GACd,OAAO/I,KAAKsgB,UAAU,CAAE2pB,UAASlhC,UACrC,CAOA,IAAAq/J,CAAKpnK,GACD,OAAOhB,KAAKmF,KAAIqc,GAAQxgB,KAAW,EAAI,KAAOwgB,GAClD,CAOA,IAAA2b,CAAK9hB,GACD,OAAOrb,KAAKsgB,UAAU,CAAEjF,SAC5B,CAQA,KAAA+nE,CAAM5gF,EAAOC,GACT,OAAOzC,KAAKsgB,UAAU,CAAEtf,OAAQwB,EAAO6Y,MAAO1W,KAAKC,IAAInC,EAAMD,EAAQ,EAAG,IAC5E,CAQA,KAAAiM,GACI,OAAO,IAAI8mQ,EAAev1Q,KAC9B,EAIJ,SAAS02Q,EAAoBt1P,GACP,SAAdA,IACAphB,KAAK0xC,eAAe,cAAeglO,GACnCiB,EAAkB33Q,KAAM,WAAY43Q,GAChC53Q,KAAKghB,UACLq1P,GAAc,IAAMuB,EAASjvQ,KAAK3I,QAE9C,CAEA,SAAS43Q,IAEL,IAAIp2P,EACJ,KAAsC,IAA/BxhB,KAAK0mH,cAAc,SAA0C,QAAxBllG,EAAOxhB,KAAKuhB,SACpDvhB,KAAK0D,KAAK,OAAQ8d,GAEa,IAA/BxhB,KAAK0mH,cAAc,SAAkB1mH,KAAKqG,OAC1CrG,KAAK0xC,eAAe,WAAYkmO,GAChCD,EAAkB33Q,KAAM,cAAe02Q,GAE/C,CAEA,SAASiB,EAAkB9wO,EAAQzlB,EAAW6/C,GACrCp6B,EAAOogF,UAAU7lG,GAAWpF,SAASilD,IACtCp6B,EAAO9rB,GAAGqG,EAAW6/C,EAC7B,CA1BA/8D,EAAQ2b,cAAgBA,EA+BxB,MAAMuL,UAAsBvL,EAExB,WAAA7Q,GACImR,QACAngB,KAAK22Q,aAAazyQ,EAAQ0xQ,OAAO,EACrC,EAEJ1xQ,EAAQknB,cAAgBA,EAKxB,MAAMwa,UAA0B/lB,EAK5B,WAAA7Q,CAAYwS,GACRrB,QACAngB,KAAK63Q,MAAQr2P,EACA,OAATA,EACAxhB,KAAKub,QAELvb,KAAKghB,UAAW,CACxB,CAEA,IAAAO,GACI,MAAMC,EAAOxhB,KAAK63Q,MAGlB,OAFA73Q,KAAK63Q,MAAQ,KACb73Q,KAAKub,QACEiG,CACX,CAEA,gBAAAs1P,GACI,OAAsB,OAAf92Q,KAAK63Q,MAAiB,GAAK,IAAI73Q,KAAK63Q,QAC/C,EAEJ3zQ,EAAQ0hC,kBAAoBA,EAK5B,MAAM1G,UAAsBrf,EAOxB,WAAA7Q,CAAY3E,EAAQ,IAAI,UAAEuhB,GAAY,EAAI,SAAEksP,GAAW,GAAS,CAAC,GAC7D33P,QACA,MAAMre,EAASg2Q,IAAantQ,MAAMC,QAAQP,GAAS,IAAIA,GAASA,EAChErK,KAAK+3Q,OAAS,EACd/3Q,KAAKg4Q,gBAA+B,IAAdpsP,EACtB5rB,KAAKi4Q,mBAAqBH,GAAY,EAAI,GACtC93Q,KAAKg4Q,gBAAoC,IAAlBl2Q,EAAOP,OAC9BvB,KAAKub,QAELvb,KAAKqxC,QAAUvvC,EACnB9B,KAAKghB,UAAW,CACpB,CAEA,IAAAO,GACSvhB,KAAKg4Q,iBACNh4Q,KAAKg4Q,gBAAiB,GAC1B,IAAIx2P,EAAO,KAgBX,OAfIxhB,KAAKqxC,UAEDrxC,KAAK+3Q,OAAS/3Q,KAAKqxC,QAAQ9vC,SAC3BigB,EAAOxhB,KAAKqxC,QAAQrxC,KAAK+3Q,WAEzB/3Q,KAAK+3Q,SAAW/3Q,KAAKqxC,QAAQ9vC,eACtBvB,KAAKqxC,QACZrxC,KAAKub,SAGAvb,KAAK+3Q,SAAW/3Q,KAAKi4Q,qBAC1Bj4Q,KAAKqxC,QAAQnvB,OAAO,EAAGliB,KAAKi4Q,oBAC5Bj4Q,KAAK+3Q,OAAS,IAGfv2P,CACX,CAEA,gBAAAs1P,GACI,MAAO,IAAI92Q,KAAKqxC,QAAUrxC,KAAKqxC,QAAQ9vC,OAASvB,KAAK+3Q,OAAS,IAClE,CAEA,QAAA5yD,CAASvsJ,EAAOxrD,UACLpN,KAAKqxC,QACZjkC,GACJ,CAMA,OAAA6sB,CAAQnzB,EAAU,CAAC,GACf,IAAK9G,KAAKqxC,QACN,OAAOxrC,QAAQC,QAAQ,IAE3B,MAAM,OAAEvE,GAAWvB,KAAKqxC,QAClB7uC,EAAQxC,KAAK+3Q,OACbt1Q,EAA+B,iBAAlBqE,EAAQuU,MAAqB9Z,EAASiB,EAAQsE,EAAQuU,MAEnEhR,EAAQrK,KAAKqxC,QAAQ7sC,MAAMhC,EAAOC,GAKxC,OAJAzC,KAAK+3Q,OAASt1Q,EAEVA,GAAOlB,GACPvB,KAAKub,QACF1V,QAAQC,QAAQuE,EAC3B,EAEJnG,EAAQg7B,cAAgBA,EAKxB,MAAMw2O,UAAwB71P,EAQ1B,WAAA7Q,EAAY,MAAExM,EAAQ,EAAC,KAAEyD,EAAO,EAAC,IAAExD,GAAQ,CAAC,GACxC0d,QAEIrc,OAAOijC,SAASvkC,KAChBA,EAAQmC,KAAKuiC,MAAM1kC,IACvBxC,KAAKk4Q,MAAQ11Q,EAETsB,OAAOijC,SAAS9gC,KAChBA,EAAOtB,KAAKuiC,MAAMjhC,IACtBjG,KAAK2kK,MAAQ1+J,EAEb,MAAMkyQ,EAAYlyQ,GAAQ,EACpBimC,EAAYisO,EAAYjnK,KAAW,IACrCptG,OAAOijC,SAAStkC,GAChBA,EAAMkC,KAAKuiC,MAAMzkC,GACZA,KAASypC,IACdzpC,EAAMypC,GACVlsC,KAAKo4Q,MAAQ31Q,GAERqB,OAAOijC,SAASvkC,KAAW21Q,EAAY31Q,EAAQC,EAAMD,EAAQC,GAC9DzC,KAAKub,QAELvb,KAAKghB,UAAW,CACxB,CAEA,IAAAO,GACI,GAAIvhB,KAAKyU,OACL,OAAO,KACX,MAAMolG,EAAU75G,KAAKk4Q,MAAOjyQ,EAAOjG,KAAK2kK,MAAOh0G,EAAO3wD,KAAKo4Q,MAAOlyQ,EAAOlG,KAAKk4Q,OAASjyQ,EAGvF,OAFIA,GAAQ,EAAIC,EAAOyqD,EAAOzqD,EAAOyqD,IACjC3wD,KAAKub,QACFs+F,CACX,CAEA,gBAAAi9J,GACI,MAAO,IAAI92Q,KAAKk4Q,WAAWl4Q,KAAKo4Q,QACpC,EAIJ,SAAS3C,EAASj0P,GACd,OAAOA,CACX,CAJAtd,EAAQwxQ,gBAAkBA,EAK1BxxQ,EAAQuxQ,SAAWA,EAEnBvxQ,EAAQgtC,YAAc3nC,OAAO,eAM7B,MAAMisQ,UAAwB31P,EAI1B,WAAA7Q,CAAY63B,EAAQ1hC,EAAMswQ,EAAU3uQ,EAAU,CAAC,GAC3CqZ,QACAngB,KAAKshK,KAAOn8J,EACZnF,KAAK+wC,QAAUsnO,EAAsBxxO,GACrC7mC,KAAKs4Q,gBAA2C,IAA1BxxQ,EAAQyxQ,cAE1B1xO,EAAOxgC,KACPrG,KAAKub,SAILvb,KAAK+wC,QAAQ7sC,EAAQgtC,aAAelxC,KACpCA,KAAK+wC,QAAQh2B,GAAG,MAAOy9P,GACvBx4Q,KAAK+wC,QAAQh2B,GAAG,QAASq2B,GACzBpxC,KAAK+wC,QAAQh2B,GAAG,WAAYo2B,GAC5BnxC,KAAKghB,SAAWhhB,KAAK+wC,QAAQ/vB,SAErC,CAEA,IAAAO,GACI,IAAKvhB,KAAKqG,KAAM,CAEZ,GAAIrG,KAAK+wC,QAAQ/vB,SAAU,CACvB,IAAIQ,EAAMyiJ,EACV,KAAwC,QAAhCziJ,EAAOxhB,KAAK+wC,QAAQxvB,SACxB,GAAmC,QAA9B0iJ,EAASjkK,KAAKshK,KAAK9/I,IACpB,OAAOyiJ,CAEnB,CACAjkK,KAAKghB,UAAW,EAEZhhB,KAAK+wC,QAAQ1qC,MACbrG,KAAKub,OACb,CACA,OAAO,IACX,CAEA,IAAA2F,CAAKH,GACD/gB,KAAK+wC,QAAQW,eAAe,MAAO8mO,GACnCx4Q,KAAK+wC,QAAQW,eAAe,QAASN,GACrCpxC,KAAK+wC,QAAQW,eAAe,WAAYP,UACjCnxC,KAAK+wC,QAAQ7sC,EAAQgtC,aACxBlxC,KAAKs4Q,gBACLt4Q,KAAK+wC,QAAQhwB,UACjBZ,MAAMe,KAAKH,EACf,EAIJ,SAASs3P,EAAsBxxO,EAAQ4xO,GAAmB,GACtD,IAAK5xO,IAAWy1N,EAAWz1N,EAAOtlB,QAAU+6O,EAAWz1N,EAAO9rB,IAC1D,MAAM,IAAI7Q,UAAU,mBAAmB28B,KAC3C,IAAK4xO,GAAoB5xO,EAAO3iC,EAAQgtC,aACpC,MAAM,IAAInvC,MAAM,wCACpB,OAAO8kC,CACX,CARA3iC,EAAQsxQ,gBAAkBA,EAe1B,MAAMhqP,UAAyB3L,EAO3B,WAAA7Q,EAAY,cAAE2c,EAAgB,EAAC,UAAEC,GAAY,GAAS,CAAC,GACnDzL,MAAMjc,EAAQ8xQ,MACdh2Q,KAAKqxC,QAAU,IAAI+kO,EAAa3kO,WAChCzxC,KAAK04Q,eAAiB,EACtB14Q,KAAK24Q,UAAW,EAChB34Q,KAAK44Q,aAAe,EACpB54Q,KAAK2rB,cAAgBA,EACrB0qP,GAAc,IAAMr2Q,KAAK8Y,MAAM8S,KAC/B5rB,KAAKg4Q,gBAA+B,IAAdpsP,CAC1B,CAOA,iBAAID,GACA,OAAO3rB,KAAK04Q,cAChB,CACA,iBAAI/sP,CAAcA,GAEVA,IAAkBulF,MAClBvlF,EAAiB7nB,OAAOijC,SAASpb,GAC7BhnB,KAAKC,IAAID,KAAKuiC,MAAMvb,GAAgB,GADU,GAIlD3rB,KAAK04Q,iBAAmB/sP,IACxB3rB,KAAK04Q,eAAiB/sP,EAElB3rB,KAAKukM,SAAWrgM,EAAQ6xQ,MACxB/1Q,KAAKu3D,cAEjB,CAOA,KAAAz+C,CAAM8S,GAEF,IAAIitP,GAAa,EACjB74Q,KAAK24Q,UAAW,EAChB34Q,KAAK84Q,QAAO,KACR,GAAID,EACA,MAAM,IAAI92Q,MAAM,uCACpB82Q,GAAa,EAEb74Q,KAAK24Q,UAAW,EAChB34Q,KAAK22Q,aAAazyQ,EAAQ6xQ,MACtBnqP,EACA5rB,KAAK4tB,mBAIL5tB,KAAKghB,UAAW,CAAI,GAEhC,CAQA,MAAA83P,CAAOzyQ,GACHA,GACJ,CAOA,IAAAkb,GACI,GAAIvhB,KAAKqG,KACL,OAAO,KAENrG,KAAKg4Q,iBACNh4Q,KAAKg4Q,gBAAiB,GAE1B,MAAMl2Q,EAAS9B,KAAKqxC,QACpB,IAAI7vB,EAiBJ,OAhBI1f,EAAOwvC,OACP9vB,EAAO,KACPxhB,KAAKghB,UAAW,GAGhBQ,EAAO1f,EAAOyI,SAGbvK,KAAK24Q,UAAY72Q,EAAOP,OAASvB,KAAK04Q,iBAElC14Q,KAAKyU,OAGD3S,EAAOwvC,OACZtxC,KAAK62Q,YAHL72Q,KAAK4tB,oBAKNpM,CACX,CAQA,KAAAiM,CAAM/B,EAAOrlB,GACTA,GACJ,CAOA,KAAAomB,CAAMjL,GACGxhB,KAAKqG,OACNrG,KAAK44Q,eACL54Q,KAAKqxC,QAAQ9tC,KAAKie,GAClBxhB,KAAKghB,UAAW,EAExB,CAOA,WAAAu2C,GACI,IAAIwhN,EAEA/4Q,KAAK24Q,WAIA34Q,KAAKyU,OACVzU,KAAKg5Q,kBAGCD,EAAcp0Q,KAAKspC,IAAIjuC,KAAK04Q,eAAiB14Q,KAAKqxC,QAAQ9vC,OAAQ,MAAQ,IAEhFvB,KAAK44Q,aAAe,EACpB54Q,KAAK24Q,UAAW,EAChB34Q,KAAKytB,MAAMsrP,GAAa,KAEpB,IAAKA,EACD,MAAM,IAAIh3Q,MAAM,uCACpBg3Q,EAAc,EAEd/4Q,KAAK24Q,UAAW,EAEZ34Q,KAAKyU,OACLzU,KAAKg5Q,iBAKAh5Q,KAAK44Q,eACV54Q,KAAKghB,UAAW,EAEZhhB,KAAKqxC,QAAQ9vC,OAASvB,KAAK04Q,eAAiB,GAC5C14Q,KAAK4tB,mBACb,KAGZ,CAIA,gBAAAA,GAES5tB,KAAK24Q,WACN34Q,KAAK24Q,UAAW,EAChBtC,GAAc,KAEVr2Q,KAAK24Q,UAAW,EAChB34Q,KAAKu3D,aAAa,IAG9B,CAQA,KAAAh8C,GAESvb,KAAK24Q,SAKN34Q,KAAK22Q,aAAazyQ,EAAQ4xQ,SAJ1B91Q,KAAKg5Q,gBAKb,CAOA,cAAAA,GACQh5Q,KAAK22Q,aAAazyQ,EAAQ2xQ,UAE1B71Q,KAAK24Q,UAAW,EAChB34Q,KAAKmnC,QAAO,KACR,IAAKnnC,KAAK24Q,SACN,MAAM,IAAI52Q,MAAM,uCACpB/B,KAAK24Q,UAAW,EAGZ34Q,KAAKqxC,QAAQC,OACbtxC,KAAK62Q,WAAW,IAGhC,CAEA,QAAA1xD,CAASvsJ,EAAOxrD,GACZpN,KAAKqxC,QAAQokB,QACbroD,GACJ,CAQA,MAAA+5B,CAAO9gC,GACHA,GACJ,CAKA,gBAAAywQ,GACI,MAAMh1Q,EAAS9B,KAAKqxC,QACpB,MAAO,IAAIvvC,EAAOwvC,MAAQ,GAAK,SAASxvC,EAAO4uD,oBAAoB5uD,EAAOP,SAC9E,EAEJ2C,EAAQsnB,iBAAmBA,EAM3B,MAAMH,UAA0BG,EAW5B,WAAAxc,CAAY63B,EAAQ//B,EAAU+/B,GAAU,CAAC,GACrC1mB,MAAMrZ,GACN9G,KAAKi5Q,WAAcz3P,GAASxhB,KAAKysB,MAAMjL,GAElCyzP,EAAmBpuO,KACpBA,EAAS//B,EAAQ+/B,QAEjBsuO,EAAetuO,GACf7mC,KAAK6mC,OAASA,EAGTA,IACL7mC,KAAKk5Q,cAAgBhE,EAAUruO,GAAU,IAAMA,EAASA,EACpD7mC,KAAKg4Q,gBACLh4Q,KAAKm5Q,oBAGbn5Q,KAAKo5Q,UAAYn6O,QAAQn4B,EAAQw1C,UACjCt8C,KAAKs4Q,gBAA2C,IAA1BxxQ,EAAQyxQ,aAClC,CAKA,UAAI1xO,GAGA,OAFIy1N,EAAWt8P,KAAKk5Q,gBAChBl5Q,KAAKm5Q,mBACFn5Q,KAAK+wC,OAChB,CACA,UAAIlK,CAAO3mC,GAEP,MAAM2mC,EAAS7mC,KAAK+wC,QAAU/wC,KAAKq5Q,gBAAgBn5Q,GACnD2mC,EAAO3iC,EAAQgtC,aAAelxC,KAE1BA,KAAKqG,KACDrG,KAAKs4Q,gBACLzxO,EAAO9lB,UAGN8lB,EAAOxgC,KACZrG,KAAKub,SAILsrB,EAAO9rB,GAAG,MAAOu+P,GACjBzyO,EAAO9rB,GAAG,WAAYw+P,GACtB1yO,EAAO9rB,GAAG,QAASq2B,GAE3B,CAKA,gBAAA+nO,GACQ7c,EAAWt8P,KAAKk5Q,iBAEhBrzQ,QAAQC,QAAQ9F,KAAKk5Q,iBAAiB5yQ,MAAKugC,WAChC7mC,KAAKk5Q,cACZl5Q,KAAK6mC,OAASA,EACd7mC,KAAKu3D,aAAa,IACnBp0D,GAASnD,KAAK0D,KAAK,QAASP,KAE/BnD,KAAKk5Q,cAAgB,KAE7B,CAOA,eAAAG,CAAgBxyO,EAAQ4xO,GAAmB,GACvC,GAAIz4Q,KAAK+wC,cAAyC,IAAvB/wC,KAAKk5Q,cAC5B,MAAM,IAAIn3Q,MAAM,sDACpB,OAAOs2Q,EAAsBxxO,EAAQ4xO,EACzC,CAIA,KAAAhrP,CAAM/B,EAAOrlB,GACT,MAAMH,EAAO,KAELlG,KAAK44Q,aAAeltP,IAAU1rB,KAAKyU,OACnC4hQ,GAAc,IAAMr2Q,KAAKw5Q,kBAAkBtzQ,EAAMG,KAEjDA,GAAM,EAEdrG,KAAKw5Q,kBAAkBtzQ,EAAMG,EACjC,CAIA,iBAAAmzQ,CAAkBtzQ,EAAMG,GAGpB,IAAImb,EACJ,MAAMqlB,EAAS7mC,KAAK6mC,QACfA,GAAUA,EAAOxgC,MAAmC,QAA1Bmb,EAAOqlB,EAAOtlB,QACzClb,IACMrG,KAAKo5Q,UAGXp5Q,KAAKy5Q,mBAAmBj4P,EAAMtb,GAF9BlG,KAAKstK,WAAW9rJ,EAAMtb,EAAMlG,KAAKi5Q,WAGzC,CAKA,kBAAAQ,CAAmBj4P,EAAMnb,GACrB,MAAMqzQ,EAAc15Q,KAAK44Q,aACzB54Q,KAAKstK,WAAW9rJ,GAAM,KACdk4P,IAAgB15Q,KAAK44Q,cACrB54Q,KAAKysB,MAAMjL,GACfnb,GAAM,GACPrG,KAAKi5Q,WACZ,CAUA,UAAA3rG,CAAW9rJ,EAAMnb,EAAM9C,GACnBA,EAAKie,GACLnb,GACJ,CAKA,cAAAszQ,GACI35Q,KAAKub,OACT,CAEA,IAAA2F,CAAKH,GACD,MAAM8lB,EAAS7mC,KAAK+wC,QAChBlK,IACAA,EAAO6K,eAAe,MAAO4nO,GAC7BzyO,EAAO6K,eAAe,QAASN,GAC/BvK,EAAO6K,eAAe,WAAY6nO,UAC3B1yO,EAAO3iC,EAAQgtC,aAClBlxC,KAAKs4Q,gBACLzxO,EAAO9lB,WAEfZ,MAAMe,KAAKH,EACf,EAGJ,SAASowB,IACLnxC,KAAKkE,EAAQgtC,aAAalwB,UAAW,CACzC,CACA,SAASowB,EAAqBjuC,GAC1BnD,KAAKkE,EAAQgtC,aAAaxtC,KAAK,QAASP,EAC5C,CACA,SAASq1Q,IACLx4Q,KAAKkE,EAAQgtC,aAAa31B,OAC9B,CACA,SAAS+9P,IACLt5Q,KAAKkE,EAAQgtC,aAAayoO,gBAC9B,CACA,SAASJ,KAC4C,IAA7Cv5Q,KAAKkE,EAAQgtC,aAAa8mO,gBAC1Bh4Q,KAAKkE,EAAQgtC,aAAaqmB,aAClC,CAhBArzD,EAAQmnB,kBAAoBA,EAsB5B,MAAMtL,UAAgCsL,EAiBlC,WAAArc,CAAY63B,EAAQ//B,GAOhB,GANAqZ,MAAM0mB,EAAQ//B,GACd9G,KAAK45Q,QAAU,EACf55Q,KAAK65Q,OAAS3oK,IACdlxG,KAAK85Q,QAAWt4P,IAAS,EAEzB1a,EAAUA,IAAamuQ,EAAmBpuO,GAAmB,KAATA,GACvC,CACT,MAAMvmB,EAAYg8O,EAAWx1P,GAAWA,EAAUA,EAAQwZ,WACpD,MAAEjF,EAAK,OAAEra,EAAM,OAAEiE,EAAM,IAAEE,EAAG,QAAE8kC,EAAO,OAAElhC,GAAWjC,EAEpD9F,IAAWkwG,KAAY71F,KAAU,IACjCrb,KAAK65Q,OAAS,GAGV/1Q,OAAOijC,SAAS/lC,KAChBhB,KAAK45Q,QAAUj1Q,KAAKC,IAAID,KAAKuiC,MAAMlmC,GAAS,IAC5C8C,OAAOijC,SAAS1rB,KAChBrb,KAAK65Q,OAASl1Q,KAAKC,IAAID,KAAKuiC,MAAM7rB,GAAQ,IAC1CihP,EAAWr3P,KACXjF,KAAK85Q,QAAU70Q,GACfq3P,EAAWn3P,KACXnF,KAAKshK,KAAOn8J,GAChBnF,KAAKstK,WAAagvF,EAAWh8O,GAAaA,EAAY,MAEtD2pB,IACAjqC,KAAK+5Q,WAAa5E,EAAelrO,GAAWA,EAAUqrO,EAAUrrO,IAChElhC,IACA/I,KAAKg6Q,UAAY7E,EAAepsQ,GAAUA,EAASusQ,EAAUvsQ,GACrE,CACJ,CAEA,KAAA0kB,CAAM/B,EAAOrlB,GACT,MAAMH,EAAO,IAAMlG,KAAKi6Q,wBAAwBvuP,EAAOwuP,EAAW7zQ,GAElE,SAAS6zQ,IACL7D,EAAcnwQ,EAClB,CAHAlG,KAAKi6Q,wBAAwBvuP,EAAOwuP,EAAW7zQ,EAInD,CAEA,uBAAA4zQ,CAAwBvuP,EAAOxlB,EAAMG,GAEjC,IAAImb,EACJ,MAAM,OAAEqlB,GAAW7mC,KACnB,GAAK6mC,IAAUA,EAAOxgC,KAAtB,CAQA,IAHoB,IAAhBrG,KAAK65Q,QACL75Q,KAAKub,SAEDvb,KAAKyU,QAAUzU,KAAK44Q,aAAeltP,GAAoC,QAA1BlK,EAAOqlB,EAAOtlB,SAAkB,CAEjF,IAAKvhB,KAAK85Q,QAAQt4P,IAA0B,IAAjBxhB,KAAK45Q,SAAiB55Q,KAAK45Q,UAClD,SAEJ,MAAMO,OAAkC,IAAdn6Q,KAAKshK,KAAuB9/I,EAAOxhB,KAAKshK,KAAK9/I,GAEvE,GAAmB,OAAf24P,EACIn6Q,KAAKo5Q,WACLp5Q,KAAKysB,MAAMjL,OAGd,IAAK86O,EAAWt8P,KAAKstK,YAStB,YAJKttK,KAAKo5Q,UAGNp5Q,KAAKy5Q,mBAAmBU,EAAYj0Q,GAFpClG,KAAKstK,WAAW6sG,EAAYj0Q,EAAMlG,KAAKi5Q,aAL3Cj5Q,KAAKysB,MAAM0tP,EASf,CAEsB,KAAhBn6Q,KAAK65Q,QACP75Q,KAAKub,OACb,CACAlV,GAhCA,MAFIA,GAmCR,CAEA,MAAAyyQ,CAAOzyQ,GACHrG,KAAKo6Q,QAAQp6Q,KAAK+5Q,WAAY1zQ,UACvBrG,KAAK+5Q,UAChB,CAEA,MAAA5yO,CAAO9gC,GACHrG,KAAKo6Q,QAAQp6Q,KAAKg6Q,UAAW3zQ,UACtBrG,KAAKg6Q,SAChB,CAEA,OAAAI,CAAQC,EAAUh0Q,GACd,MAAM9C,EAAQie,GAASxhB,KAAKysB,MAAMjL,IAC7B64P,GAAYA,EAASh0Q,KACtBA,KAGAg0Q,EAASt/P,GAAG,OAAQxX,GACpB82Q,EAASt/P,GAAG,OAEhB,SAAStY,IACL43Q,EAAS3oO,eAAe,OAAQnuC,GAChC82Q,EAAS3oO,eAAe,MAAOjvC,GAC/B4D,GACJ,IACJ,EAEJnC,EAAQ6b,wBAA0BA,EA4GlC7b,EAAQ4b,uBAtGR,cAAqCuL,EAkBjC,WAAArc,CAAY63B,EAAQ//B,GAIhB,GAHAqZ,MAAM0mB,EAAQ//B,GACd9G,KAAKs6Q,kBAAoB,GAErBxzQ,EAAS,CACT,MAAMmkB,EAAiBqxO,EAAWx1P,GAAWA,EAAUA,EAAQmkB,eAC3DA,IACAjrB,KAAKogB,mBAAqB6K,EAClC,CACJ,CAEA,KAAAwC,CAAM/B,EAAOrlB,GAET,MAAMk0Q,EAAmBv6Q,KAAKs6Q,kBAAmBh+N,EAAWt8C,KAAKo5Q,UACjE,IAAI/hO,EAAM71B,EACV,MAAQ61B,EAAOkjO,EAAiB,KAAOljO,EAAKy2B,YAAYznE,MAAM,CAEtDi2C,GAA0B,OAAdjF,EAAK71B,OACjBkK,IACA1rB,KAAKysB,MAAM4qB,EAAK71B,OAGpB+4P,EAAiBhwQ,QACjB,MAAM,YAAEujE,GAAgBz2B,EACxBy2B,EAAYp8B,eAAe,MAAO6nO,GAClCzrM,EAAYp8B,eAAe,WAAY6nO,GACvCzrM,EAAYp8B,eAAe,QAASN,EACxC,CAEA,MAAM,OAAEvK,GAAW7mC,KACnB,KAAO6mC,IAAWA,EAAOxgC,MAAQk0Q,EAAiBh5Q,OAASvB,KAAK2rB,gBAE5DnK,EAAOqlB,EAAOtlB,OACD,OAATC,IAHuE,CAM3E,MAAMssD,EAAe9tE,KAAKogB,mBAAmBoB,IACzC,IAAI4J,EACR0iD,EAAY5pE,EAAQgtC,aAAelxC,KACnC8tE,EAAY/yD,GAAG,MAAOw+P,GACtBzrM,EAAY/yD,GAAG,WAAYw+P,GAC3BzrM,EAAY/yD,GAAG,QAASq2B,GACxBmpO,EAAiBh3Q,KAAK,CAAEuqE,cAAatsD,QACzC,CAGA,GADA61B,EAAOkjO,EAAiB,GACpBljO,EAAM,CACN,MAAM,YAAEy2B,GAAgBz2B,EACxB,KAAO3rB,KAAU,GAAqC,QAA/BlK,EAAOssD,EAAYvsD,SACtCvhB,KAAKysB,MAAMjL,GAEP86B,IACAjF,EAAK71B,KAAO,KAExB,MAESqlB,GAAUA,EAAOxgC,MACtBrG,KAAKub,QAETlV,GACJ,CAMA,kBAAA+Z,CAAmBoB,GACf,OAAO,IAAIokB,EAAkBpkB,EACjC,CAEA,cAAAm4P,GAES35Q,KAAKs6Q,kBAAkB/4Q,QACxBvB,KAAKub,OACb,CACA,IAAA2F,CAAKH,GAGD,GAFAZ,MAAMe,KAAKH,GAEP/gB,KAAKs4Q,eACL,IAAK,MAAM92P,KAAQxhB,KAAKs6Q,kBACpB94P,EAAKssD,YAAY/sD,SAE7B,GAOJ,MAAMgf,UAAsBvU,EAOxB,WAAAxc,CAAYmf,EAASrnB,EAAU,CAAC,GAC5BqZ,MAAMrZ,GACN9G,KAAKw6Q,SAAW,GAChBx6Q,KAAKy6Q,gBAAkB,EACvB,MAAM7uP,GAAkC,IAAtB9kB,EAAQ8kB,UAE1B,GAAIupP,EAAehnP,GACfA,EAAQpT,GAAG,SAAS5X,GAASnD,KAAK0D,KAAK,QAASP,KAChDnD,KAAK06Q,SAAW,CAAEC,SAAS,EAAOxsP,QAASA,GACvCvC,GACA5rB,KAAK46Q,oBAGR,GAAIjwQ,MAAMC,QAAQujB,IAAYA,EAAQ5sB,OAAS,EAChD,IAAK,MAAMslC,KAAU1Y,EACjBnuB,KAAK66Q,WAAWh0O,QAGfjb,GACL5rB,KAAKub,QAGTvb,KAAK86Q,iBAA6C,IAA3Bh0Q,EAAQi0Q,cACnC,CAEA,YAAAH,GAEI,MAAMzsP,EAAUnuB,KAAK06Q,SAASvsP,QAC9BnuB,KAAK06Q,SAASC,SAAU,EAEpBxsP,EAAQ9nB,aACDrG,KAAK06Q,SACZ16Q,KAAKub,UAIL4S,EAAQpT,GAAG,QAAQ8rB,IACf7mC,KAAK66Q,WAAWh0O,GAChB7mC,KAAK4tB,kBAAkB,IAE3BO,EAAQpT,GAAG,OAAO,YACP/a,KAAK06Q,SACZ16Q,KAAKu3D,aAAa,IAG9B,CAEA,UAAAsjN,CAAWh0O,GACHquO,EAAUruO,KACVA,EAASwJ,EAAKxJ,IACbA,EAAOxgC,OACRrG,KAAKw6Q,SAASj3Q,KAAKsjC,GACnBA,EAAO3iC,EAAQgtC,aAAelxC,KAC9B6mC,EAAO9rB,GAAG,QAASq2B,GACnBvK,EAAO9rB,GAAG,WAAYw+P,GACtB1yO,EAAO9rB,GAAG,MAAOigQ,GAEzB,CAEA,mBAAAC,GACIj7Q,KAAKw6Q,SAAWx6Q,KAAKw6Q,SAASv1Q,QAAO,CAAC4hC,EAAQ1oB,KAEtC0oB,EAAOxgC,MAAQ8X,GAASne,KAAKy6Q,gBAC7Bz6Q,KAAKy6Q,kBACD5zO,EAAOxgC,QAEnBrG,KAAKu3D,aACT,CAEA,KAAA9pC,CAAM/B,EAAOrlB,GACT,IAAIvB,GAE2E,KAAjD,QAAxBA,EAAK9E,KAAK06Q,gBAA6B,IAAP51Q,OAAgB,EAASA,EAAG61Q,UAC9D36Q,KAAK46Q,eAET,IAAmBp5P,EAAfsM,EAAY,EAChB,KAAOA,KAAeA,EAAYpC,IAE9B,IAAK,IAAIrqB,EAAI,EAAGA,EAAIrB,KAAKw6Q,SAASj5Q,QAAUmqB,EAAQ,EAAGrqB,IAEnDrB,KAAKy6Q,gBAAkBz6Q,KAAKy6Q,eAAiB,GAAKz6Q,KAAKw6Q,SAASj5Q,OAGjC,QAA1BigB,EAFUxhB,KAAKw6Q,SAASx6Q,KAAKy6Q,gBAEfl5P,UACfmK,IACA1rB,KAAKysB,MAAMjL,IAKlBxhB,KAAK06Q,UAAqC,IAAzB16Q,KAAKw6Q,SAASj5Q,QAChCvB,KAAKub,QACTlV,GACJ,CACA,IAAA6a,CAAKH,GAAU,GAGX,GAFAZ,MAAMe,KAAKH,GAEP/gB,KAAK86Q,gBAAiB,CACtB,IAAK,MAAMj0O,KAAU7mC,KAAKw6Q,SACtB3zO,EAAO9lB,UAEP/gB,KAAK06Q,WACL16Q,KAAK06Q,SAASvsP,QAAQpN,iBACf/gB,KAAK06Q,SAEpB,CACJ,EAGJ,SAASM,IACLh7Q,KAAKkE,EAAQgtC,aAAa+pO,qBAC9B,CAHA/2Q,EAAQ67B,cAAgBA,EAQxB,MAAMw1O,UAAuBlqP,EAKzB,WAAArc,CAAY63B,GACR1mB,MAAM0mB,EAAQ,CAAEjb,WAAW,IAC3B5rB,KAAKk7Q,cAAgB,EACrBl7Q,KAAK24Q,UAAW,EAEZ9xO,IACA7mC,KAAKghB,UAAW,EACxB,CACA,KAAAlI,GAEA,CACA,KAAAyC,GAEIsE,EAAcne,UAAU6Z,MAAM5S,KAAK3I,KACvC,CAEA,UAAI6mC,GACA,OAAO1mB,MAAM0mB,MACjB,CACA,UAAIA,CAAO3mC,GAEP,MAAM2mC,EAAS7mC,KAAK+wC,QAAU/wC,KAAKq5Q,gBAAgBn5Q,GAE7Ci7Q,EAAWt0O,GAAUA,EAAO3iC,EAAQgtC,eACrCrK,EAAO3iC,EAAQgtC,aAAe,IAAIkqO,EAAcv0O,IAEjD7mC,KAAKqG,KACDrG,KAAKs4Q,gBACLzxO,EAAO9lB,UAGNo6P,EAAQE,OAAO,GACpBr7Q,KAAKub,SAIL4/P,EAAQG,SAASt7Q,OAGa,IAA1B6mC,EAAOmxO,gBAAkD,OAAtBmD,EAAQI,OAAO,KAClDv7Q,KAAKghB,UAAW,IAGxB,MAAMk2P,EAAoBl3Q,KAAKm3Q,mBAC/B,IAAK,MAAMxjB,KAAgBujB,EAAmB,CAC1C,MAAM/zB,EAAY+zB,EAAkBvjB,GACpC,IAAK,MAAMvmP,KAAY+1O,EACnBnjP,KAAKw7Q,mBAAmB7nB,EAAcvmP,EAC9C,CACJ,CAOA,eAAAisQ,CAAgBxyO,EAAQ4xO,GAAmB,GACvC,MAAM0C,EAAWt0O,GAAUA,EAAO3iC,EAAQgtC,aAC1C,OAAO/wB,MAAMk5P,gBAAgBxyO,GAASs0O,GAAWA,aAAmBC,EACxE,CAEA,WAAAlvP,CAAYynO,EAAcvmP,GACtB,MAAM,OAAEy5B,GAAW7mC,KAAM+uL,EAAa/uL,KAAKi3Q,YAAawE,EAAc1sF,GAAe4kE,KAAgB5kE,EAErG,IAAK3hL,EACD,OAAOquQ,EAAc1sF,GAAcA,EAAW4kE,GAC1C9sN,GAAUA,EAAO3a,YAAYynO,GAGrCxzO,MAAM+L,YAAYynO,EAAcvmP,GAE5By5B,IAAW40O,GACXz7Q,KAAKw7Q,mBAAmB7nB,EAAcvmP,EAE9C,CAEA,kBAAAouQ,CAAmB7nB,EAAcvmP,GAC7BpN,KAAK6mC,OAAO3a,YAAYynO,GAAczzP,IAE7BF,KAAKi3Q,aAAiBtjB,KAAgB3zP,KAAKi3Q,aAC5C7pQ,EAASlN,EAAM,GAE3B,CAEA,aAAAk3Q,GACI,MAAMhiO,EAAOp1C,KAAK6mC,OAAS7mC,KAAK6mC,OAAOuwO,gBAAkB,CAAC,EAAGroF,EAAa/uL,KAAKi3Q,YAC/E,IAAK,MAAMjtQ,KAAQ+kL,EACf35I,EAAKprC,GAAQ+kL,EAAW/kL,GAC5B,OAAOorC,CACX,CAEA,gBAAA0hO,GACI,MAAO,YAAY92Q,KAAK6mC,OAAS7mC,KAAK6mC,OAAOrlC,WAAa,SAC9D,CAEA,IAAA+f,GAESvhB,KAAKg4Q,iBACNh4Q,KAAKg4Q,gBAAiB,GAC1B,MAAMnxO,EAAS7mC,KAAK6mC,OACpB,IAAIrlB,EAAO,KACX,IAAKxhB,KAAKqG,MAAQwgC,EAAQ,CAEtB,MAAMs0O,EAAUt0O,EAAO3iC,EAAQgtC,aACqB,QAA/C1vB,EAAO25P,EAAQI,OAAOv7Q,KAAKk7Q,gBAC5Bl7Q,KAAKk7Q,gBAELl7Q,KAAKghB,UAAW,EAEhBm6P,EAAQE,OAAOr7Q,KAAKk7Q,gBACpBl7Q,KAAKub,OACb,CACA,OAAOiG,CACX,CAEA,IAAAN,CAAKH,GAED,MAAM8lB,EAAS7mC,KAAK6mC,OACds0O,EAAUt0O,aAAuC,EAASA,EAAO3iC,EAAQgtC,aAC3EiqO,GACAA,EAAQO,WAAW17Q,MAGvBwrB,EAAiB9pB,UAAUwf,KAAKvY,KAAK3I,KAAM+gB,EAC/C,EAEJ7c,EAAQqxQ,eAAiBA,EAEzB,MAAM6F,EACF,WAAApsQ,CAAY63B,GAMR,GALA7mC,KAAK27Q,SAAW,GAChB37Q,KAAK47Q,UAAY,IAAIr9P,IACrBve,KAAK+wC,QAAUlK,GAGVA,EAAOxgC,KAAM,CAEd,MAAMw1Q,EAAc,KAChB,IAAK,MAAMC,KAAW97Q,KAAK47Q,UACvBE,EAAQ96P,UAAW,CAAI,EAGzB46J,EAAaz4K,IACf,IAAK,MAAM24Q,KAAW97Q,KAAK47Q,UACvBE,EAAQp4Q,KAAK,QAASP,EAAM,EAG9BV,EAAM,KAER,IAAK,MAAMq5Q,KAAW97Q,KAAK47Q,WACQ,IAA3BE,EAAQ9D,gBACR8D,EAAQZ,gBAAkBl7Q,KAAK27Q,SAASp6Q,QACxCu6Q,EAAQvgQ,QAEhBvb,KAAK47Q,UAAUnmN,QAEf5uB,EAAO6K,eAAe,MAAOjvC,GAC7BokC,EAAO6K,eAAe,QAASkqI,GAC/B/0I,EAAO6K,eAAe,WAAYmqO,EAAY,EAGlDh1O,EAAO9rB,GAAG,MAAOtY,GACjBokC,EAAO9rB,GAAG,QAAS6gK,GACnB/0I,EAAO9rB,GAAG,WAAY8gQ,EAC1B,CACJ,CAEA,QAAAP,CAAS7sQ,GAEAzO,KAAK+wC,QAAQ1qC,MACdrG,KAAK47Q,UAAUn9P,IAAIhQ,EAC3B,CAEA,UAAAitQ,CAAWjtQ,GACPzO,KAAK47Q,UAAUrnP,OAAO9lB,EAC1B,CAEA,MAAA8sQ,CAAOvwK,GACH,IAAIxpF,EAAO,KAOX,OALIwpF,EAAMhrG,KAAK27Q,SAASp6Q,OACpBigB,EAAOxhB,KAAK27Q,SAAS3wK,GAEfhrG,KAAK+wC,QAAQ1qC,MAAyC,QAAhCmb,EAAOxhB,KAAK+wC,QAAQxvB,UAChDvhB,KAAK27Q,SAAS3wK,GAAOxpF,GAClBA,CACX,CAEA,MAAA65P,CAAOrwK,GACH,OAAOhrG,KAAK+wC,QAAQ1qC,MAAQrG,KAAK27Q,SAASp6Q,SAAWypG,CACzD,EAKJ,MAAMt9C,UAAyB7tC,EAC3B,WAAA7Q,CAAY63B,EAAQ0sE,GAChBpzF,QACAngB,KAAK+wC,QAAU,KACf/wC,KAAKs4Q,gBAAsF,KAApE/kK,aAAmC,EAASA,EAAKglK,eAEpErD,EAAUruO,IACV7mC,KAAK+wC,QAAU,IAAIlxB,EACnBgnB,EAAOvgC,MAAKpG,IACRF,KAAK+wC,QAAU,KACf/wC,KAAK6mC,OAAS3mC,CAAK,IACpBujC,OAAMtgC,GAASnD,KAAK0D,KAAK,QAASP,MAGhC0jC,IACL7mC,KAAK6mC,OAASA,EAEtB,CACA,UAAIA,CAAO3mC,GACP,IAAI2mC,EAAS3mC,EACb,GAAqB,OAAjBF,KAAK+wC,QACL,MAAM,IAAIhvC,MAAM,sDAKpB,GAHIqjK,EAAWv+H,KACXA,EAASA,EAAOt9B,OAAOe,aAEvBijJ,EAAW1mH,GAAS,CACpB,IAAIv8B,EAAWu8B,EACfA,EAAS,IAAIsvO,EAASvxJ,aACtB/9E,EAAOtlB,KAAO,KACV,GAAiB,OAAbjX,EAAmB,CAEnB,IAAIpE,EACJ,OAASA,EAAOoE,EAASpE,QAAQG,MAC7B,GAAmB,OAAfH,EAAKhG,MACL,OAAOgG,EAAKhG,MAGpBoK,EAAW,KACXtK,KAAKub,OACT,CACA,OAAO,IAAI,CAEnB,MAGIsrB,EAASwxO,EAAsBxxO,GAG/B7mC,KAAKqG,KACDrG,KAAKs4Q,gBAAkBhc,EAAWz1N,EAAO9lB,UACzC8lB,EAAO9lB,WAIf8lB,EAAO3iC,EAAQgtC,aAAelxC,KAC9B6mC,EAAO9rB,GAAG,MAAOy9P,GACjB3xO,EAAO9rB,GAAG,QAASq2B,GACnBvK,EAAO9rB,GAAG,WAAYo2B,GAEtBnxC,KAAK+wC,QAAUlK,EACf7mC,KAAKghB,UAA+B,IAApB6lB,EAAO7lB,SAC3B,CACA,IAAAO,GACI,GAAqB,OAAjBvhB,KAAK+wC,UAA8C,IAA1B/wC,KAAK+wC,QAAQ/vB,SAAoB,CAC1D,MAAMQ,EAAOxhB,KAAK+wC,QAAQxvB,OAC1B,GAAa,OAATC,EACA,OAAOA,EACXxhB,KAAKghB,UAAW,CACpB,CACA,OAAO,IACX,CACA,IAAAE,CAAKH,GAAU,GACU,OAAjB/gB,KAAK+wC,UACL/wC,KAAK+wC,QAAQW,eAAe,MAAO8mO,GACnCx4Q,KAAK+wC,QAAQW,eAAe,QAASN,GACrCpxC,KAAK+wC,QAAQW,eAAe,WAAYP,UACjCnxC,KAAK+wC,QAAQ7sC,EAAQgtC,aACxBlxC,KAAKs4Q,gBAAkBhc,EAAWt8P,KAAK+wC,QAAQhwB,UAC/C/gB,KAAK+wC,QAAQhwB,UACjB/gB,KAAK+wC,QAAU,MAEnB5wB,MAAMe,KAAKH,EACf,EAYJ,SAASsvB,EAAKxJ,EAAQ//B,GAElB,GAAIA,IAAY,cAAeA,GAAW,aAAcA,GAAW,WAAYA,GAAW,kBAAmBA,GAGzG,OAFI+/B,IAAWsuO,EAAetuO,KAC1BA,EAAS,IAAI6mB,EAAiB7mB,IAC3B,IAAIxb,EAAkBwb,EAAQ//B,GAGzC,IAAK+/B,EACD,OAAOyK,IAEX,GAAI4jO,EAAUruO,GACV,OAAO,IAAI6mB,EAAiB7mB,EAAQ//B,GAExC,GAAI+/B,aAAkBhnB,EAClB,OAAOgnB,EAEX,GAAIl8B,MAAMC,QAAQi8B,GACd,OAAOyuO,EAAUzuO,GACrB,GAAIu+H,EAAWv+H,IAAW0mH,EAAW1mH,IAAWsuO,EAAetuO,GAC3D,OAAO,IAAI6mB,EAAiB7mB,EAAQ//B,GAExC,MAAM,IAAIoD,UAAU,mBAAmB28B,IAC3C,CAKA,SAASyK,IACL,OAAO,IAAIlmB,CACf,CAcA,SAASkqP,EAAUjrQ,GACf,OAAO,IAAI60B,EAAc70B,EAC7B,CAmCA,SAAS8W,EAAKk+C,EAAIn2D,GACd,OAAOA,EAAOm2D,EAAGl+C,KAAKjY,GAAQm2D,CAClC,CAEA,SAASi9L,EAAW1yO,GAChB,MAAyB,mBAAXA,CAClB,CAGA,SAASurP,EAAevrP,GACpB,OAAO0yO,EAAW1yO,aAAuC,EAASA,EAAO7O,GAC7E,CAGA,SAASm6P,EAAUtrP,GACf,OAAO0yO,EAAW1yO,aAAuC,EAASA,EAAOtjB,KAC7E,CAGA,SAAS2uQ,EAAmBrrP,GACxB,OAAOA,IAAWurP,EAAevrP,IAAWsrP,EAAUtrP,IAAW0yO,EAAW1yO,GAChF,CAGA,SAASw7I,EAAWx7I,GAChB,OAAOA,GAAWrgB,OAAOe,YAAYsf,CACzC,CAGA,SAAS2jI,EAAW3jI,GAChB,OAAO0yO,EAAW1yO,aAAuC,EAASA,EAAO1jB,KAC7E,CA1HAhC,EAAQwpD,iBAAmBA,EAkC3BxpD,EAAQmsC,KAAOA,EAOfnsC,EAAQotC,MAAQA,EAQhBptC,EAAQghC,OAHR,SAAgB1jB,GACZ,OAAO,IAAIokB,EAAkBpkB,EACjC,EASAtd,EAAQoxQ,UAAYA,EAQpBpxQ,EAAQmxQ,aAHR,SAAsBxuO,GAClB,OAAO,IAAI6mB,EAAiB7mB,EAChC,EASA3iC,EAAQkxQ,aAHR,SAAsBvuO,GAClB,OAAO,IAAI6mB,EAAiB7mB,EAChC,EASA3iC,EAAQ2/J,MAHR,SAAe11I,GACX,OAAO,IAAI4R,EAAc5R,EAC7B,EASAjqB,EAAQk/E,MAHR,SAAe5gF,EAAOC,EAAKwD,GACvB,OAAO,IAAIyvQ,EAAgB,CAAElzQ,QAAOC,MAAKwD,QAC7C,EAUA/B,EAAQo4P,WAAaA,EAKrBp4P,EAAQixQ,eAAiBA,EAKzBjxQ,EAAQgxQ,UAAYA,EAKpBhxQ,EAAQ+wQ,mBAAqBA,EAK7B/wQ,EAAQkhK,WAAaA,EAKrBlhK,EAAQqpJ,WAAaA,8BCr8DrBnsJ,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQutC,gBAAa,EAqCrBvtC,EAAQutC,WAjCR,MACI,WAAAziC,GACIhP,KAAKs3O,QAAU,EACft3O,KAAKoiK,MAAQ,KACbpiK,KAAKw+J,MAAQ,IACjB,CACA,UAAIj9J,GAAW,OAAOvB,KAAKs3O,OAAS,CACpC,SAAI5mL,GAAU,IAAI5rD,EAAI,OAA6B,QAArBA,EAAK9E,KAAKoiK,aAA0B,IAAPt9J,OAAgB,EAASA,EAAG5E,KAAO,CAC9F,QAAIywD,GAAS,IAAI7rD,EAAI,OAA6B,QAArBA,EAAK9E,KAAKw+J,aAA0B,IAAP15J,OAAgB,EAASA,EAAG5E,KAAO,CAC7F,SAAIoxC,GAAU,OAAsB,OAAftxC,KAAKoiK,KAAgB,CAC1C,IAAA7+J,CAAKrD,GACD,MAAMs2B,EAAO,CAAEt2B,QAAOgG,KAAM,MACT,OAAflG,KAAKw+J,MACLx+J,KAAKoiK,MAAQpiK,KAAKw+J,MAAQhoI,EAE1Bx2B,KAAKw+J,MAAMt4J,KAAOlG,KAAKw+J,MAAQhoI,EACnCx2B,KAAKs3O,SACT,CACA,KAAA/sO,GACI,GAAmB,OAAfvK,KAAKoiK,MACL,OACJ,MAAM,MAAEliK,EAAK,KAAEgG,GAASlG,KAAKoiK,MAK7B,OAJApiK,KAAKoiK,MAAQl8J,EACA,OAATA,IACAlG,KAAKw+J,MAAQ,MACjBx+J,KAAKs3O,UACEp3O,CACX,CACA,KAAAu1D,GACIz1D,KAAKs3O,QAAU,EACft3O,KAAKoiK,MAAQpiK,KAAKw+J,MAAQ,IAC9B,+BCpCJp9J,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQoyQ,yBAAsB,EAC9B,MAAMyF,EAAWl2Q,QAAQC,aAAQ3F,GAkCjC+D,EAAQoyQ,oBAhCR,WAEI,MAAM0F,EAA8C,mBAAnB72E,eAC7BA,eAAkBoxE,GAASwF,EAASz1Q,KAAKiwQ,GAEvC0F,EAA4C,mBAAjB33E,aAC7BA,aAAgBiyE,GAAStjP,WAAWsjP,EAAM,GAE9C,IAAIl1Q,EAAI,EACJ+hM,EAAQ,KACZ,OAAQmzE,IAEU,OAAVnzE,EACAA,EAAM7/L,KAAKgzQ,KAEJl1Q,EAAI,IACX26Q,EAAkBzF,IAIlBnzE,EAAQ,CAACmzE,GACT0F,GAAkB,KAEd,IAAK,MAAMC,KAAU94E,EACjB44E,EAAkBE,GACtB94E,EAAQ,KAER/hM,EAAI,CAAC,IAEb,CAER,8BChCAD,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,IACtDgE,EAAQipC,cAAW,EACnB,MAAMgvO,EAA8B,iBAAhBnjO,aAChBA,aAC2B,mBAApBA,YAAY/oB,IACjB+oB,YACAhpB,KACA81F,EAAS,IAAIvnG,IAEb69P,EAA8B,iBAAZ/pP,SAA0BA,QAAUA,QAAU,CAAC,EAEjEgqP,EAAc,CAAClhQ,EAAKzO,EAAMxL,EAAMm+D,KACH,mBAAxB+8M,EAAQC,YACTD,EAAQC,YAAYlhQ,EAAKzO,EAAMxL,EAAMm+D,GACrCqrC,QAAQvnG,MAAM,IAAIjC,MAASwL,MAASyO,IAAM,EAEpD,IAAImhQ,EAAKnqP,WAAWlT,gBAChBs9P,EAAKpqP,WAAWjT,YAEpB,QAAkB,IAAPo9P,EAAoB,CAE3BC,EAAK,MACDxsQ,QACAysQ,SAAW,GACXx3E,OACA71L,SAAU,EACV,gBAAAiB,CAAiB+zB,EAAGk7B,GAChBr/D,KAAKw8Q,SAASj5Q,KAAK87D,EACvB,GAGJi9M,EAAK,MACD,WAAAttQ,GACIytQ,GACJ,CACA5uQ,OAAS,IAAI0uQ,EACb,KAAAhtQ,CAAMy1L,GACF,IAAIhlM,KAAK6N,OAAOsB,QAAhB,CAGAnP,KAAK6N,OAAOm3L,OAASA,EAErBhlM,KAAK6N,OAAOsB,SAAU,EAEtB,IAAK,MAAMkwD,KAAMr/D,KAAK6N,OAAO2uQ,SACzBn9M,EAAG2lI,GAEPhlM,KAAK6N,OAAOkC,UAAUi1L,EATZ,CAUd,GAEJ,IAAI03E,EAAsE,MAA7CN,EAAQr4E,KAAK44E,4BAC1C,MAAMF,EAAiB,KACdC,IAELA,GAAyB,EACzBL,EAAY,maAM+D,sBAAuB,UAAWI,GAAe,CAEpI,CAGalzQ,OAAO,QADpB,MAEMqzQ,EAAYh6Q,GAAMA,GAAKA,IAAM+B,KAAKu/E,MAAMthF,IAAMA,EAAI,GAAKmkC,SAASnkC,GAUhEi6Q,EAAgBj4Q,GAASg4Q,EAASh4Q,GAElCA,GAAOD,KAAKm8F,IAAI,EAAG,GACfj1F,WACAjH,GAAOD,KAAKm8F,IAAI,EAAG,IACfgiB,YACAl+G,GAAOD,KAAKm8F,IAAI,EAAG,IACfP,YACA37F,GAAOd,OAAOo3F,iBACV4hL,EACA,KAThB,KAWN,MAAMA,UAAkBnyQ,MACpB,WAAAqE,CAAYlP,GACRqgB,MAAMrgB,GACNE,KAAK4qG,KAAK,EACd,EAEJ,MAAMq3D,EACF86G,KACAx7Q,OAEAy7Q,UAAuB,EACvB,aAAOj1Q,CAAOnD,GACV,MAAMq4Q,EAAUJ,EAAaj4Q,GAC7B,IAAKq4Q,EACD,MAAO,GACXh7G,GAAM,GAAgB,EACtB,MAAM/8J,EAAI,IAAI+8J,EAAMr9J,EAAKq4Q,GAEzB,OADAh7G,GAAM,GAAgB,EACf/8J,CACX,CACA,WAAA8J,CAAYpK,EAAKq4Q,GAEb,IAAKh7G,GAAM,EACP,MAAM,IAAI/3J,UAAU,2CAGxBlK,KAAK+8Q,KAAO,IAAIE,EAAQr4Q,GACxB5E,KAAKuB,OAAS,CAClB,CACA,IAAAgC,CAAKX,GACD5C,KAAK+8Q,KAAK/8Q,KAAKuB,UAAYqB,CAC/B,CACA,GAAAY,GACI,OAAOxD,KAAK+8Q,OAAO/8Q,KAAKuB,OAC5B,EAWJ,MAAM4rC,EAIF,GACA,GACA,GACA,GACA,GAIA+vO,IAIAC,cAIAC,aAIAC,eAIAC,eAIAC,WAIAC,eAIAC,YAIAC,aAIAC,gBAIAC,yBAIAC,mBAIAC,uBAIAC,2BAIAC,iBAEA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GAUA,4BAAOC,CAAsB9qQ,GACzB,MAAO,CAEH+qQ,OAAQ/qQ,GAAE,EACVgrQ,KAAMhrQ,GAAE,EACRoiJ,MAAOpiJ,GAAE,EACTirQ,OAAQjrQ,GAAE,EACVkrQ,QAASlrQ,GAAE,EACXmrQ,QAASnrQ,GAAE,EACXjN,KAAMiN,GAAE,EACR2lF,KAAM3lF,GAAE,EACR,QAAIkkC,GACA,OAAOlkC,GAAE,CACb,EACA,QAAI4sJ,GACA,OAAO5sJ,GAAE,CACb,EACAorQ,KAAMprQ,GAAE,EAERqrQ,kBAAoB/1Q,GAAM0K,GAAE,EAAmB1K,GAC/Cg2Q,gBAAiB,CAAC17Q,EAAGob,EAAOrX,EAASygB,IAAYpU,GAAE,EAAiBpQ,EAAGob,EAAOrX,EAASygB,GACvFm3P,WAAavgQ,GAAUhL,GAAE,EAAYgL,GACrC0wL,QAAU/nM,GAAYqM,GAAE,EAASrM,GACjC63Q,SAAW73Q,GAAYqM,GAAE,EAAUrM,GACnC83Q,QAAUzgQ,GAAUhL,GAAE,EAASgL,GAEvC,CAKA,OAAIvZ,GACA,OAAO5E,MAAK,CAChB,CAIA,WAAI6+Q,GACA,OAAO7+Q,MAAK,CAChB,CAIA,kBAAI8+Q,GACA,OAAO9+Q,MAAK,CAChB,CAIA,QAAIF,GACA,OAAOE,MAAK,CAChB,CAIA,eAAI++Q,GACA,OAAO/+Q,MAAK,CAChB,CAIA,WAAIg/Q,GACA,OAAOh/Q,MAAK,CAChB,CAIA,gBAAIi/Q,GACA,OAAOj/Q,MAAK,CAChB,CACA,WAAAgP,CAAYlI,GACR,MAAM,IAAElC,EAAM,EAAC,IAAEs4Q,EAAG,cAAEC,EAAgB,EAAC,aAAEC,EAAY,eAAEC,EAAc,eAAEC,EAAc,WAAEC,EAAU,QAAEyB,EAAO,aAAEC,EAAY,eAAEzB,EAAc,YAAEC,EAAW,QAAEoB,EAAU,EAAC,aAAEnB,EAAe,EAAC,gBAAEC,EAAe,YAAEoB,EAAW,yBAAEnB,EAAwB,mBAAEC,EAAkB,2BAAEE,EAA0B,uBAAED,EAAsB,iBAAEE,GAAsBl3Q,EAC5U,GAAY,IAARlC,IAAcg4Q,EAASh4Q,GACvB,MAAM,IAAIsF,UAAU,4CAExB,MAAMg1Q,EAAYt6Q,EAAMi4Q,EAAaj4Q,GAAO+F,MAC5C,IAAKu0Q,EACD,MAAM,IAAIn9Q,MAAM,sBAAwB6C,GAM5C,GAJA5E,MAAK,EAAO4E,EACZ5E,MAAK,EAAW6+Q,EAChB7+Q,KAAK09Q,aAAeA,GAAgB19Q,MAAK,EACzCA,KAAK29Q,gBAAkBA,EACnB39Q,KAAK29Q,gBAAiB,CACtB,IAAK39Q,MAAK,IAAaA,KAAK09Q,aACxB,MAAM,IAAIxzQ,UAAU,sEAExB,GAAoC,mBAAzBlK,KAAK29Q,gBACZ,MAAM,IAAIzzQ,UAAU,sCAE5B,CACA,QAAoB/J,IAAhB4+Q,GACuB,mBAAhBA,EACP,MAAM,IAAI70Q,UAAU,+CAkCxB,GAhCAlK,MAAK,EAAe++Q,EACpB/+Q,MAAK,IAAoB++Q,EACzB/+Q,MAAK,EAAU,IAAI4gB,IACnB5gB,MAAK,EAAW,IAAI2K,MAAM/F,GAAKgmG,UAAKzqG,GACpCH,MAAK,EAAW,IAAI2K,MAAM/F,GAAKgmG,UAAKzqG,GACpCH,MAAK,EAAQ,IAAIk/Q,EAAUt6Q,GAC3B5E,MAAK,EAAQ,IAAIk/Q,EAAUt6Q,GAC3B5E,MAAK,EAAQ,EACbA,MAAK,EAAQ,EACbA,MAAK,EAAQiiK,EAAMl6J,OAAOnD,GAC1B5E,MAAK,EAAQ,EACbA,MAAK,EAAkB,EACA,mBAAZg/Q,IACPh/Q,MAAK,EAAWg/Q,GAEQ,mBAAjBC,GACPj/Q,MAAK,EAAgBi/Q,EACrBj/Q,MAAK,EAAY,KAGjBA,MAAK,OAAgBG,EACrBH,MAAK,OAAYG,GAErBH,MAAK,IAAgBA,MAAK,EAC1BA,MAAK,IAAqBA,MAAK,EAC/BA,KAAKw9Q,iBAAmBA,EACxBx9Q,KAAKy9Q,cAAgBA,EACrBz9Q,KAAK49Q,2BAA6BA,EAClC59Q,KAAK+9Q,6BAA+BA,EACpC/9Q,KAAK89Q,yBAA2BA,EAChC99Q,KAAKg+Q,mBAAqBA,EAEA,IAAtBh+Q,KAAK09Q,aAAoB,CACzB,GAAsB,IAAlB19Q,MAAK,IACA48Q,EAAS58Q,MAAK,GACf,MAAM,IAAIkK,UAAU,mDAG5B,IAAK0yQ,EAAS58Q,KAAK09Q,cACf,MAAM,IAAIxzQ,UAAU,wDAExBlK,MAAK,GACT,CAWA,GAVAA,KAAKu9Q,aAAeA,EACpBv9Q,KAAK69Q,qBAAuBA,EAC5B79Q,KAAKq9Q,iBAAmBA,EACxBr9Q,KAAKs9Q,iBAAmBA,EACxBt9Q,KAAKm9Q,cACDP,EAASO,IAAoC,IAAlBA,EACrBA,EACA,EACVn9Q,KAAKo9Q,eAAiBA,EACtBp9Q,KAAKk9Q,IAAMA,GAAO,EACdl9Q,KAAKk9Q,IAAK,CACV,IAAKN,EAAS58Q,KAAKk9Q,KACf,MAAM,IAAIhzQ,UAAU,+CAExBlK,MAAK,GACT,CAEA,GAAkB,IAAdA,MAAK,GAA2B,IAAbA,KAAKk9Q,KAA+B,IAAlBl9Q,MAAK,EAC1C,MAAM,IAAIkK,UAAU,oDAExB,IAAKlK,KAAKo9Q,eAAiBp9Q,MAAK,IAASA,MAAK,EAAU,CACpD,MAAMkB,EAAO,sBApUN,CAACA,IAAU4kH,EAAO34G,IAAIjM,GAqUzBi+Q,CAAWj+Q,KACX4kH,EAAOrnG,IAAIvd,GAGXm7Q,EAFY,gGAEK,wBAAyBn7Q,EAAMisC,GAExD,CACJ,CAIA,eAAAiyO,CAAgB3+Q,GACZ,OAAOT,MAAK,EAAQmN,IAAI1M,GAAOywG,IAAW,CAC9C,CACA,KACI,MAAMitK,EAAO,IAAIrB,EAAU98Q,MAAK,GAC1Bk+Q,EAAS,IAAIpB,EAAU98Q,MAAK,GAClCA,MAAK,EAAQm+Q,EACbn+Q,MAAK,EAAUk+Q,EACfl+Q,MAAK,EAAc,CAACme,EAAO++P,EAAK16Q,EAAQ25Q,EAAKlsP,SAGzC,GAFAiuP,EAAO//P,GAAiB,IAAR++P,EAAY16Q,EAAQ,EACpC27Q,EAAKhgQ,GAAS++P,EACF,IAARA,GAAal9Q,KAAKo9Q,aAAc,CAChC,MAAMp5K,EAAI/wE,YAAW,KACbjzB,MAAK,EAASme,IACdne,KAAKu0B,OAAOv0B,MAAK,EAASme,GAC9B,GACD++P,EAAM,GAGLl5K,EAAEq7K,OACFr7K,EAAEq7K,OAGV,GAEJr/Q,MAAK,EAAiBme,IAClB+/P,EAAO//P,GAAyB,IAAhBggQ,EAAKhgQ,GAAeg+P,EAAKlsP,MAAQ,CAAC,EAEtDjwB,MAAK,EAAa,CAACsO,EAAQ6P,KACvB,GAAIggQ,EAAKhgQ,GAAQ,CACb,MAAM++P,EAAMiB,EAAKhgQ,GACX3b,EAAQ07Q,EAAO//P,GACrB7P,EAAO4uQ,IAAMA,EACb5uQ,EAAO9L,MAAQA,EACf8L,EAAO2hB,IAAMqvP,GAAaC,IAC1B,MAAMC,EAAMlxQ,EAAO2hB,IAAMztB,EACzB8L,EAAOmxQ,aAAevC,EAAMsC,CAChC,GAIJ,IAAIF,EAAY,EAChB,MAAMC,EAAS,KACX,MAAM38Q,EAAIu5Q,EAAKlsP,MACf,GAAIjwB,KAAKm9Q,cAAgB,EAAG,CACxBmC,EAAY18Q,EACZ,MAAMohG,EAAI/wE,YAAW,IAAOqsP,EAAY,GAAIt/Q,KAAKm9Q,eAG7Cn5K,EAAEq7K,OACFr7K,EAAEq7K,OAGV,CACA,OAAOz8Q,CAAC,EAEZ5C,KAAKo/Q,gBAAkB3+Q,IACnB,MAAM0d,EAAQne,MAAK,EAAQsH,IAAI7G,GAC/B,QAAcN,IAAVge,EACA,OAAO,EAEX,MAAM++P,EAAMiB,EAAKhgQ,GACX3b,EAAQ07Q,EAAO//P,GACrB,OAAY,IAAR++P,GAAuB,IAAV16Q,EACN0uG,IAGJgsK,IADMoC,GAAaC,KAAY/8Q,EACtB,EAEpBxC,MAAK,EAAWme,GACY,IAAhBggQ,EAAKhgQ,IACS,IAAlB+/P,EAAO//P,KACNmhQ,GAAaC,KAAYrB,EAAO//P,GAASggQ,EAAKhgQ,EAE3D,CAEA,GAAiB,OACjB,GAAa,OACb,GAAc,OAEd,GAAW,KAAM,EACjB,KACI,MAAMo3I,EAAQ,IAAIunH,EAAU98Q,MAAK,GACjCA,MAAK,EAAkB,EACvBA,MAAK,EAASu1J,EACdv1J,MAAK,EAAkBme,IACnBne,MAAK,GAAmBu1J,EAAMp3I,GAC9Bo3I,EAAMp3I,GAAS,CAAC,EAEpBne,MAAK,EAAe,CAAC+C,EAAGm7F,EAAGp+F,EAAM69Q,KAG7B,GAAI39Q,MAAK,EAAmBk+F,GACxB,OAAO,EAEX,IAAK0+K,EAAS98Q,GAAO,CACjB,IAAI69Q,EAUA,MAAM,IAAIzzQ,UAAU,6HATpB,GAA+B,mBAApByzQ,EACP,MAAM,IAAIzzQ,UAAU,sCAGxB,GADApK,EAAO69Q,EAAgBz/K,EAAGn7F,IACrB65Q,EAAS98Q,GACV,MAAM,IAAIoK,UAAU,2DAQhC,CACA,OAAOpK,CAAI,EAEfE,MAAK,EAAe,CAACme,EAAOre,EAAMwO,KAE9B,GADAinJ,EAAMp3I,GAASre,EACXE,MAAK,EAAU,CACf,MAAM6+Q,EAAU7+Q,MAAK,EAAWu1J,EAAMp3I,GACtC,KAAOne,MAAK,EAAkB6+Q,GAC1B7+Q,MAAK,GAAO,EAEpB,CACAA,MAAK,GAAmBu1J,EAAMp3I,GAC1B7P,IACAA,EAAOoxQ,UAAY5/Q,EACnBwO,EAAOqxQ,oBAAsB3/Q,MAAK,EACtC,CAER,CACA,GAAkB64G,MAClB,GAAe,CAACA,EAAI+mK,EAAIC,KAAT,EACf,GAAe,CAAC5hI,EAAIu5G,EAAI13P,EAAM69Q,KAC1B,GAAI79Q,GAAQ69Q,EACR,MAAM,IAAIzzQ,UAAU,oEAExB,OAAO,CAAC,EAEZ,GAAC,EAAS,WAAEqzQ,EAAav9Q,KAAKu9Q,YAAe,CAAC,GAC1C,GAAIv9Q,MAAK,EACL,IAAK,IAAIqB,EAAIrB,MAAK,EACTA,MAAK,EAAcqB,MAGpBk8Q,GAAev9Q,MAAK,EAASqB,WACvBA,GAENA,IAAMrB,MAAK,IAIXqB,EAAIrB,MAAK,EAAMqB,EAI/B,CACA,GAAC,EAAU,WAAEk8Q,EAAav9Q,KAAKu9Q,YAAe,CAAC,GAC3C,GAAIv9Q,MAAK,EACL,IAAK,IAAIqB,EAAIrB,MAAK,EACTA,MAAK,EAAcqB,MAGpBk8Q,GAAev9Q,MAAK,EAASqB,WACvBA,GAENA,IAAMrB,MAAK,IAIXqB,EAAIrB,MAAK,EAAMqB,EAI/B,CACA,GAAc8c,GACV,YAAkBhe,IAAVge,GACJne,MAAK,EAAQsH,IAAItH,MAAK,EAASme,MAAYA,CACnD,CAKA,QAAC7Q,GACG,IAAK,MAAMjM,KAAKrB,MAAK,SACQG,IAArBH,MAAK,EAASqB,SACOlB,IAArBH,MAAK,EAASqB,IACbrB,MAAK,EAAmBA,MAAK,EAASqB,WACjC,CAACrB,MAAK,EAASqB,GAAIrB,MAAK,EAASqB,IAGnD,CAOA,SAACy+Q,GACG,IAAK,MAAMz+Q,KAAKrB,MAAK,SACQG,IAArBH,MAAK,EAASqB,SACOlB,IAArBH,MAAK,EAASqB,IACbrB,MAAK,EAAmBA,MAAK,EAASqB,WACjC,CAACrB,MAAK,EAASqB,GAAIrB,MAAK,EAASqB,IAGnD,CAKA,KAACF,GACG,IAAK,MAAME,KAAKrB,MAAK,IAAY,CAC7B,MAAM+C,EAAI/C,MAAK,EAASqB,QACdlB,IAAN4C,GACC/C,MAAK,EAAmBA,MAAK,EAASqB,YACjC0B,EAEd,CACJ,CAOA,MAACg9Q,GACG,IAAK,MAAM1+Q,KAAKrB,MAAK,IAAa,CAC9B,MAAM+C,EAAI/C,MAAK,EAASqB,QACdlB,IAAN4C,GACC/C,MAAK,EAAmBA,MAAK,EAASqB,YACjC0B,EAEd,CACJ,CAKA,OAACsK,GACG,IAAK,MAAMhM,KAAKrB,MAAK,SAEPG,IADAH,MAAK,EAASqB,IAEnBrB,MAAK,EAAmBA,MAAK,EAASqB,YACjCrB,MAAK,EAASqB,GAGhC,CAOA,QAAC2+Q,GACG,IAAK,MAAM3+Q,KAAKrB,MAAK,SAEPG,IADAH,MAAK,EAASqB,IAEnBrB,MAAK,EAAmBA,MAAK,EAASqB,YACjCrB,MAAK,EAASqB,GAGhC,CAKA,CAACkI,OAAOe,YACJ,OAAOtK,KAAKsN,SAChB,CAKA,IAAA4uG,CAAK78C,EAAI4gN,EAAa,CAAC,GACnB,IAAK,MAAM5+Q,KAAKrB,MAAK,IAAY,CAC7B,MAAMk+F,EAAIl+F,MAAK,EAASqB,GAClBnB,EAAQF,MAAK,EAAmBk+F,GAChCA,EAAEgiL,qBACFhiL,EACN,QAAc/9F,IAAVD,GAEAm/D,EAAGn/D,EAAOF,MAAK,EAASqB,GAAIrB,MAC5B,OAAOA,KAAKsH,IAAItH,MAAK,EAASqB,GAAI4+Q,EAE1C,CACJ,CAOA,OAAAv1Q,CAAQ20D,EAAI8gN,EAAQngR,MAChB,IAAK,MAAMqB,KAAKrB,MAAK,IAAY,CAC7B,MAAMk+F,EAAIl+F,MAAK,EAASqB,GAClBnB,EAAQF,MAAK,EAAmBk+F,GAChCA,EAAEgiL,qBACFhiL,OACQ/9F,IAAVD,GAEJm/D,EAAG12D,KAAKw3Q,EAAOjgR,EAAOF,MAAK,EAASqB,GAAIrB,KAC5C,CACJ,CAKA,QAAAogR,CAAS/gN,EAAI8gN,EAAQngR,MACjB,IAAK,MAAMqB,KAAKrB,MAAK,IAAa,CAC9B,MAAMk+F,EAAIl+F,MAAK,EAASqB,GAClBnB,EAAQF,MAAK,EAAmBk+F,GAChCA,EAAEgiL,qBACFhiL,OACQ/9F,IAAVD,GAEJm/D,EAAG12D,KAAKw3Q,EAAOjgR,EAAOF,MAAK,EAASqB,GAAIrB,KAC5C,CACJ,CAKA,UAAAqgR,GACI,IAAIC,GAAU,EACd,IAAK,MAAMj/Q,KAAKrB,MAAK,EAAU,CAAEu9Q,YAAY,IACrCv9Q,MAAK,EAASqB,KACdrB,KAAKu0B,OAAOv0B,MAAK,EAASqB,IAC1Bi/Q,GAAU,GAGlB,OAAOA,CACX,CAKA,IAAAC,GACI,MAAM3oL,EAAM,GACZ,IAAK,MAAMv2F,KAAKrB,MAAK,EAAS,CAAEu9Q,YAAY,IAAS,CACjD,MAAM98Q,EAAMT,MAAK,EAASqB,GACpB68F,EAAIl+F,MAAK,EAASqB,GAClBnB,EAAQF,MAAK,EAAmBk+F,GAChCA,EAAEgiL,qBACFhiL,EACN,QAAc/9F,IAAVD,QAA+BC,IAARM,EACvB,SACJ,MAAMi8B,EAAQ,CAAEx8B,SAChB,GAAIF,MAAK,GAASA,MAAK,EAAS,CAC5B08B,EAAMwgP,IAAMl9Q,MAAK,EAAMqB,GAGvB,MAAMm+Q,EAAMrD,EAAKlsP,MAAQjwB,MAAK,EAAQqB,GACtCq7B,EAAMl6B,MAAQmC,KAAKu/E,MAAMl0D,KAAKC,MAAQuvP,EAC1C,CACIx/Q,MAAK,IACL08B,EAAM58B,KAAOE,MAAK,EAAOqB,IAE7Bu2F,EAAIkiB,QAAQ,CAACr5G,EAAKi8B,GACtB,CACA,OAAOk7D,CACX,CAMA,IAAA67E,CAAK77E,GACD53F,KAAKy1D,QACL,IAAK,MAAOh1D,EAAKi8B,KAAUk7D,EAAK,CAC5B,GAAIl7D,EAAMl6B,MAAO,CAOb,MAAMg9Q,EAAMxvP,KAAKC,MAAQyM,EAAMl6B,MAC/Bk6B,EAAMl6B,MAAQ25Q,EAAKlsP,MAAQuvP,CAC/B,CACAx/Q,KAAK8L,IAAIrL,EAAKi8B,EAAMx8B,MAAOw8B,EAC/B,CACJ,CAOA,GAAA5wB,CAAI/I,EAAGm7F,EAAGsiL,EAAa,CAAC,GACpB,QAAUrgR,IAAN+9F,EAEA,OADAl+F,KAAKu0B,OAAOxxB,GACL/C,KAEX,MAAM,IAAEk9Q,EAAMl9Q,KAAKk9Q,IAAG,MAAE16Q,EAAK,eAAEg7Q,EAAiBx9Q,KAAKw9Q,eAAc,gBAAEG,EAAkB39Q,KAAK29Q,gBAAe,OAAErvQ,GAAYkyQ,EACzH,IAAI,YAAE/C,EAAcz9Q,KAAKy9Q,aAAgB+C,EACzC,MAAM1gR,EAAOE,MAAK,EAAa+C,EAAGm7F,EAAGsiL,EAAW1gR,MAAQ,EAAG69Q,GAG3D,GAAI39Q,KAAK09Q,cAAgB59Q,EAAOE,KAAK09Q,aAOjC,OANIpvQ,IACAA,EAAOxC,IAAM,OACbwC,EAAOmyQ,sBAAuB,GAGlCzgR,KAAKu0B,OAAOxxB,GACL/C,KAEX,IAAIme,EAAuB,IAAfne,MAAK,OAAcG,EAAYH,MAAK,EAAQsH,IAAIvE,GAC5D,QAAc5C,IAAVge,EAEAA,EAAwB,IAAfne,MAAK,EACRA,MAAK,EACiB,IAAtBA,MAAK,EAAMuB,OACPvB,MAAK,EAAMwD,MACXxD,MAAK,IAAUA,MAAK,EAChBA,MAAK,GAAO,GACZA,MAAK,EACnBA,MAAK,EAASme,GAASpb,EACvB/C,MAAK,EAASme,GAAS+/E,EACvBl+F,MAAK,EAAQ8L,IAAI/I,EAAGob,GACpBne,MAAK,EAAMA,MAAK,GAASme,EACzBne,MAAK,EAAMme,GAASne,MAAK,EACzBA,MAAK,EAAQme,EACbne,MAAK,IACLA,MAAK,EAAame,EAAOre,EAAMwO,GAC3BA,IACAA,EAAOxC,IAAM,OACjB2xQ,GAAc,MAEb,CAEDz9Q,MAAK,EAAYme,GACjB,MAAMi6I,EAASp4J,MAAK,EAASme,GAC7B,GAAI+/E,IAAMk6D,EAAQ,CACd,GAAIp4J,MAAK,GAAmBA,MAAK,EAAmBo4J,GAAS,CACzDA,EAAOsoH,kBAAkBnxQ,MAAM,IAAIxN,MAAM,aACzC,MAAQm+Q,qBAAsBh7Q,GAAMkzJ,OAC1Bj4J,IAAN+E,GAAoBs4Q,IAChBx9Q,MAAK,GACLA,MAAK,IAAWkF,EAAGnC,EAAG,OAEtB/C,MAAK,GACLA,MAAK,GAAWuD,KAAK,CAAC2B,EAAGnC,EAAG,QAGxC,MACUy6Q,IACFx9Q,MAAK,GACLA,MAAK,IAAWo4J,EAAQr1J,EAAG,OAE3B/C,MAAK,GACLA,MAAK,GAAWuD,KAAK,CAAC60J,EAAQr1J,EAAG,SAMzC,GAHA/C,MAAK,EAAgBme,GACrBne,MAAK,EAAame,EAAOre,EAAMwO,GAC/BtO,MAAK,EAASme,GAAS+/E,EACnB5vF,EAAQ,CACRA,EAAOxC,IAAM,UACb,MAAMoB,EAAWkrJ,GAAUp4J,MAAK,EAAmBo4J,GAC7CA,EAAO8nH,qBACP9nH,OACWj4J,IAAb+M,IACAoB,EAAOpB,SAAWA,EAC1B,CACJ,MACSoB,IACLA,EAAOxC,IAAM,SAErB,CAWA,GAVY,IAARoxQ,GAAcl9Q,MAAK,GACnBA,MAAK,IAELA,MAAK,IACAy9Q,GACDz9Q,MAAK,EAAYme,EAAO++P,EAAK16Q,GAE7B8L,GACAtO,MAAK,EAAWsO,EAAQ6P,KAE3Bq/P,GAAkBx9Q,MAAK,GAAoBA,MAAK,EAAW,CAC5D,MAAMo6P,EAAKp6P,MAAK,EAChB,IAAIu2Q,EACJ,KAAQA,EAAOnc,GAAI7vP,SACfvK,MAAK,OAAmBu2Q,EAEhC,CACA,OAAOv2Q,IACX,CAKA,GAAAwD,GACI,IACI,KAAOxD,MAAK,GAAO,CACf,MAAMmrC,EAAMnrC,MAAK,EAASA,MAAK,GAE/B,GADAA,MAAK,GAAO,GACRA,MAAK,EAAmBmrC,IACxB,GAAIA,EAAI+0O,qBACJ,OAAO/0O,EAAI+0O,0BAGd,QAAY//Q,IAARgrC,EACL,OAAOA,CAEf,CACJ,CACA,QACI,GAAInrC,MAAK,GAAoBA,MAAK,EAAW,CACzC,MAAMo6P,EAAKp6P,MAAK,EAChB,IAAIu2Q,EACJ,KAAQA,EAAOnc,GAAI7vP,SACfvK,MAAK,OAAmBu2Q,EAEhC,CACJ,CACJ,CACA,GAAOgI,GACH,MAAMlnO,EAAOr3C,MAAK,EACZ+C,EAAI/C,MAAK,EAASq3C,GAClB6mD,EAAIl+F,MAAK,EAASq3C,GA4BxB,OA3BIr3C,MAAK,GAAmBA,MAAK,EAAmBk+F,GAChDA,EAAEwiL,kBAAkBnxQ,MAAM,IAAIxN,MAAM,aAE/B/B,MAAK,GAAeA,MAAK,KAC1BA,MAAK,GACLA,MAAK,IAAWk+F,EAAGn7F,EAAG,SAEtB/C,MAAK,GACLA,MAAK,GAAWuD,KAAK,CAAC26F,EAAGn7F,EAAG,WAGpC/C,MAAK,EAAgBq3C,GAEjBknO,IACAv+Q,MAAK,EAASq3C,QAAQl3C,EACtBH,MAAK,EAASq3C,QAAQl3C,EACtBH,MAAK,EAAMuD,KAAK8zC,IAED,IAAfr3C,MAAK,GACLA,MAAK,EAAQA,MAAK,EAAQ,EAC1BA,MAAK,EAAMuB,OAAS,GAGpBvB,MAAK,EAAQA,MAAK,EAAMq3C,GAE5Br3C,MAAK,EAAQu0B,OAAOxxB,GACpB/C,MAAK,IACEq3C,CACX,CASA,GAAAlqC,CAAIpK,EAAG49Q,EAAa,CAAC,GACjB,MAAM,eAAErD,EAAiBt9Q,KAAKs9Q,eAAc,OAAEhvQ,GAAWqyQ,EACnDxiQ,EAAQne,MAAK,EAAQsH,IAAIvE,GAC/B,QAAc5C,IAAVge,EAAqB,CACrB,MAAM+/E,EAAIl+F,MAAK,EAASme,GACxB,GAAIne,MAAK,EAAmBk+F,SACG/9F,IAA3B+9F,EAAEgiL,qBACF,OAAO,EAEX,IAAKlgR,MAAK,EAASme,GAQf,OAPIm/P,GACAt9Q,MAAK,EAAeme,GAEpB7P,IACAA,EAAOnB,IAAM,MACbnN,MAAK,EAAWsO,EAAQ6P,KAErB,EAEF7P,IACLA,EAAOnB,IAAM,QACbnN,MAAK,EAAWsO,EAAQ6P,GAEhC,MACS7P,IACLA,EAAOnB,IAAM,QAEjB,OAAO,CACX,CAQA,IAAAqhD,CAAKzrD,EAAG69Q,EAAc,CAAC,GACnB,MAAM,WAAErD,EAAav9Q,KAAKu9Q,YAAeqD,EACnCziQ,EAAQne,MAAK,EAAQsH,IAAIvE,GAC/B,QAAc5C,IAAVge,IACCo/P,IAAev9Q,MAAK,EAASme,IAAS,CACvC,MAAM+/E,EAAIl+F,MAAK,EAASme,GAExB,OAAOne,MAAK,EAAmBk+F,GAAKA,EAAEgiL,qBAAuBhiL,CACjE,CACJ,CACA,GAAiBn7F,EAAGob,EAAOrX,EAASygB,GAChC,MAAM22E,OAAc/9F,IAAVge,OAAsBhe,EAAYH,MAAK,EAASme,GAC1D,GAAIne,MAAK,EAAmBk+F,GACxB,OAAOA,EAEX,MAAMurH,EAAK,IAAI6yD,GACT,OAAEzuQ,GAAW/G,EAEnB+G,GAAQuC,iBAAiB,SAAS,IAAMq5M,EAAGl6M,MAAM1B,EAAOm3L,SAAS,CAC7Dn3L,OAAQ47M,EAAG57M,SAEf,MAAMgzQ,EAAY,CACdhzQ,OAAQ47M,EAAG57M,OACX/G,UACAygB,WAEE2oH,EAAK,CAAChyC,EAAG4iL,GAAc,KACzB,MAAM,QAAE3xQ,GAAYs6M,EAAG57M,OACjBkzQ,EAAcj6Q,EAAQk3Q,uBAA0B79Q,IAAN+9F,EAYhD,GAXIp3F,EAAQwH,SACJa,IAAY2xQ,GACZh6Q,EAAQwH,OAAO0yQ,cAAe,EAC9Bl6Q,EAAQwH,OAAO2yQ,WAAax3D,EAAG57M,OAAOm3L,OAClC+7E,IACAj6Q,EAAQwH,OAAO4yQ,mBAAoB,IAGvCp6Q,EAAQwH,OAAO6yQ,eAAgB,GAGnChyQ,IAAY4xQ,IAAgBD,EAC5B,OAAOM,EAAU33D,EAAG57M,OAAOm3L,QAG/B,MAAMq8E,EAAK54Q,EAgBX,OAfIzI,MAAK,EAASme,KAAW1V,SACftI,IAAN+9F,EACImjL,EAAGnB,qBACHlgR,MAAK,EAASme,GAASkjQ,EAAGnB,qBAG1BlgR,KAAKu0B,OAAOxxB,IAIZ+D,EAAQwH,SACRxH,EAAQwH,OAAOgzQ,cAAe,GAClCthR,KAAK8L,IAAI/I,EAAGm7F,EAAG2iL,EAAU/5Q,WAG1Bo3F,CAAC,EASNkjL,EAAap6J,IACf,MAAM,QAAE73G,GAAYs6M,EAAG57M,OACjB0zQ,EAAoBpyQ,GAAWrI,EAAQg3Q,uBACvCP,EAAagE,GAAqBz6Q,EAAQi3Q,2BAC1CyD,EAAWjE,GAAcz2Q,EAAQ82Q,yBACjCyD,EAAK54Q,EAgBX,GAfIzI,MAAK,EAASme,KAAW1V,IAGZ+4Q,QAAwCrhR,IAA5BkhR,EAAGnB,qBAIlBqB,IAKNvhR,MAAK,EAASme,GAASkjQ,EAAGnB,sBAP1BlgR,KAAKu0B,OAAOxxB,IAUhBw6Q,EAIA,OAHIz2Q,EAAQwH,aAAsCnO,IAA5BkhR,EAAGnB,uBACrBp5Q,EAAQwH,OAAOmzQ,eAAgB,GAE5BJ,EAAGnB,qBAET,GAAImB,EAAGK,aAAeL,EACvB,MAAMr6J,CACV,EAqBAlgH,EAAQwH,SACRxH,EAAQwH,OAAOqzQ,iBAAkB,GACrC,MAAMl5Q,EAAI,IAAI5C,SArBA,CAACd,EAAK46N,KAChB,MAAMiiD,EAAM5hR,MAAK,IAAe+C,EAAGm7F,EAAG2iL,GAClCe,GAAOA,aAAe/7Q,SACtB+7Q,EAAIt7Q,MAAK43F,GAAKn5F,OAAU5E,IAAN+9F,OAAkB/9F,EAAY+9F,IAAIyhI,GAKxDlW,EAAG57M,OAAOuC,iBAAiB,SAAS,KAC3BtJ,EAAQk3Q,mBACTl3Q,EAAQg3Q,yBACR/4Q,OAAI5E,GAEA2G,EAAQg3Q,yBACR/4Q,EAAMm5F,GAAKgyC,EAAGhyC,GAAG,IAEzB,GACF,IAIuB53F,KAAK4pI,GA3DtBlpB,IACJlgH,EAAQwH,SACRxH,EAAQwH,OAAOuzQ,eAAgB,EAC/B/6Q,EAAQwH,OAAO2yQ,WAAaj6J,GAEzBo6J,EAAUp6J,MAuDfq6J,EAAKjgR,OAAOoU,OAAO/M,EAAG,CACxBi4Q,kBAAmBj3D,EACnBy2D,qBAAsBhiL,EACtBwjL,gBAAYvhR,IAUhB,YARcA,IAAVge,GAEAne,KAAK8L,IAAI/I,EAAGs+Q,EAAI,IAAKR,EAAU/5Q,QAASwH,YAAQnO,IAChDge,EAAQne,MAAK,EAAQsH,IAAIvE,IAGzB/C,MAAK,EAASme,GAASkjQ,EAEpBA,CACX,CACA,GAAmB54Q,GACf,IAAKzI,MAAK,EACN,OAAO,EACX,MAAM47F,EAAInzF,EACV,QAAUmzF,GACNA,aAAa/1F,SACb+1F,EAAElzF,eAAe,yBACjBkzF,EAAE8kL,6BAA6BpE,CACvC,CACA,WAAM10Q,CAAM7E,EAAG++Q,EAAe,CAAC,GAC3B,MAAM,WAENvE,EAAav9Q,KAAKu9Q,WAAU,eAAEF,EAAiBr9Q,KAAKq9Q,eAAc,mBAAEQ,EAAqB79Q,KAAK69Q,mBAAkB,IAEhHX,EAAMl9Q,KAAKk9Q,IAAG,eAAEM,EAAiBx9Q,KAAKw9Q,eAAc,KAAE19Q,EAAO,EAAC,gBAAE69Q,EAAkB39Q,KAAK29Q,gBAAe,YAAEF,EAAcz9Q,KAAKy9Q,YAAW,yBAEtIG,EAA2B59Q,KAAK49Q,yBAAwB,2BAAEG,EAA6B/9Q,KAAK+9Q,2BAA0B,iBAAEC,EAAmBh+Q,KAAKg+Q,iBAAgB,uBAAEF,EAAyB99Q,KAAK89Q,uBAAsB,QAAEv2P,EAAO,aAAEw6P,GAAe,EAAK,OAAEzzQ,EAAM,OAAET,GAAYi0Q,EAC3Q,IAAK9hR,MAAK,EAGN,OAFIsO,IACAA,EAAO1G,MAAQ,OACZ5H,KAAKsH,IAAIvE,EAAG,CACfw6Q,aACAF,iBACAQ,qBACAvvQ,WAGR,MAAMxH,EAAU,CACZy2Q,aACAF,iBACAQ,qBACAX,MACAM,iBACA19Q,OACA69Q,kBACAF,cACAG,2BACAG,6BACAD,yBACAE,mBACA1vQ,SACAT,UAEJ,IAAIsQ,EAAQne,MAAK,EAAQsH,IAAIvE,GAC7B,QAAc5C,IAAVge,EAAqB,CACjB7P,IACAA,EAAO1G,MAAQ,QACnB,MAAMa,EAAIzI,MAAK,EAAiB+C,EAAGob,EAAOrX,EAASygB,GACnD,OAAQ9e,EAAEi5Q,WAAaj5Q,CAC3B,CACK,CAED,MAAMy1F,EAAIl+F,MAAK,EAASme,GACxB,GAAIne,MAAK,EAAmBk+F,GAAI,CAC5B,MAAM8jL,EAAQzE,QAAyCp9Q,IAA3B+9F,EAAEgiL,qBAM9B,OALI5xQ,IACAA,EAAO1G,MAAQ,WACXo6Q,IACA1zQ,EAAOmzQ,eAAgB,IAExBO,EAAQ9jL,EAAEgiL,qBAAwBhiL,EAAEwjL,WAAaxjL,CAC5D,CAGA,MAAM0gL,EAAU5+Q,MAAK,EAASme,GAC9B,IAAK4jQ,IAAiBnD,EASlB,OARItwQ,IACAA,EAAO1G,MAAQ,OACnB5H,MAAK,EAAYme,GACbk/P,GACAr9Q,MAAK,EAAeme,GAEpB7P,GACAtO,MAAK,EAAWsO,EAAQ6P,GACrB+/E,EAIX,MAAMz1F,EAAIzI,MAAK,EAAiB+C,EAAGob,EAAOrX,EAASygB,GAE7C06P,OADsC9hR,IAA3BsI,EAAEy3Q,sBACU3C,EAM7B,OALIjvQ,IACAA,EAAO1G,MAAQg3Q,EAAU,QAAU,UAC/BqD,GAAYrD,IACZtwQ,EAAOmzQ,eAAgB,IAExBQ,EAAWx5Q,EAAEy3Q,qBAAwBz3Q,EAAEi5Q,WAAaj5Q,CAC/D,CACJ,CAOA,GAAAnB,CAAIvE,EAAGk9Q,EAAa,CAAC,GACjB,MAAM,WAAE1C,EAAav9Q,KAAKu9Q,WAAU,eAAEF,EAAiBr9Q,KAAKq9Q,eAAc,mBAAEQ,EAAqB79Q,KAAK69Q,mBAAkB,OAAEvvQ,GAAY2xQ,EAChI9hQ,EAAQne,MAAK,EAAQsH,IAAIvE,GAC/B,QAAc5C,IAAVge,EAAqB,CACrB,MAAMje,EAAQF,MAAK,EAASme,GACtB+jQ,EAAWliR,MAAK,EAAmBE,GAGzC,OAFIoO,GACAtO,MAAK,EAAWsO,EAAQ6P,GACxBne,MAAK,EAASme,IACV7P,IACAA,EAAOhH,IAAM,SAEZ46Q,GASG5zQ,GACAivQ,QAC+Bp9Q,IAA/BD,EAAMggR,uBACN5xQ,EAAOmzQ,eAAgB,GAEpBlE,EAAar9Q,EAAMggR,0BAAuB//Q,IAb5C09Q,GACD79Q,KAAKu0B,OAAOxxB,GAEZuL,GAAUivQ,IACVjvQ,EAAOmzQ,eAAgB,GACpBlE,EAAar9Q,OAAQC,KAY5BmO,IACAA,EAAOhH,IAAM,OAMb46Q,EACOhiR,EAAMggR,sBAEjBlgR,MAAK,EAAYme,GACbk/P,GACAr9Q,MAAK,EAAeme,GAEjBje,GAEf,CACSoO,IACLA,EAAOhH,IAAM,OAErB,CACA,GAASmB,EAAG7F,GACR5C,MAAK,EAAM4C,GAAK6F,EAChBzI,MAAK,EAAMyI,GAAK7F,CACpB,CACA,GAAYub,GASJA,IAAUne,MAAK,IACXme,IAAUne,MAAK,EACfA,MAAK,EAAQA,MAAK,EAAMme,GAGxBne,MAAK,EAASA,MAAK,EAAMme,GAAQne,MAAK,EAAMme,IAEhDne,MAAK,EAASA,MAAK,EAAOme,GAC1Bne,MAAK,EAAQme,EAErB,CAKA,OAAOpb,GACH,IAAIu9Q,GAAU,EACd,GAAmB,IAAftgR,MAAK,EAAa,CAClB,MAAMme,EAAQne,MAAK,EAAQsH,IAAIvE,GAC/B,QAAc5C,IAAVge,EAEA,GADAmiQ,GAAU,EACS,IAAftgR,MAAK,EACLA,KAAKy1D,YAEJ,CACDz1D,MAAK,EAAgBme,GACrB,MAAM+/E,EAAIl+F,MAAK,EAASme,GACpBne,MAAK,EAAmBk+F,GACxBA,EAAEwiL,kBAAkBnxQ,MAAM,IAAIxN,MAAM,aAE/B/B,MAAK,GAAeA,MAAK,KAC1BA,MAAK,GACLA,MAAK,IAAWk+F,EAAGn7F,EAAG,UAEtB/C,MAAK,GACLA,MAAK,GAAWuD,KAAK,CAAC26F,EAAGn7F,EAAG,YAGpC/C,MAAK,EAAQu0B,OAAOxxB,GACpB/C,MAAK,EAASme,QAAShe,EACvBH,MAAK,EAASme,QAAShe,EACnBge,IAAUne,MAAK,EACfA,MAAK,EAAQA,MAAK,EAAMme,GAEnBA,IAAUne,MAAK,EACpBA,MAAK,EAAQA,MAAK,EAAMme,IAGxBne,MAAK,EAAMA,MAAK,EAAMme,IAAUne,MAAK,EAAMme,GAC3Cne,MAAK,EAAMA,MAAK,EAAMme,IAAUne,MAAK,EAAMme,IAE/Cne,MAAK,IACLA,MAAK,EAAMuD,KAAK4a,EACpB,CAER,CACA,GAAIne,MAAK,GAAoBA,MAAK,GAAWuB,OAAQ,CACjD,MAAM64P,EAAKp6P,MAAK,EAChB,IAAIu2Q,EACJ,KAAQA,EAAOnc,GAAI7vP,SACfvK,MAAK,OAAmBu2Q,EAEhC,CACA,OAAO+J,CACX,CAIA,KAAA7qN,GACI,IAAK,MAAMt3C,KAASne,MAAK,EAAU,CAAEu9Q,YAAY,IAAS,CACtD,MAAMr/K,EAAIl+F,MAAK,EAASme,GACxB,GAAIne,MAAK,EAAmBk+F,GACxBA,EAAEwiL,kBAAkBnxQ,MAAM,IAAIxN,MAAM,gBAEnC,CACD,MAAMgB,EAAI/C,MAAK,EAASme,GACpBne,MAAK,GACLA,MAAK,IAAWk+F,EAAGn7F,EAAG,UAEtB/C,MAAK,GACLA,MAAK,GAAWuD,KAAK,CAAC26F,EAAGn7F,EAAG,UAEpC,CACJ,CAgBA,GAfA/C,MAAK,EAAQy1D,QACbz1D,MAAK,EAAS4qG,UAAKzqG,GACnBH,MAAK,EAAS4qG,UAAKzqG,GACfH,MAAK,GAASA,MAAK,IACnBA,MAAK,EAAM4qG,KAAK,GAChB5qG,MAAK,EAAQ4qG,KAAK,IAElB5qG,MAAK,GACLA,MAAK,EAAO4qG,KAAK,GAErB5qG,MAAK,EAAQ,EACbA,MAAK,EAAQ,EACbA,MAAK,EAAMuB,OAAS,EACpBvB,MAAK,EAAkB,EACvBA,MAAK,EAAQ,EACTA,MAAK,GAAoBA,MAAK,EAAW,CACzC,MAAMo6P,EAAKp6P,MAAK,EAChB,IAAIu2Q,EACJ,KAAQA,EAAOnc,GAAI7vP,SACfvK,MAAK,OAAmBu2Q,EAEhC,CACJ,EAEJryQ,EAAQipC,SAAWA,kvHCz3Cfg1O,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBliR,IAAjBmiR,EACH,OAAOA,EAAap+Q,QAGrB,IAAID,EAASk+Q,EAAyBE,GAAY,CAGjDn+Q,QAAS,CAAC,GAOX,OAHAq+Q,EAAoBF,GAAU15Q,KAAK1E,EAAOC,QAASD,EAAQA,EAAOC,QAASk+Q,GAGpEn+Q,EAAOC,OACf,CCrBAk+Q,EAAoBx/Q,EAAKqB,IACxB,IAAIu+Q,EAASv+Q,GAAUA,EAAOoE,WAC7B,IAAOpE,EAAiB,QACxB,IAAM,EAEP,OADAm+Q,EAAoBrjL,EAAEyjL,EAAQ,CAAEhnL,EAAGgnL,IAC5BA,CAAM,ECLdJ,EAAoBrjL,EAAI,CAAC76F,EAASwvE,KACjC,IAAI,IAAIjzE,KAAOizE,EACX0uM,EAAoBp6Q,EAAE0rE,EAAYjzE,KAAS2hR,EAAoBp6Q,EAAE9D,EAASzD,IAC5EW,OAAO+C,eAAeD,EAASzD,EAAK,CAAE4G,YAAY,EAAMC,IAAKosE,EAAWjzE,IAE1E,ECND2hR,EAAoB/wN,EAAI,WACvB,GAA0B,iBAAfl/B,WAAyB,OAAOA,WAC3C,IACC,OAAOnyB,MAAQ,IAAIwkH,SAAS,cAAb,EAChB,CAAE,MAAOr+G,GACR,GAAsB,iBAAXgZ,OAAqB,OAAOA,MACxC,CACA,CAPuB,GCAxBijQ,EAAoBp6Q,EAAI,CAAC6B,EAAKsvG,IAAU/3G,OAAOM,UAAUgH,eAAeC,KAAKkB,EAAKsvG,GCClFipK,EAAoB1mL,EAAKx3F,IACH,oBAAXqF,QAA0BA,OAAO6oI,aAC1ChxI,OAAO+C,eAAeD,EAASqF,OAAO6oI,YAAa,CAAElyI,MAAO,WAE7DkB,OAAO+C,eAAeD,EAAS,aAAc,CAAEhE,OAAO,GAAO,ECF9D,IAAIuiR,EAAsBL,EAAoB","sources":["webpack://Comunica/../../node_modules/@bergos/jsonparse/jsonparse.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/fragment.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/index.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/lookup/fetchContext.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/lookup/index.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/lookup/lookupAllPrefixes.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/lookup/lookupNamespace.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/dist/lookup/lookupPrefix.js","webpack://Comunica/../../node_modules/@jeswr/prefixcc/node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://Comunica/../../node_modules/@rubensworks/saxes/saxes.js","webpack://Comunica/../../node_modules/abort-controller/browser.js","webpack://Comunica/../../node_modules/arrayify-stream/index.js","webpack://Comunica/../../node_modules/asyncjoin/index.js","webpack://Comunica/../../node_modules/asyncjoin/join/DynamicNestedLoopJoin.js","webpack://Comunica/../../node_modules/asyncjoin/join/HashJoin.js","webpack://Comunica/../../node_modules/asyncjoin/join/NestedLoopJoin.js","webpack://Comunica/../../node_modules/asyncjoin/join/SymmetricHashJoin.js","webpack://Comunica/../../node_modules/asyncjoin/util/MergeIterator.js","webpack://Comunica/./engine-browser.js","webpack://Comunica/QueryEngine.ts","webpack://Comunica/index-browser.ts","webpack://Comunica/ActorAbstractMediaTyped.ts","webpack://Comunica/ActorAbstractMediaTypedFixed.ts","webpack://Comunica/index.ts","webpack://Comunica/ActorAbstractPath.ts","webpack://Comunica/PathVariableObjectIterator.ts","webpack://Comunica/ActorContextPreprocessSourceToDestination.ts","webpack://Comunica/ActorDereferenceFallback.ts","webpack://Comunica/ActorDereferenceHttp-browser.ts","webpack://Comunica/ActorDereferenceHttpBase.ts","webpack://Comunica/ActorDereferenceRdfParse.ts","webpack://Comunica/ActorHashBindingsSha1.ts","webpack://Comunica/ActorHttpFetch.ts","webpack://Comunica/FetchInitPreprocessor-browser.ts","webpack://Comunica/ActorHttpProxy.ts","webpack://Comunica/ProxyHandlerStatic.ts","webpack://Comunica/ActorHttpWayback.ts","webpack://Comunica/ActorInitQuery-browser.ts","webpack://Comunica/ActorInitQueryBase.ts","webpack://Comunica/MemoryPhysicalQueryPlanLogger.ts","webpack://Comunica/QueryEngineBase.ts","webpack://Comunica/ActorOptimizeQueryOperationBgpToJoin.ts","webpack://Comunica/ActorOptimizeQueryOperationJoinBgp.ts","webpack://Comunica/ActorOptimizeQueryOperationJoinConnected.ts","webpack://Comunica/ActorQueryOperationAsk.ts","webpack://Comunica/ActorQueryOperationBgpJoin.ts","webpack://Comunica/ActorQueryOperationConstruct.ts","webpack://Comunica/BindingsToQuadsIterator.ts","webpack://Comunica/ActorQueryOperationDescribeSubject.ts","webpack://Comunica/ActorQueryOperationDistinctHash.ts","webpack://Comunica/ActorQueryOperationExtend.ts","webpack://Comunica/ActorQueryOperationFilterSparqlee.ts","webpack://Comunica/ActorQueryOperationFromQuad.ts","webpack://Comunica/ActorQueryOperationGroup.ts","webpack://Comunica/GroupsState.ts","webpack://Comunica/ActorQueryOperationJoin.ts","webpack://Comunica/ActorQueryOperationLeftJoin.ts","webpack://Comunica/ActorQueryOperationMinus.ts","webpack://Comunica/ActorQueryOperationNop.ts","webpack://Comunica/ActorQueryOperationOrderBySparqlee.ts","webpack://Comunica/SortIterator.ts","webpack://Comunica/ActorQueryOperationPathAlt.ts","webpack://Comunica/ActorQueryOperationPathInv.ts","webpack://Comunica/ActorQueryOperationPathLink.ts","webpack://Comunica/ActorQueryOperationPathNps.ts","webpack://Comunica/ActorQueryOperationPathOneOrMore.ts","webpack://Comunica/ActorQueryOperationPathSeq.ts","webpack://Comunica/ActorQueryOperationPathZeroOrMore.ts","webpack://Comunica/ActorQueryOperationPathZeroOrOne.ts","webpack://Comunica/ActorQueryOperationProject.ts","webpack://Comunica/ActorQueryOperationQuadpattern.ts","webpack://Comunica/ActorQueryOperationReducedHash.ts","webpack://Comunica/ActorQueryOperationService.ts","webpack://Comunica/ActorQueryOperationSlice.ts","webpack://Comunica/ActorQueryOperationSparqlEndpoint.ts","webpack://Comunica/LazyCardinalityIterator.ts","webpack://Comunica/ActorQueryOperationUnion.ts","webpack://Comunica/ActorQueryOperationAddRewrite.ts","webpack://Comunica/ActorQueryOperationClear.ts","webpack://Comunica/ActorQueryOperationUpdateCompositeUpdate.ts","webpack://Comunica/ActorQueryOperationCopyRewrite.ts","webpack://Comunica/ActorQueryOperationCreate.ts","webpack://Comunica/ActorQueryOperationUpdateDeleteInsert.ts","webpack://Comunica/ActorQueryOperationDrop.ts","webpack://Comunica/ActorQueryOperationLoad.ts","webpack://Comunica/ActorQueryOperationMoveRewrite.ts","webpack://Comunica/ActorQueryOperationValues.ts","webpack://Comunica/ActorQueryParseGraphql.ts","webpack://Comunica/ActorQueryParseSparql.ts","webpack://Comunica/ActorQueryResultSerializeJson.ts","webpack://Comunica/ActorQueryResultSerializeRdf.ts","webpack://Comunica/ActorQueryResultSerializeSimple.ts","webpack://Comunica/ActorQueryResultSerializeSparqlCsv.ts","webpack://Comunica/ActionObserverHttp.ts","webpack://Comunica/ActorQueryResultSerializeSparqlJson.ts","webpack://Comunica/ActorQueryResultSerializeSparqlTsv.ts","webpack://Comunica/ActorQueryResultSerializeSparqlXml.ts","webpack://Comunica/XmlSerializer.ts","webpack://Comunica/ActorQueryResultSerializeStats.ts","webpack://Comunica/ActorQueryResultSerializeTable.ts","webpack://Comunica/ActorQueryResultSerializeTree.ts","webpack://Comunica/ActorRdfJoinEntriesSortCardinality.ts","webpack://Comunica/ActorRdfJoinHash.ts","webpack://Comunica/ActorRdfJoinMultiBind.ts","webpack://Comunica/ActorRdfJoinMultiEmpty.ts","webpack://Comunica/ActorRdfJoinMultiSmallest.ts","webpack://Comunica/ActorRdfJoinNestedLoop.ts","webpack://Comunica/ActorRdfJoinNone.ts","webpack://Comunica/ActorRdfJoinSingle.ts","webpack://Comunica/ActorRdfJoinSymmetricHash.ts","webpack://Comunica/ActorRdfJoinMinusHashUndef.ts","webpack://Comunica/BindingsIndex.ts","webpack://Comunica/ActorRdfJoinMinusHash.ts","webpack://Comunica/ActorRdfJoinOptionalBind.ts","webpack://Comunica/ActorRdfJoinOptionalNestedLoop.ts","webpack://Comunica/ActorRdfJoinSelectivityVariableCounting.ts","webpack://Comunica/ActorRdfMetadataAccumulateCanContainUndefs.ts","webpack://Comunica/ActorRdfMetadataAccumulateCardinality.ts","webpack://Comunica/ActorRdfMetadataAccumulatePageSize.ts","webpack://Comunica/ActorRdfMetadataAccumulateRequestTime.ts","webpack://Comunica/ActorRdfMetadataAll.ts","webpack://Comunica/ActorRdfMetadataExtractAllowHttpMethods.ts","webpack://Comunica/ActorRdfMetadataExtractHydraControls.ts","webpack://Comunica/ActorRdfMetadataExtractHydraCount.ts","webpack://Comunica/ActorRdfMetadataExtractHydraPagesize.ts","webpack://Comunica/ActorRdfMetadataExtractPatchSparqlUpdate.ts","webpack://Comunica/ActorRdfMetadataExtractPutAccepted.ts","webpack://Comunica/ActorRdfMetadataExtractRequestTime.ts","webpack://Comunica/ActorRdfMetadataExtractSparqlService.ts","webpack://Comunica/ActorRdfMetadataPrimaryTopic.ts","webpack://Comunica/ActorRdfParseHtmlMicrodata.ts","webpack://Comunica/ActorRdfParseHtmlRdfa.ts","webpack://Comunica/ActorRdfParseHtmlScript.ts","webpack://Comunica/HtmlScriptListener.ts","webpack://Comunica/ActorRdfParseHtml.ts","webpack://Comunica/ActorRdfParseJsonLd.ts","webpack://Comunica/DocumentLoaderMediated.ts","webpack://Comunica/ActorRdfParseN3.ts","webpack://Comunica/ActorRdfParseRdfXml.ts","webpack://Comunica/ActorRdfParseShaclc.ts","webpack://Comunica/PrefixWrappingIterator.ts","webpack://Comunica/ActorRdfParseXmlRdfa.ts","webpack://Comunica/ActorRdfResolveHypermediaLinksNext.ts","webpack://Comunica/ActorRdfResolveHypermediaLinksQueueFifo.ts","webpack://Comunica/LinkQueueFifo.ts","webpack://Comunica/ActorRdfResolveHypermediaNone.ts","webpack://Comunica/ActorRdfResolveHypermediaQpf.ts","webpack://Comunica/RdfSourceQpf.ts","webpack://Comunica/ActorRdfResolveHypermediaSparql.ts","webpack://Comunica/RdfSourceSparql.ts","webpack://Comunica/ActorRdfResolveQuadPatternFederated.ts","webpack://Comunica/FederatedQuadSource.ts","webpack://Comunica/ActorRdfResolveQuadPatternHypermedia.ts","webpack://Comunica/LinkedRdfSourcesAsyncRdfIterator.ts","webpack://Comunica/MediatedLinkedRdfSourcesAsyncRdfIterator.ts","webpack://Comunica/MediatedQuadSource.ts","webpack://Comunica/StreamingStoreMetadata.ts","webpack://Comunica/ActorRdfResolveQuadPatternRdfJsSource.ts","webpack://Comunica/RdfJsQuadSource.ts","webpack://Comunica/ActorRdfResolveQuadPatternStringSource.ts","webpack://Comunica/ActorRdfSerializeJsonLd.ts","webpack://Comunica/ActorRdfSerializeN3.ts","webpack://Comunica/ActorRdfSerializeShaclc.ts","webpack://Comunica/ActorRdfUpdateHypermediaPatchSparqlUpdate.ts","webpack://Comunica/QuadDestinationPatchSparqlUpdate.ts","webpack://Comunica/ActorRdfUpdateHypermediaPutLdp.ts","webpack://Comunica/QuadDestinationPutLdp.ts","webpack://Comunica/ActorRdfUpdateHypermediaSparql.ts","webpack://Comunica/QuadDestinationSparql.ts","webpack://Comunica/ActorRdfUpdateQuadsHypermedia.ts","webpack://Comunica/ActorRdfUpdateQuadsRdfJsStore.ts","webpack://Comunica/RdfJsQuadDestination.ts","webpack://Comunica/Bindings.ts","webpack://Comunica/BindingsFactory.ts","webpack://Comunica/bindingsToString.ts","webpack://Comunica/ActorContextPreprocess.ts","webpack://Comunica/ActorDereferenceRdf.ts","webpack://Comunica/ActorDereference.ts","webpack://Comunica/ActorDereferenceBase.ts","webpack://Comunica/ActorDereferenceParse.ts","webpack://Comunica/ActorHashBindings.ts","webpack://Comunica/ActorHttpInvalidate.ts","webpack://Comunica/ActorHttpInvalidateListenable.ts","webpack://Comunica/ActorHttp.ts","webpack://Comunica/ActorInit.ts","webpack://Comunica/ActorOptimizeQueryOperation.ts","webpack://Comunica/ActorQueryOperation.ts","webpack://Comunica/ActorQueryOperationTyped.ts","webpack://Comunica/ActorQueryOperationTypedMediated.ts","webpack://Comunica/BusQueryOperation.ts","webpack://Comunica/ClosableTransformIterator.ts","webpack://Comunica/ActorQueryParse.ts","webpack://Comunica/ActorQueryResultSerialize.ts","webpack://Comunica/ActorQueryResultSerializeFixedMediaTypes.ts","webpack://Comunica/ActorRdfJoinEntriesSort.ts","webpack://Comunica/ActorRdfJoinSelectivity.ts","webpack://Comunica/ActorRdfJoin.ts","webpack://Comunica/ActorRdfMetadataAccumulate.ts","webpack://Comunica/ActorRdfMetadataExtract.ts","webpack://Comunica/ActorRdfMetadata.ts","webpack://Comunica/ActorRdfParse.ts","webpack://Comunica/ActorRdfParseFixedMediaTypes.ts","webpack://Comunica/ActorRdfResolveHypermediaLinksQueue.ts","webpack://Comunica/LinkQueueWrapper.ts","webpack://Comunica/ActorRdfResolveHypermediaLinks.ts","webpack://Comunica/ActorRdfResolveHypermedia.ts","webpack://Comunica/ActorRdfResolveQuadPattern.ts","webpack://Comunica/ActorRdfResolveQuadPatternSource.ts","webpack://Comunica/utils.ts","webpack://Comunica/ActorRdfSerialize.ts","webpack://Comunica/ActorRdfSerializeFixedMediaTypes.ts","webpack://Comunica/ActorRdfUpdateHypermedia.ts","webpack://Comunica/ActorRdfUpdateQuads.ts","webpack://Comunica/ActorRdfUpdateQuadsDestination.ts","webpack://Comunica/IQuadDestination.ts","webpack://Comunica/Keys.ts","webpack://Comunica/ActionContext.ts","webpack://Comunica/ActionObserver.ts","webpack://Comunica/Actor.ts","webpack://Comunica/Bus.ts","webpack://Comunica/BusIndexed.ts","webpack://Comunica/ContextEntries.ts","webpack://Comunica/Mediator.ts","webpack://Comunica/BlankNodeBindingsScoped.ts","webpack://Comunica/BlankNodeScoped.ts","webpack://Comunica/Aggregator.ts","webpack://Comunica/Average.ts","webpack://Comunica/Count.ts","webpack://Comunica/GroupConcat.ts","webpack://Comunica/Max.ts","webpack://Comunica/Min.ts","webpack://Comunica/Sample.ts","webpack://Comunica/Sum.ts","webpack://Comunica/WildcardCountAggregator.ts","webpack://Comunica/AggregateEvaluator.ts","webpack://Comunica/AsyncAggregateEvaluator.ts","webpack://Comunica/AsyncEvaluator.ts","webpack://Comunica/SyncEvaluator.ts","webpack://Comunica/AsyncRecursiveEvaluator.ts","webpack://Comunica/BaseAggregateEvaluator.ts","webpack://Comunica/BaseExpressionEvaluator.ts","webpack://Comunica/SyncRecursiveEvaluator.ts","webpack://Comunica/Aggregate.ts","webpack://Comunica/AsyncExtension.ts","webpack://Comunica/Existence.ts","webpack://Comunica/Expressions.ts","webpack://Comunica/Named.ts","webpack://Comunica/Operator.ts","webpack://Comunica/SpecialOperator.ts","webpack://Comunica/SyncExtension.ts","webpack://Comunica/Term.ts","webpack://Comunica/Variable.ts","webpack://Comunica/Core.ts","webpack://Comunica/Helpers.ts","webpack://Comunica/NamedFunctions.ts","webpack://Comunica/OverloadTree.ts","webpack://Comunica/RegularFunctions.ts","webpack://Comunica/SpecialFunctions.ts","webpack://Comunica/XPathFunctions.ts","webpack://Comunica/AlgebraTransformer.ts","webpack://Comunica/TermTransformer.ts","webpack://Comunica/Consts.ts","webpack://Comunica/DateTimeHelpers.ts","webpack://Comunica/Errors.ts","webpack://Comunica/Ordering.ts","webpack://Comunica/Parsing.ts","webpack://Comunica/Serialization.ts","webpack://Comunica/SpecAlgos.ts","webpack://Comunica/TypeHandling.ts","webpack://Comunica/LoggerVoid.ts","webpack://Comunica/MediatorAll.ts","webpack://Comunica/MediatorCombinePipeline.ts","webpack://Comunica/MediatorCombineUnion.ts","webpack://Comunica/MediatorJoinCoefficientsFixed.ts","webpack://Comunica/MediatorNumber.ts","webpack://Comunica/MediatorRace.ts","webpack://Comunica/MetadataValidationState.ts","webpack://Comunica/Logger.ts","webpack://Comunica/../../node_modules/base64-js/index.js","webpack://Comunica/../../node_modules/bignumber.js/bignumber.js","webpack://Comunica/../../node_modules/buffer/index.js","webpack://Comunica/../../node_modules/canonicalize/lib/canonicalize.js","webpack://Comunica/../../node_modules/cross-fetch/dist/browser-polyfill.js","webpack://Comunica/../../node_modules/cross-fetch/dist/browser-ponyfill.js","webpack://Comunica/../../node_modules/dom-serializer/lib/foreignNames.js","webpack://Comunica/../../node_modules/dom-serializer/lib/index.js","webpack://Comunica/../../node_modules/domelementtype/lib/index.js","webpack://Comunica/../../node_modules/domhandler/lib/index.js","webpack://Comunica/../../node_modules/domhandler/lib/node.js","webpack://Comunica/../../node_modules/domutils/lib/feeds.js","webpack://Comunica/../../node_modules/domutils/lib/helpers.js","webpack://Comunica/../../node_modules/domutils/lib/index.js","webpack://Comunica/../../node_modules/domutils/lib/legacy.js","webpack://Comunica/../../node_modules/domutils/lib/manipulation.js","webpack://Comunica/../../node_modules/domutils/lib/querying.js","webpack://Comunica/../../node_modules/domutils/lib/stringify.js","webpack://Comunica/../../node_modules/domutils/lib/traversal.js","webpack://Comunica/../../node_modules/entities/lib/decode.js","webpack://Comunica/../../node_modules/entities/lib/decode_codepoint.js","webpack://Comunica/../../node_modules/entities/lib/encode.js","webpack://Comunica/../../node_modules/entities/lib/escape.js","webpack://Comunica/../../node_modules/entities/lib/generated/decode-data-html.js","webpack://Comunica/../../node_modules/entities/lib/generated/decode-data-xml.js","webpack://Comunica/../../node_modules/entities/lib/generated/encode-html.js","webpack://Comunica/../../node_modules/entities/lib/index.js","webpack://Comunica/../../node_modules/events/events.js","webpack://Comunica/../../node_modules/fast-deep-equal/es6/index.js","webpack://Comunica/../../node_modules/fetch-sparql-endpoint/index.js","webpack://Comunica/../../node_modules/fetch-sparql-endpoint/lib/SparqlEndpointFetcher.js","webpack://Comunica/../../node_modules/fetch-sparql-endpoint/node_modules/cross-fetch/dist/browser-polyfill.js","webpack://Comunica/../../node_modules/graphql-to-sparql/index.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/Converter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/IConvertContext.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/IConvertSettings.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/Util.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerAdapter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerDefinitionAdapter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerDefinitionFragment.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerDefinitionOperation.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerDocument.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerSelectionAdapter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerSelectionField.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerSelectionFragmentSpread.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/NodeHandlerSelectionInlineFragment.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerAdapter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerInclude.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerOptional.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerPlural.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerSingle.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/DirectiveNodeHandlerSkip.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/directivenode/index.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/index.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerAdapter.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerBoolean.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerEnum.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerFloat.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerInt.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerList.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerNull.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerObject.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerString.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/NodeValueHandlerVariable.js","webpack://Comunica/../../node_modules/graphql-to-sparql/lib/handler/valuenode/index.js","webpack://Comunica/../../node_modules/graphql/error/GraphQLError.js","webpack://Comunica/../../node_modules/graphql/error/syntaxError.js","webpack://Comunica/../../node_modules/graphql/jsutils/defineInspect.js","webpack://Comunica/../../node_modules/graphql/jsutils/devAssert.js","webpack://Comunica/../../node_modules/graphql/jsutils/inspect.js","webpack://Comunica/../../node_modules/graphql/jsutils/instanceOf.js","webpack://Comunica/../../node_modules/graphql/jsutils/invariant.js","webpack://Comunica/../../node_modules/graphql/jsutils/isObjectLike.js","webpack://Comunica/../../node_modules/graphql/jsutils/nodejsCustomInspectSymbol.js","webpack://Comunica/../../node_modules/graphql/language/ast.js","webpack://Comunica/../../node_modules/graphql/language/blockString.js","webpack://Comunica/../../node_modules/graphql/language/directiveLocation.js","webpack://Comunica/../../node_modules/graphql/language/index.js","webpack://Comunica/../../node_modules/graphql/language/kinds.js","webpack://Comunica/../../node_modules/graphql/language/lexer.js","webpack://Comunica/../../node_modules/graphql/language/location.js","webpack://Comunica/../../node_modules/graphql/language/parser.js","webpack://Comunica/../../node_modules/graphql/language/predicates.js","webpack://Comunica/../../node_modules/graphql/language/printLocation.js","webpack://Comunica/../../node_modules/graphql/language/printer.js","webpack://Comunica/../../node_modules/graphql/language/source.js","webpack://Comunica/../../node_modules/graphql/language/tokenKind.js","webpack://Comunica/../../node_modules/graphql/language/visitor.js","webpack://Comunica/../../node_modules/graphql/polyfills/symbols.js","webpack://Comunica/../../node_modules/hash.js/lib/hash.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/common.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/hmac.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/ripemd.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/1.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/224.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/256.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/384.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/512.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/sha/common.js","webpack://Comunica/../../node_modules/hash.js/lib/hash/utils.js","webpack://Comunica/../../node_modules/htmlparser2/lib/Parser.js","webpack://Comunica/../../node_modules/htmlparser2/lib/Tokenizer.js","webpack://Comunica/../../node_modules/htmlparser2/lib/index.js","webpack://Comunica/../../node_modules/http-link-header/lib/link.js","webpack://Comunica/../../node_modules/ieee754/index.js","webpack://Comunica/../../node_modules/immutable/dist/immutable.es.js","webpack://Comunica/../../node_modules/inherits/inherits_browser.js","webpack://Comunica/../../node_modules/is-stream/index.js","webpack://Comunica/../../node_modules/jsonld-context-parser/index.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/ContextParser.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/ErrorCoded.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/FetchDocumentLoader.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/IDocumentLoader.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/JsonLdContext.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/JsonLdContextNormalized.js","webpack://Comunica/../../node_modules/jsonld-context-parser/lib/Util.js","webpack://Comunica/../../node_modules/jsonld-context-parser/node_modules/cross-fetch/dist/browser-polyfill.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/index.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/ContextTree.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/JsonLdParser.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/ParsingContext.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/Util.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/containerhandler/ContainerHandlerIdentifier.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/containerhandler/ContainerHandlerIndex.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/containerhandler/ContainerHandlerLanguage.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/containerhandler/ContainerHandlerType.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/EntryHandlerArrayValue.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/EntryHandlerContainer.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/EntryHandlerInvalidFallback.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/EntryHandlerPredicate.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeyword.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordAnnotation.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordContext.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordGraph.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordId.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordIncluded.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordNest.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordType.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordUnknownFallback.js","webpack://Comunica/../../node_modules/jsonld-streaming-parser/lib/entryhandler/keyword/EntryHandlerKeywordValue.js","webpack://Comunica/../../node_modules/jsonld-streaming-serializer/index.js","webpack://Comunica/../../node_modules/jsonld-streaming-serializer/lib/JsonLdSerializer.js","webpack://Comunica/../../node_modules/jsonld-streaming-serializer/lib/SeparatorType.js","webpack://Comunica/../../node_modules/jsonld-streaming-serializer/lib/Util.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/index.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/IHtmlParseListener.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/IItemScope.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/IVocabRegistry.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/MicrodataRdfParser.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/Util.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/propertyhandler/IItemPropertyHandler.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/propertyhandler/ItemPropertyHandlerContent.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/propertyhandler/ItemPropertyHandlerNumber.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/propertyhandler/ItemPropertyHandlerTime.js","webpack://Comunica/../../node_modules/microdata-rdf-streaming-parser/lib/propertyhandler/ItemPropertyHandlerUrl.js","webpack://Comunica/../../node_modules/minimalistic-assert/index.js","webpack://Comunica/../../node_modules/n3/src/IRIs.js","webpack://Comunica/../../node_modules/n3/src/N3Lexer.js","webpack://Comunica/../../node_modules/n3/src/N3Util.js","webpack://Comunica/../../node_modules/n3/src/N3DataFactory.js","webpack://Comunica/../../node_modules/n3/src/N3Parser.js","webpack://Comunica/../../node_modules/n3/src/N3Writer.js","webpack://Comunica/../../node_modules/n3/src/N3Store.js","webpack://Comunica/../../node_modules/n3/src/N3StreamParser.js","webpack://Comunica/../../node_modules/n3/src/N3StreamWriter.js","webpack://Comunica/../../node_modules/n3/src/index.js","webpack://Comunica/../../node_modules/process/browser.js","webpack://Comunica/../../node_modules/promise-polyfill/Promise.js","webpack://Comunica/../../node_modules/queue-microtask/index.js","webpack://Comunica/../../node_modules/rdf-data-factory/index.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/BlankNode.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/DataFactory.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/DefaultGraph.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/Literal.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/NamedNode.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/Quad.js","webpack://Comunica/../../node_modules/rdf-data-factory/lib/Variable.js","webpack://Comunica/../../node_modules/rdf-isomorphic/index.js","webpack://Comunica/../../node_modules/rdf-isomorphic/lib/RdfIsomorphic.js","webpack://Comunica/../../node_modules/rdf-literal/index.js","webpack://Comunica/../../node_modules/rdf-literal/lib/ITypeHandler.js","webpack://Comunica/../../node_modules/rdf-literal/lib/Translator.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/TypeHandlerBoolean.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/TypeHandlerDate.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/TypeHandlerNumberDouble.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/TypeHandlerNumberInteger.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/TypeHandlerString.js","webpack://Comunica/../../node_modules/rdf-literal/lib/handler/index.js","webpack://Comunica/../../node_modules/rdf-store-stream/index.js","webpack://Comunica/../../node_modules/rdf-stores/index.js","webpack://Comunica/../../node_modules/rdf-stores/lib/IRdfStoreOptions.js","webpack://Comunica/../../node_modules/rdf-stores/lib/OrderUtils.js","webpack://Comunica/../../node_modules/rdf-stores/lib/PatternTerm.js","webpack://Comunica/../../node_modules/rdf-stores/lib/RdfStore.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dataset/DatasetCoreWrapper.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/ITermDictionary.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryNumberMap.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryNumberRecord.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryNumberRecordFullTerms.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryQuoted.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryQuotedIndexed.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionaryQuotedReferential.js","webpack://Comunica/../../node_modules/rdf-stores/lib/dictionary/TermDictionarySymbol.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/IRdfStoreIndex.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedMap.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedMapQuoted.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedMapRecursive.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedMapRecursiveQuoted.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedRecord.js","webpack://Comunica/../../node_modules/rdf-stores/lib/index/RdfStoreIndexNestedRecordQuoted.js","webpack://Comunica/../../node_modules/rdf-streaming-store/index.js","webpack://Comunica/../../node_modules/rdf-streaming-store/lib/PendingStreamsIndex.js","webpack://Comunica/../../node_modules/rdf-streaming-store/lib/StreamingStore.js","webpack://Comunica/../../node_modules/rdf-string-ttl/index.js","webpack://Comunica/../../node_modules/rdf-string-ttl/lib/TermUtil.js","webpack://Comunica/../../node_modules/rdf-string/index.js","webpack://Comunica/../../node_modules/rdf-string/lib/TermUtil.js","webpack://Comunica/../../node_modules/rdf-terms/index.js","webpack://Comunica/../../node_modules/rdf-terms/lib/QuadTermUtil.js","webpack://Comunica/../../node_modules/rdf-terms/lib/TermUtil.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/index.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/IActiveTag.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/IHtmlParseListener.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/IRdfaPattern.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/RdfaParser.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/RdfaProfile.js","webpack://Comunica/../../node_modules/rdfa-streaming-parser/lib/Util.js","webpack://Comunica/../../node_modules/rdfxml-streaming-parser/index.js","webpack://Comunica/../../node_modules/rdfxml-streaming-parser/lib/ParseError.js","webpack://Comunica/../../node_modules/rdfxml-streaming-parser/lib/RdfXmlParser.js","webpack://Comunica/../../node_modules/readable-stream-node-to-web/index.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/add-abort-signal.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/compose.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/destroy.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/duplex.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/duplexify.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/from.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/legacy.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/operators.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/passthrough.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/readable.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/state.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/transform.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/utils.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/streams/writable.js","webpack://Comunica/../../node_modules/readable-stream/lib/internal/validators.js","webpack://Comunica/../../node_modules/readable-stream/lib/ours/browser.js","webpack://Comunica/../../node_modules/readable-stream/lib/ours/errors.js","webpack://Comunica/../../node_modules/readable-stream/lib/ours/primordials.js","webpack://Comunica/../../node_modules/readable-stream/lib/ours/util.js","webpack://Comunica/../../node_modules/readable-stream/lib/stream.js","webpack://Comunica/../../node_modules/readable-stream/lib/stream/promises.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/lib/index.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/errors-browser.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/_stream_duplex.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/_stream_passthrough.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/_stream_readable.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/_stream_transform.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/_stream_writable.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/async_iterator.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/buffer_list.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/destroy.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/end-of-stream.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/from-browser.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/pipeline.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/state.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js","webpack://Comunica/../../node_modules/readable-web-to-node-stream/node_modules/readable-stream/readable-browser.js","webpack://Comunica/../../node_modules/relative-to-absolute-iri/index.js","webpack://Comunica/../../node_modules/relative-to-absolute-iri/lib/Resolve.js","webpack://Comunica/../../node_modules/safe-buffer/index.js","webpack://Comunica/../../node_modules/shaclc-parse/lib/ShaclcParser.js","webpack://Comunica/../../node_modules/shaclc-parse/lib/index.js","webpack://Comunica/../../node_modules/shaclc-write/dist/ShaclcGenerator.js","webpack://Comunica/../../node_modules/shaclc-write/dist/base-prefixes.js","webpack://Comunica/../../node_modules/shaclc-write/dist/index.js","webpack://Comunica/../../node_modules/shaclc-write/dist/node-param.js","webpack://Comunica/../../node_modules/shaclc-write/dist/property-param .js","webpack://Comunica/../../node_modules/shaclc-write/dist/utils.js","webpack://Comunica/../../node_modules/shaclc-write/dist/volatile-store.js","webpack://Comunica/../../node_modules/shaclc-write/dist/writer.js","webpack://Comunica/../../node_modules/spark-md5/spark-md5.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/index.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/lib/algebra.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/lib/factory.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/lib/sparql.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/lib/sparqlAlgebra.js","webpack://Comunica/../../node_modules/sparqlalgebrajs/lib/util.js","webpack://Comunica/../../node_modules/sparqljs/lib/SparqlGenerator.js","webpack://Comunica/../../node_modules/sparqljs/lib/SparqlParser.js","webpack://Comunica/../../node_modules/sparqljs/lib/Wildcard.js","webpack://Comunica/../../node_modules/sparqljs/sparql.js","webpack://Comunica/../../node_modules/sparqljson-parse/index.js","webpack://Comunica/../../node_modules/sparqljson-parse/lib/SparqlJsonParser.js","webpack://Comunica/../../node_modules/sparqljson-to-tree/index.js","webpack://Comunica/../../node_modules/sparqljson-to-tree/lib/Converter.js","webpack://Comunica/../../node_modules/sparqlxml-parse/index.js","webpack://Comunica/../../node_modules/sparqlxml-parse/lib/SparqlXmlParser.js","webpack://Comunica/../../node_modules/stream-to-string/index.js","webpack://Comunica/../../node_modules/string_decoder/lib/string_decoder.js","webpack://Comunica/../../node_modules/uritemplate/bin/uritemplate.js","webpack://Comunica/../../node_modules/util-deprecate/browser.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/index.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/md5.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/native.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/nil.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/parse.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/regex.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/rng.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/sha1.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/stringify.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/v1.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/v3.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/v35.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/v4.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/v5.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/validate.js","webpack://Comunica/../../node_modules/uuid/dist/commonjs-browser/version.js","webpack://Comunica/../../node_modules/validate-iri/index.js","webpack://Comunica/../../node_modules/validate-iri/lib/Validate.js","webpack://Comunica/../../node_modules/web-streams-ponyfill/dist/polyfill-ie11.min.js","webpack://Comunica/../../node_modules/xmlchars/xml/1.0/ed5.js","webpack://Comunica/../../node_modules/xmlchars/xml/1.1/ed2.js","webpack://Comunica/../../node_modules/xmlchars/xmlns/1.0/ed3.js","webpack://Comunica/../../packages/actor-hash-bindings-sha1/node_modules/canonicalize/lib/canonicalize.js","webpack://Comunica/../../packages/actor-rdf-parse-html/node_modules/htmlparser2/lib/Parser.js","webpack://Comunica/../../packages/actor-rdf-parse-html/node_modules/htmlparser2/lib/Tokenizer.js","webpack://Comunica/../../packages/actor-rdf-parse-html/node_modules/htmlparser2/lib/index.js","webpack://Comunica/../../node_modules/asynciterator/dist/asynciterator.js","webpack://Comunica/../../node_modules/asynciterator/dist/linkedlist.js","webpack://Comunica/../../node_modules/asynciterator/dist/taskscheduler.js","webpack://Comunica/../../node_modules/lru-cache/dist/cjs/index.js","webpack://Comunica/webpack/bootstrap","webpack://Comunica/webpack/runtime/compat get default export","webpack://Comunica/webpack/runtime/define property getters","webpack://Comunica/webpack/runtime/global","webpack://Comunica/webpack/runtime/hasOwnProperty shorthand","webpack://Comunica/webpack/runtime/make namespace object","webpack://Comunica/webpack/startup"],"sourcesContent":["var { Buffer } = require('buffer')\n// Named constants with unique integer values\nvar C = {};\n// Tokens\nvar LEFT_BRACE = C.LEFT_BRACE = 0x1;\nvar RIGHT_BRACE = C.RIGHT_BRACE = 0x2;\nvar LEFT_BRACKET = C.LEFT_BRACKET = 0x3;\nvar RIGHT_BRACKET = C.RIGHT_BRACKET = 0x4;\nvar COLON = C.COLON = 0x5;\nvar COMMA = C.COMMA = 0x6;\nvar TRUE = C.TRUE = 0x7;\nvar FALSE = C.FALSE = 0x8;\nvar NULL = C.NULL = 0x9;\nvar STRING = C.STRING = 0xa;\nvar NUMBER = C.NUMBER = 0xb;\n// Tokenizer States\nvar START = C.START = 0x11;\nvar STOP = C.STOP = 0x12;\nvar TRUE1 = C.TRUE1 = 0x21;\nvar TRUE2 = C.TRUE2 = 0x22;\nvar TRUE3 = C.TRUE3 = 0x23;\nvar FALSE1 = C.FALSE1 = 0x31;\nvar FALSE2 = C.FALSE2 = 0x32;\nvar FALSE3 = C.FALSE3 = 0x33;\nvar FALSE4 = C.FALSE4 = 0x34;\nvar NULL1 = C.NULL1 = 0x41;\nvar NULL2 = C.NULL2 = 0x42;\nvar NULL3 = C.NULL3 = 0x43;\nvar NUMBER1 = C.NUMBER1 = 0x51;\nvar NUMBER3 = C.NUMBER3 = 0x53;\nvar STRING1 = C.STRING1 = 0x61;\nvar STRING2 = C.STRING2 = 0x62;\nvar STRING3 = C.STRING3 = 0x63;\nvar STRING4 = C.STRING4 = 0x64;\nvar STRING5 = C.STRING5 = 0x65;\nvar STRING6 = C.STRING6 = 0x66;\n// Parser States\nvar VALUE = C.VALUE = 0x71;\nvar KEY = C.KEY = 0x72;\n// Parser Modes\nvar OBJECT = C.OBJECT = 0x81;\nvar ARRAY = C.ARRAY = 0x82;\n// Character constants\nvar BACK_SLASH = \"\\\\\".charCodeAt(0);\nvar FORWARD_SLASH = \"\\/\".charCodeAt(0);\nvar BACKSPACE = \"\\b\".charCodeAt(0);\nvar FORM_FEED = \"\\f\".charCodeAt(0);\nvar NEWLINE = \"\\n\".charCodeAt(0);\nvar CARRIAGE_RETURN = \"\\r\".charCodeAt(0);\nvar TAB = \"\\t\".charCodeAt(0);\n\nvar STRING_BUFFER_SIZE = 64 * 1024;\n\nfunction alloc(size) {\n return Buffer.alloc ? Buffer.alloc(size) : new Buffer(size);\n}\n\nfunction Parser() {\n this.tState = START;\n this.value = undefined;\n\n this.string = undefined; // string data\n this.stringBuffer = alloc(STRING_BUFFER_SIZE);\n this.stringBufferOffset = 0;\n this.unicode = undefined; // unicode escapes\n this.highSurrogate = undefined;\n\n this.key = undefined;\n this.mode = undefined;\n this.stack = [];\n this.state = VALUE;\n this.bytes_remaining = 0; // number of bytes remaining in multi byte utf8 char to read after split boundary\n this.bytes_in_sequence = 0; // bytes in multi byte utf8 char to read\n this.temp_buffs = { \"2\": alloc(2), \"3\": alloc(3), \"4\": alloc(4) }; // for rebuilding chars split before boundary is reached\n\n // Stream offset\n this.offset = -1;\n}\n\n// Slow code to string converter (only used when throwing syntax errors)\nParser.toknam = function (code) {\n var keys = Object.keys(C);\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n if (C[key] === code) { return key; }\n }\n return code && (\"0x\" + code.toString(16));\n};\n\nvar proto = Parser.prototype;\nproto.onError = function (err) { throw err; };\nproto.charError = function (buffer, i) {\n this.tState = STOP;\n this.onError(new Error(\"Unexpected \" + JSON.stringify(String.fromCharCode(buffer[i])) + \" at position \" + i + \" in state \" + Parser.toknam(this.tState)));\n};\nproto.appendStringChar = function (char) {\n if (this.stringBufferOffset >= STRING_BUFFER_SIZE) {\n this.string += this.stringBuffer.toString('utf8');\n this.stringBufferOffset = 0;\n }\n\n this.stringBuffer[this.stringBufferOffset++] = char;\n};\nproto.appendStringBuf = function (buf, start, end) {\n var size = buf.length;\n if (typeof start === 'number') {\n if (typeof end === 'number') {\n if (end < 0) {\n // adding a negative end decreeses the size\n size = buf.length - start + end;\n } else {\n size = end - start;\n }\n } else {\n size = buf.length - start;\n }\n }\n\n if (size < 0) {\n size = 0;\n }\n\n if (this.stringBufferOffset + size > STRING_BUFFER_SIZE) {\n this.string += this.stringBuffer.toString('utf8', 0, this.stringBufferOffset);\n this.stringBufferOffset = 0;\n }\n\n buf.copy(this.stringBuffer, this.stringBufferOffset, start, end);\n this.stringBufferOffset += size;\n};\nproto.write = function (buffer) {\n if (typeof buffer === \"string\") buffer = new Buffer(buffer);\n var n;\n for (var i = 0, l = buffer.length; i < l; i++) {\n if (this.tState === START){\n n = buffer[i];\n this.offset++;\n if(n === 0x7b){ this.onToken(LEFT_BRACE, \"{\"); // {\n }else if(n === 0x7d){ this.onToken(RIGHT_BRACE, \"}\"); // }\n }else if(n === 0x5b){ this.onToken(LEFT_BRACKET, \"[\"); // [\n }else if(n === 0x5d){ this.onToken(RIGHT_BRACKET, \"]\"); // ]\n }else if(n === 0x3a){ this.onToken(COLON, \":\"); // :\n }else if(n === 0x2c){ this.onToken(COMMA, \",\"); // ,\n }else if(n === 0x74){ this.tState = TRUE1; // t\n }else if(n === 0x66){ this.tState = FALSE1; // f\n }else if(n === 0x6e){ this.tState = NULL1; // n\n }else if(n === 0x22){ // \"\n this.string = \"\";\n this.stringBufferOffset = 0;\n this.tState = STRING1;\n }else if(n === 0x2d){ this.string = \"-\"; this.tState = NUMBER1; // -\n }else{\n if (n >= 0x30 && n < 0x40) { // 1-9\n this.string = String.fromCharCode(n); this.tState = NUMBER3;\n } else if (n === 0x20 || n === 0x09 || n === 0x0a || n === 0x0d) {\n // whitespace\n } else {\n return this.charError(buffer, i);\n }\n }\n }else if (this.tState === STRING1){ // After open quote\n n = buffer[i]; // get current byte from buffer\n // check for carry over of a multi byte char split between data chunks\n // & fill temp buffer it with start of this data chunk up to the boundary limit set in the last iteration\n if (this.bytes_remaining > 0) {\n for (var j = 0; j < this.bytes_remaining; j++) {\n this.temp_buffs[this.bytes_in_sequence][this.bytes_in_sequence - this.bytes_remaining + j] = buffer[j];\n }\n\n this.appendStringBuf(this.temp_buffs[this.bytes_in_sequence]);\n this.bytes_in_sequence = this.bytes_remaining = 0;\n i = i + j - 1;\n } else if (this.bytes_remaining === 0 && n >= 128) { // else if no remainder bytes carried over, parse multi byte (>=128) chars one at a time\n if (n <= 193 || n > 244) {\n return this.onError(new Error(\"Invalid UTF-8 character at position \" + i + \" in state \" + Parser.toknam(this.tState)));\n }\n if ((n >= 194) && (n <= 223)) this.bytes_in_sequence = 2;\n if ((n >= 224) && (n <= 239)) this.bytes_in_sequence = 3;\n if ((n >= 240) && (n <= 244)) this.bytes_in_sequence = 4;\n if ((this.bytes_in_sequence + i) > buffer.length) { // if bytes needed to complete char fall outside buffer length, we have a boundary split\n for (var k = 0; k <= (buffer.length - 1 - i); k++) {\n this.temp_buffs[this.bytes_in_sequence][k] = buffer[i + k]; // fill temp buffer of correct size with bytes available in this chunk\n }\n this.bytes_remaining = (i + this.bytes_in_sequence) - buffer.length;\n i = buffer.length - 1;\n } else {\n this.appendStringBuf(buffer, i, i + this.bytes_in_sequence);\n i = i + this.bytes_in_sequence - 1;\n }\n } else if (n === 0x22) {\n this.tState = START;\n this.string += this.stringBuffer.toString('utf8', 0, this.stringBufferOffset);\n this.stringBufferOffset = 0;\n this.onToken(STRING, this.string);\n this.offset += Buffer.byteLength(this.string, 'utf8') + 1;\n this.string = undefined;\n }\n else if (n === 0x5c) {\n this.tState = STRING2;\n }\n else if (n >= 0x20) { this.appendStringChar(n); }\n else {\n return this.charError(buffer, i);\n }\n }else if (this.tState === STRING2){ // After backslash\n n = buffer[i];\n if(n === 0x22){ this.appendStringChar(n); this.tState = STRING1;\n }else if(n === 0x5c){ this.appendStringChar(BACK_SLASH); this.tState = STRING1;\n }else if(n === 0x2f){ this.appendStringChar(FORWARD_SLASH); this.tState = STRING1;\n }else if(n === 0x62){ this.appendStringChar(BACKSPACE); this.tState = STRING1;\n }else if(n === 0x66){ this.appendStringChar(FORM_FEED); this.tState = STRING1;\n }else if(n === 0x6e){ this.appendStringChar(NEWLINE); this.tState = STRING1;\n }else if(n === 0x72){ this.appendStringChar(CARRIAGE_RETURN); this.tState = STRING1;\n }else if(n === 0x74){ this.appendStringChar(TAB); this.tState = STRING1;\n }else if(n === 0x75){ this.unicode = \"\"; this.tState = STRING3;\n }else{\n return this.charError(buffer, i);\n }\n }else if (this.tState === STRING3 || this.tState === STRING4 || this.tState === STRING5 || this.tState === STRING6){ // unicode hex codes\n n = buffer[i];\n // 0-9 A-F a-f\n if ((n >= 0x30 && n < 0x40) || (n > 0x40 && n <= 0x46) || (n > 0x60 && n <= 0x66)) {\n this.unicode += String.fromCharCode(n);\n if (this.tState++ === STRING6) {\n var intVal = parseInt(this.unicode, 16);\n this.unicode = undefined;\n if (this.highSurrogate !== undefined && intVal >= 0xDC00 && intVal < (0xDFFF + 1)) { //<56320,57343> - lowSurrogate\n this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate, intVal)));\n this.highSurrogate = undefined;\n } else if (this.highSurrogate === undefined && intVal >= 0xD800 && intVal < (0xDBFF + 1)) { //<55296,56319> - highSurrogate\n this.highSurrogate = intVal;\n } else {\n if (this.highSurrogate !== undefined) {\n this.appendStringBuf(new Buffer(String.fromCharCode(this.highSurrogate)));\n this.highSurrogate = undefined;\n }\n this.appendStringBuf(new Buffer(String.fromCharCode(intVal)));\n }\n this.tState = STRING1;\n }\n } else {\n return this.charError(buffer, i);\n }\n } else if (this.tState === NUMBER1 || this.tState === NUMBER3) {\n n = buffer[i];\n\n switch (n) {\n case 0x30: // 0\n case 0x31: // 1\n case 0x32: // 2\n case 0x33: // 3\n case 0x34: // 4\n case 0x35: // 5\n case 0x36: // 6\n case 0x37: // 7\n case 0x38: // 8\n case 0x39: // 9\n case 0x2e: // .\n case 0x65: // e\n case 0x45: // E\n case 0x2b: // +\n case 0x2d: // -\n this.string += String.fromCharCode(n);\n this.tState = NUMBER3;\n break;\n default:\n this.tState = START;\n var error = this.numberReviver(this.string);\n if (error){\n return error;\n }\n\n this.offset += this.string.length - 1;\n this.string = undefined;\n i--;\n break;\n }\n }else if (this.tState === TRUE1){ // r\n if (buffer[i] === 0x72) { this.tState = TRUE2; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === TRUE2){ // u\n if (buffer[i] === 0x75) { this.tState = TRUE3; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === TRUE3){ // e\n if (buffer[i] === 0x65) { this.tState = START; this.onToken(TRUE, true); this.offset+= 3; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === FALSE1){ // a\n if (buffer[i] === 0x61) { this.tState = FALSE2; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === FALSE2){ // l\n if (buffer[i] === 0x6c) { this.tState = FALSE3; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === FALSE3){ // s\n if (buffer[i] === 0x73) { this.tState = FALSE4; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === FALSE4){ // e\n if (buffer[i] === 0x65) { this.tState = START; this.onToken(FALSE, false); this.offset+= 4; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === NULL1){ // u\n if (buffer[i] === 0x75) { this.tState = NULL2; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === NULL2){ // l\n if (buffer[i] === 0x6c) { this.tState = NULL3; }\n else { return this.charError(buffer, i); }\n }else if (this.tState === NULL3){ // l\n if (buffer[i] === 0x6c) { this.tState = START; this.onToken(NULL, null); this.offset += 3; }\n else { return this.charError(buffer, i); }\n }\n }\n};\nproto.onToken = function (token, value) {\n // Override this to get events\n};\n\nproto.parseError = function (token, value) {\n this.tState = STOP;\n this.onError(new Error(\"Unexpected \" + Parser.toknam(token) + (value ? (\"(\" + JSON.stringify(value) + \")\") : \"\") + \" in state \" + Parser.toknam(this.state)));\n};\nproto.push = function () {\n this.stack.push({value: this.value, key: this.key, mode: this.mode});\n};\nproto.pop = function () {\n var value = this.value;\n var parent = this.stack.pop();\n this.value = parent.value;\n this.key = parent.key;\n this.mode = parent.mode;\n this.emit(value);\n if (!this.mode) { this.state = VALUE; }\n};\nproto.emit = function (value) {\n if (this.mode) { this.state = COMMA; }\n this.onValue(value);\n};\nproto.onValue = function (value) {\n // Override me\n};\nproto.onToken = function (token, value) {\n if(this.state === VALUE){\n if(token === STRING || token === NUMBER || token === TRUE || token === FALSE || token === NULL){\n if (this.value) {\n this.value[this.key] = value;\n }\n this.emit(value);\n }else if(token === LEFT_BRACE){\n this.push();\n if (this.value) {\n this.value = this.value[this.key] = {};\n } else {\n this.value = {};\n }\n this.key = undefined;\n this.state = KEY;\n this.mode = OBJECT;\n }else if(token === LEFT_BRACKET){\n this.push();\n if (this.value) {\n this.value = this.value[this.key] = [];\n } else {\n this.value = [];\n }\n this.key = 0;\n this.mode = ARRAY;\n this.state = VALUE;\n }else if(token === RIGHT_BRACE){\n if (this.mode === OBJECT) {\n this.pop();\n } else {\n return this.parseError(token, value);\n }\n }else if(token === RIGHT_BRACKET){\n if (this.mode === ARRAY) {\n this.pop();\n } else {\n return this.parseError(token, value);\n }\n }else{\n return this.parseError(token, value);\n }\n }else if(this.state === KEY){\n if (token === STRING) {\n this.key = value;\n this.state = COLON;\n } else if (token === RIGHT_BRACE) {\n this.pop();\n } else {\n return this.parseError(token, value);\n }\n }else if(this.state === COLON){\n if (token === COLON) { this.state = VALUE; }\n else { return this.parseError(token, value); }\n }else if(this.state === COMMA){\n if (token === COMMA) {\n if (this.mode === ARRAY) { this.key++; this.state = VALUE; }\n else if (this.mode === OBJECT) { this.state = KEY; }\n\n } else if (token === RIGHT_BRACKET && this.mode === ARRAY || token === RIGHT_BRACE && this.mode === OBJECT) {\n this.pop();\n } else {\n return this.parseError(token, value);\n }\n }else{\n return this.parseError(token, value);\n }\n};\n\n// Override to implement your own number reviver.\n// Any value returned is treated as error and will interrupt parsing.\nproto.numberReviver = function (text) {\n var result = Number(text);\n\n if (isNaN(result)) {\n return this.charError(buffer, i);\n }\n\n if ((text.match(/[0-9]+/) == text) && (result.toString() != text)) {\n // Long string of digits which is an ID string and not valid and/or safe JavaScript integer Number\n this.onToken(STRING, text);\n } else {\n this.onToken(NUMBER, result);\n }\n}\n\nParser.C = C;\n\nmodule.exports = Parser;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fragment = void 0;\nfunction getFragment(inputStr) {\n let str = inputStr;\n if (str.endsWith('/') || str.endsWith('#')) {\n str = str.slice(0, str.length - 1);\n }\n const args = [];\n if (str.lastIndexOf('/') > 0) {\n args.push(str.lastIndexOf('/'));\n }\n if (str.lastIndexOf('#') > 0) {\n args.push(str.lastIndexOf('#'));\n }\n const i = Math.max(...args);\n return str.slice(i + 1);\n}\nfunction camelize(str) {\n var _a;\n const res = (_a = str\n .split(/[^a-z0-9]+/ig)\n .filter((s) => s !== '')\n .map((s) => s[0].toUpperCase() + s.slice(1))\n .join('')\n // Make sure the prefix does not start with a number\n .match(/[a-z][a-z0-9]+/ig)) === null || _a === void 0 ? void 0 : _a[0];\n // Include 'v' so we always return something matching the pattern\n // [a-z][a-z0-9]+\n return typeof res === 'undefined' ? undefined : res[0].toLowerCase() + res.slice(1);\n}\nfunction fragment(str) {\n let value = getFragment(str);\n value = value ? camelize(value) : undefined;\n return value || 'v';\n}\nexports.fragment = fragment;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lookupAllPrefixes = exports.prefixToUri = exports.uriToPrefix = void 0;\nconst fragment_1 = require(\"./fragment\");\nconst lookup_1 = require(\"./lookup\");\nfunction uriToPrefix(uri, options) {\n return __awaiter(this, void 0, void 0, function* () {\n let result;\n // Collect the prefix\n try {\n result = yield (0, lookup_1.lookupPrefix)(uri, options);\n }\n catch (_a) {\n if (options === null || options === void 0 ? void 0 : options.mintOnUnknown) {\n // Keep prefixes at most 4 characters long when minting a new one\n result = (0, fragment_1.fragment)(uri).slice(0, 4);\n }\n }\n // If there is a bank of existing prefixes make sure to make a unique one\n // by postfixing a number\n if (typeof result !== 'undefined'\n && typeof (options === null || options === void 0 ? void 0 : options.existingPrefixes) === 'object'\n && result in options.existingPrefixes) {\n let i = 0;\n while (`${result}${i}` in options.existingPrefixes) {\n i += 1;\n }\n result = `${result}${i}`;\n }\n return result;\n });\n}\nexports.uriToPrefix = uriToPrefix;\n/**\n * Lookup the namespace commonly associated with a given prefix\n * @param prefix The prefix to lookup the namespace for\n * @param options You can optionally pass a custom fetch function\n */\nfunction prefixToUri(prefix, options) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n // The await needs to be here so that we can return undefined on rejection\n return yield (0, lookup_1.lookupUri)(prefix, options);\n }\n catch (_a) {\n return undefined;\n }\n });\n}\nexports.prefixToUri = prefixToUri;\nvar lookup_2 = require(\"./lookup\");\nObject.defineProperty(exports, \"lookupAllPrefixes\", { enumerable: true, get: function () { return lookup_2.lookupAllPrefixes; } });\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fetchContext = exports.fetchJson = void 0;\n// TODO: Use universal fetch here\nconst cross_fetch_1 = require(\"cross-fetch\");\nfunction fetchJson(url, options) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n // Select the correct fetch function\n const fetchFn = (_a = options === null || options === void 0 ? void 0 : options.fetch) !== null && _a !== void 0 ? _a : cross_fetch_1.fetch;\n return (yield fetchFn(url)).json();\n });\n}\nexports.fetchJson = fetchJson;\nfunction fetchContext(url, options) {\n return __awaiter(this, void 0, void 0, function* () {\n return (yield fetchJson(url, options))['@context'];\n });\n}\nexports.fetchContext = fetchContext;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lookupNamespace\"), exports);\n__exportStar(require(\"./lookupPrefix\"), exports);\n__exportStar(require(\"./lookupAllPrefixes\"), exports);\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lookupAllPrefixes = void 0;\nconst fetchContext_1 = require(\"./fetchContext\");\n/**\n * Use prefix.cc to look up all recorded prefixes\n */\nfunction lookupAllPrefixes(options) {\n return __awaiter(this, void 0, void 0, function* () {\n return (0, fetchContext_1.fetchContext)('https://prefix.cc/context', options);\n });\n}\nexports.lookupAllPrefixes = lookupAllPrefixes;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lookupUri = void 0;\nconst fetchContext_1 = require(\"./fetchContext\");\n/**\n * Use prefix.cc to look up the namespace associated with a given prefix.\n * Errors if one cannot be found.\n *\n * @param prefix The prefix of which to obtain the namespace\n * @param options Optional fetch function to use\n */\nfunction lookupUri(prefix, options) {\n return __awaiter(this, void 0, void 0, function* () {\n const uri = (yield (0, fetchContext_1.fetchContext)(`https://prefix.cc/${prefix}.file.jsonld`, options))[prefix];\n if (typeof uri !== 'string') {\n throw new Error(`Expected uri to be a string, received: ${uri} of type ${typeof uri}`);\n }\n return uri;\n });\n}\nexports.lookupUri = lookupUri;\n","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lookupPrefix = void 0;\nconst fetchContext_1 = require(\"./fetchContext\");\n/**\n * Use prefix.cc to look up the prefix for a URI namespace, rejects if there is an error in\n * looking up the prefix, or if no prefixes are returned\n *\n * @param uri The URI to obtain a prefix for\n * @param options Optional fetch function to use\n */\nfunction lookupPrefix(uri, options) {\n return __awaiter(this, void 0, void 0, function* () {\n // Create the correct url to lookup including search parameters\n const url = new URL('https://prefix.cc/reverse');\n url.searchParams.append('uri', uri);\n url.searchParams.append('format', 'jsonld');\n const prefixes = Object.keys(yield (0, fetchContext_1.fetchContext)(url, options));\n if (prefixes.length === 0) {\n throw new Error('No prefixes returned');\n }\n return prefixes[0];\n });\n}\nexports.lookupPrefix = lookupPrefix;\n","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SaxesParser = exports.EVENTS = void 0;\nconst ed5 = require(\"xmlchars/xml/1.0/ed5\");\nconst ed2 = require(\"xmlchars/xml/1.1/ed2\");\nconst NSed3 = require(\"xmlchars/xmlns/1.0/ed3\");\nvar isS = ed5.isS;\nvar isChar10 = ed5.isChar;\nvar isNameStartChar = ed5.isNameStartChar;\nvar isNameChar = ed5.isNameChar;\nvar S_LIST = ed5.S_LIST;\nvar NAME_RE = ed5.NAME_RE;\nvar isChar11 = ed2.isChar;\nvar isNCNameStartChar = NSed3.isNCNameStartChar;\nvar isNCNameChar = NSed3.isNCNameChar;\nvar NC_NAME_RE = NSed3.NC_NAME_RE;\nconst XML_NAMESPACE = \"http://www.w3.org/XML/1998/namespace\";\nconst XMLNS_NAMESPACE = \"http://www.w3.org/2000/xmlns/\";\nconst rootNS = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment\n __proto__: null,\n xml: XML_NAMESPACE,\n xmlns: XMLNS_NAMESPACE,\n};\nconst XML_ENTITIES = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment\n __proto__: null,\n amp: \"&\",\n gt: \">\",\n lt: \"<\",\n quot: \"\\\"\",\n apos: \"'\",\n};\n// EOC: end-of-chunk\nconst EOC = -1;\nconst NL_LIKE = -2;\nconst S_BEGIN = 0; // Initial state.\nconst S_BEGIN_WHITESPACE = 1; // leading whitespace\nconst S_DOCTYPE = 2; // \nconst TAB = 9;\nconst NL = 0xA;\nconst CR = 0xD;\nconst SPACE = 0x20;\nconst BANG = 0x21;\nconst DQUOTE = 0x22;\nconst AMP = 0x26;\nconst SQUOTE = 0x27;\nconst MINUS = 0x2D;\nconst FORWARD_SLASH = 0x2F;\nconst SEMICOLON = 0x3B;\nconst LESS = 0x3C;\nconst EQUAL = 0x3D;\nconst GREATER = 0x3E;\nconst QUESTION = 0x3F;\nconst OPEN_BRACKET = 0x5B;\nconst CLOSE_BRACKET = 0x5D;\nconst NEL = 0x85;\nconst LS = 0x2028; // Line Separator\nconst isQuote = (c) => c === DQUOTE || c === SQUOTE;\nconst QUOTES = [DQUOTE, SQUOTE];\nconst DOCTYPE_TERMINATOR = [...QUOTES, OPEN_BRACKET, GREATER];\nconst DTD_TERMINATOR = [...QUOTES, LESS, CLOSE_BRACKET];\nconst XML_DECL_NAME_TERMINATOR = [EQUAL, QUESTION, ...S_LIST];\nconst ATTRIB_VALUE_UNQUOTED_TERMINATOR = [...S_LIST, GREATER, AMP, LESS];\nfunction nsPairCheck(parser, prefix, uri) {\n switch (prefix) {\n case \"xml\":\n if (uri !== XML_NAMESPACE) {\n parser.fail(`xml prefix must be bound to ${XML_NAMESPACE}.`);\n }\n break;\n case \"xmlns\":\n if (uri !== XMLNS_NAMESPACE) {\n parser.fail(`xmlns prefix must be bound to ${XMLNS_NAMESPACE}.`);\n }\n break;\n default:\n }\n switch (uri) {\n case XMLNS_NAMESPACE:\n parser.fail(prefix === \"\" ?\n `the default namespace may not be set to ${uri}.` :\n `may not assign a prefix (even \"xmlns\") to the URI \\\n${XMLNS_NAMESPACE}.`);\n break;\n case XML_NAMESPACE:\n switch (prefix) {\n case \"xml\":\n // Assinging the XML namespace to \"xml\" is fine.\n break;\n case \"\":\n parser.fail(`the default namespace may not be set to ${uri}.`);\n break;\n default:\n parser.fail(\"may not assign the xml namespace to another prefix.\");\n }\n break;\n default:\n }\n}\nfunction nsMappingCheck(parser, mapping) {\n for (const local of Object.keys(mapping)) {\n nsPairCheck(parser, local, mapping[local]);\n }\n}\nconst isNCName = (name) => NC_NAME_RE.test(name);\nconst isName = (name) => NAME_RE.test(name);\nconst FORBIDDEN_START = 0;\nconst FORBIDDEN_BRACKET = 1;\nconst FORBIDDEN_BRACKET_BRACKET = 2;\n/**\n * The list of supported events.\n */\nexports.EVENTS = [\n \"xmldecl\",\n \"text\",\n \"processinginstruction\",\n \"doctype\",\n \"comment\",\n \"opentagstart\",\n \"attribute\",\n \"opentag\",\n \"closetag\",\n \"cdata\",\n \"error\",\n \"end\",\n \"ready\",\n];\nconst EVENT_NAME_TO_HANDLER_NAME = {\n xmldecl: \"xmldeclHandler\",\n text: \"textHandler\",\n processinginstruction: \"piHandler\",\n doctype: \"doctypeHandler\",\n comment: \"commentHandler\",\n opentagstart: \"openTagStartHandler\",\n attribute: \"attributeHandler\",\n opentag: \"openTagHandler\",\n closetag: \"closeTagHandler\",\n cdata: \"cdataHandler\",\n error: \"errorHandler\",\n end: \"endHandler\",\n ready: \"readyHandler\",\n};\n// eslint-disable-next-line @typescript-eslint/ban-types\nclass SaxesParser {\n /**\n * Indicates whether or not the parser is closed. If ``true``, wait for\n * the ``ready`` event to write again.\n */\n get closed() {\n return this._closed;\n }\n /**\n * @param opt The parser options.\n */\n constructor(opt) {\n this.opt = opt !== null && opt !== void 0 ? opt : {};\n this.fragmentOpt = !!this.opt.fragment;\n const xmlnsOpt = this.xmlnsOpt = !!this.opt.xmlns;\n this.trackPosition = this.opt.position !== false;\n this.fileName = this.opt.fileName;\n if (xmlnsOpt) {\n // This is the function we use to perform name checks on PIs and entities.\n // When namespaces are used, colons are not allowed in PI target names or\n // entity names. So the check depends on whether namespaces are used. See:\n //\n // https://www.w3.org/XML/xml-names-19990114-errata.html\n // NE08\n //\n this.nameStartCheck = isNCNameStartChar;\n this.nameCheck = isNCNameChar;\n this.isName = isNCName;\n // eslint-disable-next-line @typescript-eslint/unbound-method\n this.processAttribs = this.processAttribsNS;\n // eslint-disable-next-line @typescript-eslint/unbound-method\n this.pushAttrib = this.pushAttribNS;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment\n this.ns = Object.assign({ __proto__: null }, rootNS);\n const additional = this.opt.additionalNamespaces;\n if (additional != null) {\n nsMappingCheck(this, additional);\n Object.assign(this.ns, additional);\n }\n }\n else {\n this.nameStartCheck = isNameStartChar;\n this.nameCheck = isNameChar;\n this.isName = isName;\n // eslint-disable-next-line @typescript-eslint/unbound-method\n this.processAttribs = this.processAttribsPlain;\n // eslint-disable-next-line @typescript-eslint/unbound-method\n this.pushAttrib = this.pushAttribPlain;\n }\n //\n // The order of the members in this table needs to correspond to the state\n // numbers given to the states that correspond to the methods being recorded\n // here.\n //\n this.stateTable = [\n /* eslint-disable @typescript-eslint/unbound-method */\n this.sBegin,\n this.sBeginWhitespace,\n this.sDoctype,\n this.sDoctypeQuote,\n this.sDTD,\n this.sDTDQuoted,\n this.sDTDOpenWaka,\n this.sDTDOpenWakaBang,\n this.sDTDComment,\n this.sDTDCommentEnding,\n this.sDTDCommentEnded,\n this.sDTDPI,\n this.sDTDPIEnding,\n this.sText,\n this.sEntity,\n this.sOpenWaka,\n this.sOpenWakaBang,\n this.sComment,\n this.sCommentEnding,\n this.sCommentEnded,\n this.sCData,\n this.sCDataEnding,\n this.sCDataEnding2,\n this.sPIFirstChar,\n this.sPIRest,\n this.sPIBody,\n this.sPIEnding,\n this.sXMLDeclNameStart,\n this.sXMLDeclName,\n this.sXMLDeclEq,\n this.sXMLDeclValueStart,\n this.sXMLDeclValue,\n this.sXMLDeclSeparator,\n this.sXMLDeclEnding,\n this.sOpenTag,\n this.sOpenTagSlash,\n this.sAttrib,\n this.sAttribName,\n this.sAttribNameSawWhite,\n this.sAttribValue,\n this.sAttribValueQuoted,\n this.sAttribValueClosed,\n this.sAttribValueUnquoted,\n this.sCloseTag,\n this.sCloseTagSawWhite,\n /* eslint-enable @typescript-eslint/unbound-method */\n ];\n this._init();\n }\n _init() {\n var _a;\n this.openWakaBang = \"\";\n this.text = \"\";\n this.name = \"\";\n this.piTarget = \"\";\n this.entity = \"\";\n this.q = null;\n this.tags = [];\n this.tag = null;\n this.topNS = null;\n this.chunk = \"\";\n this.chunkPosition = 0;\n this.i = 0;\n this.prevI = 0;\n this.carriedFromPrevious = undefined;\n this.forbiddenState = FORBIDDEN_START;\n this.attribList = [];\n // The logic is organized so as to minimize the need to check\n // this.opt.fragment while parsing.\n const { fragmentOpt } = this;\n this.state = fragmentOpt ? S_TEXT : S_BEGIN;\n // We want these to be all true if we are dealing with a fragment.\n this.reportedTextBeforeRoot = this.reportedTextAfterRoot = this.closedRoot =\n this.sawRoot = fragmentOpt;\n // An XML declaration is intially possible only when parsing whole\n // documents.\n this.xmlDeclPossible = !fragmentOpt;\n this.xmlDeclExpects = [\"version\"];\n this.entityReturnState = undefined;\n let { defaultXMLVersion } = this.opt;\n if (defaultXMLVersion === undefined) {\n if (this.opt.forceXMLVersion === true) {\n throw new Error(\"forceXMLVersion set but defaultXMLVersion is not set\");\n }\n defaultXMLVersion = \"1.0\";\n }\n this.setXMLVersion(defaultXMLVersion);\n this.positionAtNewLine = 0;\n this.doctype = false;\n this._closed = false;\n this.xmlDecl = {\n version: undefined,\n encoding: undefined,\n standalone: undefined,\n };\n this.line = 1;\n this.column = 0;\n this.ENTITIES = Object.create(XML_ENTITIES);\n (_a = this.readyHandler) === null || _a === void 0 ? void 0 : _a.call(this);\n }\n /**\n * The stream position the parser is currently looking at. This field is\n * zero-based.\n *\n * This field is not based on counting Unicode characters but is to be\n * interpreted as a plain index into a JavaScript string.\n */\n get position() {\n return this.chunkPosition + this.i;\n }\n /**\n * The column number of the next character to be read by the parser. *\n * This field is zero-based. (The first column in a line is 0.)\n *\n * This field reports the index at which the next character would be in the\n * line if the line were represented as a JavaScript string. Note that this\n * *can* be different to a count based on the number of *Unicode characters*\n * due to how JavaScript handles astral plane characters.\n *\n * See [[column]] for a number that corresponds to a count of Unicode\n * characters.\n */\n get columnIndex() {\n return this.position - this.positionAtNewLine;\n }\n /**\n * Set an event listener on an event. The parser supports one handler per\n * event type. If you try to set an event handler over an existing handler,\n * the old handler is silently overwritten.\n *\n * @param name The event to listen to.\n *\n * @param handler The handler to set.\n */\n on(name, handler) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n this[EVENT_NAME_TO_HANDLER_NAME[name]] = handler;\n }\n /**\n * Unset an event handler.\n *\n * @parma name The event to stop listening to.\n */\n off(name) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n this[EVENT_NAME_TO_HANDLER_NAME[name]] = undefined;\n }\n /**\n * Make an error object. The error object will have a message that contains\n * the ``fileName`` option passed at the creation of the parser. If position\n * tracking was turned on, it will also have line and column number\n * information.\n *\n * @param message The message describing the error to report.\n *\n * @returns An error object with a properly formatted message.\n */\n makeError(message) {\n var _a;\n let msg = (_a = this.fileName) !== null && _a !== void 0 ? _a : \"\";\n if (this.trackPosition) {\n if (msg.length > 0) {\n msg += \":\";\n }\n msg += `${this.line}:${this.column}`;\n }\n if (msg.length > 0) {\n msg += \": \";\n }\n return new Error(msg + message);\n }\n /**\n * Report a parsing error. This method is made public so that client code may\n * check for issues that are outside the scope of this project and can report\n * errors.\n *\n * @param message The error to report.\n *\n * @returns this\n */\n fail(message) {\n const err = this.makeError(message);\n const handler = this.errorHandler;\n if (handler === undefined) {\n throw err;\n }\n else {\n handler(err);\n }\n return this;\n }\n /**\n * Write a XML data to the parser.\n *\n * @param chunk The XML data to write.\n *\n * @returns this\n */\n // We do need object for the type here. Yes, it often causes problems\n // but not in this case.\n write(chunk) {\n if (this.closed) {\n return this.fail(\"cannot write after close; assign an onready handler.\");\n }\n let end = false;\n if (chunk === null) {\n // We cannot return immediately because carriedFromPrevious may need\n // processing.\n end = true;\n chunk = \"\";\n }\n else if (typeof chunk === \"object\") {\n chunk = chunk.toString();\n }\n // We checked if performing a pre-decomposition of the string into an array\n // of single complete characters (``Array.from(chunk)``) would be faster\n // than the current repeated calls to ``charCodeAt``. As of August 2018, it\n // isn't. (There may be Node-specific code that would perform faster than\n // ``Array.from`` but don't want to be dependent on Node.)\n if (this.carriedFromPrevious !== undefined) {\n // The previous chunk had char we must carry over.\n chunk = `${this.carriedFromPrevious}${chunk}`;\n this.carriedFromPrevious = undefined;\n }\n let limit = chunk.length;\n const lastCode = chunk.charCodeAt(limit - 1);\n if (!end &&\n // A trailing CR or surrogate must be carried over to the next\n // chunk.\n (lastCode === CR || (lastCode >= 0xD800 && lastCode <= 0xDBFF))) {\n // The chunk ends with a character that must be carried over. We cannot\n // know how to handle it until we get the next chunk or the end of the\n // stream. So save it for later.\n this.carriedFromPrevious = chunk[limit - 1];\n limit--;\n chunk = chunk.slice(0, limit);\n }\n const { stateTable } = this;\n this.chunk = chunk;\n this.i = 0;\n while (this.i < limit) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument\n stateTable[this.state].call(this);\n }\n this.chunkPosition += limit;\n return end ? this.end() : this;\n }\n /**\n * Close the current stream. Perform final well-formedness checks and reset\n * the parser tstate.\n *\n * @returns this\n */\n close() {\n return this.write(null);\n }\n /**\n * Get a single code point out of the current chunk. This updates the current\n * position if we do position tracking.\n *\n * This is the algorithm to use for XML 1.0.\n *\n * @returns The character read.\n */\n getCode10() {\n const { chunk, i } = this;\n this.prevI = i;\n // Yes, we do this instead of doing this.i++. Doing it this way, we do not\n // read this.i again, which is a bit faster.\n this.i = i + 1;\n if (i >= chunk.length) {\n return EOC;\n }\n // Using charCodeAt and handling the surrogates ourselves is faster\n // than using codePointAt.\n const code = chunk.charCodeAt(i);\n this.column++;\n if (code < 0xD800) {\n if (code >= SPACE || code === TAB) {\n return code;\n }\n switch (code) {\n case NL:\n this.line++;\n this.column = 0;\n this.positionAtNewLine = this.position;\n return NL;\n case CR:\n // We may get NaN if we read past the end of the chunk, which is fine.\n if (chunk.charCodeAt(i + 1) === NL) {\n // A \\r\\n sequence is converted to \\n so we have to skip over the\n // next character. We already know it has a size of 1 so ++ is fine\n // here.\n this.i = i + 2;\n }\n // Otherwise, a \\r is just converted to \\n, so we don't have to skip\n // ahead.\n // In either case, \\r becomes \\n.\n this.line++;\n this.column = 0;\n this.positionAtNewLine = this.position;\n return NL_LIKE;\n default:\n // If we get here, then code < SPACE and it is not NL CR or TAB.\n this.fail(\"disallowed character.\");\n return code;\n }\n }\n if (code > 0xDBFF) {\n // This is a specialized version of isChar10 that takes into account\n // that in this context code > 0xDBFF and code <= 0xFFFF. So it does not\n // test cases that don't need testing.\n if (!(code >= 0xE000 && code <= 0xFFFD)) {\n this.fail(\"disallowed character.\");\n }\n return code;\n }\n const final = 0x10000 + ((code - 0xD800) * 0x400) +\n (chunk.charCodeAt(i + 1) - 0xDC00);\n this.i = i + 2;\n // This is a specialized version of isChar10 that takes into account that in\n // this context necessarily final >= 0x10000.\n if (final > 0x10FFFF) {\n this.fail(\"disallowed character.\");\n }\n return final;\n }\n /**\n * Get a single code point out of the current chunk. This updates the current\n * position if we do position tracking.\n *\n * This is the algorithm to use for XML 1.1.\n *\n * @returns {number} The character read.\n */\n getCode11() {\n const { chunk, i } = this;\n this.prevI = i;\n // Yes, we do this instead of doing this.i++. Doing it this way, we do not\n // read this.i again, which is a bit faster.\n this.i = i + 1;\n if (i >= chunk.length) {\n return EOC;\n }\n // Using charCodeAt and handling the surrogates ourselves is faster\n // than using codePointAt.\n const code = chunk.charCodeAt(i);\n this.column++;\n if (code < 0xD800) {\n if ((code > 0x1F && code < 0x7F) || (code > 0x9F && code !== LS) ||\n code === TAB) {\n return code;\n }\n switch (code) {\n case NL: // 0xA\n this.line++;\n this.column = 0;\n this.positionAtNewLine = this.position;\n return NL;\n case CR: { // 0xD\n // We may get NaN if we read past the end of the chunk, which is\n // fine.\n const next = chunk.charCodeAt(i + 1);\n if (next === NL || next === NEL) {\n // A CR NL or CR NEL sequence is converted to NL so we have to skip\n // over the next character. We already know it has a size of 1.\n this.i = i + 2;\n }\n // Otherwise, a CR is just converted to NL, no skip.\n }\n /* yes, fall through */\n case NEL: // 0x85\n case LS: // Ox2028\n this.line++;\n this.column = 0;\n this.positionAtNewLine = this.position;\n return NL_LIKE;\n default:\n this.fail(\"disallowed character.\");\n return code;\n }\n }\n if (code > 0xDBFF) {\n // This is a specialized version of isCharAndNotRestricted that takes into\n // account that in this context code > 0xDBFF and code <= 0xFFFF. So it\n // does not test cases that don't need testing.\n if (!(code >= 0xE000 && code <= 0xFFFD)) {\n this.fail(\"disallowed character.\");\n }\n return code;\n }\n const final = 0x10000 + ((code - 0xD800) * 0x400) +\n (chunk.charCodeAt(i + 1) - 0xDC00);\n this.i = i + 2;\n // This is a specialized version of isCharAndNotRestricted that takes into\n // account that in this context necessarily final >= 0x10000.\n if (final > 0x10FFFF) {\n this.fail(\"disallowed character.\");\n }\n return final;\n }\n /**\n * Like ``getCode`` but with the return value normalized so that ``NL`` is\n * returned for ``NL_LIKE``.\n */\n getCodeNorm() {\n const c = this.getCode();\n return c === NL_LIKE ? NL : c;\n }\n unget() {\n this.i = this.prevI;\n this.column--;\n }\n /**\n * Capture characters into a buffer until encountering one of a set of\n * characters.\n *\n * @param chars An array of codepoints. Encountering a character in the array\n * ends the capture. (``chars`` may safely contain ``NL``.)\n *\n * @return The character code that made the capture end, or ``EOC`` if we hit\n * the end of the chunk. The return value cannot be NL_LIKE: NL is returned\n * instead.\n */\n captureTo(chars) {\n let { i: start } = this;\n const { chunk } = this;\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const c = this.getCode();\n const isNLLike = c === NL_LIKE;\n const final = isNLLike ? NL : c;\n if (final === EOC || chars.includes(final)) {\n this.text += chunk.slice(start, this.prevI);\n return final;\n }\n if (isNLLike) {\n this.text += `${chunk.slice(start, this.prevI)}\\n`;\n start = this.i;\n }\n }\n }\n /**\n * Capture characters into a buffer until encountering a character.\n *\n * @param char The codepoint that ends the capture. **NOTE ``char`` MAY NOT\n * CONTAIN ``NL``.** Passing ``NL`` will result in buggy behavior.\n *\n * @return ``true`` if we ran into the character. Otherwise, we ran into the\n * end of the current chunk.\n */\n captureToChar(char) {\n let { i: start } = this;\n const { chunk } = this;\n // eslint-disable-next-line no-constant-condition\n while (true) {\n let c = this.getCode();\n switch (c) {\n case NL_LIKE:\n this.text += `${chunk.slice(start, this.prevI)}\\n`;\n start = this.i;\n c = NL;\n break;\n case EOC:\n this.text += chunk.slice(start);\n return false;\n default:\n }\n if (c === char) {\n this.text += chunk.slice(start, this.prevI);\n return true;\n }\n }\n }\n /**\n * Capture characters that satisfy ``isNameChar`` into the ``name`` field of\n * this parser.\n *\n * @return The character code that made the test fail, or ``EOC`` if we hit\n * the end of the chunk. The return value cannot be NL_LIKE: NL is returned\n * instead.\n */\n captureNameChars() {\n const { chunk, i: start } = this;\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const c = this.getCode();\n if (c === EOC) {\n this.name += chunk.slice(start);\n return EOC;\n }\n // NL is not a name char so we don't have to test specifically for it.\n if (!isNameChar(c)) {\n this.name += chunk.slice(start, this.prevI);\n return c === NL_LIKE ? NL : c;\n }\n }\n }\n /**\n * Skip white spaces.\n *\n * @return The character that ended the skip, or ``EOC`` if we hit\n * the end of the chunk. The return value cannot be NL_LIKE: NL is returned\n * instead.\n */\n skipSpaces() {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const c = this.getCodeNorm();\n if (c === EOC || !isS(c)) {\n return c;\n }\n }\n }\n setXMLVersion(version) {\n this.currentXMLVersion = version;\n /* eslint-disable @typescript-eslint/unbound-method */\n if (version === \"1.0\") {\n this.isChar = isChar10;\n this.getCode = this.getCode10;\n }\n else {\n this.isChar = isChar11;\n this.getCode = this.getCode11;\n }\n /* eslint-enable @typescript-eslint/unbound-method */\n }\n // STATE ENGINE METHODS\n // This needs to be a state separate from S_BEGIN_WHITESPACE because we want\n // to be sure never to come back to this state later.\n sBegin() {\n // We are essentially peeking at the first character of the chunk. Since\n // S_BEGIN can be in effect only when we start working on the first chunk,\n // the index at which we must look is necessarily 0. Note also that the\n // following test does not depend on decoding surrogates.\n // If the initial character is 0xFEFF, ignore it.\n if (this.chunk.charCodeAt(0) === 0xFEFF) {\n this.i++;\n this.column++;\n }\n this.state = S_BEGIN_WHITESPACE;\n }\n sBeginWhitespace() {\n // We need to know whether we've encountered spaces or not because as soon\n // as we run into a space, an XML declaration is no longer possible. Rather\n // than slow down skipSpaces even in places where we don't care whether it\n // skipped anything or not, we check whether prevI is equal to the value of\n // i from before we skip spaces.\n const iBefore = this.i;\n const c = this.skipSpaces();\n if (this.prevI !== iBefore) {\n this.xmlDeclPossible = false;\n }\n switch (c) {\n case LESS:\n this.state = S_OPEN_WAKA;\n // We could naively call closeText but in this state, it is not normal\n // to have text be filled with any data.\n if (this.text.length !== 0) {\n throw new Error(\"no-empty text at start\");\n }\n break;\n case EOC:\n break;\n default:\n this.unget();\n this.state = S_TEXT;\n this.xmlDeclPossible = false;\n }\n }\n sDoctype() {\n var _a;\n const c = this.captureTo(DOCTYPE_TERMINATOR);\n switch (c) {\n case GREATER: {\n (_a = this.doctypeHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text);\n this.text = \"\";\n this.state = S_TEXT;\n this.doctype = true; // just remember that we saw it.\n break;\n }\n case EOC:\n break;\n default:\n this.text += String.fromCodePoint(c);\n if (c === OPEN_BRACKET) {\n this.state = S_DTD;\n }\n else if (isQuote(c)) {\n this.state = S_DOCTYPE_QUOTE;\n this.q = c;\n }\n }\n }\n sDoctypeQuote() {\n const q = this.q;\n if (this.captureToChar(q)) {\n this.text += String.fromCodePoint(q);\n this.q = null;\n this.state = S_DOCTYPE;\n }\n }\n sDTD() {\n const c = this.captureTo(DTD_TERMINATOR);\n if (c === EOC) {\n return;\n }\n this.text += String.fromCodePoint(c);\n if (c === CLOSE_BRACKET) {\n this.state = S_DOCTYPE;\n }\n else if (c === LESS) {\n this.state = S_DTD_OPEN_WAKA;\n }\n else if (isQuote(c)) {\n this.state = S_DTD_QUOTED;\n this.q = c;\n }\n }\n sDTDQuoted() {\n const q = this.q;\n if (this.captureToChar(q)) {\n this.text += String.fromCodePoint(q);\n this.state = S_DTD;\n this.q = null;\n }\n }\n sDTDOpenWaka() {\n const c = this.getCodeNorm();\n this.text += String.fromCodePoint(c);\n switch (c) {\n case BANG:\n this.state = S_DTD_OPEN_WAKA_BANG;\n this.openWakaBang = \"\";\n break;\n case QUESTION:\n this.state = S_DTD_PI;\n break;\n default:\n this.state = S_DTD;\n }\n }\n sDTDOpenWakaBang() {\n const char = String.fromCodePoint(this.getCodeNorm());\n const owb = this.openWakaBang += char;\n this.text += char;\n if (owb !== \"-\") {\n this.state = owb === \"--\" ? S_DTD_COMMENT : S_DTD;\n this.openWakaBang = \"\";\n }\n }\n sDTDComment() {\n if (this.captureToChar(MINUS)) {\n this.text += \"-\";\n this.state = S_DTD_COMMENT_ENDING;\n }\n }\n sDTDCommentEnding() {\n const c = this.getCodeNorm();\n this.text += String.fromCodePoint(c);\n this.state = c === MINUS ? S_DTD_COMMENT_ENDED : S_DTD_COMMENT;\n }\n sDTDCommentEnded() {\n const c = this.getCodeNorm();\n this.text += String.fromCodePoint(c);\n if (c === GREATER) {\n this.state = S_DTD;\n }\n else {\n this.fail(\"malformed comment.\");\n // will be recorded as\n // a comment of \" blah -- bloo \"\n this.state = S_DTD_COMMENT;\n }\n }\n sDTDPI() {\n if (this.captureToChar(QUESTION)) {\n this.text += \"?\";\n this.state = S_DTD_PI_ENDING;\n }\n }\n sDTDPIEnding() {\n const c = this.getCodeNorm();\n this.text += String.fromCodePoint(c);\n if (c === GREATER) {\n this.state = S_DTD;\n }\n }\n sText() {\n //\n // We did try a version of saxes where the S_TEXT state was split in two\n // states: one for text inside the root element, and one for text\n // outside. This was avoiding having to test this.tags.length to decide\n // what implementation to actually use.\n //\n // Peformance testing on gigabyte-size files did not show any advantage to\n // using the two states solution instead of the current one. Conversely, it\n // made the code a bit more complicated elsewhere. For instance, a comment\n // can appear before the root element so when a comment ended it was\n // necessary to determine whether to return to the S_TEXT state or to the\n // new text-outside-root state.\n //\n if (this.tags.length !== 0) {\n this.handleTextInRoot();\n }\n else {\n this.handleTextOutsideRoot();\n }\n }\n sEntity() {\n // This is essentially a specialized version of captureToChar(SEMICOLON...)\n let { i: start } = this;\n const { chunk } = this;\n // eslint-disable-next-line no-labels, no-restricted-syntax\n loop: \n // eslint-disable-next-line no-constant-condition\n while (true) {\n switch (this.getCode()) {\n case NL_LIKE:\n this.entity += `${chunk.slice(start, this.prevI)}\\n`;\n start = this.i;\n break;\n case SEMICOLON: {\n const { entityReturnState } = this;\n const entity = this.entity + chunk.slice(start, this.prevI);\n this.state = entityReturnState;\n let parsed;\n if (entity === \"\") {\n this.fail(\"empty entity name.\");\n parsed = \"&;\";\n }\n else {\n parsed = this.parseEntity(entity);\n this.entity = \"\";\n }\n if (entityReturnState !== S_TEXT || this.textHandler !== undefined) {\n this.text += parsed;\n }\n // eslint-disable-next-line no-labels\n break loop;\n }\n case EOC:\n this.entity += chunk.slice(start);\n // eslint-disable-next-line no-labels\n break loop;\n default:\n }\n }\n }\n sOpenWaka() {\n // Reminder: a state handler is called with at least one character\n // available in the current chunk. So the first call to get code inside of\n // a state handler cannot return ``EOC``. That's why we don't test\n // for it.\n const c = this.getCode();\n // either a /, ?, !, or text is coming next.\n if (isNameStartChar(c)) {\n this.state = S_OPEN_TAG;\n this.unget();\n this.xmlDeclPossible = false;\n }\n else {\n switch (c) {\n case FORWARD_SLASH:\n this.state = S_CLOSE_TAG;\n this.xmlDeclPossible = false;\n break;\n case BANG:\n this.state = S_OPEN_WAKA_BANG;\n this.openWakaBang = \"\";\n this.xmlDeclPossible = false;\n break;\n case QUESTION:\n this.state = S_PI_FIRST_CHAR;\n break;\n default:\n this.fail(\"disallowed character in tag name\");\n this.state = S_TEXT;\n this.xmlDeclPossible = false;\n }\n }\n }\n sOpenWakaBang() {\n this.openWakaBang += String.fromCodePoint(this.getCodeNorm());\n switch (this.openWakaBang) {\n case \"[CDATA[\":\n if (!this.sawRoot && !this.reportedTextBeforeRoot) {\n this.fail(\"text data outside of root node.\");\n this.reportedTextBeforeRoot = true;\n }\n if (this.closedRoot && !this.reportedTextAfterRoot) {\n this.fail(\"text data outside of root node.\");\n this.reportedTextAfterRoot = true;\n }\n this.state = S_CDATA;\n this.openWakaBang = \"\";\n break;\n case \"--\":\n this.state = S_COMMENT;\n this.openWakaBang = \"\";\n break;\n case \"DOCTYPE\":\n this.state = S_DOCTYPE;\n if (this.doctype || this.sawRoot) {\n this.fail(\"inappropriately located doctype declaration.\");\n }\n this.openWakaBang = \"\";\n break;\n default:\n // 7 happens to be the maximum length of the string that can possibly\n // match one of the cases above.\n if (this.openWakaBang.length >= 7) {\n this.fail(\"incorrect syntax.\");\n }\n }\n }\n sComment() {\n if (this.captureToChar(MINUS)) {\n this.state = S_COMMENT_ENDING;\n }\n }\n sCommentEnding() {\n var _a;\n const c = this.getCodeNorm();\n if (c === MINUS) {\n this.state = S_COMMENT_ENDED;\n (_a = this.commentHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text);\n this.text = \"\";\n }\n else {\n this.text += `-${String.fromCodePoint(c)}`;\n this.state = S_COMMENT;\n }\n }\n sCommentEnded() {\n const c = this.getCodeNorm();\n if (c !== GREATER) {\n this.fail(\"malformed comment.\");\n // will be recorded as\n // a comment of \" blah -- bloo \"\n this.text += `--${String.fromCodePoint(c)}`;\n this.state = S_COMMENT;\n }\n else {\n this.state = S_TEXT;\n }\n }\n sCData() {\n if (this.captureToChar(CLOSE_BRACKET)) {\n this.state = S_CDATA_ENDING;\n }\n }\n sCDataEnding() {\n const c = this.getCodeNorm();\n if (c === CLOSE_BRACKET) {\n this.state = S_CDATA_ENDING_2;\n }\n else {\n this.text += `]${String.fromCodePoint(c)}`;\n this.state = S_CDATA;\n }\n }\n sCDataEnding2() {\n var _a;\n const c = this.getCodeNorm();\n switch (c) {\n case GREATER: {\n (_a = this.cdataHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.text);\n this.text = \"\";\n this.state = S_TEXT;\n break;\n }\n case CLOSE_BRACKET:\n this.text += \"]\";\n break;\n default:\n this.text += `]]${String.fromCodePoint(c)}`;\n this.state = S_CDATA;\n }\n }\n // We need this separate state to check the first character fo the pi target\n // with this.nameStartCheck which allows less characters than this.nameCheck.\n sPIFirstChar() {\n const c = this.getCodeNorm();\n // This is first because in the case where the file is well-formed this is\n // the branch taken. We optimize for well-formedness.\n if (this.nameStartCheck(c)) {\n this.piTarget += String.fromCodePoint(c);\n this.state = S_PI_REST;\n }\n else if (c === QUESTION || isS(c)) {\n this.fail(\"processing instruction without a target.\");\n this.state = c === QUESTION ? S_PI_ENDING : S_PI_BODY;\n }\n else {\n this.fail(\"disallowed character in processing instruction name.\");\n this.piTarget += String.fromCodePoint(c);\n this.state = S_PI_REST;\n }\n }\n sPIRest() {\n // Capture characters into a piTarget while ``this.nameCheck`` run on the\n // character read returns true.\n const { chunk, i: start } = this;\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const c = this.getCodeNorm();\n if (c === EOC) {\n this.piTarget += chunk.slice(start);\n return;\n }\n // NL cannot satisfy this.nameCheck so we don't have to test specifically\n // for it.\n if (!this.nameCheck(c)) {\n this.piTarget += chunk.slice(start, this.prevI);\n const isQuestion = c === QUESTION;\n if (isQuestion || isS(c)) {\n if (this.piTarget === \"xml\") {\n if (!this.xmlDeclPossible) {\n this.fail(\"an XML declaration must be at the start of the document.\");\n }\n this.state = isQuestion ? S_XML_DECL_ENDING : S_XML_DECL_NAME_START;\n }\n else {\n this.state = isQuestion ? S_PI_ENDING : S_PI_BODY;\n }\n }\n else {\n this.fail(\"disallowed character in processing instruction name.\");\n this.piTarget += String.fromCodePoint(c);\n }\n break;\n }\n }\n }\n sPIBody() {\n if (this.text.length === 0) {\n const c = this.getCodeNorm();\n if (c === QUESTION) {\n this.state = S_PI_ENDING;\n }\n else if (!isS(c)) {\n this.text = String.fromCodePoint(c);\n }\n }\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n else if (this.captureToChar(QUESTION)) {\n this.state = S_PI_ENDING;\n }\n }\n sPIEnding() {\n var _a;\n const c = this.getCodeNorm();\n if (c === GREATER) {\n const { piTarget } = this;\n if (piTarget.toLowerCase() === \"xml\") {\n this.fail(\"the XML declaration must appear at the start of the document.\");\n }\n (_a = this.piHandler) === null || _a === void 0 ? void 0 : _a.call(this, {\n target: piTarget,\n body: this.text,\n });\n this.piTarget = this.text = \"\";\n this.state = S_TEXT;\n }\n else if (c === QUESTION) {\n // We ran into ?? as part of a processing instruction. We initially took\n // the first ? as a sign that the PI was ending, but it is not. So we have\n // to add it to the body but we take the new ? as a sign that the PI is\n // ending.\n this.text += \"?\";\n }\n else {\n this.text += `?${String.fromCodePoint(c)}`;\n this.state = S_PI_BODY;\n }\n this.xmlDeclPossible = false;\n }\n sXMLDeclNameStart() {\n const c = this.skipSpaces();\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n // It is valid to go to S_XML_DECL_ENDING from this state.\n this.state = S_XML_DECL_ENDING;\n return;\n }\n if (c !== EOC) {\n this.state = S_XML_DECL_NAME;\n this.name = String.fromCodePoint(c);\n }\n }\n sXMLDeclName() {\n const c = this.captureTo(XML_DECL_NAME_TERMINATOR);\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n this.state = S_XML_DECL_ENDING;\n this.name += this.text;\n this.text = \"\";\n this.fail(\"XML declaration is incomplete.\");\n return;\n }\n if (!(isS(c) || c === EQUAL)) {\n return;\n }\n this.name += this.text;\n this.text = \"\";\n if (!this.xmlDeclExpects.includes(this.name)) {\n switch (this.name.length) {\n case 0:\n this.fail(\"did not expect any more name/value pairs.\");\n break;\n case 1:\n this.fail(`expected the name ${this.xmlDeclExpects[0]}.`);\n break;\n default:\n this.fail(`expected one of ${this.xmlDeclExpects.join(\", \")}`);\n }\n }\n this.state = c === EQUAL ? S_XML_DECL_VALUE_START : S_XML_DECL_EQ;\n }\n sXMLDeclEq() {\n const c = this.getCodeNorm();\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n this.state = S_XML_DECL_ENDING;\n this.fail(\"XML declaration is incomplete.\");\n return;\n }\n if (isS(c)) {\n return;\n }\n if (c !== EQUAL) {\n this.fail(\"value required.\");\n }\n this.state = S_XML_DECL_VALUE_START;\n }\n sXMLDeclValueStart() {\n const c = this.getCodeNorm();\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n this.state = S_XML_DECL_ENDING;\n this.fail(\"XML declaration is incomplete.\");\n return;\n }\n if (isS(c)) {\n return;\n }\n if (!isQuote(c)) {\n this.fail(\"value must be quoted.\");\n this.q = SPACE;\n }\n else {\n this.q = c;\n }\n this.state = S_XML_DECL_VALUE;\n }\n sXMLDeclValue() {\n const c = this.captureTo([this.q, QUESTION]);\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n this.state = S_XML_DECL_ENDING;\n this.text = \"\";\n this.fail(\"XML declaration is incomplete.\");\n return;\n }\n if (c === EOC) {\n return;\n }\n const value = this.text;\n this.text = \"\";\n switch (this.name) {\n case \"version\": {\n this.xmlDeclExpects = [\"encoding\", \"standalone\"];\n const version = value;\n this.xmlDecl.version = version;\n // This is the test specified by XML 1.0 but it is fine for XML 1.1.\n if (!/^1\\.[0-9]+$/.test(version)) {\n this.fail(\"version number must match /^1\\\\.[0-9]+$/.\");\n }\n // When forceXMLVersion is set, the XML declaration is ignored.\n else if (!this.opt.forceXMLVersion) {\n this.setXMLVersion(version);\n }\n break;\n }\n case \"encoding\":\n if (!/^[A-Za-z][A-Za-z0-9._-]*$/.test(value)) {\n this.fail(\"encoding value must match \\\n/^[A-Za-z0-9][A-Za-z0-9._-]*$/.\");\n }\n this.xmlDeclExpects = [\"standalone\"];\n this.xmlDecl.encoding = value;\n break;\n case \"standalone\":\n if (value !== \"yes\" && value !== \"no\") {\n this.fail(\"standalone value must match \\\"yes\\\" or \\\"no\\\".\");\n }\n this.xmlDeclExpects = [];\n this.xmlDecl.standalone = value;\n break;\n default:\n // We don't need to raise an error here since we've already raised one\n // when checking what name was expected.\n }\n this.name = \"\";\n this.state = S_XML_DECL_SEPARATOR;\n }\n sXMLDeclSeparator() {\n const c = this.getCodeNorm();\n // The question mark character is not valid inside any of the XML\n // declaration name/value pairs.\n if (c === QUESTION) {\n // It is valid to go to S_XML_DECL_ENDING from this state.\n this.state = S_XML_DECL_ENDING;\n return;\n }\n if (!isS(c)) {\n this.fail(\"whitespace required.\");\n this.unget();\n }\n this.state = S_XML_DECL_NAME_START;\n }\n sXMLDeclEnding() {\n var _a;\n const c = this.getCodeNorm();\n if (c === GREATER) {\n if (this.piTarget !== \"xml\") {\n this.fail(\"processing instructions are not allowed before root.\");\n }\n else if (this.name !== \"version\" &&\n this.xmlDeclExpects.includes(\"version\")) {\n this.fail(\"XML declaration must contain a version.\");\n }\n (_a = this.xmldeclHandler) === null || _a === void 0 ? void 0 : _a.call(this, this.xmlDecl);\n this.name = \"\";\n this.piTarget = this.text = \"\";\n this.state = S_TEXT;\n }\n else {\n // We got here because the previous character was a ?, but the question\n // mark character is not valid inside any of the XML declaration\n // name/value pairs.\n this.fail(\"The character ? is disallowed anywhere in XML declarations.\");\n }\n this.xmlDeclPossible = false;\n }\n sOpenTag() {\n var _a;\n const c = this.captureNameChars();\n if (c === EOC) {\n return;\n }\n const tag = this.tag = {\n name: this.name,\n attributes: Object.create(null),\n };\n this.name = \"\";\n if (this.xmlnsOpt) {\n this.topNS = tag.ns = Object.create(null);\n }\n (_a = this.openTagStartHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag);\n this.sawRoot = true;\n if (!this.fragmentOpt && this.closedRoot) {\n this.fail(\"documents may contain only one root.\");\n }\n switch (c) {\n case GREATER:\n this.openTag();\n break;\n case FORWARD_SLASH:\n this.state = S_OPEN_TAG_SLASH;\n break;\n default:\n if (!isS(c)) {\n this.fail(\"disallowed character in tag name.\");\n }\n this.state = S_ATTRIB;\n }\n }\n sOpenTagSlash() {\n if (this.getCode() === GREATER) {\n this.openSelfClosingTag();\n }\n else {\n this.fail(\"forward-slash in opening tag not followed by >.\");\n this.state = S_ATTRIB;\n }\n }\n sAttrib() {\n const c = this.skipSpaces();\n if (c === EOC) {\n return;\n }\n if (isNameStartChar(c)) {\n this.unget();\n this.state = S_ATTRIB_NAME;\n }\n else if (c === GREATER) {\n this.openTag();\n }\n else if (c === FORWARD_SLASH) {\n this.state = S_OPEN_TAG_SLASH;\n }\n else {\n this.fail(\"disallowed character in attribute name.\");\n }\n }\n sAttribName() {\n const c = this.captureNameChars();\n if (c === EQUAL) {\n this.state = S_ATTRIB_VALUE;\n }\n else if (isS(c)) {\n this.state = S_ATTRIB_NAME_SAW_WHITE;\n }\n else if (c === GREATER) {\n this.fail(\"attribute without value.\");\n this.pushAttrib(this.name, this.name);\n this.name = this.text = \"\";\n this.openTag();\n }\n else if (c !== EOC) {\n this.fail(\"disallowed character in attribute name.\");\n }\n }\n sAttribNameSawWhite() {\n const c = this.skipSpaces();\n switch (c) {\n case EOC:\n return;\n case EQUAL:\n this.state = S_ATTRIB_VALUE;\n break;\n default:\n this.fail(\"attribute without value.\");\n // Should we do this???\n // this.tag.attributes[this.name] = \"\";\n this.text = \"\";\n this.name = \"\";\n if (c === GREATER) {\n this.openTag();\n }\n else if (isNameStartChar(c)) {\n this.unget();\n this.state = S_ATTRIB_NAME;\n }\n else {\n this.fail(\"disallowed character in attribute name.\");\n this.state = S_ATTRIB;\n }\n }\n }\n sAttribValue() {\n const c = this.getCodeNorm();\n if (isQuote(c)) {\n this.q = c;\n this.state = S_ATTRIB_VALUE_QUOTED;\n }\n else if (!isS(c)) {\n this.fail(\"unquoted attribute value.\");\n this.state = S_ATTRIB_VALUE_UNQUOTED;\n this.unget();\n }\n }\n sAttribValueQuoted() {\n // We deliberately do not use captureTo here. The specialized code we use\n // here is faster than using captureTo.\n const { q, chunk } = this;\n let { i: start } = this;\n // eslint-disable-next-line no-constant-condition\n while (true) {\n switch (this.getCode()) {\n case q:\n this.pushAttrib(this.name, this.text + chunk.slice(start, this.prevI));\n this.name = this.text = \"\";\n this.q = null;\n this.state = S_ATTRIB_VALUE_CLOSED;\n return;\n case AMP:\n this.text += chunk.slice(start, this.prevI);\n this.state = S_ENTITY;\n this.entityReturnState = S_ATTRIB_VALUE_QUOTED;\n return;\n case NL:\n case NL_LIKE:\n case TAB:\n this.text += `${chunk.slice(start, this.prevI)} `;\n start = this.i;\n break;\n case LESS:\n this.text += chunk.slice(start, this.prevI);\n this.fail(\"disallowed character.\");\n return;\n case EOC:\n this.text += chunk.slice(start);\n return;\n default:\n }\n }\n }\n sAttribValueClosed() {\n const c = this.getCodeNorm();\n if (isS(c)) {\n this.state = S_ATTRIB;\n }\n else if (c === GREATER) {\n this.openTag();\n }\n else if (c === FORWARD_SLASH) {\n this.state = S_OPEN_TAG_SLASH;\n }\n else if (isNameStartChar(c)) {\n this.fail(\"no whitespace between attributes.\");\n this.unget();\n this.state = S_ATTRIB_NAME;\n }\n else {\n this.fail(\"disallowed character in attribute name.\");\n }\n }\n sAttribValueUnquoted() {\n // We don't do anything regarding EOL or space handling for unquoted\n // attributes. We already have failed by the time we get here, and the\n // contract that saxes upholds states that upon failure, it is not safe to\n // rely on the data passed to event handlers (other than\n // ``onerror``). Passing \"bad\" data is not a problem.\n const c = this.captureTo(ATTRIB_VALUE_UNQUOTED_TERMINATOR);\n switch (c) {\n case AMP:\n this.state = S_ENTITY;\n this.entityReturnState = S_ATTRIB_VALUE_UNQUOTED;\n break;\n case LESS:\n this.fail(\"disallowed character.\");\n break;\n case EOC:\n break;\n default:\n if (this.text.includes(\"]]>\")) {\n this.fail(\"the string \\\"]]>\\\" is disallowed in char data.\");\n }\n this.pushAttrib(this.name, this.text);\n this.name = this.text = \"\";\n if (c === GREATER) {\n this.openTag();\n }\n else {\n this.state = S_ATTRIB;\n }\n }\n }\n sCloseTag() {\n const c = this.captureNameChars();\n if (c === GREATER) {\n this.closeTag();\n }\n else if (isS(c)) {\n this.state = S_CLOSE_TAG_SAW_WHITE;\n }\n else if (c !== EOC) {\n this.fail(\"disallowed character in closing tag.\");\n }\n }\n sCloseTagSawWhite() {\n switch (this.skipSpaces()) {\n case GREATER:\n this.closeTag();\n break;\n case EOC:\n break;\n default:\n this.fail(\"disallowed character in closing tag.\");\n }\n }\n // END OF STATE ENGINE METHODS\n handleTextInRoot() {\n // This is essentially a specialized version of captureTo which is optimized\n // for performing the ]]> check. A previous version of this code, checked\n // ``this.text`` for the presence of ]]>. It simplified the code but was\n // very costly when character data contained a lot of entities to be parsed.\n //\n // Since we are using a specialized loop, we also keep track of the presence\n // of ]]> in text data. The sequence ]]> is forbidden to appear as-is.\n //\n let { i: start, forbiddenState } = this;\n const { chunk, textHandler: handler } = this;\n // eslint-disable-next-line no-labels, no-restricted-syntax\n scanLoop: \n // eslint-disable-next-line no-constant-condition\n while (true) {\n switch (this.getCode()) {\n case LESS: {\n this.state = S_OPEN_WAKA;\n if (handler !== undefined) {\n const { text } = this;\n const slice = chunk.slice(start, this.prevI);\n if (text.length !== 0) {\n handler(text + slice);\n this.text = \"\";\n }\n else if (slice.length !== 0) {\n handler(slice);\n }\n }\n forbiddenState = FORBIDDEN_START;\n // eslint-disable-next-line no-labels\n break scanLoop;\n }\n case AMP:\n this.state = S_ENTITY;\n this.entityReturnState = S_TEXT;\n if (handler !== undefined) {\n this.text += chunk.slice(start, this.prevI);\n }\n forbiddenState = FORBIDDEN_START;\n // eslint-disable-next-line no-labels\n break scanLoop;\n case CLOSE_BRACKET:\n switch (forbiddenState) {\n case FORBIDDEN_START:\n forbiddenState = FORBIDDEN_BRACKET;\n break;\n case FORBIDDEN_BRACKET:\n forbiddenState = FORBIDDEN_BRACKET_BRACKET;\n break;\n case FORBIDDEN_BRACKET_BRACKET:\n break;\n default:\n throw new Error(\"impossible state\");\n }\n break;\n case GREATER:\n if (forbiddenState === FORBIDDEN_BRACKET_BRACKET) {\n this.fail(\"the string \\\"]]>\\\" is disallowed in char data.\");\n }\n forbiddenState = FORBIDDEN_START;\n break;\n case NL_LIKE:\n if (handler !== undefined) {\n this.text += `${chunk.slice(start, this.prevI)}\\n`;\n }\n start = this.i;\n forbiddenState = FORBIDDEN_START;\n break;\n case EOC:\n if (handler !== undefined) {\n this.text += chunk.slice(start);\n }\n // eslint-disable-next-line no-labels\n break scanLoop;\n default:\n forbiddenState = FORBIDDEN_START;\n }\n }\n this.forbiddenState = forbiddenState;\n }\n handleTextOutsideRoot() {\n // This is essentially a specialized version of captureTo which is optimized\n // for a specialized task. We keep track of the presence of non-space\n // characters in the text since these are errors when appearing outside the\n // document root element.\n let { i: start } = this;\n const { chunk, textHandler: handler } = this;\n let nonSpace = false;\n // eslint-disable-next-line no-labels, no-restricted-syntax\n outRootLoop: \n // eslint-disable-next-line no-constant-condition\n while (true) {\n const code = this.getCode();\n switch (code) {\n case LESS: {\n this.state = S_OPEN_WAKA;\n if (handler !== undefined) {\n const { text } = this;\n const slice = chunk.slice(start, this.prevI);\n if (text.length !== 0) {\n handler(text + slice);\n this.text = \"\";\n }\n else if (slice.length !== 0) {\n handler(slice);\n }\n }\n // eslint-disable-next-line no-labels\n break outRootLoop;\n }\n case AMP:\n this.state = S_ENTITY;\n this.entityReturnState = S_TEXT;\n if (handler !== undefined) {\n this.text += chunk.slice(start, this.prevI);\n }\n nonSpace = true;\n // eslint-disable-next-line no-labels\n break outRootLoop;\n case NL_LIKE:\n if (handler !== undefined) {\n this.text += `${chunk.slice(start, this.prevI)}\\n`;\n }\n start = this.i;\n break;\n case EOC:\n if (handler !== undefined) {\n this.text += chunk.slice(start);\n }\n // eslint-disable-next-line no-labels\n break outRootLoop;\n default:\n if (!isS(code)) {\n nonSpace = true;\n }\n }\n }\n if (!nonSpace) {\n return;\n }\n // We use the reportedTextBeforeRoot and reportedTextAfterRoot flags\n // to avoid reporting errors for every single character that is out of\n // place.\n if (!this.sawRoot && !this.reportedTextBeforeRoot) {\n this.fail(\"text data outside of root node.\");\n this.reportedTextBeforeRoot = true;\n }\n if (this.closedRoot && !this.reportedTextAfterRoot) {\n this.fail(\"text data outside of root node.\");\n this.reportedTextAfterRoot = true;\n }\n }\n pushAttribNS(name, value) {\n var _a;\n const { prefix, local } = this.qname(name);\n const attr = { name, prefix, local, value };\n this.attribList.push(attr);\n (_a = this.attributeHandler) === null || _a === void 0 ? void 0 : _a.call(this, attr);\n if (prefix === \"xmlns\") {\n const trimmed = value.trim();\n if (this.currentXMLVersion === \"1.0\" && trimmed === \"\") {\n this.fail(\"invalid attempt to undefine prefix in XML 1.0\");\n }\n this.topNS[local] = trimmed;\n nsPairCheck(this, local, trimmed);\n }\n else if (name === \"xmlns\") {\n const trimmed = value.trim();\n this.topNS[\"\"] = trimmed;\n nsPairCheck(this, \"\", trimmed);\n }\n }\n pushAttribPlain(name, value) {\n var _a;\n const attr = { name, value };\n this.attribList.push(attr);\n (_a = this.attributeHandler) === null || _a === void 0 ? void 0 : _a.call(this, attr);\n }\n /**\n * End parsing. This performs final well-formedness checks and resets the\n * parser to a clean state.\n *\n * @returns this\n */\n end() {\n var _a, _b;\n if (!this.sawRoot) {\n this.fail(\"document must contain a root element.\");\n }\n const { tags } = this;\n while (tags.length > 0) {\n const tag = tags.pop();\n this.fail(`unclosed tag: ${tag.name}`);\n }\n if ((this.state !== S_BEGIN) && (this.state !== S_TEXT)) {\n this.fail(\"unexpected end.\");\n }\n const { text } = this;\n if (text.length !== 0) {\n (_a = this.textHandler) === null || _a === void 0 ? void 0 : _a.call(this, text);\n this.text = \"\";\n }\n this._closed = true;\n (_b = this.endHandler) === null || _b === void 0 ? void 0 : _b.call(this);\n this._init();\n return this;\n }\n /**\n * Resolve a namespace prefix.\n *\n * @param prefix The prefix to resolve.\n *\n * @returns The namespace URI or ``undefined`` if the prefix is not defined.\n */\n resolve(prefix) {\n var _a, _b;\n let uri = this.topNS[prefix];\n if (uri !== undefined) {\n return uri;\n }\n const { tags } = this;\n for (let index = tags.length - 1; index >= 0; index--) {\n uri = tags[index].ns[prefix];\n if (uri !== undefined) {\n return uri;\n }\n }\n uri = this.ns[prefix];\n if (uri !== undefined) {\n return uri;\n }\n return (_b = (_a = this.opt).resolvePrefix) === null || _b === void 0 ? void 0 : _b.call(_a, prefix);\n }\n /**\n * Parse a qname into its prefix and local name parts.\n *\n * @param name The name to parse\n *\n * @returns\n */\n qname(name) {\n // This is faster than using name.split(\":\").\n const colon = name.indexOf(\":\");\n if (colon === -1) {\n return { prefix: \"\", local: name };\n }\n const local = name.slice(colon + 1);\n const prefix = name.slice(0, colon);\n if (prefix === \"\" || local === \"\" || local.includes(\":\")) {\n this.fail(`malformed name: ${name}.`);\n }\n return { prefix, local };\n }\n processAttribsNS() {\n var _a;\n const { attribList } = this;\n const tag = this.tag;\n {\n // add namespace info to tag\n const { prefix, local } = this.qname(tag.name);\n tag.prefix = prefix;\n tag.local = local;\n const uri = tag.uri = (_a = this.resolve(prefix)) !== null && _a !== void 0 ? _a : \"\";\n if (prefix !== \"\") {\n if (prefix === \"xmlns\") {\n this.fail(\"tags may not have \\\"xmlns\\\" as prefix.\");\n }\n if (uri === \"\") {\n this.fail(`unbound namespace prefix: ${JSON.stringify(prefix)}.`);\n tag.uri = prefix;\n }\n }\n }\n if (attribList.length === 0) {\n return;\n }\n const { attributes } = tag;\n const seen = new Set();\n // Note: do not apply default ns to attributes:\n // http://www.w3.org/TR/REC-xml-names/#defaulting\n for (const attr of attribList) {\n const { name, prefix, local } = attr;\n let uri;\n let eqname;\n if (prefix === \"\") {\n uri = name === \"xmlns\" ? XMLNS_NAMESPACE : \"\";\n eqname = name;\n }\n else {\n uri = this.resolve(prefix);\n // if there's any attributes with an undefined namespace,\n // then fail on them now.\n if (uri === undefined) {\n this.fail(`unbound namespace prefix: ${JSON.stringify(prefix)}.`);\n uri = prefix;\n }\n eqname = `{${uri}}${local}`;\n }\n if (seen.has(eqname)) {\n this.fail(`duplicate attribute: ${eqname}.`);\n }\n seen.add(eqname);\n attr.uri = uri;\n attributes[name] = attr;\n }\n this.attribList = [];\n }\n processAttribsPlain() {\n const { attribList } = this;\n // eslint-disable-next-line prefer-destructuring\n const attributes = this.tag.attributes;\n for (const { name, value } of attribList) {\n if (attributes[name] !== undefined) {\n this.fail(`duplicate attribute: ${name}.`);\n }\n attributes[name] = value;\n }\n this.attribList = [];\n }\n /**\n * Handle a complete open tag. This parser code calls this once it has seen\n * the whole tag. This method checks for well-formeness and then emits\n * ``onopentag``.\n */\n openTag() {\n var _a;\n this.processAttribs();\n const { tags } = this;\n const tag = this.tag;\n tag.isSelfClosing = false;\n // There cannot be any pending text here due to the onopentagstart that was\n // necessarily emitted before we get here. So we do not check text.\n (_a = this.openTagHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag);\n tags.push(tag);\n this.state = S_TEXT;\n this.name = \"\";\n }\n /**\n * Handle a complete self-closing tag. This parser code calls this once it has\n * seen the whole tag. This method checks for well-formeness and then emits\n * ``onopentag`` and ``onclosetag``.\n */\n openSelfClosingTag() {\n var _a, _b, _c;\n this.processAttribs();\n const { tags } = this;\n const tag = this.tag;\n tag.isSelfClosing = true;\n // There cannot be any pending text here due to the onopentagstart that was\n // necessarily emitted before we get here. So we do not check text.\n (_a = this.openTagHandler) === null || _a === void 0 ? void 0 : _a.call(this, tag);\n (_b = this.closeTagHandler) === null || _b === void 0 ? void 0 : _b.call(this, tag);\n const top = this.tag = (_c = tags[tags.length - 1]) !== null && _c !== void 0 ? _c : null;\n if (top === null) {\n this.closedRoot = true;\n }\n this.state = S_TEXT;\n this.name = \"\";\n }\n /**\n * Handle a complete close tag. This parser code calls this once it has seen\n * the whole tag. This method checks for well-formeness and then emits\n * ``onclosetag``.\n */\n closeTag() {\n const { tags, name } = this;\n // Our state after this will be S_TEXT, no matter what, and we can clear\n // tagName now.\n this.state = S_TEXT;\n this.name = \"\";\n if (name === \"\") {\n this.fail(\"weird empty close tag.\");\n this.text += \"\";\n return;\n }\n const handler = this.closeTagHandler;\n let l = tags.length;\n while (l-- > 0) {\n const tag = this.tag = tags.pop();\n this.topNS = tag.ns;\n handler === null || handler === void 0 ? void 0 : handler(tag);\n if (tag.name === name) {\n break;\n }\n this.fail(\"unexpected close tag.\");\n }\n if (l === 0) {\n this.closedRoot = true;\n }\n else if (l < 0) {\n this.fail(`unmatched closing tag: ${name}.`);\n this.text += ``;\n }\n }\n /**\n * Resolves an entity. Makes any necessary well-formedness checks.\n *\n * @param entity The entity to resolve.\n *\n * @returns The parsed entity.\n */\n parseEntity(entity) {\n // startsWith would be significantly slower for this test.\n if (entity[0] !== \"#\") {\n const defined = this.ENTITIES[entity];\n if (defined !== undefined) {\n return defined;\n }\n this.fail(this.isName(entity) ? \"undefined entity.\" :\n \"disallowed character in entity name.\");\n return `&${entity};`;\n }\n let num = NaN;\n if (entity[1] === \"x\" && /^#x[0-9a-f]+$/i.test(entity)) {\n num = parseInt(entity.slice(2), 16);\n }\n else if (/^#[0-9]+$/.test(entity)) {\n num = parseInt(entity.slice(1), 10);\n }\n // The character reference is required to match the CHAR production.\n if (!this.isChar(num)) {\n this.fail(\"malformed character entity.\");\n return `&${entity};`;\n }\n return String.fromCodePoint(num);\n }\n}\nexports.SaxesParser = SaxesParser;\n//# sourceMappingURL=saxes.js.map","/*globals self, window */\n\"use strict\"\n\n/*eslint-disable @mysticatea/prettier */\nconst { AbortController, AbortSignal } =\n typeof self !== \"undefined\" ? self :\n typeof window !== \"undefined\" ? window :\n /* otherwise */ undefined\n/*eslint-enable @mysticatea/prettier */\n\nmodule.exports = AbortController\nmodule.exports.AbortSignal = AbortSignal\nmodule.exports.default = AbortController\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction promisifyEventEmitter(event, result) {\n return new Promise((resolve, reject) => {\n event.on('end', () => resolve(result));\n event.on('error', reject);\n });\n}\nfunction arrayifyStream(stream) {\n const array = [];\n return promisifyEventEmitter(stream.on('data', data => array.push(data)), array);\n}\nexports.default = arrayifyStream;\n//# sourceMappingURL=index.js.map","\nconst DynamicNestedLoopJoin = require('./join/DynamicNestedLoopJoin');\nconst HashJoin = require('./join/HashJoin');\nconst NestedLoopJoin = require('./join/NestedLoopJoin');\nconst SymmetricHashJoin = require('./join/SymmetricHashJoin');\n\nconst MergeStream = require('./util/MergeIterator');\n\nmodule.exports = {\n DynamicNestedLoopJoin,\n HashJoin,\n NestedLoopJoin,\n SymmetricHashJoin,\n\n MergeStream\n};","\nlet AsyncIterator = require('asynciterator');\nlet MultiTransformIterator = AsyncIterator.MultiTransformIterator;\nlet SimpleTransformIterator = AsyncIterator.SimpleTransformIterator;\n\n// Nested Loop Join, but the values of the inner loop are determined by each value of the outer loop, possibly reducing the number of necessary checks\nclass DynamicNestedLoopJoin extends MultiTransformIterator\n{\n constructor (left, funRight, funJoin, options)\n {\n super(left, options);\n\n this.funRight = funRight;\n this.funJoin = funJoin;\n }\n\n _createTransformer (leftItem)\n {\n return new SimpleTransformIterator(this.funRight(leftItem), { transform: (rightItem, done, push) =>\n {\n let result = this.funJoin(leftItem, rightItem);\n if (result !== null)\n push(result);\n done();\n }});\n }\n}\n\nmodule.exports = DynamicNestedLoopJoin;\n","\nlet AsyncIterator = require('asynciterator').AsyncIterator;\n\n// https://en.wikipedia.org/wiki/Hash_join\nclass HashJoin extends AsyncIterator\n{\n constructor (left, right, funHash, funJoin)\n {\n super();\n\n this.addedDataListener = false;\n this.left = left;\n this.right = right;\n this.funHash = funHash;\n this.funJoin = funJoin;\n\n this.leftMap = new Map();\n\n this.match = null;\n this.matches = [];\n this.matchIdx = 0;\n\n this.left.on('error', (error) => this.destroy(error));\n this.right.on('error', (error) => this.destroy(error));\n\n this.readable = false;\n\n this.left.on('end', allowJoining.bind(this));\n\n function allowJoining ()\n {\n if (this.leftMap.size <= 0)\n return this.close();\n this.readable = true;\n this.right.on('readable', () => this.readable = true);\n this.right.on('end', () => { if (!this.hasResults()) this._end(); });\n }\n\n this.on('newListener', (eventName) =>\n {\n if (eventName === 'data' && !this.addedDataListener)\n {\n this.addedDataListener = true;\n this._addDataListener();\n }\n })\n }\n\n hasResults ()\n {\n return !this.right.ended || this.matchIdx < this.matches.length;\n }\n\n _end ()\n {\n super._end();\n this.left.destroy();\n this.right.destroy();\n }\n\n read ()\n {\n if (!this.addedDataListener)\n {\n this.addedDataListener = true;\n this._addDataListener();\n }\n\n while(true) {\n if (this.ended || !this.readable)\n return null;\n\n while (this.matchIdx < this.matches.length)\n {\n let item = this.matches[this.matchIdx++];\n let result = this.funJoin(item, this.match);\n if (result !== null)\n return result;\n }\n\n if (!this.hasResults())\n this._end();\n\n this.match = this.right.read();\n\n if (this.match === null)\n {\n this.readable = false;\n return null;\n }\n\n let hash = this.funHash(this.match);\n this.matches = this.leftMap.get(hash) || [];\n this.matchIdx = 0;\n }\n }\n\n _addDataListener()\n {\n this.left.on('data', addItem.bind(this));\n\n function addItem(item)\n {\n let hash = this.funHash(item);\n if (!this.leftMap.has(hash))\n this.leftMap.set(hash, []);\n let arr = this.leftMap.get(hash);\n arr.push(item);\n }\n }\n}\n\nmodule.exports = HashJoin;\n","\nconst { MultiTransformIterator, SimpleTransformIterator, scheduleTask } = require('asynciterator');\n\n// https://en.wikipedia.org/wiki/Nested_loop_join\nclass NestedLoopJoin extends MultiTransformIterator\n{\n constructor (left, right, funJoin, options)\n {\n super(left, options);\n\n this.right = right;\n this.funJoin = funJoin; // function that joins 2 elements or returns null if join is not possible\n this.on('end', () => this.right.close());\n }\n\n _end ()\n {\n super._end();\n scheduleTask(() => this.right.destroy());\n }\n\n _createTransformer (leftItem)\n {\n return new SimpleTransformIterator(this.right.clone(), { transform: (rightItem, done, push) =>\n {\n let result = this.funJoin(leftItem, rightItem);\n if (result !== null)\n push(result);\n done();\n }});\n }\n}\n\nmodule.exports = NestedLoopJoin;\n","\nlet AsyncIterator = require('asynciterator').AsyncIterator;\n\n// https://en.wikipedia.org/wiki/Symmetric_Hash_Join\nclass SymmetricHashJoin extends AsyncIterator\n{\n constructor (left, right, funHash, funJoin)\n {\n super();\n\n this.left = left;\n this.right = right;\n\n this.funHash = funHash;\n this.funJoin = funJoin;\n\n this.usedLeft = false;\n this.leftMap = new Map();\n this.rightMap = new Map();\n\n this.on('end', () => this._cleanup() );\n\n this.match = null;\n this.matches = [];\n this.matchIdx = 0;\n\n if (this.left.readable || this.right.readable)\n {\n this.readable = true;\n }\n\n this.left.on('error', (error) => this.destroy(error));\n this.right.on('error', (error) => this.destroy(error));\n\n this.left.on('readable', () => this.readable = true);\n this.right.on('readable', () => this.readable = true);\n\n // this needs to be here since it's possible the left/right streams only get ended after there are no more results left\n this.left.on ('end', () => { if (!this.hasResults()) this._end(); });\n this.right.on('end', () => { if (!this.hasResults()) this._end(); });\n }\n\n hasResults()\n {\n // The \"!!this.match\" condition was added as a workaround to race\n // conditions and/or duplicate \"end\" events that may lead to premature\n // cleanups of the \"this.matches\" array.\n // See https://github.com/joachimvh/asyncjoin/issues/7\n return !this.left.ended || !this.right.ended || (!!this.matches && this.matchIdx < this.matches.length);\n }\n\n _cleanup ()\n {\n // motivate garbage collector to remove these\n this.leftMap = null;\n this.rightMap = null;\n this.matches = null;\n }\n\n _end ()\n {\n super._end();\n this.left.destroy();\n this.right.destroy();\n }\n\n read ()\n {\n while(true){\n if (this.ended)\n return null;\n\n while (this.matchIdx < this.matches.length)\n {\n let item = this.matches[this.matchIdx++];\n let result = this.usedLeft ? this.funJoin(this.match, item) : this.funJoin(item, this.match);\n if (result !== null)\n return result;\n }\n\n if (!this.hasResults())\n this._end();\n\n let item = null;\n // try both streams if the first one has no value\n for (let i = 0; i < 2; ++i)\n {\n item = this.usedLeft ? this.right.read() : this.left.read();\n this.usedLeft = !this.usedLeft; // try other stream next time\n\n // found a result, no need to check the other stream this run\n if (item !== null)\n break;\n }\n\n if (this.done || item === null)\n {\n this.readable = false;\n return null;\n }\n\n let hash = this.funHash(item);\n let map = this.usedLeft ? this.leftMap : this.rightMap;\n if (!map.has(hash))\n map.set(hash, []);\n let arr = map.get(hash);\n arr.push(item);\n\n this.match = item;\n this.matches = (this.usedLeft ? this.rightMap : this.leftMap).get(hash) || [];\n this.matchIdx = 0;\n }\n }\n}\n\nmodule.exports = SymmetricHashJoin;\n","\nlet AsyncIterator = require('asynciterator').AsyncIterator;\n\n// merges the contents of multiple streams\nclass MergeIterator extends AsyncIterator\n{\n constructor (streams)\n {\n super();\n \n if (!Array.isArray(streams))\n streams = Array.prototype.slice.call(arguments);\n \n this.streams = streams;\n \n for (let stream of streams)\n {\n stream.on('readable', () => this.emit('readable'));\n stream.on('end', () => this._removeStream(stream));\n }\n \n if (this.streams.length === 0)\n this.close();\n \n this.idx = this.streams.length-1;\n }\n \n _removeStream (stream)\n {\n let idx = this.streams.indexOf(stream);\n if (idx < 0)\n return;\n \n this.streams.splice(idx, 1);\n if (this.idx >= this.streams.length)\n --this.idx;\n \n if (this.streams.length === 0)\n this._end();\n }\n \n close ()\n {\n super.close();\n for (let stream of this.streams)\n stream.close();\n }\n \n read ()\n {\n for (let attempts = 0; attempts < this.streams.length; ++attempts)\n {\n this.idx = (this.idx + 1) % this.streams.length;\n let item = this.streams[this.idx].read();\n if (item !== null)\n return item;\n }\n \n return null;\n }\n}\n\nmodule.exports = MergeIterator;","const df_381_2 = new (require('@comunica/logger-void').LoggerVoid)();\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_init__2_0_0_components_ActorInit_jsonld_ActorInit_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-init/^2.0.0/components/ActorInit.jsonld#ActorInit_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__2_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-context-preprocess/^2.0.0/components/ActorContextPreprocess.jsonld#ActorContextPreprocess_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_hash_bindings__2_0_0_components_ActorHashBindings_jsonld_ActorHashBindings_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-hash-bindings/^2.0.0/components/ActorHashBindings.jsonld#ActorHashBindings_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_optimize_query_operation__2_0_0_components_ActorOptimizeQueryOperation_jsonld_ActorOptimizeQueryOperation_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-optimize-query-operation/^2.0.0/components/ActorOptimizeQueryOperation.jsonld#ActorOptimizeQueryOperation_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_parse__2_0_0_components_ActorQueryParse_jsonld_ActorQueryParse_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-parse/^2.0.0/components/ActorQueryParse.jsonld#ActorQueryParse_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-result-serialize/^2.0.0/components/ActorQueryResultSerialize.jsonld#ActorQueryResultSerialize_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__2_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference/^2.0.0/components/ActorDereference.jsonld#ActorDereference_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference_rdf__2_0_0_components_ActorDereferenceRdf_jsonld_ActorDereferenceRdf_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-dereference-rdf/^2.0.0/components/ActorDereferenceRdf.jsonld#ActorDereferenceRdf_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_entries_sort__2_0_0_components_ActorRdfJoinEntriesSort_jsonld_ActorRdfJoinEntriesSort_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-entries-sort/^2.0.0/components/ActorRdfJoinEntriesSort.jsonld#ActorRdfJoinEntriesSort_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_selectivity__2_0_0_components_ActorRdfJoinSelectivity_jsonld_ActorRdfJoinSelectivity_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join-selectivity/^2.0.0/components/ActorRdfJoinSelectivity.jsonld#ActorRdfJoinSelectivity_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata__2_0_0_components_ActorRdfMetadata_jsonld_ActorRdfMetadata_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata/^2.0.0/components/ActorRdfMetadata.jsonld#ActorRdfMetadata_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-accumulate/^2.0.0/components/ActorRdfMetadataAccumulate.jsonld#ActorRdfMetadataAccumulate_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-metadata-extract/^2.0.0/components/ActorRdfMetadataExtract.jsonld#ActorRdfMetadataExtract_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse/^2.0.0/components/ActorRdfParse.jsonld#ActorRdfParse_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__2_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-parse-html/^2.0.0/components/ActorRdfParseHtml.jsonld#ActorRdfParseHtml_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia__2_0_0_components_ActorRdfResolveHypermedia_jsonld_ActorRdfResolveHypermedia_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia/^2.0.0/components/ActorRdfResolveHypermedia.jsonld#ActorRdfResolveHypermedia_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__2_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links/^2.0.0/components/ActorRdfResolveHypermediaLinks.jsonld#ActorRdfResolveHypermediaLinks_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links_queue__2_0_0_components_ActorRdfResolveHypermediaLinksQueue_jsonld_ActorRdfResolveHypermediaLinksQueue_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-hypermedia-links-queue/^2.0.0/components/ActorRdfResolveHypermediaLinksQueue.jsonld#ActorRdfResolveHypermediaLinksQueue_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-serialize/^2.0.0/components/ActorRdfSerialize.jsonld#ActorRdfSerialize_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_hypermedia__2_0_0_components_ActorRdfUpdateHypermedia_jsonld_ActorRdfUpdateHypermedia_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-hypermedia/^2.0.0/components/ActorRdfUpdateHypermedia.jsonld#ActorRdfUpdateHypermedia_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__2_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-update-quads/^2.0.0/components/ActorRdfUpdateQuads.jsonld#ActorRdfUpdateQuads_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http/^2.0.0/components/ActorHttp.jsonld#ActorHttp_fallback_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus = new (require('@comunica/bus-query-operation').BusQueryOperation)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-query-operation/^2.0.0/components/ActorQueryOperation.jsonld#ActorQueryOperation_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-join/^2.0.0/components/ActorRdfJoin.jsonld#ActorRdfJoin_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-rdf-resolve-quad-pattern/^2.0.0/components/ActorRdfResolveQuadPattern.jsonld#ActorRdfResolveQuadPattern_default_bus'\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus = new (require('@comunica/core').Bus)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/bus-http-invalidate/^2.0.0/components/ActorHttpInvalidate.jsonld#ActorHttpInvalidate_default_bus'\n});\nconst urn_comunica_default_context_preprocess_actors_source_to_destination = new (require('@comunica/actor-context-preprocess-source-to-destination').ActorContextPreprocessSourceToDestination)({\n 'name': 'urn:comunica:default:context-preprocess/actors#source-to-destination',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__2_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus\n});\nconst urn_comunica_default_context_preprocess_mediators_main = new (require('@comunica/mediator-combine-pipeline').MediatorCombinePipeline)({\n 'name': 'urn:comunica:default:context-preprocess/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_context_preprocess__2_0_0_components_ActorContextPreprocess_jsonld_ActorContextPreprocess_default_bus\n});\nconst urn_comunica_default_hash_bindings_actors_sha1 = new (require('@comunica/actor-hash-bindings-sha1').ActorHashBindingsSha1)({\n 'name': 'urn:comunica:default:hash-bindings/actors#sha1',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_hash_bindings__2_0_0_components_ActorHashBindings_jsonld_ActorHashBindings_default_bus\n});\nconst urn_comunica_default_hash_bindings_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:hash-bindings/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_hash_bindings__2_0_0_components_ActorHashBindings_jsonld_ActorHashBindings_default_bus\n});\nconst urn_comunica_default_optimize_query_operation_actors_join_bgp = new (require('@comunica/actor-optimize-query-operation-join-bgp').ActorOptimizeQueryOperationJoinBgp)({\n 'name': 'urn:comunica:default:optimize-query-operation/actors#join-bgp',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_optimize_query_operation__2_0_0_components_ActorOptimizeQueryOperation_jsonld_ActorOptimizeQueryOperation_default_bus\n});\nconst urn_comunica_default_optimize_query_operation_actors_bgp_to_join = new (require('@comunica/actor-optimize-query-operation-bgp-to-join').ActorOptimizeQueryOperationBgpToJoin)({\n 'name': 'urn:comunica:default:optimize-query-operation/actors#bgp-to-join',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_optimize_query_operation__2_0_0_components_ActorOptimizeQueryOperation_jsonld_ActorOptimizeQueryOperation_default_bus\n});\nconst urn_comunica_default_optimize_query_operation_actors_join_connected = new (require('@comunica/actor-optimize-query-operation-join-connected').ActorOptimizeQueryOperationJoinConnected)({\n 'name': 'urn:comunica:default:optimize-query-operation/actors#join-connected',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_optimize_query_operation__2_0_0_components_ActorOptimizeQueryOperation_jsonld_ActorOptimizeQueryOperation_default_bus\n});\nconst urn_comunica_default_optimize_query_operation_mediators_main = new (require('@comunica/mediator-combine-pipeline').MediatorCombinePipeline)({\n 'name': 'urn:comunica:default:optimize-query-operation/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_optimize_query_operation__2_0_0_components_ActorOptimizeQueryOperation_jsonld_ActorOptimizeQueryOperation_default_bus\n});\nconst urn_comunica_default_query_parse_actors_sparql = new (require('@comunica/actor-query-parse-sparql').ActorQueryParseSparql)({\n 'prefixes': {\"dbpedia\":\"http://dbpedia.org/resource/\",\"dbpedia-owl\":\"http://dbpedia.org/ontology/\",\"dbpprop\":\"http://dbpedia.org/property/\",\"dc\":\"http://purl.org/dc/terms/\",\"dc11\":\"http://purl.org/dc/elements/1.1/\",\"dcterms\":\"http://purl.org/dc/terms/\",\"foaf\":\"http://xmlns.com/foaf/0.1/\",\"geo\":\"http://www.w3.org/2003/01/geo/wgs84_pos#\",\"owl\":\"http://www.w3.org/2002/07/owl#\",\"rdf\":\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\"rdfs\":\"http://www.w3.org/2000/01/rdf-schema#\",\"schema\":\"http://schema.org/\",\"skos\":\"http://www.w3.org/2008/05/skos#\",\"xsd\":\"http://www.w3.org/2001/XMLSchema#\"},\n 'name': 'urn:comunica:default:query-parse/actors#sparql',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_parse__2_0_0_components_ActorQueryParse_jsonld_ActorQueryParse_default_bus\n});\nconst urn_comunica_default_query_parse_actors_graphql = new (require('@comunica/actor-query-parse-graphql').ActorQueryParseGraphql)({\n 'name': 'urn:comunica:default:query-parse/actors#graphql',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_parse__2_0_0_components_ActorQueryParse_jsonld_ActorQueryParse_default_bus\n});\nconst urn_comunica_default_query_parse_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:query-parse/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_parse__2_0_0_components_ActorQueryParse_jsonld_ActorQueryParse_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_json = new (require('@comunica/actor-query-result-serialize-json').ActorQueryResultSerializeJson)({\n 'mediaTypePriorities': {\"application/json\":1},\n 'mediaTypeFormats': {\"application/json\":\"https://comunica.linkeddatafragments.org/#results_JSON\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#json',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_simple = new (require('@comunica/actor-query-result-serialize-simple').ActorQueryResultSerializeSimple)({\n 'mediaTypePriorities': {\"simple\":0.9},\n 'mediaTypeFormats': {\"simple\":\"https://comunica.linkeddatafragments.org/#results_simple\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#simple',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_csv = new (require('@comunica/actor-query-result-serialize-sparql-csv').ActorQueryResultSerializeSparqlCsv)({\n 'mediaTypePriorities': {\"text/csv\":0.75},\n 'mediaTypeFormats': {\"text/csv\":\"http://www.w3.org/ns/formats/SPARQL_Results_CSV\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#csv',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_sparql_tsv = new (require('@comunica/actor-query-result-serialize-sparql-tsv').ActorQueryResultSerializeSparqlTsv)({\n 'mediaTypePriorities': {\"text/tab-separated-values\":0.75},\n 'mediaTypeFormats': {\"text/tab-separated-values\":\"http://www.w3.org/ns/formats/SPARQL_Results_TSV\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#sparql-tsv',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_sparql_xml = new (require('@comunica/actor-query-result-serialize-sparql-xml').ActorQueryResultSerializeSparqlXml)({\n 'mediaTypePriorities': {\"application/sparql-results+xml\":0.8},\n 'mediaTypeFormats': {\"application/sparql-results+xml\":\"http://www.w3.org/ns/formats/SPARQL_Results_XML\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#sparql-xml',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_table = new (require('@comunica/actor-query-result-serialize-table').ActorQueryResultSerializeTable)({\n 'columnWidth': 50,\n 'mediaTypePriorities': {\"table\":0.6},\n 'mediaTypeFormats': {\"table\":\"https://comunica.linkeddatafragments.org/#results_table\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#table',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_tree = new (require('@comunica/actor-query-result-serialize-tree').ActorQueryResultSerializeTree)({\n 'mediaTypePriorities': {\"tree\":0.5},\n 'mediaTypeFormats': {\"tree\":\"https://comunica.linkeddatafragments.org/#results_tree\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#tree',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_mediators_serialize = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:query-result-serialize/mediators#serialize',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_mediators_mediaType = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'mediaTypes',\n 'name': 'urn:comunica:default:query-result-serialize/mediators#mediaType',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_mediators_mediaTypeFormat = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'mediaTypeFormats',\n 'name': 'urn:comunica:default:query-result-serialize/mediators#mediaTypeFormat',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_dereference_actors_fallback = new (require('@comunica/actor-dereference-fallback').ActorDereferenceFallback)({\n 'name': 'urn:comunica:default:dereference/actors#fallback',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__2_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus\n});\nconst urn_comunica_default_dereference_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:dereference/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__2_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus\n});\nconst urn_comunica_default_dereference_rdf_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:dereference-rdf/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference_rdf__2_0_0_components_ActorDereferenceRdf_jsonld_ActorDereferenceRdf_default_bus\n});\nconst urn_comunica_default_rdf_join_entries_sort_actors_cardinality = new (require('@comunica/actor-rdf-join-entries-sort-cardinality').ActorRdfJoinEntriesSortCardinality)({\n 'name': 'urn:comunica:default:rdf-join-entries-sort/actors#cardinality',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_entries_sort__2_0_0_components_ActorRdfJoinEntriesSort_jsonld_ActorRdfJoinEntriesSort_default_bus\n});\nconst urn_comunica_default_rdf_join_entries_sort_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-join-entries-sort/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_entries_sort__2_0_0_components_ActorRdfJoinEntriesSort_jsonld_ActorRdfJoinEntriesSort_default_bus\n});\nconst urn_comunica_default_rdf_join_selectivity_actors_variable_counting = new (require('@comunica/actor-rdf-join-selectivity-variable-counting').ActorRdfJoinSelectivityVariableCounting)({\n 'name': 'urn:comunica:default:rdf-join-selectivity/actors#variable-counting',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_selectivity__2_0_0_components_ActorRdfJoinSelectivity_jsonld_ActorRdfJoinSelectivity_default_bus\n});\nconst urn_comunica_default_rdf_join_selectivity_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({\n 'field': 'accuracy',\n 'type': 'max',\n 'ignoreErrors': true,\n 'name': 'urn:comunica:default:rdf-join-selectivity/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join_selectivity__2_0_0_components_ActorRdfJoinSelectivity_jsonld_ActorRdfJoinSelectivity_default_bus\n});\nconst urn_comunica_default_rdf_metadata_actors_primary_topic = new (require('@comunica/actor-rdf-metadata-primary-topic').ActorRdfMetadataPrimaryTopic)({\n 'metadataToData': false,\n 'dataToMetadataOnInvalidMetadataGraph': true,\n 'name': 'urn:comunica:default:rdf-metadata/actors#primary-topic',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata__2_0_0_components_ActorRdfMetadata_jsonld_ActorRdfMetadata_default_bus\n});\nconst urn_comunica_default_rdf_metadata_actors_all = new (require('@comunica/actor-rdf-metadata-all').ActorRdfMetadataAll)({\n 'name': 'urn:comunica:default:rdf-metadata/actors#all',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata__2_0_0_components_ActorRdfMetadata_jsonld_ActorRdfMetadata_default_bus\n});\nconst urn_comunica_default_rdf_metadata_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-metadata/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata__2_0_0_components_ActorRdfMetadata_jsonld_ActorRdfMetadata_default_bus\n});\nconst urn_comunica_default_rdf_metadata_accumulate_actors_cancontainundefs = new (require('@comunica/actor-rdf-metadata-accumulate-cancontainundefs').ActorRdfMetadataAccumulateCanContainUndefs)({\n 'name': 'urn:comunica:default:rdf-metadata-accumulate/actors#cancontainundefs',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus\n});\nconst urn_comunica_default_rdf_metadata_accumulate_actors_cardinality = new (require('@comunica/actor-rdf-metadata-accumulate-cardinality').ActorRdfMetadataAccumulateCardinality)({\n 'name': 'urn:comunica:default:rdf-metadata-accumulate/actors#cardinality',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus\n});\nconst urn_comunica_default_rdf_metadata_accumulate_actors_pagesize = new (require('@comunica/actor-rdf-metadata-accumulate-pagesize').ActorRdfMetadataAccumulatePageSize)({\n 'name': 'urn:comunica:default:rdf-metadata-accumulate/actors#pagesize',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus\n});\nconst urn_comunica_default_rdf_metadata_accumulate_actors_requesttime = new (require('@comunica/actor-rdf-metadata-accumulate-requesttime').ActorRdfMetadataAccumulateRequestTime)({\n 'name': 'urn:comunica:default:rdf-metadata-accumulate/actors#requesttime',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus\n});\nconst urn_comunica_default_rdf_metadata_accumulate_mediators_main = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'metadata',\n 'name': 'urn:comunica:default:rdf-metadata-accumulate/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_accumulate__2_0_0_components_ActorRdfMetadataAccumulate_jsonld_ActorRdfMetadataAccumulate_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_hydra_controls = new (require('@comunica/actor-rdf-metadata-extract-hydra-controls').ActorRdfMetadataExtractHydraControls)({\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#hydra-controls',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_hydra_count = new (require('@comunica/actor-rdf-metadata-extract-hydra-count').ActorRdfMetadataExtractHydraCount)({\n 'predicates': [\n 'http://www.w3.org/ns/hydra/core#totalItems',\n 'http://rdfs.org/ns/void#triples'\n],\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#hydra-count',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_hydra_pagesize = new (require('@comunica/actor-rdf-metadata-extract-hydra-pagesize').ActorRdfMetadataExtractHydraPagesize)({\n 'predicates': [\n 'http://www.w3.org/ns/hydra/core#itemsPerPage'\n],\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#hydra-pagesize',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_request_time = new (require('@comunica/actor-rdf-metadata-extract-request-time').ActorRdfMetadataExtractRequestTime)({\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#request-time',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_allow_http_methods = new (require('@comunica/actor-rdf-metadata-extract-allow-http-methods').ActorRdfMetadataExtractAllowHttpMethods)({\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#allow-http-methods',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_put_accepted = new (require('@comunica/actor-rdf-metadata-extract-put-accepted').ActorRdfMetadataExtractPutAccepted)({\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#put-accepted',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_patch_sparql_update = new (require('@comunica/actor-rdf-metadata-extract-patch-sparql-update').ActorRdfMetadataExtractPatchSparqlUpdate)({\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#patch-sparql-update',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_actors_sparql_service = new (require('@comunica/actor-rdf-metadata-extract-sparql-service').ActorRdfMetadataExtractSparqlService)({\n 'inferHttpsEndpoint': true,\n 'name': 'urn:comunica:default:rdf-metadata-extract/actors#sparql-service',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_metadata_extract_mediators_main = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'metadata',\n 'name': 'urn:comunica:default:rdf-metadata-extract/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_metadata_extract__2_0_0_components_ActorRdfMetadataExtract_jsonld_ActorRdfMetadataExtract_default_bus\n});\nconst urn_comunica_default_rdf_parse_actors_n3 = new (require('@comunica/actor-rdf-parse-n3').ActorRdfParseN3)({\n 'mediaTypePriorities': {\"application/n-quads\":1,\"application/n-triples\":0.8,\"application/trig\":0.95,\"text/n3\":0.35,\"text/turtle\":0.6},\n 'mediaTypeFormats': {\"application/n-quads\":\"http://www.w3.org/ns/formats/N-Quads\",\"application/n-triples\":\"http://www.w3.org/ns/formats/N-Triples\",\"application/trig\":\"http://www.w3.org/ns/formats/TriG\",\"text/n3\":\"http://www.w3.org/ns/formats/N3\",\"text/turtle\":\"http://www.w3.org/ns/formats/Turtle\"},\n 'priorityScale': 1,\n 'name': 'urn:comunica:default:rdf-parse/actors#n3',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_actors_rdfxml = new (require('@comunica/actor-rdf-parse-rdfxml').ActorRdfParseRdfXml)({\n 'mediaTypePriorities': {\"application/rdf+xml\":1},\n 'mediaTypeFormats': {\"application/rdf+xml\":\"http://www.w3.org/ns/formats/RDF_XML\"},\n 'priorityScale': 0.5,\n 'name': 'urn:comunica:default:rdf-parse/actors#rdfxml',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_actors_xmlrdfa = new (require('@comunica/actor-rdf-parse-xml-rdfa').ActorRdfParseXmlRdfa)({\n 'mediaTypePriorities': {\"application/xml\":1,\"image/svg+xml\":1,\"text/xml\":1},\n 'mediaTypeFormats': {\"application/xml\":\"http://www.w3.org/ns/formats/RDFa\",\"image/svg+xml\":\"http://www.w3.org/ns/formats/RDFa\",\"text/xml\":\"http://www.w3.org/ns/formats/RDFa\"},\n 'priorityScale': 0.3,\n 'name': 'urn:comunica:default:rdf-parse/actors#xmlrdfa',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_actors_shaclc = new (require('@comunica/actor-rdf-parse-shaclc').ActorRdfParseShaclc)({\n 'mediaTypePriorities': {\"text/shaclc\":1,\"text/shaclc-ext\":0.5},\n 'mediaTypeFormats': {\"text/shaclc\":\"http://www.w3.org/ns/formats/Shaclc\",\"text/shaclc-ext\":\"http://www.w3.org/ns/formats/ShaclcExtended\"},\n 'priorityScale': 0.1,\n 'name': 'urn:comunica:default:rdf-parse/actors#shaclc',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_mediators_parse = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-parse/mediators#parse',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_mediators_mediaType = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'mediaTypes',\n 'name': 'urn:comunica:default:rdf-parse/mediators#mediaType',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_actors_html = new (require('@comunica/actor-rdf-parse-html').ActorRdfParseHtml)({\n 'busRdfParseHtml': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__2_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus,\n 'mediaTypePriorities': {\"application/xhtml+xml\":0.9,\"text/html\":1},\n 'mediaTypeFormats': {\"application/xhtml+xml\":\"http://www.w3.org/ns/formats/HTML\",\"text/html\":\"http://www.w3.org/ns/formats/HTML\"},\n 'priorityScale': 0.2,\n 'name': 'urn:comunica:default:rdf-parse/actors#html',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_parse_html_actors_microdata = new (require('@comunica/actor-rdf-parse-html-microdata').ActorRdfParseHtmlMicrodata)({\n 'name': 'urn:comunica:default:rdf-parse-html/actors#microdata',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__2_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus\n});\nconst urn_comunica_default_rdf_parse_html_actors_rdfa = new (require('@comunica/actor-rdf-parse-html-rdfa').ActorRdfParseHtmlRdfa)({\n 'name': 'urn:comunica:default:rdf-parse-html/actors#rdfa',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__2_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_actors_none = new (require('@comunica/actor-rdf-resolve-hypermedia-none').ActorRdfResolveHypermediaNone)({\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia/actors#none',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia__2_0_0_components_ActorRdfResolveHypermedia_jsonld_ActorRdfResolveHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({\n 'field': 'filterFactor',\n 'type': 'max',\n 'ignoreErrors': true,\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia__2_0_0_components_ActorRdfResolveHypermedia_jsonld_ActorRdfResolveHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_links_actors_next = new (require('@comunica/actor-rdf-resolve-hypermedia-links-next').ActorRdfResolveHypermediaLinksNext)({\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/actors#next',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__2_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_links_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links__2_0_0_components_ActorRdfResolveHypermediaLinks_jsonld_ActorRdfResolveHypermediaLinks_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_links_queue_actors_fifo = new (require('@comunica/actor-rdf-resolve-hypermedia-links-queue-fifo').ActorRdfResolveHypermediaLinksQueueFifo)({\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links-queue/actors#fifo',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links_queue__2_0_0_components_ActorRdfResolveHypermediaLinksQueue_jsonld_ActorRdfResolveHypermediaLinksQueue_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_links_queue_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia-links-queue/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia_links_queue__2_0_0_components_ActorRdfResolveHypermediaLinksQueue_jsonld_ActorRdfResolveHypermediaLinksQueue_default_bus\n});\nconst urn_comunica_default_rdf_serialize_actors_n3 = new (require('@comunica/actor-rdf-serialize-n3').ActorRdfSerializeN3)({\n 'mediaTypePriorities': {\"application/n-quads\":1,\"application/n-triples\":0.8,\"application/trig\":0.95,\"text/n3\":0.35,\"text/turtle\":0.6},\n 'mediaTypeFormats': {\"application/n-quads\":\"http://www.w3.org/ns/formats/N-Quads\",\"application/n-triples\":\"http://www.w3.org/ns/formats/N-Triples\",\"application/trig\":\"http://www.w3.org/ns/formats/TriG\",\"text/n3\":\"http://www.w3.org/ns/formats/N3\",\"text/turtle\":\"http://www.w3.org/ns/formats/Turtle\"},\n 'name': 'urn:comunica:default:rdf-serialize/actors#n3',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_serialize_actors_jsonld = new (require('@comunica/actor-rdf-serialize-jsonld').ActorRdfSerializeJsonLd)({\n 'jsonStringifyIndentSpaces': 2,\n 'mediaTypePriorities': {\"application/ld+json\":1},\n 'mediaTypeFormats': {\"application/ld+json\":\"http://www.w3.org/ns/formats/JSON-LD\"},\n 'priorityScale': 0.9,\n 'name': 'urn:comunica:default:rdf-serialize/actors#jsonld',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_serialize_actors_shaclc = new (require('@comunica/actor-rdf-serialize-shaclc').ActorRdfSerializeShaclc)({\n 'mediaTypePriorities': {\"text/shaclc\":1,\"text/shaclc-ext\":0.5},\n 'mediaTypeFormats': {\"text/shaclc\":\"http://www.w3.org/ns/formats/Shaclc\",\"text/shaclc-ext\":\"http://www.w3.org/ns/formats/ShaclcExtended\"},\n 'priorityScale': 0.1,\n 'name': 'urn:comunica:default:rdf-serialize/actors#shaclc',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_serialize_mediators_serialize = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-serialize/mediators#serialize',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_serialize_mediators_mediaType = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'mediaTypes',\n 'name': 'urn:comunica:default:rdf-serialize/mediators#mediaType',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_serialize_mediators_mediaTypeFormat = new (require('@comunica/mediator-combine-union').MediatorCombineUnion)({\n 'field': 'mediaTypeFormats',\n 'name': 'urn:comunica:default:rdf-serialize/mediators#mediaTypeFormat',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_serialize__2_0_0_components_ActorRdfSerialize_jsonld_ActorRdfSerialize_default_bus\n});\nconst urn_comunica_default_rdf_update_hypermedia_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-update-hypermedia/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_hypermedia__2_0_0_components_ActorRdfUpdateHypermedia_jsonld_ActorRdfUpdateHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_update_quads_actors_rdfjs_store = new (require('@comunica/actor-rdf-update-quads-rdfjs-store').ActorRdfUpdateQuadsRdfJsStore)({\n 'name': 'urn:comunica:default:rdf-update-quads/actors#rdfjs-store',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__2_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus\n});\nconst urn_comunica_default_rdf_update_quads_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-update-quads/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__2_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus\n});\nconst urn_comunica_default_http_actors_fetch = new (require('@comunica/actor-http-fetch').ActorHttpFetch)({\n 'agentOptions': {\"keepAlive\":true,\"maxSockets\":5},\n 'name': 'urn:comunica:default:http/actors#fetch',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus\n});\nconst urn_comunica_default_http_mediators_no_fallback = new (require('@comunica/mediator-number').MediatorNumber)({\n 'field': 'time',\n 'type': 'min',\n 'ignoreErrors': true,\n 'name': 'urn:comunica:default:http/mediators#no-fallback',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus\n});\nconst urn_comunica_default_http_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({\n 'field': 'time',\n 'type': 'min',\n 'ignoreErrors': true,\n 'name': 'urn:comunica:default:http/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus\n});\nconst urn_comunica_default_query_operation_actors_values = new (require('@comunica/actor-query-operation-values').ActorQueryOperationValues)({\n 'name': 'urn:comunica:default:query-operation/actors#values',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_mediators_main = new (require('@comunica/mediator-number').MediatorNumber)({\n 'field': 'httpRequests',\n 'type': 'min',\n 'ignoreErrors': true,\n 'name': 'urn:comunica:default:query-operation/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_rdf_join_mediators_main = new (require('@comunica/mediator-join-coefficients-fixed').MediatorJoinCoefficientsFixed)({\n 'cpuWeight': 1,\n 'memoryWeight': 1,\n 'timeWeight': 10,\n 'ioWeight': 100,\n 'name': 'urn:comunica:default:rdf-join/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_mediators_main = new (require('@comunica/mediator-race').MediatorRace)({\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus\n});\nconst urn_comunica_default_http_invalidate_mediators_main = new (require('@comunica/mediator-all').MediatorAll)({\n 'name': 'urn:comunica:default:http-invalidate/mediators#main',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_rdf_update_quads_hypermedia__2_0_0_components_ActorRdfUpdateQuadsHypermedia_jsonld_IActorRdfUpdateQuadsHypermediaArgs_default_invalidator = new (require('@comunica/bus-http-invalidate').ActorHttpInvalidateListenable)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-update-quads-hypermedia/^2.0.0/components/ActorRdfUpdateQuadsHypermedia.jsonld#IActorRdfUpdateQuadsHypermediaArgs_default_invalidator',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_rdf_resolve_quad_pattern_hypermedia__2_0_0_components_ActorRdfResolveQuadPatternHypermedia_jsonld_IActorRdfResolveQuadPatternHypermediaArgs_default_invalidator = new (require('@comunica/bus-http-invalidate').ActorHttpInvalidateListenable)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-rdf-resolve-quad-pattern-hypermedia/^2.0.0/components/ActorRdfResolveQuadPatternHypermedia.jsonld#IActorRdfResolveQuadPatternHypermediaArgs_default_invalidator',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_sparql_json__2_0_0_components_ActionObserverHttp_jsonld_IActionObserverHttpArgs_default_invalidator = new (require('@comunica/bus-http-invalidate').ActorHttpInvalidateListenable)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_stats__2_0_0_components_ActionObserverHttp_jsonld_IActionObserverHttpArgs_default_invalidator = new (require('@comunica/bus-http-invalidate').ActorHttpInvalidateListenable)({\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActionObserverHttp.jsonld#IActionObserverHttpArgs_default_invalidator',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http_invalidate__2_0_0_components_ActorHttpInvalidate_jsonld_ActorHttpInvalidate_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_none = new (require('@comunica/actor-rdf-join-inner-none').ActorRdfJoinNone)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-none',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_single = new (require('@comunica/actor-rdf-join-inner-single').ActorRdfJoinSingle)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-single',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_multi_empty = new (require('@comunica/actor-rdf-join-inner-multi-empty').ActorRdfJoinMultiEmpty)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-multi-empty',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_hash = new (require('@comunica/actor-rdf-join-inner-hash').ActorRdfJoinHash)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-hash',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_symmetric_hash = new (require('@comunica/actor-rdf-join-inner-symmetrichash').ActorRdfJoinSymmetricHash)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-symmetric-hash',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_nested_loop = new (require('@comunica/actor-rdf-join-inner-nestedloop').ActorRdfJoinNestedLoop)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-nested-loop',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_minus_hash = new (require('@comunica/actor-rdf-join-minus-hash').ActorRdfJoinMinusHash)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#minus-hash',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_minus_hash_undef = new (require('@comunica/actor-rdf-join-minus-hash-undef').ActorRdfJoinMinusHashUndef)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#minus-hash-undef',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_optional_nested_loop = new (require('@comunica/actor-rdf-join-optional-nestedloop').ActorRdfJoinOptionalNestedLoop)({\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#optional-nested-loop',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_resolve_hypermedia_actors_qpf = new (require('@comunica/actor-rdf-resolve-hypermedia-qpf').ActorRdfResolveHypermediaQpf)({\n 'mediatorMetadata': urn_comunica_default_rdf_metadata_mediators_main,\n 'mediatorMetadataExtract': urn_comunica_default_rdf_metadata_extract_mediators_main,\n 'mediatorDereferenceRdf': urn_comunica_default_dereference_rdf_mediators_main,\n 'subjectUri': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#subject',\n 'predicateUri': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate',\n 'objectUri': 'http://www.w3.org/1999/02/22-rdf-syntax-ns#object',\n 'graphUri': 'http://www.w3.org/ns/sparql-service-description#graph',\n 'name': 'urn:comunica:default:rdf-resolve-hypermedia/actors#qpf',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia__2_0_0_components_ActorRdfResolveHypermedia_jsonld_ActorRdfResolveHypermedia_default_bus\n});\nconst urn_comunica_default_dereference_rdf_actors_parse = new (require('@comunica/actor-dereference-rdf-parse').ActorDereferenceRdfParse)({\n 'mediatorDereference': urn_comunica_default_dereference_mediators_main,\n 'mediatorParse': urn_comunica_default_rdf_parse_mediators_parse,\n 'mediatorParseMediatypes': urn_comunica_default_rdf_parse_mediators_mediaType,\n 'mediaMappings': {\"htm\":\"text/html\",\"html\":\"text/html\",\"json\":\"application/json\",\"jsonld\":\"application/ld+json\",\"n3\":\"text/n3\",\"nq\":\"application/n-quads\",\"nquads\":\"application/n-quads\",\"nt\":\"application/n-triples\",\"ntriples\":\"application/n-triples\",\"owl\":\"application/rdf+xml\",\"rdf\":\"application/rdf+xml\",\"rdfxml\":\"application/rdf+xml\",\"shaclc\":\"text/shaclc\",\"shaclce\":\"text/shaclc-ext\",\"shc\":\"text/shaclc\",\"shce\":\"text/shaclc-ext\",\"svg\":\"image/svg+xml\",\"svgz\":\"image/svg+xml\",\"trig\":\"application/trig\",\"ttl\":\"text/turtle\",\"turtle\":\"text/turtle\",\"xht\":\"application/xhtml+xml\",\"xhtml\":\"application/xhtml+xml\",\"xml\":\"application/xml\"},\n 'name': 'urn:comunica:default:dereference-rdf/actors#parse',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference_rdf__2_0_0_components_ActorDereferenceRdf_jsonld_ActorDereferenceRdf_default_bus\n});\nconst urn_comunica_default_rdf_parse_html_actors_script = new (require('@comunica/actor-rdf-parse-html-script').ActorRdfParseHtmlScript)({\n 'mediatorRdfParseMediatypes': urn_comunica_default_rdf_parse_mediators_mediaType,\n 'mediatorRdfParseHandle': urn_comunica_default_rdf_parse_mediators_parse,\n 'name': 'urn:comunica:default:rdf-parse-html/actors#script',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse_html__2_0_0_components_ActorRdfParseHtml_jsonld_ActorRdfParseHtml_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_rdf = new (require('@comunica/actor-query-result-serialize-rdf').ActorQueryResultSerializeRdf)({\n 'mediatorRdfSerialize': urn_comunica_default_rdf_serialize_mediators_serialize,\n 'mediatorMediaTypeCombiner': urn_comunica_default_rdf_serialize_mediators_mediaType,\n 'mediatorMediaTypeFormatCombiner': urn_comunica_default_rdf_serialize_mediators_mediaTypeFormat,\n 'name': 'urn:comunica:default:query-result-serialize/actors#rdf',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_http_actors_wayback = new (require('@comunica/actor-http-wayback').ActorHttpWayback)({\n 'mediatorHttp': urn_comunica_default_http_mediators_no_fallback,\n 'name': 'urn:comunica:default:http/actors#wayback',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_fallback_bus\n});\nconst urn_comunica_default_rdf_parse_actors_jsonld = new (require('@comunica/actor-rdf-parse-jsonld').ActorRdfParseJsonLd)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'mediaTypePriorities': {\"application/json\":0.5,\"application/ld+json\":1},\n 'mediaTypeFormats': {\"application/json\":\"http://www.w3.org/ns/formats/JSON-LD\",\"application/ld+json\":\"http://www.w3.org/ns/formats/JSON-LD\"},\n 'priorityScale': 0.9,\n 'name': 'urn:comunica:default:rdf-parse/actors#jsonld',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_parse__2_0_0_components_ActorRdfParse_jsonld_ActorRdfParse_default_bus\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_actors_sparql = new (require('@comunica/actor-rdf-resolve-hypermedia-sparql').ActorRdfResolveHypermediaSparql)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'checkUrlSuffix': true,\n 'forceHttpGet': false,\n 'cacheSize': 1024,\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/actors#sparql',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_hypermedia__2_0_0_components_ActorRdfResolveHypermedia_jsonld_ActorRdfResolveHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_update_hypermedia_actors_patch_sparql_update = new (require('@comunica/actor-rdf-update-hypermedia-patch-sparql-update').ActorRdfUpdateHypermediaPatchSparqlUpdate)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'name': 'urn:comunica:default:rdf-update-hypermedia/actors#patch-sparql-update',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_hypermedia__2_0_0_components_ActorRdfUpdateHypermedia_jsonld_ActorRdfUpdateHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_update_hypermedia_actors_put_ldp = new (require('@comunica/actor-rdf-update-hypermedia-put-ldp').ActorRdfUpdateHypermediaPutLdp)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'mediatorRdfSerializeMediatypes': urn_comunica_default_rdf_serialize_mediators_mediaType,\n 'mediatorRdfSerialize': urn_comunica_default_rdf_serialize_mediators_serialize,\n 'name': 'urn:comunica:default:rdf-update-hypermedia/actors#put-ldp',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_hypermedia__2_0_0_components_ActorRdfUpdateHypermedia_jsonld_ActorRdfUpdateHypermedia_default_bus\n});\nconst urn_comunica_default_rdf_update_hypermedia_actors_sparql = new (require('@comunica/actor-rdf-update-hypermedia-sparql').ActorRdfUpdateHypermediaSparql)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'checkUrlSuffixSparql': true,\n 'checkUrlSuffixUpdate': true,\n 'name': 'urn:comunica:default:rdf-update-hypermedia/actors#sparql',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_hypermedia__2_0_0_components_ActorRdfUpdateHypermedia_jsonld_ActorRdfUpdateHypermedia_default_bus\n});\nconst urn_comunica_default_query_operation_actors_sparql_endpoint = new (require('@comunica/actor-query-operation-sparql-endpoint').ActorQueryOperationSparqlEndpoint)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'checkUrlSuffixSparql': true,\n 'checkUrlSuffixUpdate': true,\n 'forceHttpGet': false,\n 'name': 'urn:comunica:default:query-operation/actors#sparql-endpoint',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_ask = new (require('@comunica/actor-query-operation-ask').ActorQueryOperationAsk)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#ask',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_bgp = new (require('@comunica/actor-query-operation-bgp-join').ActorQueryOperationBgpJoin)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#bgp',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_construct = new (require('@comunica/actor-query-operation-construct').ActorQueryOperationConstruct)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#construct',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_describe = new (require('@comunica/actor-query-operation-describe-subject').ActorQueryOperationDescribeSubject)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#describe',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_distinct = new (require('@comunica/actor-query-operation-distinct-hash').ActorQueryOperationDistinctHash)({\n 'mediatorHashBindings': urn_comunica_default_hash_bindings_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#distinct',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_extend = new (require('@comunica/actor-query-operation-extend').ActorQueryOperationExtend)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#extend',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_filter = new (require('@comunica/actor-query-operation-filter-sparqlee').ActorQueryOperationFilterSparqlee)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#filter',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_from = new (require('@comunica/actor-query-operation-from-quad').ActorQueryOperationFromQuad)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#from',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_group = new (require('@comunica/actor-query-operation-group').ActorQueryOperationGroup)({\n 'mediatorHashBindings': urn_comunica_default_hash_bindings_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#group',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_nop = new (require('@comunica/actor-query-operation-nop').ActorQueryOperationNop)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#nop',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_orderby = new (require('@comunica/actor-query-operation-orderby-sparqlee').ActorQueryOperationOrderBySparqlee)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#orderby',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_project = new (require('@comunica/actor-query-operation-project').ActorQueryOperationProject)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#project',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_reduced = new (require('@comunica/actor-query-operation-reduced-hash').ActorQueryOperationReducedHash)({\n 'mediatorHashBindings': urn_comunica_default_hash_bindings_mediators_main,\n 'cacheSize': 100,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#reduced',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_service = new (require('@comunica/actor-query-operation-service').ActorQueryOperationService)({\n 'forceSparqlEndpoint': false,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#service',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_slice = new (require('@comunica/actor-query-operation-slice').ActorQueryOperationSlice)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#slice',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_union = new (require('@comunica/actor-query-operation-union').ActorQueryOperationUnion)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#union',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_alt = new (require('@comunica/actor-query-operation-path-alt').ActorQueryOperationPathAlt)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-alt',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_inv = new (require('@comunica/actor-query-operation-path-inv').ActorQueryOperationPathInv)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-inv',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_link = new (require('@comunica/actor-query-operation-path-link').ActorQueryOperationPathLink)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-link',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_nps = new (require('@comunica/actor-query-operation-path-nps').ActorQueryOperationPathNps)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-nps',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_one_or_more = new (require('@comunica/actor-query-operation-path-one-or-more').ActorQueryOperationPathOneOrMore)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-one-or-more',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_zero_or_more = new (require('@comunica/actor-query-operation-path-zero-or-more').ActorQueryOperationPathZeroOrMore)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-zero-or-more',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_zero_or_one = new (require('@comunica/actor-query-operation-path-zero-or-one').ActorQueryOperationPathZeroOrOne)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-zero-or-one',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_add = new (require('@comunica/actor-query-operation-update-add-rewrite').ActorQueryOperationAddRewrite)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-add',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_clear = new (require('@comunica/actor-query-operation-update-clear').ActorQueryOperationClear)({\n 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-clear',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_composite = new (require('@comunica/actor-query-operation-update-compositeupdate').ActorQueryOperationUpdateCompositeUpdate)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-composite',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_copy = new (require('@comunica/actor-query-operation-update-copy-rewrite').ActorQueryOperationCopyRewrite)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-copy',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_create = new (require('@comunica/actor-query-operation-update-create').ActorQueryOperationCreate)({\n 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-create',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_delete_insert = new (require('@comunica/actor-query-operation-update-deleteinsert').ActorQueryOperationUpdateDeleteInsert)({\n 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-delete-insert',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_drop = new (require('@comunica/actor-query-operation-update-drop').ActorQueryOperationDrop)({\n 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-drop',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_load = new (require('@comunica/actor-query-operation-update-load').ActorQueryOperationLoad)({\n 'mediatorUpdateQuads': urn_comunica_default_rdf_update_quads_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-load',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_update_move = new (require('@comunica/actor-query-operation-update-move-rewrite').ActorQueryOperationMoveRewrite)({\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#update-move',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_multi_bind = new (require('@comunica/actor-rdf-join-inner-multi-bind').ActorRdfJoinMultiBind)({\n 'bindOrder': 'depth-first',\n 'selectivityModifier': 0.0001,\n 'mediatorJoinEntriesSort': urn_comunica_default_rdf_join_entries_sort_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-multi-bind',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_optional_bind = new (require('@comunica/actor-rdf-join-optional-bind').ActorRdfJoinOptionalBind)({\n 'bindOrder': 'depth-first',\n 'selectivityModifier': 0.0001,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#optional-bind',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_query_operation_actors_join = new (require('@comunica/actor-query-operation-join').ActorQueryOperationJoin)({\n 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#join',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_leftjoin = new (require('@comunica/actor-query-operation-leftjoin').ActorQueryOperationLeftJoin)({\n 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#leftjoin',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_minus = new (require('@comunica/actor-query-operation-minus').ActorQueryOperationMinus)({\n 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#minus',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_query_operation_actors_path_seq = new (require('@comunica/actor-query-operation-path-seq').ActorQueryOperationPathSeq)({\n 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'name': 'urn:comunica:default:query-operation/actors#path-seq',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_rdf_join_actors_inner_multi_smallest = new (require('@comunica/actor-rdf-join-inner-multi-smallest').ActorRdfJoinMultiSmallest)({\n 'mediatorJoinEntriesSort': urn_comunica_default_rdf_join_entries_sort_mediators_main,\n 'mediatorJoin': urn_comunica_default_rdf_join_mediators_main,\n 'mediatorJoinSelectivity': urn_comunica_default_rdf_join_selectivity_mediators_main,\n 'name': 'urn:comunica:default:rdf-join/actors#inner-multi-smallest',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_join__2_0_0_components_ActorRdfJoin_jsonld_ActorRdfJoin_default_bus\n});\nconst urn_comunica_default_query_operation_actors_quadpattern = new (require('@comunica/actor-query-operation-quadpattern').ActorQueryOperationQuadpattern)({\n 'mediatorResolveQuadPattern': urn_comunica_default_rdf_resolve_quad_pattern_mediators_main,\n 'unionDefaultGraph': false,\n 'name': 'urn:comunica:default:query-operation/actors#quadpattern',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_operation__2_0_0_components_ActorQueryOperation_jsonld_ActorQueryOperation_default_bus\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_actors_federated = new (require('@comunica/actor-rdf-resolve-quad-pattern-federated').ActorRdfResolveQuadPatternFederated)({\n 'mediatorResolveQuadPattern': urn_comunica_default_rdf_resolve_quad_pattern_mediators_main,\n 'mediatorRdfMetadataAccumulate': urn_comunica_default_rdf_metadata_accumulate_mediators_main,\n 'skipEmptyPatterns': false,\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/actors#federated',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus\n});\nconst urn_comunica_default_dereference_actors_http = new (require('@comunica/actor-dereference-http').ActorDereferenceHttp)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'maxAcceptHeaderLength': 1024,\n 'maxAcceptHeaderLengthBrowser': 128,\n 'name': 'urn:comunica:default:dereference/actors#http',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_dereference__2_0_0_components_ActorDereference_jsonld_ActorDereference_default_bus,\n 'beforeActors': [\n urn_comunica_default_dereference_actors_fallback\n]\n});\nconst urn_comunica_default_http_actors_proxy = new (require('@comunica/actor-http-proxy').ActorHttpProxy)({\n 'mediatorHttp': urn_comunica_default_http_mediators_main,\n 'name': 'urn:comunica:default:http/actors#proxy',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus,\n 'beforeActors': [\n urn_comunica_default_http_actors_fetch\n]\n});\nconst urn_comunica_default_init_actors_query = new (require('@comunica/actor-init-query').ActorInitQuery)({\n 'mediatorOptimizeQueryOperation': urn_comunica_default_optimize_query_operation_mediators_main,\n 'mediatorQueryOperation': urn_comunica_default_query_operation_mediators_main,\n 'mediatorQueryParse': urn_comunica_default_query_parse_mediators_main,\n 'mediatorQueryResultSerialize': urn_comunica_default_query_result_serialize_mediators_serialize,\n 'mediatorQueryResultSerializeMediaTypeCombiner': urn_comunica_default_query_result_serialize_mediators_mediaType,\n 'mediatorQueryResultSerializeMediaTypeFormatCombiner': urn_comunica_default_query_result_serialize_mediators_mediaTypeFormat,\n 'mediatorContextPreprocess': urn_comunica_default_context_preprocess_mediators_main,\n 'mediatorHttpInvalidate': urn_comunica_default_http_invalidate_mediators_main,\n 'logger': df_381_2,\n 'defaultQueryInputFormat': 'sparql',\n 'allowNoSources': false,\n 'contextKeyShortcuts': {\"baseIRI\":\"@comunica/actor-init-query:baseIRI\",\"datetime\":\"@comunica/actor-http-memento:datetime\",\"destination\":\"@comunica/bus-rdf-update-quads:destination\",\"explain\":\"@comunica/actor-init-query:explain\",\"extensionFunctionCreator\":\"@comunica/actor-init-query:extensionFunctionCreator\",\"extensionFunctions\":\"@comunica/actor-init-query:extensionFunctions\",\"fetch\":\"@comunica/bus-http:fetch\",\"functionArgumentsCache\":\"@comunica/actor-init-query:functionArgumentsCache\",\"httpAuth\":\"@comunica/bus-http:auth\",\"httpBodyTimeout\":\"@comunica/bus-http:http-body-timeout\",\"httpIncludeCredentials\":\"@comunica/bus-http:include-credentials\",\"httpProxyHandler\":\"@comunica/actor-http-proxy:httpProxyHandler\",\"httpRetryCount\":\"@comunica/bus-http:http-retry-count\",\"httpRetryDelay\":\"@comunica/bus-http:http-retry-delay\",\"httpRetryOnServerError\":\"@comunica/bus-http:http-retry-on-server-error\",\"httpTimeout\":\"@comunica/bus-http:http-timeout\",\"initialBindings\":\"@comunica/actor-init-query:initialBindings\",\"lenient\":\"@comunica/actor-init-query:lenient\",\"log\":\"@comunica/core:log\",\"queryFormat\":\"@comunica/actor-init-query:queryFormat\",\"queryTimestamp\":\"@comunica/actor-init-query:queryTimestamp\",\"readOnly\":\"@comunica/bus-query-operation:readOnly\",\"recoverBrokenLinks\":\"@comunica/bus-http-wayback:recover-broken-links\",\"source\":\"@comunica/bus-rdf-resolve-quad-pattern:source\",\"sources\":\"@comunica/bus-rdf-resolve-quad-pattern:sources\",\"unionDefaultGraph\":\"@comunica/bus-query-operation:unionDefaultGraph\"},\n 'name': 'urn:comunica:default:init/actors#query',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_init__2_0_0_components_ActorInit_jsonld_ActorInit_default_bus\n});\nconst urn_comunica_default_rdf_update_quads_actors_hypermedia = new (require('@comunica/actor-rdf-update-quads-hypermedia').ActorRdfUpdateQuadsHypermedia)({\n 'cacheSize': 100,\n 'httpInvalidator': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_rdf_update_quads_hypermedia__2_0_0_components_ActorRdfUpdateQuadsHypermedia_jsonld_IActorRdfUpdateQuadsHypermediaArgs_default_invalidator,\n 'mediatorDereferenceRdf': urn_comunica_default_dereference_rdf_mediators_main,\n 'mediatorMetadata': urn_comunica_default_rdf_metadata_mediators_main,\n 'mediatorMetadataExtract': urn_comunica_default_rdf_metadata_extract_mediators_main,\n 'mediatorRdfUpdateHypermedia': urn_comunica_default_rdf_update_hypermedia_mediators_main,\n 'name': 'urn:comunica:default:rdf-update-quads/actors#hypermedia',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_update_quads__2_0_0_components_ActorRdfUpdateQuads_jsonld_ActorRdfUpdateQuads_default_bus\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_actors_hypermedia = new (require('@comunica/actor-rdf-resolve-quad-pattern-hypermedia').ActorRdfResolveQuadPatternHypermedia)({\n 'cacheSize': 100,\n 'httpInvalidator': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_rdf_resolve_quad_pattern_hypermedia__2_0_0_components_ActorRdfResolveQuadPatternHypermedia_jsonld_IActorRdfResolveQuadPatternHypermediaArgs_default_invalidator,\n 'maxIterators': 64,\n 'aggregateStore': false,\n 'mediatorDereferenceRdf': urn_comunica_default_dereference_rdf_mediators_main,\n 'mediatorMetadata': urn_comunica_default_rdf_metadata_mediators_main,\n 'mediatorMetadataExtract': urn_comunica_default_rdf_metadata_extract_mediators_main,\n 'mediatorMetadataAccumulate': urn_comunica_default_rdf_metadata_accumulate_mediators_main,\n 'mediatorRdfResolveHypermedia': urn_comunica_default_rdf_resolve_hypermedia_mediators_main,\n 'mediatorRdfResolveHypermediaLinks': urn_comunica_default_rdf_resolve_hypermedia_links_mediators_main,\n 'mediatorRdfResolveHypermediaLinksQueue': urn_comunica_default_rdf_resolve_hypermedia_links_queue_mediators_main,\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/actors#hypermedia',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_sparql_json__2_0_0_components_ActorQueryResultSerializeSparqlJson_jsonld_ActorQueryResultSerializeSparqlJson_default_observer = new (require('@comunica/actor-query-result-serialize-sparql-json').ActionObserverHttp)({\n 'httpInvalidator': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_sparql_json__2_0_0_components_ActionObserverHttp_jsonld_IActionObserverHttpArgs_default_invalidator,\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-sparql-json/^2.0.0/components/ActorQueryResultSerializeSparqlJson.jsonld#ActorQueryResultSerializeSparqlJson_default_observer',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus\n});\nconst https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_stats__2_0_0_components_ActorQueryResultSerializeStats_jsonld_ActorQueryResultSerializeStats_default_observer = new (require('@comunica/actor-query-result-serialize-stats').ActionObserverHttp)({\n 'httpInvalidator': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_stats__2_0_0_components_ActionObserverHttp_jsonld_IActionObserverHttpArgs_default_invalidator,\n 'name': 'https://linkedsoftwaredependencies.org/bundles/npm/@comunica/actor-query-result-serialize-stats/^2.0.0/components/ActorQueryResultSerializeStats.jsonld#ActorQueryResultSerializeStats_default_observer',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_http__2_0_0_components_ActorHttp_jsonld_ActorHttp_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_sparql_json = new (require('@comunica/actor-query-result-serialize-sparql-json').ActorQueryResultSerializeSparqlJson)({\n 'emitMetadata': true,\n 'httpObserver': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_sparql_json__2_0_0_components_ActorQueryResultSerializeSparqlJson_jsonld_ActorQueryResultSerializeSparqlJson_default_observer,\n 'mediaTypePriorities': {\"application/sparql-results+json\":0.8},\n 'mediaTypeFormats': {\"application/sparql-results+json\":\"http://www.w3.org/ns/formats/SPARQL_Results_JSON\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#sparql-json',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_query_result_serialize_actors_stats = new (require('@comunica/actor-query-result-serialize-stats').ActorQueryResultSerializeStats)({\n 'httpObserver': https___linkedsoftwaredependencies_org_bundles_npm__comunica_actor_query_result_serialize_stats__2_0_0_components_ActorQueryResultSerializeStats_jsonld_ActorQueryResultSerializeStats_default_observer,\n 'mediaTypePriorities': {\"stats\":0.5},\n 'mediaTypeFormats': {\"stats\":\"https://comunica.linkeddatafragments.org/#results_stats\"},\n 'name': 'urn:comunica:default:query-result-serialize/actors#stats',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_query_result_serialize__2_0_0_components_ActorQueryResultSerialize_jsonld_ActorQueryResultSerialize_default_bus\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_actors_rdfjs_source = new (require('@comunica/actor-rdf-resolve-quad-pattern-rdfjs-source').ActorRdfResolveQuadPatternRdfJsSource)({\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/actors#rdfjs-source',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus,\n 'beforeActors': [\n urn_comunica_default_rdf_resolve_quad_pattern_actors_hypermedia\n]\n});\nconst urn_comunica_default_rdf_resolve_quad_pattern_actors_string_source = new (require('@comunica/actor-rdf-resolve-quad-pattern-string-source').ActorRdfResolveQuadPatternStringSource)({\n 'cacheSize': 100,\n 'mediatorRdfParse': urn_comunica_default_rdf_parse_mediators_parse,\n 'mediatorRdfResolveQuadPattern': urn_comunica_default_rdf_resolve_quad_pattern_mediators_main,\n 'name': 'urn:comunica:default:rdf-resolve-quad-pattern/actors#string-source',\n 'bus': https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_rdf_resolve_quad_pattern__2_0_0_components_ActorRdfResolveQuadPattern_jsonld_ActorRdfResolveQuadPattern_default_bus,\n 'beforeActors': [\n urn_comunica_default_rdf_resolve_quad_pattern_actors_hypermedia\n]\n});\nconst urn_comunica_default_Runner = (https___linkedsoftwaredependencies_org_bundles_npm__comunica_bus_init__2_0_0_components_ActorInit_jsonld_ActorInit_default_bus, [\n urn_comunica_default_context_preprocess_actors_source_to_destination,\n urn_comunica_default_hash_bindings_actors_sha1,\n urn_comunica_default_init_actors_query,\n urn_comunica_default_optimize_query_operation_actors_join_bgp,\n urn_comunica_default_optimize_query_operation_actors_bgp_to_join,\n urn_comunica_default_optimize_query_operation_actors_join_connected,\n urn_comunica_default_query_parse_actors_sparql,\n urn_comunica_default_query_parse_actors_graphql,\n urn_comunica_default_query_result_serialize_actors_json,\n urn_comunica_default_query_result_serialize_actors_rdf,\n urn_comunica_default_query_result_serialize_actors_simple,\n urn_comunica_default_query_result_serialize_actors_csv,\n urn_comunica_default_query_result_serialize_actors_sparql_json,\n urn_comunica_default_query_result_serialize_actors_sparql_tsv,\n urn_comunica_default_query_result_serialize_actors_sparql_xml,\n urn_comunica_default_query_result_serialize_actors_stats,\n urn_comunica_default_query_result_serialize_actors_table,\n urn_comunica_default_query_result_serialize_actors_tree,\n urn_comunica_default_dereference_actors_http,\n urn_comunica_default_dereference_actors_fallback,\n urn_comunica_default_dereference_rdf_actors_parse,\n urn_comunica_default_rdf_join_entries_sort_actors_cardinality,\n urn_comunica_default_rdf_join_selectivity_actors_variable_counting,\n urn_comunica_default_rdf_metadata_actors_primary_topic,\n urn_comunica_default_rdf_metadata_actors_all,\n urn_comunica_default_rdf_metadata_accumulate_actors_cancontainundefs,\n urn_comunica_default_rdf_metadata_accumulate_actors_cardinality,\n urn_comunica_default_rdf_metadata_accumulate_actors_pagesize,\n urn_comunica_default_rdf_metadata_accumulate_actors_requesttime,\n urn_comunica_default_rdf_metadata_extract_actors_hydra_controls,\n urn_comunica_default_rdf_metadata_extract_actors_hydra_count,\n urn_comunica_default_rdf_metadata_extract_actors_hydra_pagesize,\n urn_comunica_default_rdf_metadata_extract_actors_request_time,\n urn_comunica_default_rdf_metadata_extract_actors_allow_http_methods,\n urn_comunica_default_rdf_metadata_extract_actors_put_accepted,\n urn_comunica_default_rdf_metadata_extract_actors_patch_sparql_update,\n urn_comunica_default_rdf_metadata_extract_actors_sparql_service,\n urn_comunica_default_rdf_parse_actors_n3,\n urn_comunica_default_rdf_parse_actors_jsonld,\n urn_comunica_default_rdf_parse_actors_rdfxml,\n urn_comunica_default_rdf_parse_actors_xmlrdfa,\n urn_comunica_default_rdf_parse_actors_html,\n urn_comunica_default_rdf_parse_actors_shaclc,\n urn_comunica_default_rdf_parse_html_actors_microdata,\n urn_comunica_default_rdf_parse_html_actors_rdfa,\n urn_comunica_default_rdf_parse_html_actors_script,\n urn_comunica_default_rdf_resolve_hypermedia_actors_qpf,\n urn_comunica_default_rdf_resolve_quad_pattern_actors_sparql,\n urn_comunica_default_rdf_resolve_hypermedia_actors_none,\n urn_comunica_default_rdf_resolve_hypermedia_links_actors_next,\n urn_comunica_default_rdf_resolve_hypermedia_links_queue_actors_fifo,\n urn_comunica_default_rdf_serialize_actors_n3,\n urn_comunica_default_rdf_serialize_actors_jsonld,\n urn_comunica_default_rdf_serialize_actors_shaclc,\n urn_comunica_default_rdf_update_hypermedia_actors_patch_sparql_update,\n urn_comunica_default_rdf_update_hypermedia_actors_put_ldp,\n urn_comunica_default_rdf_update_hypermedia_actors_sparql,\n urn_comunica_default_rdf_update_quads_actors_hypermedia,\n urn_comunica_default_rdf_update_quads_actors_rdfjs_store,\n urn_comunica_default_http_actors_proxy,\n urn_comunica_default_http_actors_fetch,\n urn_comunica_default_http_actors_wayback,\n urn_comunica_default_query_operation_actors_ask,\n urn_comunica_default_query_operation_actors_bgp,\n urn_comunica_default_query_operation_actors_construct,\n urn_comunica_default_query_operation_actors_describe,\n urn_comunica_default_query_operation_actors_distinct,\n urn_comunica_default_query_operation_actors_extend,\n urn_comunica_default_query_operation_actors_filter,\n urn_comunica_default_query_operation_actors_from,\n urn_comunica_default_query_operation_actors_group,\n urn_comunica_default_query_operation_actors_join,\n urn_comunica_default_query_operation_actors_leftjoin,\n urn_comunica_default_query_operation_actors_minus,\n urn_comunica_default_query_operation_actors_nop,\n urn_comunica_default_query_operation_actors_orderby,\n urn_comunica_default_query_operation_actors_project,\n urn_comunica_default_query_operation_actors_quadpattern,\n urn_comunica_default_query_operation_actors_reduced,\n urn_comunica_default_query_operation_actors_service,\n urn_comunica_default_query_operation_actors_slice,\n urn_comunica_default_query_operation_actors_sparql_endpoint,\n urn_comunica_default_query_operation_actors_union,\n urn_comunica_default_query_operation_actors_values,\n urn_comunica_default_query_operation_actors_path_alt,\n urn_comunica_default_query_operation_actors_path_inv,\n urn_comunica_default_query_operation_actors_path_link,\n urn_comunica_default_query_operation_actors_path_nps,\n urn_comunica_default_query_operation_actors_path_one_or_more,\n urn_comunica_default_query_operation_actors_path_seq,\n urn_comunica_default_query_operation_actors_path_zero_or_more,\n urn_comunica_default_query_operation_actors_path_zero_or_one,\n urn_comunica_default_query_operation_actors_update_add,\n urn_comunica_default_query_operation_actors_update_clear,\n urn_comunica_default_query_operation_actors_update_composite,\n urn_comunica_default_query_operation_actors_update_copy,\n urn_comunica_default_query_operation_actors_update_create,\n urn_comunica_default_query_operation_actors_update_delete_insert,\n urn_comunica_default_query_operation_actors_update_drop,\n urn_comunica_default_query_operation_actors_update_load,\n urn_comunica_default_query_operation_actors_update_move,\n urn_comunica_default_rdf_join_actors_inner_none,\n urn_comunica_default_rdf_join_actors_inner_single,\n urn_comunica_default_rdf_join_actors_inner_multi_empty,\n urn_comunica_default_rdf_join_actors_inner_multi_bind,\n urn_comunica_default_rdf_join_actors_inner_hash,\n urn_comunica_default_rdf_join_actors_inner_symmetric_hash,\n urn_comunica_default_rdf_join_actors_inner_nested_loop,\n urn_comunica_default_rdf_join_actors_inner_multi_smallest,\n urn_comunica_default_rdf_join_actors_minus_hash,\n urn_comunica_default_rdf_join_actors_minus_hash_undef,\n urn_comunica_default_rdf_join_actors_optional_bind,\n urn_comunica_default_rdf_join_actors_optional_nested_loop,\n urn_comunica_default_rdf_resolve_quad_pattern_actors_federated,\n urn_comunica_default_rdf_resolve_quad_pattern_actors_hypermedia,\n urn_comunica_default_rdf_resolve_quad_pattern_actors_rdfjs_source,\n urn_comunica_default_rdf_resolve_quad_pattern_actors_string_source\n]);\nmodule.exports = urn_comunica_default_init_actors_query;\n\n","import { QueryEngineBase } from '@comunica/actor-init-query';\nimport type { ActorInitQueryBase } from '@comunica/actor-init-query';\nimport type { IQueryContextCommon } from '@comunica/types';\n\nconst engineDefault = require('../engine-default.js');\n\n/**\n * A Comunica SPARQL query engine.\n */\nexport class QueryEngine\n extends QueryEngineBase {\n public constructor(engine: ActorInitQueryBase = engineDefault) {\n super(engine);\n }\n}\n","/* eslint-disable unicorn/filename-case */\n/* eslint-enable unicorn/filename-case */\nexport * from './QueryEngine';\n","import type { IAction, IActorArgs, IActorOutput, IActorTest, Mediate } from '@comunica/core';\nimport { Actor } from '@comunica/core';\nimport type { IActionContext } from '@comunica/types';\n\n/**\n * An abstract actor that handles media-typed actions.\n *\n * It splits up a action between a 'handle' and a 'mediaTypes' action.\n * A 'mediaTypes' action is used to retrieve the available media types from this actor.\n * A 'handle' action is abstract, and can be implemented to do anything,\n * such as parsing, serializing, etc.\n * @see IActionAbstractMediaTyped\n *\n * @see ActorAbstractMediaTypedFixed\n */\nexport abstract class ActorAbstractMediaTyped\n extends Actor, IActorTestAbstractMediaTyped, IActorOutputAbstractMediaTyped> {\n public constructor(args: IActorArgsMediaTyped) {\n super(args);\n }\n\n public async run(action: IActionAbstractMediaTyped): Promise> {\n if ('handle' in action) {\n const typedAction: IActionAbstractMediaTypedHandle = action;\n return { handle: await this.runHandle(typedAction.handle, typedAction.handleMediaType, action.context) };\n }\n if ('mediaTypes' in action) {\n return { mediaTypes: await this.getMediaTypes(action.context) };\n }\n if ('mediaTypeFormats' in action) {\n return { mediaTypeFormats: await this.getMediaTypeFormats(action.context) };\n }\n throw new Error('Either a handle, mediaTypes or mediaTypeFormats action needs to be provided');\n }\n\n public async test(action: IActionAbstractMediaTyped): Promise> {\n if ('handle' in action) {\n const typedAction: IActionAbstractMediaTypedHandle = action;\n return { handle: await this.testHandle(typedAction.handle, typedAction.handleMediaType, action.context) };\n }\n if ('mediaTypes' in action) {\n return { mediaTypes: await this.testMediaType(action.context) };\n }\n if ('mediaTypeFormats' in action) {\n return { mediaTypeFormats: await this.testMediaTypeFormats(action.context) };\n }\n throw new Error('Either a handle, mediaTypes or mediaTypeFormats action needs to be provided');\n }\n\n /**\n * Check if this actor can run the given handle action,\n * without actually running it.\n *\n * @param {HI} action The handle action to test.\n * @param {string} mediaType The media type to test.\n * @param {ActionContext} context An optional context.\n * @return {Promise} A promise that resolves to the handle test result.\n */\n public abstract testHandle(action: HI, mediaType: string | undefined, context: IActionContext): Promise;\n\n /**\n * Run the given handle action on this actor.\n *\n * @param {HI} action The handle action to run.\n * @param {string} mediaType The media type to run with.\n * @param {ActionContext} context An optional context.\n * @return {Promise} A promise that resolves to the handle run result.\n */\n public abstract runHandle(action: HI, mediaType: string | undefined, context: IActionContext): Promise;\n\n /**\n * Check if this actor can emit its media types.\n *\n * @param {ActionContext} context An optional context.\n * @return {Promise} A promise that resolves to the media type run result.\n */\n public abstract testMediaType(context: IActionContext): Promise;\n\n /**\n * Get the media type of this given actor.\n *\n * @param {ActionContext} context An optional context.\n * @return {Promise<{[id: string]: number}>} A promise that resolves to the media types.\n */\n public abstract getMediaTypes(context: IActionContext): Promise>;\n\n /**\n * Check if this actor can emit its media type formats.\n *\n * @param {ActionContext} context An optional context.\n * @return {Promise} A promise that resolves to the media type run result.\n */\n public abstract testMediaTypeFormats(context: IActionContext): Promise;\n\n /**\n * Get the media type formats of this given actor.\n *\n * @param {ActionContext} context An optional context.\n * @return {Promise<{[id: string]: string}>} A promise that resolves to the media types.\n */\n public abstract getMediaTypeFormats(context: IActionContext): Promise>;\n}\n\nexport interface IActorArgsMediaTyped extends IActorArgs,\nIActorTestAbstractMediaTyped, IActorOutputAbstractMediaTyped> {}\n\nexport type IActionAbstractMediaTyped = IActionAbstractMediaTypedHandle | IActionAbstractMediaTypedMediaTypes\n| IActionAbstractMediaTypedMediaTypeFormats;\nexport interface IActionAbstractMediaTypedHandle extends IAction {\n /**\n * The handle action input.\n */\n handle: HI;\n /**\n * The handle media type that should be used when 'handle' is truthy.\n */\n handleMediaType?: string;\n}\n\nexport interface IActionAbstractMediaTypedMediaTypes extends IAction {\n /**\n * True if media types should be retrieved.\n */\n mediaTypes: boolean;\n}\n\nexport interface IActionAbstractMediaTypedMediaTypeFormats extends IAction {\n /**\n * True if media type formats should be retrieved.\n */\n mediaTypeFormats: boolean;\n}\n\n/**\n * Either 'handle', or 'mediaTypes' or 'mediaTypeFormats' must be truthy.\n * Groups may not be truthy at the same time.\n */\nexport type IActorTestAbstractMediaTyped = IActorTestAbstractMediaTypedHandle\n| IActorTestAbstractMediaTypedMediaTypes | IActorTestAbstractMediaTypedMediaTypeFormats;\nexport interface IActorTestAbstractMediaTypedHandle extends IActorTest {\n /**\n * The handle test output.\n */\n handle: HT;\n}\nexport interface IActorTestAbstractMediaTypedMediaTypes extends IActorTest {\n /**\n * True if media types can be retrieved.\n */\n mediaTypes: boolean;\n}\nexport interface IActorTestAbstractMediaTypedMediaTypeFormats extends IActorTest {\n /**\n * True if media type formats can be retrieved.\n */\n mediaTypeFormats?: boolean;\n}\n\n/**\n * Either 'handle', or 'mediaTypes' or 'mediaTypeFormats' must be truthy.\n * Groups may not be truthy at the same time.\n */\nexport type IActorOutputAbstractMediaTyped = IActorOutputAbstractMediaTypedHandle\n| IActorOutputAbstractMediaTypedMediaTypes | IActorOutputAbstractMediaTypedMediaTypeFormats;\nexport interface IActorOutputAbstractMediaTypedHandle extends IActorOutput {\n /**\n * The handle action output.\n */\n handle: HO;\n}\nexport interface IActorOutputAbstractMediaTypedMediaTypes extends IActorOutput {\n /**\n * An object containing media types as keys,\n * and preferences as values, with values ranging from 0 to 1.\n */\n mediaTypes: Record;\n}\nexport interface IActorOutputAbstractMediaTypedMediaTypeFormats extends IActorOutput {\n /**\n * An object containing media types as keys,\n * and format IRIs as values.\n */\n mediaTypeFormats: Record;\n}\n\nexport type MediateMediaTypes = Mediate<\nIActionAbstractMediaTypedMediaTypes, IActorOutputAbstractMediaTypedMediaTypes, IActorTestAbstractMediaTypedMediaTypes>;\n\nexport type MediateMediaTyped = Mediate<\nIActionAbstractMediaTypedHandle,\nIActorOutputAbstractMediaTypedHandle,\nIActorTestAbstractMediaTypedHandle\n>;\n","import type { IActionContext } from '@comunica/types';\nimport type { IActorArgsMediaTyped } from './ActorAbstractMediaTyped';\nimport { ActorAbstractMediaTyped } from './ActorAbstractMediaTyped';\n\nexport abstract class ActorAbstractMediaTypedFixed extends ActorAbstractMediaTyped {\n public readonly mediaTypePriorities: Record;\n public readonly mediaTypeFormats: Record;\n public readonly priorityScale: number;\n\n public constructor(args: IActorArgsMediaTypedFixed) {\n super(args);\n const scale: number = this.priorityScale || this.priorityScale === 0 ? this.priorityScale : 1;\n if (this.mediaTypePriorities) {\n Object.entries(this.mediaTypePriorities).forEach(([ key, value ], index) => {\n this.mediaTypePriorities[key] = scale * value;\n });\n }\n this.mediaTypePriorities = Object.freeze(this.mediaTypePriorities);\n this.mediaTypeFormats = Object.freeze(this.mediaTypeFormats);\n }\n\n public async testHandle(action: HI, mediaType: string | undefined, context: IActionContext): Promise {\n if (!mediaType || !(mediaType in this.mediaTypePriorities)) {\n throw new Error(`Unrecognized media type: ${mediaType}`);\n }\n return await this.testHandleChecked(action, context);\n }\n\n /**\n * Check to see if this actor can handle the given action.\n * The media type has already been checked before this is called.\n *\n * @param {ActionContext} context An optional context.\n * @param {HI} action The action to test.\n */\n public abstract testHandleChecked(action: HI, context: IActionContext): Promise;\n\n public async testMediaType(context: IActionContext): Promise {\n return true;\n }\n\n public async getMediaTypes(context: IActionContext): Promise> {\n return this.mediaTypePriorities;\n }\n\n public async testMediaTypeFormats(context: IActionContext): Promise {\n return true;\n }\n\n public async getMediaTypeFormats(context: IActionContext): Promise> {\n return this.mediaTypeFormats;\n }\n}\n\nexport interface IActorArgsMediaTypedFixed extends IActorArgsMediaTyped {\n /**\n * A record of media types, with media type name as key, and its priority as value.\n * Priorities are numbers between [0, 1].\n * @range {json}\n */\n mediaTypePriorities: Record;\n /**\n * A record of media types, with media type name as key, and its format IRI as value.\n * @range {json}\n */\n mediaTypeFormats: Record;\n /**\n * A multiplier for media type priorities.\n * This can be used for keeping the original media types in place,\n * but scaling all of their scores with a certain value.\n * @range {double}\n */\n priorityScale?: number;\n}\n","export * from './ActorAbstractMediaTyped';\nexport * from './ActorAbstractMediaTypedFixed';\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryOperationResultBindings, Bindings, IActionContext, MetadataBindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport {\n BufferedIterator, MultiTransformIterator,\n TransformIterator, EmptyIterator,\n} from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport { termToString } from 'rdf-string';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\nimport { PathVariableObjectIterator } from './PathVariableObjectIterator';\n\nconst DF = new DataFactory();\nconst BF = new BindingsFactory();\n\n/**\n * An abstract actor that handles Path operations.\n *\n * Provides multiple helper functions used by the Path operation actors.\n */\nexport abstract class ActorAbstractPath extends ActorQueryOperationTypedMediated {\n protected static readonly FACTORY: Factory = new Factory();\n\n protected readonly predicateType: string;\n\n protected constructor(args: IActorQueryOperationTypedMediatedArgs, predicateType: string) {\n super(args, 'path');\n this.predicateType = predicateType;\n }\n\n public async testOperation(operation: Algebra.Path, context: IActionContext): Promise {\n if (operation.predicate.type !== this.predicateType) {\n throw new Error(`This Actor only supports ${this.predicateType} Path operations.`);\n }\n\n return true;\n }\n\n // Generates a variable that does not yet occur in the path\n public generateVariable(path?: Algebra.Path, name?: string): RDF.Variable {\n if (!name) {\n return this.generateVariable(path, 'b');\n }\n\n // Path predicates can't contain variables\n if (path && (path.subject.value === name || path.object.value === name)) {\n return this.generateVariable(path, `${name}b`);\n }\n\n return DF.variable(name);\n }\n\n // Such connectivity matching does not introduce duplicates (it does not incorporate any count of the number\n // of ways the connection can be made) even if the repeated path itself would otherwise result in duplicates.\n // https://www.w3.org/TR/sparql11-query/#propertypaths\n public async isPathArbitraryLengthDistinct(context: IActionContext, path: Algebra.Path):\n Promise<{ context: IActionContext; operation: IQueryOperationResultBindings | undefined }> {\n if (!context.get(KeysQueryOperation.isPathArbitraryLengthDistinctKey)) {\n context = context.set(KeysQueryOperation.isPathArbitraryLengthDistinctKey, true);\n return { context,\n operation: ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({\n operation: ActorAbstractPath.FACTORY.createDistinct(path),\n context,\n })) };\n }\n\n context = context.set(KeysQueryOperation.isPathArbitraryLengthDistinctKey, false);\n return { context, operation: undefined };\n }\n\n private async predicateStarGraphVariable(\n subject: RDF.Term,\n object: RDF.Variable,\n predicate: Algebra.PropertyPathSymbol,\n graph: RDF.Variable,\n context: IActionContext,\n ): Promise {\n // TODO: refactor this with an iterator just like PathVariableObjectIterator so we handle backpressure correctly\n // Construct path to obtain all graphs where subject exists\n const predVar = this.generateVariable(ActorAbstractPath.FACTORY\n .createPath(subject, predicate, object, graph));\n const findGraphs = ActorAbstractPath.FACTORY.createUnion([\n ActorAbstractPath.FACTORY.createPattern(subject, predVar, object, graph),\n ActorAbstractPath.FACTORY.createPattern(object, predVar, subject, graph),\n ]);\n const results = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ context, operation: findGraphs }),\n );\n\n const passedGraphs: Set = new Set();\n\n const bindingsStream = new MultiTransformIterator(\n results.bindingsStream,\n {\n multiTransform: (bindings: Bindings) => {\n // Extract the graph and start a predicate* search starting from subject in each graph\n const graphValue: RDF.Term = bindings.get(graph)!;\n if (passedGraphs.has(graphValue.value)) {\n return new EmptyIterator();\n }\n passedGraphs.add(graphValue.value);\n return new TransformIterator(\n async() => {\n const it = new BufferedIterator();\n await this.getObjectsPredicateStar(subject, predicate, graphValue, context, {}, it, { count: 0 });\n return it.transform({\n transform(item, next, push) {\n push(BF.bindings([\n [ object, item ],\n [ graph, graphValue ],\n ]));\n next();\n },\n });\n }, { maxBufferSize: 128 },\n );\n },\n autoStart: false,\n },\n );\n\n return {\n bindingsStream,\n metadata: results.metadata,\n };\n }\n\n /**\n * Returns an iterator with Bindings of the query subject predicate* ?o or subject predicate+ ?o\n * If graph is a variable, it will also be in those bindings\n * @param {Term} subject Term of where we start the predicate* search.\n * @param {Algebra.PropertyPathSymbol} predicate Predicate of the *-path.\n * @param {Variable} object Variable of the zeroOrMore-query.\n * @param {Term} graph The graph in which we search for the pattern. (Possibly a variable)\n * @param {ActionContext} context The context to pass to sub-opertations\n * @param emitFirstSubject If the path operation is predicate*, otherwise it is predicate+.\n * @return {Promise} Iterator to where all bindings of query should have been pushed.\n */\n public async getObjectsPredicateStarEval(\n subject: RDF.Term,\n predicate: Algebra.PropertyPathSymbol,\n object: RDF.Variable,\n graph: RDF.Term,\n context: IActionContext,\n emitFirstSubject: boolean,\n ): Promise {\n if (graph.termType === 'Variable') {\n return this.predicateStarGraphVariable(subject, object, predicate, graph, context);\n }\n\n const it = new PathVariableObjectIterator(\n subject,\n predicate,\n graph,\n context,\n this.mediatorQueryOperation,\n emitFirstSubject,\n );\n\n const bindingsStream = it.transform({\n autoStart: false,\n transform(item, next, push) {\n push(BF.bindings([[ object, item ]]));\n next();\n },\n });\n\n return {\n bindingsStream,\n async metadata() {\n const metadata: MetadataBindings = await new Promise(resolve => {\n it.getProperty('metadata', (metadataInner: any) => resolve(metadataInner()));\n });\n // Increment cardinality by one, because we always have at least one result once we reach this stage.\n // See the transformation above where we push a single binding.\n metadata.cardinality.value++;\n return metadata;\n },\n };\n }\n\n /**\n * Pushes all terms to iterator `it` that are a solution of object predicate* ?o.\n * @param {Term} object Term of where we start the predicate* search.\n * @param {Algebra.PropertyPathSymbol} predicate Predicate of the *-path.\n * @param {Term} graph The graph in which we search for the pattern.\n * @param {ActionContext} context\n * @param {Record} termHashes Remembers the objects we've already searched for.\n * @param {BufferedIterator} it Iterator to push terms to.\n * @param {any} counter Counts how many searches are in progress to close it when needed (when counter == 0).\n * @return {Promise} The results metadata.\n */\n public async getObjectsPredicateStar(\n object: RDF.Term,\n predicate: Algebra.PropertyPathSymbol,\n graph: RDF.Term,\n context: IActionContext,\n termHashes: Record,\n it: BufferedIterator,\n counter: any,\n ): Promise {\n const termString = termToString(object);\n if (termHashes[termString]) {\n return;\n }\n\n ( it)._push(object);\n termHashes[termString] = object;\n counter.count++;\n\n const thisVariable = this.generateVariable();\n const path = ActorAbstractPath.FACTORY.createPath(object, predicate, thisVariable, graph);\n const results = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: path, context }),\n );\n results.bindingsStream.on('data', async(bindings: Bindings) => {\n const result = bindings.get(thisVariable);\n await this.getObjectsPredicateStar(result!, predicate, graph, context, termHashes, it, counter);\n });\n results.bindingsStream.on('end', () => {\n if (--counter.count === 0) {\n it.close();\n }\n });\n\n return results.metadata;\n }\n\n /**\n * Pushes all terms to iterator `it` that are a solution of ?s predicate* ?o.\n * @param {string} subjectVar String representation of subjectVariable\n * @param {string} objectVar String representation of objectVariable\n * @param {Term} subjectVal Term of where we start the predicate* search.\n * @param {Term} objectVal Found solution for an object, start for the new step.\n * @param {Algebra.PropertyPathSymbol} predicate Predicate of the *-path.\n * @param {Term} graph The graph in which we search for the pattern.\n * @param {ActionContext} context\n * @param {{[id: string]: Promise}} termHashesGlobal\n * Remembers solutions for when objectVal is already been calculated, can be reused when same objectVal occurs\n * @param {{[id: string]: Term}} termHashesCurrentSubject\n * Remembers the pairs we've already searched for, can stop searching if so.\n * @param {BufferedIterator} it Iterator to push terms to.\n * @param {any} counter Counts how many searches are in progress to close it when needed (when counter == 0).\n * @return {Promise} All solutions of query should have been pushed to it by then.\n */\n // Let the iterator `it` emit all bindings of size 2, with subjectStringVariable as value subjectVal\n // and objectStringVariable as value all nodes reachable through predicate* beginning at objectVal\n public async getSubjectAndObjectBindingsPredicateStar(\n subjectVar: RDF.Variable,\n objectVar: RDF.Variable,\n subjectVal: RDF.Term,\n objectVal: RDF.Term,\n predicate: Algebra.PropertyPathSymbol,\n graph: RDF.Term,\n context: IActionContext,\n termHashesGlobal: Record>,\n termHashesCurrentSubject: Record,\n it: BufferedIterator,\n counter: any,\n ): Promise {\n const termString = termToString(objectVal) + termToString(graph);\n\n // If this combination of subject and object already done, return nothing\n if (termHashesCurrentSubject[termString]) {\n return;\n }\n\n counter.count++;\n termHashesCurrentSubject[termString] = true;\n ( it)._push(BF.bindings([\n [ subjectVar, subjectVal ],\n [ objectVar, objectVal ],\n ]));\n\n // If every reachable node from object has already been calculated, use these for current subject too\n if (termString in termHashesGlobal) {\n const objects = await termHashesGlobal[termString];\n for (const object of objects) {\n await this.getSubjectAndObjectBindingsPredicateStar(\n subjectVar,\n objectVar,\n subjectVal,\n object,\n predicate,\n graph,\n context,\n termHashesGlobal,\n termHashesCurrentSubject,\n it,\n counter,\n );\n }\n if (--counter.count === 0) {\n it.close();\n }\n\n return;\n }\n\n // Construct promise to calculate all reachable nodes from this object\n const promise = new Promise(async(resolve, reject) => {\n const objectsArray: RDF.Term[] = [];\n\n // Construct path that leads us one step through predicate\n const thisVariable = this.generateVariable();\n const path = ActorAbstractPath.FACTORY.createPath(objectVal, predicate, thisVariable, graph);\n const results = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: path, context }),\n );\n\n // Recursive call on all neighbours\n results.bindingsStream.on('data', async(bindings: RDF.Bindings) => {\n const result: RDF.Term = bindings.get(thisVariable)!;\n objectsArray.push(result);\n await this.getSubjectAndObjectBindingsPredicateStar(\n subjectVar,\n objectVar,\n subjectVal,\n result,\n predicate,\n graph,\n context,\n termHashesGlobal,\n termHashesCurrentSubject,\n it,\n counter,\n );\n });\n results.bindingsStream.on('error', reject);\n results.bindingsStream.on('end', () => {\n if (--counter.count === 0) {\n it.close();\n }\n resolve(objectsArray);\n });\n });\n\n // Set it in the termHashesGlobal when this object occurs again they can wait for this promise\n termHashesGlobal[termString] = promise;\n }\n}\n\nexport interface IPathResultStream {\n bindingsStream: AsyncIterator;\n metadata: () => Promise;\n}\n","import type { MediatorQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport type { IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { BufferedIterator } from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport { termToString } from 'rdf-string';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\nconst FACTORY = new Factory();\n\n/**\n * An iterator that implements the multi-length property path operation (* and +)\n * for a fixed subject and predicate, and a variable object.\n */\nexport class PathVariableObjectIterator extends BufferedIterator {\n private readonly termHashes: Map = new Map();\n private readonly runningOperations: AsyncIterator[] = [];\n private readonly pendingOperations: { variable: RDF.Variable; operation: Algebra.Path }[] = [];\n\n public constructor(\n private readonly subject: RDF.Term,\n private readonly predicate: Algebra.PropertyPathSymbol,\n private readonly graph: RDF.Term,\n private readonly context: IActionContext,\n private readonly mediatorQueryOperation: MediatorQueryOperation,\n emitFirstSubject: boolean,\n private readonly maxRunningOperations = 16,\n ) {\n // The autoStart flag must be true to kickstart metadata collection\n super({ autoStart: true });\n\n // Push the subject as starting point\n this._push(this.subject, emitFirstSubject);\n }\n\n protected _end(destroy?: boolean): void {\n // Close all running iterators\n for (const it of this.runningOperations) {\n it.destroy();\n }\n\n super._end(destroy);\n }\n\n protected _push(item: RDF.Term, pushAsResult = true): void {\n let termString;\n if (pushAsResult) {\n // Don't push if this subject was already found\n termString = termToString(item);\n if (this.termHashes.has(termString)) {\n return;\n }\n }\n\n // Add a pending path operation for this item\n const variable = DF.variable('b');\n this.pendingOperations.push({\n variable,\n operation: FACTORY.createPath(item, this.predicate, variable, this.graph),\n });\n\n // Otherwise, push the subject\n if (termString) {\n this.termHashes.set(termString, item);\n super._push(item);\n }\n }\n\n protected _read(count: number, done: () => void): void {\n // eslint-disable-next-line @typescript-eslint/no-this-alias,consistent-this\n const self = this;\n (async function() {\n // Open as many operations as possible\n while (self.runningOperations.length < self.maxRunningOperations) {\n if (self.pendingOperations.length === 0) {\n break;\n }\n\n const pendingOperation = self.pendingOperations.pop()!;\n const results = ActorQueryOperation.getSafeBindings(\n await self.mediatorQueryOperation.mediate({ operation: pendingOperation.operation, context: self.context }),\n );\n const runningOperation = results.bindingsStream.transform({\n autoStart: false,\n transform(bindings, next, push) {\n const newTerm: RDF.Term = bindings.get(pendingOperation.variable)!;\n push(newTerm);\n next();\n },\n });\n if (!runningOperation.done) {\n self.runningOperations.push(runningOperation);\n runningOperation.on('error', error => self.destroy(error));\n runningOperation.on('readable', () => {\n self.readable = true;\n self._fillBufferAsync();\n });\n runningOperation.on('end', () => {\n self.runningOperations.splice(self.runningOperations.indexOf(runningOperation), 1);\n self.readable = true;\n self._fillBufferAsync();\n });\n }\n\n self.setProperty('metadata', results.metadata);\n }\n\n // Try to read `count` items (based on UnionIterator)\n let lastCount = 0;\n let item: RDF.Term | null;\n // eslint-disable-next-line no-cond-assign\n while (lastCount !== (lastCount = count)) {\n // Prioritize the operations that have been added first\n for (let i = 0; i < self.runningOperations.length && count > 0; i++) {\n // eslint-disable-next-line no-cond-assign\n if ((item = self.runningOperations[i].read()) !== null) {\n count--;\n self._push(item);\n }\n }\n }\n\n // Close if everything has been read\n if (self.runningOperations.length === 0 && self.pendingOperations.length === 0) {\n self.close();\n }\n })().then(() => {\n done();\n }, error => this.destroy(error));\n }\n}\n","import type { IActorContextPreprocessOutput, IActorContextPreprocessArgs } from '@comunica/bus-context-preprocess';\nimport { ActorContextPreprocess } from '@comunica/bus-context-preprocess';\nimport { KeysRdfResolveQuadPattern, KeysRdfUpdateQuads } from '@comunica/context-entries';\nimport type { IActorTest, IAction } from '@comunica/core';\nimport type { DataSources } from '@comunica/types';\n\n/**\n * A comunica Source To Destination Context Preprocess Actor.\n */\nexport class ActorContextPreprocessSourceToDestination extends ActorContextPreprocess {\n public constructor(args: IActorContextPreprocessArgs) {\n super(args);\n }\n\n public async test(action: IAction): Promise {\n return true;\n }\n\n public async run(action: IAction): Promise {\n if (action.context.get(KeysRdfResolveQuadPattern.sources) && !action.context.get(KeysRdfUpdateQuads.destination)) {\n const sources: DataSources = action.context.get(KeysRdfResolveQuadPattern.sources)!;\n if (sources.length === 1) {\n return { context: action.context.set(KeysRdfUpdateQuads.destination, sources[0]) };\n }\n }\n return action;\n }\n}\n","import type { IActionDereference, IActorDereferenceOutput, IActorDereferenceArgs } from '@comunica/bus-dereference';\nimport { ActorDereference } from '@comunica/bus-dereference';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica Fallback Dereference Actor.\n */\nexport class ActorDereferenceFallback extends ActorDereference {\n public constructor(args: IActorDereferenceArgs) {\n super(args);\n }\n\n public async test(action: IActionDereference): Promise {\n return true;\n }\n\n public async run(action: IActionDereference): Promise {\n return this.handleDereferenceErrors(action, new Error(`Could not dereference '${action.url}'`));\n }\n}\n","/* eslint-disable unicorn/filename-case */\n/* eslint-enable unicorn/filename-case */\nimport {\n ActorDereferenceHttpBase,\n} from './ActorDereferenceHttpBase';\n\n/**\n * The browser variant of {@link ActorDereferenceHttp}.\n */\nexport class ActorDereferenceHttp extends ActorDereferenceHttpBase {\n protected getMaxAcceptHeaderLength(): number {\n return this.maxAcceptHeaderLengthBrowser;\n }\n}\n","import type { IActionDereference, IActorDereferenceArgs, IActorDereferenceOutput } from '@comunica/bus-dereference';\nimport { ActorDereference, emptyReadable } from '@comunica/bus-dereference';\nimport type { IActorHttpOutput, MediatorHttp } from '@comunica/bus-http';\nimport { ActorHttp } from '@comunica/bus-http';\nimport type { IActorTest } from '@comunica/core';\nimport { Headers } from 'cross-fetch';\nimport { resolve as resolveRelative } from 'relative-to-absolute-iri';\n// Use require instead of import for default exports, to be compatible with variants of esModuleInterop in tsconfig.\nimport stringifyStream = require('stream-to-string');\n\nconst REGEX_MEDIATYPE = /^[^ ;]*/u;\n\nexport function mediaTypesToAcceptString(mediaTypes: Record, maxLength: number): string {\n const wildcard = '*/*;q=0.1';\n const parts: string[] = [];\n const sortedMediaTypes = Object.entries(mediaTypes)\n .map(([ mediaType, priority ]) => ({ mediaType, priority }))\n .sort((left, right) => right.priority === left.priority ?\n left.mediaType.localeCompare(right.mediaType) :\n right.priority - left.priority);\n // Take into account the ',' characters joining each type\n let partsLength = sortedMediaTypes.length - 1;\n for (const { mediaType, priority } of sortedMediaTypes) {\n const part = mediaType + (priority !== 1 ? `;q=${priority.toFixed(3).replace(/0*$/u, '')}` : '');\n if (partsLength + part.length > maxLength) {\n while (partsLength + wildcard.length > maxLength) {\n const last = parts.pop() || '';\n // Don't forget the ','\n partsLength -= last.length + 1;\n }\n parts.push(wildcard);\n break;\n }\n parts.push(part);\n partsLength += part.length;\n }\n return parts.length === 0 ? '*/*' : parts.join(',');\n}\n\n/**\n * An actor that listens on the 'dereference' bus.\n *\n * It resolves the URL using the HTTP bus using an accept header compiled from the available media types.\n */\nexport abstract class ActorDereferenceHttpBase extends ActorDereference implements IActorDereferenceHttpArgs {\n public readonly mediatorHttp: MediatorHttp;\n public readonly maxAcceptHeaderLength: number;\n public readonly maxAcceptHeaderLengthBrowser: number;\n\n public constructor(args: IActorDereferenceHttpArgs) {\n super(args);\n }\n\n public async test({ url }: IActionDereference): Promise {\n if (!/^https?:/u.test(url)) {\n throw new Error(`Cannot retrieve ${url} because it is not an HTTP(S) URL.`);\n }\n return true;\n }\n\n public async run(action: IActionDereference): Promise {\n let exists = true;\n\n // Append any custom passed headers\n const headers = new Headers(action.headers);\n\n // Resolve HTTP URL using appropriate accept header\n headers.append(\n 'Accept',\n mediaTypesToAcceptString(await action.mediaTypes?.() ?? {}, this.getMaxAcceptHeaderLength()),\n );\n\n let httpResponse: IActorHttpOutput;\n const requestTimeStart = Date.now();\n try {\n httpResponse = await this.mediatorHttp.mediate({\n context: action.context,\n init: { headers, method: action.method },\n input: action.url,\n });\n } catch (error: unknown) {\n return this.handleDereferenceErrors(action, error);\n }\n // The response URL can be relative to the given URL\n const url = resolveRelative(httpResponse.url, action.url);\n const requestTime = Date.now() - requestTimeStart;\n\n // Only parse if retrieval was successful\n if (httpResponse.status !== 200) {\n exists = false;\n // Consume the body, to avoid process to hang\n const bodyString = httpResponse.body ?\n await stringifyStream(ActorHttp.toNodeReadable(httpResponse.body)) :\n 'empty response';\n\n if (!action.acceptErrors) {\n const error = new Error(`Could not retrieve ${action.url} (HTTP status ${httpResponse.status}):\\n${bodyString}`);\n return this.handleDereferenceErrors(action, error, httpResponse.headers, requestTime);\n }\n }\n\n const mediaType = REGEX_MEDIATYPE.exec(httpResponse.headers.get('content-type') ?? '')?.[0];\n\n // Return the parsed quad stream and whether or not only triples are supported\n return {\n url,\n data: exists ? ActorHttp.toNodeReadable(httpResponse.body) : emptyReadable(),\n exists,\n requestTime,\n headers: httpResponse.headers,\n mediaType: mediaType !== 'text/plain' ? mediaType : undefined,\n };\n }\n\n protected abstract getMaxAcceptHeaderLength(): number;\n}\n\nexport interface IActorDereferenceHttpArgs extends IActorDereferenceArgs {\n /**\n * The HTTP mediator.\n */\n mediatorHttp: MediatorHttp;\n /**\n * The maximum allowed accept header value length for non-browser environments.\n * @range {integer}\n * @default {1024}\n */\n maxAcceptHeaderLength: number;\n /**\n * The maximum allowed accept header value length for browser environments.\n * @range {integer}\n * @default {128}\n */\n maxAcceptHeaderLengthBrowser: number;\n}\n","import type { IActorDereferenceOutput } from '@comunica/bus-dereference';\nimport type { IActorDereferenceRdfArgs } from '@comunica/bus-dereference-rdf';\nimport { ActorDereferenceRdf } from '@comunica/bus-dereference-rdf';\nimport type { IActionRdfParseMetadata } from '@comunica/bus-rdf-parse';\n\n/**\n * A comunica Parse Dereference RDF Actor.\n */\nexport class ActorDereferenceRdfParse extends ActorDereferenceRdf {\n /**\n * @param args - @defaultNested {{\n * \"ttl\": \"text/turtle\",\n * \"turtle\": \"text/turtle\",\n * \"shaclc\": \"text/shaclc\",\n * \"shc\": \"text/shaclc\",\n * \"shaclce\": \"text/shaclc-ext\",\n * \"shce\": \"text/shaclc-ext\",\n * \"nt\": \"application/n-triples\",\n * \"ntriples\": \"application/n-triples\",\n * \"nq\": \"application/n-quads\",\n * \"nquads\": \"application/n-quads\",\n * \"rdf\": \"application/rdf+xml\",\n * \"rdfxml\": \"application/rdf+xml\",\n * \"owl\": \"application/rdf+xml\",\n * \"n3\": \"text/n3\",\n * \"trig\": \"application/trig\",\n * \"jsonld\": \"application/ld+json\",\n * \"json\": \"application/json\",\n * \"html\": \"text/html\",\n * \"htm\": \"text/html\",\n * \"xhtml\": \"application/xhtml+xml\",\n * \"xht\": \"application/xhtml+xml\",\n * \"xml\": \"application/xml\",\n * \"svg\": \"image/svg+xml\",\n * \"svgz\": \"image/svg+xml\"\n * }} mediaMappings\n */\n public constructor(args: IActorDereferenceRdfArgs) {\n super(args);\n }\n\n public async getMetadata(dereference: IActorDereferenceOutput): Promise {\n return { baseIRI: dereference.url };\n }\n}\n\nexport interface IActorDereferenceRdfParseArgs extends IActorDereferenceRdfArgs {\n\n}\n","import type { IActionHashBindings, IActorHashBindingsOutput } from '@comunica/bus-hash-bindings';\nimport { ActorHashBindings } from '@comunica/bus-hash-bindings';\nimport type { IActorTest } from '@comunica/core';\nimport { sha1 } from 'hash.js';\nimport { termToString } from 'rdf-string';\n\nconst canonicalize = require('canonicalize');\n\n/**\n * A comunica Memento Http Actor.\n */\nexport class ActorHashBindingsSha1 extends ActorHashBindings {\n public async test(action: IActionHashBindings): Promise {\n if (!action.allowHashCollisions) {\n throw new Error(`Actor ${this.name} can not provide hash functions without hash collisions`);\n }\n return true;\n }\n\n public async run(action: IActionHashBindings): Promise {\n return {\n hashFunction: bindings => sha1()\n .update(canonicalize(Object.fromEntries([ ...bindings ]\n .map(([ key, value ]) => [ termToString(key), termToString(value) ]))))\n .digest('hex'),\n hashCollisions: true,\n };\n }\n}\n","import type { IActionHttp, IActorHttpOutput, IActorHttpArgs } from '@comunica/bus-http';\nimport { ActorHttp } from '@comunica/bus-http';\nimport { KeysHttp } from '@comunica/context-entries';\nimport type { IMediatorTypeTime } from '@comunica/mediatortype-time';\nimport type { Readable } from 'readable-stream';\nimport 'cross-fetch/polyfill';\nimport { FetchInitPreprocessor } from './FetchInitPreprocessor';\nimport type { IFetchInitPreprocessor } from './IFetchInitPreprocessor';\n\n/**\n * A node-fetch actor that listens on the 'init' bus.\n *\n * It will call `fetch` with either action.input or action.url.\n */\nexport class ActorHttpFetch extends ActorHttp {\n private readonly userAgent: string;\n private readonly fetchInitPreprocessor: IFetchInitPreprocessor;\n\n public constructor(args: IActorHttpFetchArgs) {\n super(args);\n this.userAgent = ActorHttpFetch.createUserAgent();\n this.fetchInitPreprocessor = new FetchInitPreprocessor(args.agentOptions);\n }\n\n public static createUserAgent(): string {\n return `Comunica/actor-http-fetch (${typeof globalThis.navigator === 'undefined' ?\n `Node.js ${process.version}; ${process.platform}` :\n `Browser-${globalThis.navigator.userAgent}`})`;\n }\n\n public async test(action: IActionHttp): Promise {\n return { time: Number.POSITIVE_INFINITY };\n }\n\n /**\n * Perform a fetch request, taking care of retries\n * @param fetchFn\n * @param requestInput Url or RequestInfo to pass to fetchFn\n * @param requestInit RequestInit to pass to fetch function\n * @param retryCount Maximum retries after which to abort\n * @param retryDelay Time in milliseconds to wait between retries\n * @returns a fetch `Response` object\n */\n private static async getResponse(\n fetchFn: (input: RequestInfo | URL, init?: RequestInit | undefined) => Promise,\n requestInput: RequestInfo | URL,\n requestInit: RequestInit,\n retryCount: number,\n retryDelay: number,\n throwOnServerError: boolean,\n ): Promise {\n let lastError: unknown;\n // The retryCount is 0-based. Therefore, add 1 to triesLeft.\n let triesLeft = retryCount + 1;\n\n // When retry count is greater than 0, repeat fetch.\n while (triesLeft-- > 0) {\n try {\n const response = await fetchFn(requestInput, requestInit);\n // Check, if server sent a 5xx error response.\n if (throwOnServerError && response.status >= 500 && response.status < 600) {\n throw new Error(`Server replied with response code ${response.status}: ${response.statusText}`);\n }\n return response;\n } catch (error: unknown) {\n lastError = error;\n // If the fetch was aborted by timeout, we won't retry.\n if (requestInit.signal?.aborted) {\n throw error;\n }\n\n if (triesLeft > 0) {\n // Wait for specified delay, before retrying.\n await new Promise((resolve, reject) => {\n setTimeout(resolve, retryDelay);\n // Cancel waiting, if timeout is reached.\n requestInit.signal?.addEventListener('abort', () => {\n reject(new Error('Fetch aborted by timeout.'));\n });\n });\n }\n }\n }\n // The fetch was not successful. We throw.\n if (retryCount > 0) {\n // Feedback the last error, if there were retry attempts.\n throw new Error(`Number of fetch retries (${retryCount}) exceeded. Last error: ${String(lastError)}`);\n } else {\n throw lastError;\n }\n }\n\n public async run(action: IActionHttp): Promise {\n // Prepare headers\n const initHeaders = action.init?.headers ?? {};\n action.init = action.init ?? {};\n action.init.headers = new Headers(initHeaders);\n if (!action.init.headers.has('user-agent')) {\n action.init.headers.append('user-agent', this.userAgent);\n }\n const authString: string | undefined = action.context.get(KeysHttp.auth);\n if (authString) {\n action.init.headers.append('Authorization', `Basic ${Buffer.from(authString).toString('base64')}`);\n }\n\n // Log request\n this.logInfo(action.context, `Requesting ${typeof action.input === 'string' ?\n action.input :\n action.input.url}`, () => ({\n headers: ActorHttp.headersToHash(new Headers(action.init!.headers)),\n method: action.init!.method || 'GET',\n }));\n\n // TODO: remove this workaround once this has a fix: https://github.com/inrupt/solid-client-authn-js/issues/1708\n if (action.init?.headers && 'append' in action.init.headers && action.context.has(KeysHttp.fetch)) {\n action.init.headers = ActorHttp.headersToHash(action.init.headers);\n }\n\n let requestInit = { ...action.init };\n\n if (action.context.get(KeysHttp.includeCredentials)) {\n requestInit.credentials = 'include';\n }\n\n const httpTimeout: number | undefined = action.context?.get(KeysHttp.httpTimeout);\n let requestTimeout: NodeJS.Timeout | undefined;\n let onTimeout: (() => void) | undefined;\n if (httpTimeout !== undefined) {\n const controller = await this.fetchInitPreprocessor.createAbortController();\n requestInit.signal = controller.signal;\n onTimeout = () => controller.abort();\n requestTimeout = setTimeout(() => onTimeout!(), httpTimeout);\n }\n\n try {\n requestInit = await this.fetchInitPreprocessor.handle(requestInit);\n // Number of retries to perform after a failed fetch.\n const retryCount: number = action.context?.get(KeysHttp.httpRetryCount) ?? 0;\n const retryDelay: number = action.context?.get(KeysHttp.httpRetryDelay) ?? 0;\n const retryOnSeverError: boolean = action.context?.get(KeysHttp.httpRetryOnServerError) ?? false;\n const customFetch: ((input: RequestInfo, init?: RequestInit) => Promise) | undefined = action\n .context?.get(KeysHttp.fetch);\n\n // Execute the fetch (with retries and timeouts, if applicable).\n const response = await ActorHttpFetch.getResponse(\n customFetch || fetch, action.input, requestInit, retryCount, retryDelay, retryOnSeverError,\n );\n\n // We remove or update the timeout\n if (requestTimeout !== undefined) {\n const httpBodyTimeout = action.context?.get(KeysHttp.httpBodyTimeout) || false;\n if (httpBodyTimeout && response.body) {\n onTimeout = () => response.body?.cancel(new Error(`HTTP timeout when reading the body of ${response.url}.\nThis error can be disabled by modifying the 'httpBodyTimeout' and/or 'httpTimeout' options.`));\n (response.body).on('close', () => {\n clearTimeout(requestTimeout);\n });\n } else {\n clearTimeout(requestTimeout);\n }\n }\n\n // Node-fetch does not support body.cancel, while it is mandatory according to the fetch and readablestream api.\n // If it doesn't exist, we monkey-patch it.\n if (response.body && !response.body.cancel) {\n response.body.cancel = async(error?: Error) => {\n (response.body).destroy(error);\n if (requestTimeout !== undefined) {\n // We make sure to remove the timeout if it is still enabled\n clearTimeout(requestTimeout);\n }\n };\n }\n\n return response;\n } catch (error: unknown) {\n if (requestTimeout !== undefined) {\n clearTimeout(requestTimeout);\n }\n throw error;\n }\n }\n}\n\nexport interface IActorHttpFetchArgs extends IActorHttpArgs {\n /**\n * The agent options for the HTTP agent\n * @range {json}\n * @default {{ \"keepAlive\": true, \"maxSockets\": 5 }}\n */\n agentOptions?: Record;\n}\n","/* eslint-disable unicorn/filename-case */\n/* eslint-enable unicorn/filename-case */\n\nimport { ActorHttp } from '@comunica/bus-http';\nimport type { IFetchInitPreprocessor } from './IFetchInitPreprocessor';\n\n/**\n * Overrides things for fetch requests in browsers\n */\nexport class FetchInitPreprocessor implements IFetchInitPreprocessor {\n public async handle(init: RequestInit): Promise {\n // Remove overridden user-agent header within browsers to avoid CORS issues\n if (init.headers) {\n const headers = new Headers(init.headers);\n if (headers.has('user-agent')) {\n headers.delete('user-agent');\n }\n init.headers = headers;\n }\n\n // TODO: remove this workaround once this has a fix: https://github.com/inrupt/solid-client-authn-js/issues/1708\n if (init?.headers && 'append' in init.headers) {\n init.headers = ActorHttp.headersToHash(init.headers);\n }\n\n // Browsers don't yet support passing ReadableStream as body to requests, see\n // https://bugs.chromium.org/p/chromium/issues/detail?id=688906\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1387483\n // As such, we convert those bodies to a plain string\n // TODO: remove this once browser support ReadableStream in requests\n if (init.body && typeof init.body !== 'string' && 'getReader' in init.body) {\n const reader = init.body.getReader();\n const chunks = [];\n // eslint-disable-next-line no-constant-condition\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n chunks.push(value);\n }\n init.body = chunks.join('');\n }\n\n // Only enable keepalive functionality if we are not sending a body (some browsers seem to trip over this)\n return { keepalive: !init.body, ...init };\n }\n\n public async createAbortController(): Promise {\n return new AbortController();\n }\n}\n","import type { IActionHttp, IActorHttpOutput, MediatorHttp, IActorHttpArgs } from '@comunica/bus-http';\nimport { ActorHttp } from '@comunica/bus-http';\nimport { KeysHttpProxy } from '@comunica/context-entries';\nimport type { IMediatorTypeTime } from '@comunica/mediatortype-time';\nimport type { IProxyHandler } from '@comunica/types';\n\n/**\n * A comunica Proxy Http Actor.\n */\nexport class ActorHttpProxy extends ActorHttp {\n public readonly mediatorHttp: MediatorHttp;\n\n public constructor(args: IActorHttpProxyArgs) {\n super(args);\n }\n\n public async test(action: IActionHttp): Promise {\n const proxyHandler: IProxyHandler | undefined = action.context.get(KeysHttpProxy.httpProxyHandler);\n if (!proxyHandler) {\n throw new Error(`Actor ${this.name} could not find a proxy handler in the context.`);\n }\n if (!await proxyHandler.getProxy(action)) {\n throw new Error(`Actor ${this.name} could not determine a proxy for the given request.`);\n }\n return { time: Number.POSITIVE_INFINITY };\n }\n\n public async run(action: IActionHttp): Promise {\n const requestedUrl = typeof action.input === 'string' ? action.input : action.input.url;\n const proxyHandler: IProxyHandler = action.context.get(KeysHttpProxy.httpProxyHandler)!;\n\n // Send a request for the modified request\n const output = await this.mediatorHttp.mediate({\n ...await proxyHandler.getProxy(action),\n context: action.context.delete(KeysHttpProxy.httpProxyHandler),\n });\n\n // Modify the response URL\n // use defineProperty to allow modification of unmodifiable objects\n Object.defineProperty(output, 'url', {\n configurable: true,\n enumerable: true,\n get: () => output.headers.get('x-final-url') ?? requestedUrl,\n });\n return output;\n }\n}\n\nexport interface IActorHttpProxyArgs extends IActorHttpArgs {\n /**\n * The HTTP mediator\n */\n mediatorHttp: MediatorHttp;\n}\n","import type { IProxyHandler, IRequest } from '@comunica/types';\n\n/**\n * A proxy handler that prefixes all URLs with a given string.\n */\nexport class ProxyHandlerStatic implements IProxyHandler {\n private readonly prefixUrl: string;\n\n public constructor(prefixUrl: string) {\n this.prefixUrl = prefixUrl;\n }\n\n public async getProxy(request: IRequest): Promise {\n return {\n init: request.init,\n input: this.modifyInput(request.input),\n };\n }\n\n public modifyInput(input: RequestInfo): RequestInfo {\n if (typeof input === 'string') {\n return this.prefixUrl + input;\n }\n return new Request(this.prefixUrl + input.url, input);\n }\n}\n","import type { IActionHttp, IActorHttpArgs, IActorHttpOutput, MediatorHttp } from '@comunica/bus-http';\nimport { ActorHttp } from '@comunica/bus-http';\nimport { KeysHttpWayback, KeysHttpProxy } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IProxyHandler, IRequest } from '@comunica/types';\n// Use require instead of import for default exports, to be compatible with variants of esModuleInterop in tsconfig.\nimport stringifyStream = require('stream-to-string');\nimport 'cross-fetch/polyfill';\n\nconst WAYBACK_URL = 'http://wayback.archive-it.org/';\n\nfunction addWayback(action: IRequest): IRequest {\n const request = new Request(action.input, action.init);\n return {\n input: new Request(new URL(`/${request.url}`, WAYBACK_URL), request),\n };\n}\n\nfunction getProxyHandler(context: IActionContext): (action: IRequest) => Promise {\n const handler = context.get(KeysHttpProxy.httpProxyHandler);\n if (handler) {\n return (action: IRequest) => handler.getProxy(addWayback(action));\n }\n return (action: IRequest) => Promise.resolve(addWayback(action));\n}\n\n/**\n * A Comunica actor to intercept HTTP requests to recover broken links using the WayBack Machine\n */\nexport class ActorHttpWayback extends ActorHttp {\n public readonly mediatorHttp: MediatorHttp;\n\n public constructor(args: IActorHttpWaybackArgs) {\n super(args);\n }\n\n public async test(action: IActionHttp): Promise {\n return true;\n }\n\n public async run(action: IActionHttp): Promise {\n let result = await this.mediatorHttp.mediate(action);\n\n if (result.status === 404 && action.context.get(KeysHttpWayback.recoverBrokenLinks)) {\n let fallbackResult = await this.mediatorHttp.mediate({\n ...action,\n context: action.context\n .set(KeysHttpWayback.recoverBrokenLinks, false)\n .set(KeysHttpProxy.httpProxyHandler, { getProxy: getProxyHandler(action.context) }),\n });\n\n // If the wayback machine returns a 200 status then use that result\n if (fallbackResult.status === 200) {\n [ result, fallbackResult ] = [ fallbackResult, result ];\n }\n\n // Consume stream to avoid process\n const { body } = fallbackResult;\n if (body) {\n if ('destroy' in body && typeof (body).destroy === 'function') {\n (body).destroy();\n } else {\n await stringifyStream(ActorHttp.toNodeReadable(fallbackResult.body));\n }\n }\n }\n\n return result;\n }\n}\n\nexport interface IActorHttpWaybackArgs extends IActorHttpArgs {\n mediatorHttp: MediatorHttp;\n}\n","/* eslint-disable unicorn/filename-case */\n/* eslint-enable unicorn/filename-case */\nimport { ActorInitQueryBase } from './ActorInitQueryBase';\n\n/* istanbul ignore next */\nif (typeof process === 'undefined') {\n // Polyfills process.nextTick for readable-stream\n globalThis.process = require('process'); // eslint-disable-line import/no-nodejs-modules\n}\n\nexport class ActorInitQuery extends ActorInitQueryBase {}\n","import type { MediatorContextPreprocess } from '@comunica/bus-context-preprocess';\nimport type { MediatorHttpInvalidate } from '@comunica/bus-http-invalidate';\nimport type { IActionInit, IActorInitArgs, IActorOutputInit } from '@comunica/bus-init';\nimport { ActorInit } from '@comunica/bus-init';\nimport type { MediatorOptimizeQueryOperation } from '@comunica/bus-optimize-query-operation';\nimport type { MediatorQueryOperation } from '@comunica/bus-query-operation';\nimport type { MediatorQueryParse } from '@comunica/bus-query-parse';\nimport type { MediatorQueryResultSerializeHandle,\n MediatorQueryResultSerializeMediaTypes,\n MediatorQueryResultSerializeMediaTypeFormats } from '@comunica/bus-query-result-serialize';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryContextCommon, Logger } from '@comunica/types';\n\n/**\n * A browser-safe comunica Query Init Actor.\n */\nexport class ActorInitQueryBase\n extends ActorInit implements IActorInitQueryBaseArgs {\n public readonly mediatorOptimizeQueryOperation: MediatorOptimizeQueryOperation;\n public readonly mediatorQueryOperation: MediatorQueryOperation;\n public readonly mediatorQueryParse: MediatorQueryParse;\n public readonly mediatorQueryResultSerialize: MediatorQueryResultSerializeHandle;\n public readonly mediatorQueryResultSerializeMediaTypeCombiner: MediatorQueryResultSerializeMediaTypes;\n public readonly mediatorQueryResultSerializeMediaTypeFormatCombiner: MediatorQueryResultSerializeMediaTypeFormats;\n public readonly mediatorContextPreprocess: MediatorContextPreprocess;\n public readonly mediatorHttpInvalidate: MediatorHttpInvalidate;\n\n public readonly logger: Logger;\n public readonly queryString?: string;\n public readonly defaultQueryInputFormat?: string;\n public readonly allowNoSources?: boolean;\n public readonly context?: string;\n public readonly contextKeyShortcuts: Record & Partial>;\n /** Array of `contextKeyShortcuts` appended to `contextKeyShortcuts` during construction. */\n public readonly contextKeyShortcutsExtensions?: (Record\n | Partial, string>>)[];\n\n /**\n * Create new ActorInitQueryBase object.\n * @param args.contextKeyShortcutsExtensions Array of `contextKeyShortcuts` that are merged\n * with the `contextKeyShortcuts` field. This allows adding shortcuts to the defaults.\n * @throws When duplicate keys are present in `args.contextKeyShortcuts`\n * and `args.contextKeyShortcutsExtensions`.\n */\n public constructor(args: IActorInitQueryBaseArgs) {\n // Add additional contextKeyShortcuts.\n args.contextKeyShortcutsExtensions?.forEach(extensionShortcuts => {\n // Throw, if there are duplicate keys that are to be added to `contextKeyShortcuts`.\n if (Object.keys(args.contextKeyShortcuts).some(key => Object.keys(extensionShortcuts).includes(key))) {\n throw new Error('Duplicate keys found while adding `contextKeyShortcutsExtensions`.');\n }\n args.contextKeyShortcuts = { ...args.contextKeyShortcuts, ...extensionShortcuts };\n });\n super(args);\n }\n\n public async test(action: IActionInit): Promise {\n return true;\n }\n\n public async run(action: IActionInit): Promise {\n throw new Error('ActorInitSparql#run is not supported in the browser.');\n }\n}\n\nexport interface IActorInitQueryBaseArgs\n extends IActorInitArgs {\n /**\n * The query operation optimize mediator\n */\n mediatorOptimizeQueryOperation: MediatorOptimizeQueryOperation;\n /**\n * The query operation mediator\n */\n mediatorQueryOperation: MediatorQueryOperation;\n /**\n * The query parse mediator\n */\n mediatorQueryParse: MediatorQueryParse;\n /**\n * The query serialize mediator\n */\n mediatorQueryResultSerialize: MediatorQueryResultSerializeHandle;\n /**\n * The query serialize media type combinator\n */\n mediatorQueryResultSerializeMediaTypeCombiner: MediatorQueryResultSerializeMediaTypes;\n /**\n * The query serialize media type format combinator\n */\n mediatorQueryResultSerializeMediaTypeFormatCombiner: MediatorQueryResultSerializeMediaTypeFormats;\n /**\n * The context processing combinator\n */\n mediatorContextPreprocess: MediatorContextPreprocess;\n /**\n * The HTTP cache invalidation mediator\n */\n mediatorHttpInvalidate: MediatorHttpInvalidate;\n /**\n * The logger of this actor\n * @default {a }\n */\n logger: Logger;\n /**\n * A SPARQL query string\n */\n queryString?: string;\n /**\n * The default query input format\n * @default {sparql}\n */\n defaultQueryInputFormat?: string;\n /**\n * If it should be allowed that the user passes no sources.\n * @default {false}\n */\n allowNoSources?: boolean;\n /**\n * A JSON string of a query operation context\n */\n context?: string;\n /**\n * A record of context shortcuts to full context keys (as defined in @comunica/context-entries).\n * @range {json}\n * @default {{\n * \"source\": \"@comunica/bus-rdf-resolve-quad-pattern:source\",\n * \"sources\": \"@comunica/bus-rdf-resolve-quad-pattern:sources\",\n * \"destination\": \"@comunica/bus-rdf-update-quads:destination\",\n * \"initialBindings\": \"@comunica/actor-init-query:initialBindings\",\n * \"queryFormat\": \"@comunica/actor-init-query:queryFormat\",\n * \"baseIRI\": \"@comunica/actor-init-query:baseIRI\",\n * \"log\": \"@comunica/core:log\",\n * \"datetime\": \"@comunica/actor-http-memento:datetime\",\n * \"queryTimestamp\": \"@comunica/actor-init-query:queryTimestamp\",\n * \"httpProxyHandler\": \"@comunica/actor-http-proxy:httpProxyHandler\",\n * \"lenient\": \"@comunica/actor-init-query:lenient\",\n * \"httpIncludeCredentials\": \"@comunica/bus-http:include-credentials\",\n * \"httpAuth\": \"@comunica/bus-http:auth\",\n * \"httpTimeout\": \"@comunica/bus-http:http-timeout\",\n * \"httpBodyTimeout\": \"@comunica/bus-http:http-body-timeout\",\n * \"httpRetryCount\": \"@comunica/bus-http:http-retry-count\",\n * \"httpRetryDelay\": \"@comunica/bus-http:http-retry-delay\",\n * \"httpRetryOnServerError\": \"@comunica/bus-http:http-retry-on-server-error\",\n * \"fetch\": \"@comunica/bus-http:fetch\",\n * \"recoverBrokenLinks\": \"@comunica/bus-http-wayback:recover-broken-links\",\n * \"readOnly\": \"@comunica/bus-query-operation:readOnly\",\n * \"extensionFunctions\": \"@comunica/actor-init-query:extensionFunctions\",\n * \"extensionFunctionCreator\": \"@comunica/actor-init-query:extensionFunctionCreator\",\n * \"functionArgumentsCache\": \"@comunica/actor-init-query:functionArgumentsCache\",\n * \"explain\": \"@comunica/actor-init-query:explain\",\n * \"unionDefaultGraph\": \"@comunica/bus-query-operation:unionDefaultGraph\"\n * }}\n */\n contextKeyShortcuts: Record | Partial>;\n /**\n * An array of `contextKeyShortcuts` that are to be appended to the (default) `contextKeyShortcuts`\n * (which are by default injected by component.js).\n *\n * The appending happens in the constructor call. Conflicting keys will cause an error.\n * If you extend `ActorInitQueryBase` and want to add custom shortcuts, do so as follows:\n * ```\n * public constructor(args: IActorInitQueryBaseArgs) {\n * if (!args.contextKeyShortcutsExtensions) {\n * args.contextKeyShortcutsExtensions = [];\n * }\n * args.contextKeyShortcutsExtensions.push(addedShortcuts);\n *\n * super(args);\n * }\n * ```\n */\n contextKeyShortcutsExtensions?: (Record\n | Partial, string>>)[];\n}\n","import type { IPhysicalQueryPlanLogger } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { termToString } from 'rdf-string';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A physical query plan logger that stores everything in memory.\n */\nexport class MemoryPhysicalQueryPlanLogger implements IPhysicalQueryPlanLogger {\n private readonly children: Map;\n private rootNode: IPlanNode | undefined;\n\n public constructor() {\n this.children = new Map();\n }\n\n public logOperation(\n logicalOperator: string,\n physicalOperator: string | undefined,\n node: any,\n parentNode: any,\n actor: string,\n metadata: any,\n ): void {\n const planNode: IPlanNode = {\n actor,\n logicalOperator,\n physicalOperator,\n rawNode: node,\n children: [],\n metadata,\n };\n this.children.set(node, planNode.children);\n\n if (!this.rootNode) {\n if (parentNode) {\n throw new Error(`No root node has been set yet, while a parent is being referenced`);\n }\n this.rootNode = planNode;\n } else {\n if (!parentNode) {\n throw new Error(`Detected more than one parent-less node`);\n }\n const children = this.children.get(parentNode);\n if (!children) {\n throw new Error(`Could not find parent node`);\n }\n children.push(planNode);\n }\n }\n\n public toJson(): any {\n return this.rootNode ? this.planNodeToJson(this.rootNode) : {};\n }\n\n private planNodeToJson(node: IPlanNode): any {\n return {\n logical: node.logicalOperator,\n physical: node.physicalOperator,\n ...this.getLogicalMetadata(node.rawNode),\n ...node.metadata,\n ...node.children.length > 0 ? { children: node.children.map(child => this.planNodeToJson(child)) } : {},\n };\n }\n\n private getLogicalMetadata(rawNode: any): any {\n if ('type' in rawNode) {\n const operation: Algebra.Operation = rawNode;\n // eslint-disable-next-line @typescript-eslint/switch-exhaustiveness-check\n switch (operation.type) {\n case 'pattern':\n return {\n pattern: this.quadToString(operation),\n };\n case 'project':\n return {\n variables: operation.variables.map(variable => variable.value),\n };\n }\n }\n return {};\n }\n\n private quadToString(quad: RDF.BaseQuad): string {\n return `${termToString(quad.subject)} ${termToString(quad.predicate)} ${termToString(quad.object)}${quad.graph.termType === 'DefaultGraph' ? '' : ` ${termToString(quad.graph)}`}`;\n }\n}\n\ninterface IPlanNode {\n actor: string;\n logicalOperator: string;\n physicalOperator?: string;\n rawNode: any;\n children: IPlanNode[];\n metadata: any;\n}\n","import { materializeOperation } from '@comunica/bus-query-operation';\nimport type { IActionSparqlSerialize, IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { KeysCore, KeysInitQuery, KeysRdfResolveQuadPattern } from '@comunica/context-entries';\nimport { ActionContext } from '@comunica/core';\nimport type {\n IActionContext, IPhysicalQueryPlanLogger,\n IQueryOperationResult,\n IQueryEngine, IQueryExplained,\n QueryFormatType,\n QueryType, QueryExplainMode, BindingsStream,\n QueryAlgebraContext, QueryStringContext, IQueryBindingsEnhanced,\n IQueryQuadsEnhanced, QueryEnhanced, IQueryContextCommon, FunctionArgumentsCache,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport type { ActorInitQueryBase } from './ActorInitQueryBase';\nimport { MemoryPhysicalQueryPlanLogger } from './MemoryPhysicalQueryPlanLogger';\n\n/**\n * Base implementation of a Comunica query engine.\n */\nexport class QueryEngineBase<\n QueryContext extends IQueryContextCommon = IQueryContextCommon,\n QueryStringContextInner extends RDF.QueryStringContext = QueryStringContext,\n QueryAlgebraContextInner extends RDF.QueryAlgebraContext = QueryAlgebraContext>\nimplements IQueryEngine {\n private readonly actorInitQuery: ActorInitQueryBase;\n private readonly defaultFunctionArgumentsCache: FunctionArgumentsCache;\n\n public constructor(actorInitQuery: ActorInitQueryBase) {\n this.actorInitQuery = actorInitQuery;\n this.defaultFunctionArgumentsCache = {};\n }\n\n public async queryBindings(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise {\n return this.queryOfType(query, context, 'bindings');\n }\n\n public async queryQuads(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise & RDF.ResultStream> {\n return this.queryOfType(query, context, 'quads');\n }\n\n public async queryBoolean(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise {\n return this.queryOfType(query, context, 'boolean');\n }\n\n public async queryVoid(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise {\n return this.queryOfType(query, context, 'void');\n }\n\n protected async queryOfType(\n query: QueryFormatTypeInner,\n context: undefined | (QueryFormatTypeInner extends string ?\n QueryStringContextInner : QueryAlgebraContextInner),\n expectedType: QueryTypeOut['resultType'],\n ): Promise> {\n const result = await this.query(query, context);\n if (result.resultType === expectedType) {\n return > await result.execute();\n }\n throw new Error(`Query result type '${expectedType}' was expected, while '${result.resultType}' was found.`);\n }\n\n /**\n * Evaluate the given query\n * @param query A query string or algebra.\n * @param context An optional query context.\n * @return {Promise} A promise that resolves to the query output.\n */\n public async query(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise {\n const output = await this.queryOrExplain(query, context);\n if ('explain' in output) {\n throw new Error(`Tried to explain a query when in query-only mode`);\n }\n return output;\n }\n\n /**\n * Explain the given query\n * @param {string | Algebra.Operation} query A query string or algebra.\n * @param context An optional query context.\n * @param explainMode The explain mode.\n * @return {Promise} A promise that resolves to\n * the query output or explanation.\n */\n public async explain(\n query: QueryFormatTypeInner,\n context: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n explainMode: QueryExplainMode,\n ): Promise {\n context.explain = explainMode;\n const output = await this.queryOrExplain(query, context);\n return output;\n }\n\n /**\n * Evaluate or explain the given query\n * @param {string | Algebra.Operation} query A query string or algebra.\n * @param context An optional query context.\n * @return {Promise} A promise that resolves to\n * the query output or explanation.\n */\n public async queryOrExplain(\n query: QueryFormatTypeInner,\n context?: QueryFormatTypeInner extends string ? QueryStringContextInner : QueryAlgebraContextInner,\n ): Promise {\n context = context || {};\n\n // Expand shortcuts\n for (const key in context) {\n if (this.actorInitQuery.contextKeyShortcuts[key]) {\n context[this.actorInitQuery.contextKeyShortcuts[key]] = context[key];\n delete context[key];\n }\n }\n\n // Prepare context\n let actionContext: IActionContext = new ActionContext(context);\n let queryFormat: RDF.QueryFormat = { language: 'sparql', version: '1.1' };\n if (actionContext.has(KeysInitQuery.queryFormat)) {\n queryFormat = actionContext.get(KeysInitQuery.queryFormat)!;\n actionContext = actionContext.delete(KeysInitQuery.queryFormat);\n if (queryFormat.language === 'graphql') {\n actionContext = actionContext.setDefault(KeysInitQuery.graphqlSingularizeVariables, {});\n }\n }\n const baseIRI: string | undefined = actionContext.get(KeysInitQuery.baseIRI);\n\n actionContext = actionContext\n .setDefault(KeysInitQuery.queryTimestamp, new Date())\n .setDefault(KeysRdfResolveQuadPattern.sourceIds, new Map())\n // Set the default logger if none is provided\n .setDefault(KeysCore.log, this.actorInitQuery.logger)\n .setDefault(KeysInitQuery.functionArgumentsCache, this.defaultFunctionArgumentsCache)\n .setDefault(KeysRdfResolveQuadPattern.hypermediaSourcesAggregatedStores, new Map());\n\n // Pre-processing the context\n actionContext = (await this.actorInitQuery.mediatorContextPreprocess.mediate({ context: actionContext })).context;\n\n // Determine explain mode\n const explainMode: QueryExplainMode = actionContext.get(KeysInitQuery.explain)!;\n\n // Parse query\n let operation: Algebra.Operation;\n if (typeof query === 'string') {\n // Save the original query string in the context\n actionContext = actionContext.set(KeysInitQuery.queryString, query);\n\n const queryParseOutput = await this.actorInitQuery.mediatorQueryParse\n .mediate({ context: actionContext, query, queryFormat, baseIRI });\n operation = queryParseOutput.operation;\n // Update the baseIRI in the context if the query modified it.\n if (queryParseOutput.baseIRI) {\n actionContext = actionContext.set(KeysInitQuery.baseIRI, queryParseOutput.baseIRI);\n }\n } else {\n operation = query;\n }\n\n // Print parsed query\n if (explainMode === 'parsed') {\n return {\n explain: true,\n type: explainMode,\n data: operation,\n };\n }\n\n // Apply initial bindings in context\n if (actionContext.has(KeysInitQuery.initialBindings)) {\n operation = materializeOperation(operation, actionContext.get(KeysInitQuery.initialBindings)!);\n\n // Delete the query string from the context, since our initial query might have changed\n actionContext = actionContext.delete(KeysInitQuery.queryString);\n }\n\n // Optimize the query operation\n const mediatorResult = await this.actorInitQuery.mediatorOptimizeQueryOperation\n .mediate({ context: actionContext, operation });\n operation = mediatorResult.operation;\n actionContext = mediatorResult.context || actionContext;\n\n // Print logical query plan\n if (explainMode === 'logical') {\n return {\n explain: true,\n type: explainMode,\n data: operation,\n };\n }\n\n // Save original query in context\n actionContext = actionContext.set(KeysInitQuery.query, operation);\n\n // If we need a physical query plan, store a physical query plan logger in the context, and collect it after exec\n let physicalQueryPlanLogger: IPhysicalQueryPlanLogger | undefined;\n if (explainMode === 'physical') {\n physicalQueryPlanLogger = new MemoryPhysicalQueryPlanLogger();\n actionContext = actionContext.set(KeysInitQuery.physicalQueryPlanLogger, physicalQueryPlanLogger);\n }\n\n // Execute query\n const output = await this.actorInitQuery.mediatorQueryOperation.mediate({\n context: actionContext,\n operation,\n });\n output.context = actionContext;\n\n const finalOutput = QueryEngineBase.internalToFinalResult(output);\n\n // Output physical query plan after query exec if needed\n if (physicalQueryPlanLogger) {\n // Make sure the whole result is produced\n switch (finalOutput.resultType) {\n case 'bindings':\n await (await finalOutput.execute()).toArray();\n break;\n case 'quads':\n await (await finalOutput.execute()).toArray();\n break;\n case 'boolean':\n await finalOutput.execute();\n break;\n case 'void':\n await finalOutput.execute();\n break;\n }\n\n return {\n explain: true,\n type: explainMode,\n data: physicalQueryPlanLogger.toJson(),\n };\n }\n\n return finalOutput;\n }\n\n /**\n * @param context An optional context.\n * @return {Promise<{[p: string]: number}>} All available SPARQL (weighted) result media types.\n */\n public async getResultMediaTypes(context?: any): Promise> {\n context = ActionContext.ensureActionContext(context);\n return (await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeCombiner\n .mediate({ context, mediaTypes: true })).mediaTypes;\n }\n\n /**\n * @param context An optional context.\n * @return {Promise<{[p: string]: number}>} All available SPARQL result media type formats.\n */\n public async getResultMediaTypeFormats(context?: any): Promise> {\n context = ActionContext.ensureActionContext(context);\n return (await this.actorInitQuery.mediatorQueryResultSerializeMediaTypeFormatCombiner\n .mediate({ context, mediaTypeFormats: true })).mediaTypeFormats;\n }\n\n /**\n * Convert a query result to a string stream based on a certain media type.\n * @param {IQueryOperationResult} queryResult A query result.\n * @param {string} mediaType A media type.\n * @param {ActionContext} context An optional context.\n * @return {Promise} A text stream.\n */\n public async resultToString(queryResult: RDF.Query, mediaType?: string, context?: any):\n Promise {\n context = ActionContext.ensureActionContext(context);\n if (!mediaType) {\n switch (queryResult.resultType) {\n case 'bindings':\n mediaType = 'application/json';\n break;\n case 'quads':\n mediaType = 'application/trig';\n break;\n default:\n mediaType = 'simple';\n break;\n }\n }\n const handle: IActionSparqlSerialize = { ...await QueryEngineBase.finalToInternalResult(queryResult), context };\n return (await this.actorInitQuery.mediatorQueryResultSerialize\n .mediate({ context, handle, handleMediaType: mediaType })).handle;\n }\n\n /**\n * Invalidate all internal caches related to the given page URL.\n * If no page URL is given, then all pages will be invalidated.\n * @param {string} url The page URL to invalidate.\n * @param context An optional ActionContext to pass to the actors.\n * @return {Promise} A promise resolving when the caches have been invalidated.\n */\n public invalidateHttpCache(url?: string, context?: any): Promise {\n context = ActionContext.ensureActionContext(context);\n return this.actorInitQuery.mediatorHttpInvalidate.mediate({ url, context });\n }\n\n /**\n * Convert an internal query result to a final one.\n * @param internalResult An intermediary query result.\n */\n public static internalToFinalResult(internalResult: IQueryOperationResult): QueryType {\n switch (internalResult.type) {\n case 'bindings':\n return {\n resultType: 'bindings',\n execute: async() => internalResult.bindingsStream,\n metadata: async() => await internalResult.metadata(),\n context: internalResult.context,\n };\n case 'quads':\n return {\n resultType: 'quads',\n execute: async() => internalResult.quadStream,\n metadata: async() => await internalResult.metadata(),\n context: internalResult.context,\n };\n case 'boolean':\n return {\n resultType: 'boolean',\n execute: async() => internalResult.execute(),\n context: internalResult.context,\n };\n case 'void':\n return {\n resultType: 'void',\n execute: async() => internalResult.execute(),\n context: internalResult.context,\n };\n }\n }\n\n /**\n * Convert a final query result to an internal one.\n * @param finalResult A final query result.\n */\n public static async finalToInternalResult(finalResult: RDF.Query): Promise {\n switch (finalResult.resultType) {\n case 'bindings':\n return {\n type: 'bindings',\n bindingsStream: await finalResult.execute(),\n metadata: async() => await finalResult.metadata(),\n };\n case 'quads':\n return {\n type: 'quads',\n quadStream: > await finalResult.execute(),\n metadata: async() => await finalResult.metadata(),\n };\n case 'boolean':\n return {\n type: 'boolean',\n execute: () => finalResult.execute(),\n };\n case 'void':\n return {\n type: 'void',\n execute: () => finalResult.execute(),\n };\n }\n }\n}\n","import type {\n IActionOptimizeQueryOperation,\n IActorOptimizeQueryOperationOutput,\n} from '@comunica/bus-optimize-query-operation';\nimport { ActorOptimizeQueryOperation } from '@comunica/bus-optimize-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { Algebra, Factory } from 'sparqlalgebrajs';\nimport { Util } from 'sparqlalgebrajs';\n\n/**\n * A comunica BGP to Join Optimize Query Operation Actor.\n */\nexport class ActorOptimizeQueryOperationBgpToJoin extends ActorOptimizeQueryOperation {\n public async test(action: IActionOptimizeQueryOperation): Promise {\n return true;\n }\n\n public async run(action: IActionOptimizeQueryOperation): Promise {\n const operation = Util.mapOperation(action.operation, {\n bgp(op: Algebra.Bgp, factory: Factory) {\n return {\n recurse: false,\n result: factory.createJoin(op.patterns),\n };\n },\n });\n return { operation, context: action.context };\n }\n}\n","import type { IActionOptimizeQueryOperation,\n IActorOptimizeQueryOperationOutput } from '@comunica/bus-optimize-query-operation';\nimport { ActorOptimizeQueryOperation } from '@comunica/bus-optimize-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { Algebra, Factory } from 'sparqlalgebrajs';\nimport { Util } from 'sparqlalgebrajs';\n\n/**\n * A comunica Join BGP Optimize Query Operation Actor.\n */\nexport class ActorOptimizeQueryOperationJoinBgp extends ActorOptimizeQueryOperation {\n public async test(action: IActionOptimizeQueryOperation): Promise {\n return true;\n }\n\n public async run(action: IActionOptimizeQueryOperation): Promise {\n const operation = Util.mapOperation(action.operation, {\n join(op: Algebra.Join, factory: Factory) {\n if (op.input.every(subInput => subInput.type === 'bgp')) {\n return {\n recurse: false,\n result: factory.createBgp(op.input.flatMap(subInput => subInput.patterns)),\n };\n }\n return {\n recurse: false,\n result: op,\n };\n },\n });\n return { operation, context: action.context };\n }\n}\n","import type {\n IActionOptimizeQueryOperation,\n IActorOptimizeQueryOperationOutput,\n} from '@comunica/bus-optimize-query-operation';\nimport { ActorOptimizeQueryOperation } from '@comunica/bus-optimize-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { Algebra, Factory } from 'sparqlalgebrajs';\nimport { Util } from 'sparqlalgebrajs';\n\n/**\n * A comunica Join Connected Optimize Query Operation Actor.\n */\nexport class ActorOptimizeQueryOperationJoinConnected extends ActorOptimizeQueryOperation {\n public async test(action: IActionOptimizeQueryOperation): Promise {\n return true;\n }\n\n public async run(action: IActionOptimizeQueryOperation): Promise {\n const operation = Util.mapOperation(action.operation, {\n join(op: Algebra.Join, factory: Factory) {\n return {\n recurse: false,\n result: ActorOptimizeQueryOperationJoinConnected.cluster(op, factory),\n };\n },\n });\n return { operation, context: action.context };\n }\n\n /**\n * Iteratively cluster join entries based on their overlapping variables.\n * @param op A join operation.\n * @param factory An algebra factory.\n */\n public static cluster(op: Algebra.Join, factory: Factory): Algebra.Join {\n // Initialize each entry to be in a separate cluster\n const initialClusters: IJoinCluster[] = op.input.map(subOp => ({\n inScopeVariables: Object.fromEntries(Util.inScopeVariables(subOp).map(variable => [ variable.value, true ])),\n entries: [ subOp ],\n }));\n\n // Iteratively merge clusters until they don't change anymore\n let oldClusters: IJoinCluster[];\n let newClusters: IJoinCluster[] = initialClusters;\n do {\n oldClusters = newClusters;\n newClusters = ActorOptimizeQueryOperationJoinConnected.clusterIteration(oldClusters);\n } while (oldClusters.length !== newClusters.length);\n\n // Create new join operation of latest clusters\n const subJoins = newClusters.map(cluster => factory.createJoin(cluster.entries));\n return subJoins.length === 1 ? subJoins[0] : factory.createJoin(subJoins, false);\n }\n\n /**\n * Perform a single clustering iteration.\n * Clusters will be joined if they have overlapping variables.\n * @param oldCluster\n */\n public static clusterIteration(oldCluster: IJoinCluster[]): IJoinCluster[] {\n const newClusters: IJoinCluster[] = [];\n\n for (const entry of oldCluster) {\n // Try to add entry to a join cluster\n let joined = false;\n for (const newEntry of newClusters) {\n if (ActorOptimizeQueryOperationJoinConnected\n .haveOverlappingVariables(entry.inScopeVariables, newEntry.inScopeVariables)) {\n newEntry.entries = [ ...newEntry.entries, ...entry.entries ];\n newEntry.inScopeVariables = { ...newEntry.inScopeVariables, ...entry.inScopeVariables };\n joined = true;\n break;\n }\n }\n\n // If none was found, create new cluster\n if (!joined) {\n newClusters.push({\n inScopeVariables: entry.inScopeVariables,\n entries: entry.entries,\n });\n }\n }\n\n return newClusters;\n }\n\n /**\n * Check if the two given variable objects are overlapping.\n * @param variablesA A variables objects.\n * @param variablesB A variables objects.\n */\n public static haveOverlappingVariables(\n variablesA: Record,\n variablesB: Record,\n ): boolean {\n for (const variableA of Object.keys(variablesA)) {\n if (variablesB[variableA]) {\n return true;\n }\n }\n return false;\n }\n}\n\n/**\n * A cluster of join entries.\n */\nexport interface IJoinCluster {\n /**\n * Union of all variables in scope within the join entries.\n */\n inScopeVariables: Record;\n /**\n * Join entries\n */\n entries: Algebra.Operation[];\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type {\n IActionContext,\n IQueryOperationResult,\n IQueryOperationResultBindings,\n} from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Ask Query Operation Actor.\n */\nexport class ActorQueryOperationAsk extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'ask');\n }\n\n public async testOperation(operation: Algebra.Ask, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Ask, context: IActionContext): Promise {\n // Call other query operations like this:\n const output: IQueryOperationResult = await this.mediatorQueryOperation.mediate(\n { operation: operation.input, context },\n );\n const { bindingsStream }: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(output);\n return { type: 'boolean', execute: async() => (await bindingsStream.take(1).toArray()).length === 1 };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { Factory } from 'sparqlalgebrajs';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor\n * that handles SPARQL BGP operations by rewriting it as a join operator.\n */\nexport class ActorQueryOperationBgpJoin extends ActorQueryOperationTypedMediated {\n public static readonly FACTORY = new Factory();\n\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'bgp');\n }\n\n public async testOperation(operation: Algebra.Bgp, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Bgp, context: IActionContext):\n Promise {\n return this.mediatorQueryOperation.mediate({\n operation: ActorQueryOperationBgpJoin.FACTORY.createJoin(operation.patterns),\n context,\n });\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryOperationResultBindings, IActionContext, IQueryOperationResult,\n MetadataQuads } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { getTermsNested, getVariables, uniqTerms } from 'rdf-terms';\nimport { Algebra } from 'sparqlalgebrajs';\nimport { BindingsToQuadsIterator } from './BindingsToQuadsIterator';\n\n/**\n * A comunica Construct Query Operation Actor.\n */\nexport class ActorQueryOperationConstruct extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'construct');\n }\n\n /**\n * Find all variables in a list of triple patterns.\n * @param {Algebra.Pattern[]} patterns An array of triple patterns.\n * @return {RDF.Variable[]} The variables in the triple patterns.\n */\n public static getVariables(patterns: RDF.BaseQuad[]): RDF.Variable[] {\n return uniqTerms(( []).concat\n .apply([], patterns.map(pattern => getVariables(getTermsNested(pattern)))));\n }\n\n public async testOperation(operation: Algebra.Construct, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operationOriginal: Algebra.Construct, context: IActionContext):\n Promise {\n // Apply a projection on our CONSTRUCT variables first, as the query may contain other variables as well.\n const variables: RDF.Variable[] = ActorQueryOperationConstruct.getVariables(operationOriginal.template);\n const operation: Algebra.Operation = { type: Algebra.types.PROJECT, input: operationOriginal.input, variables };\n\n // Evaluate the input query\n const output: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation, context }),\n );\n\n // Construct triples using the result based on the pattern.\n // If it's a DESCRIBE query don't apply the blank node localisation.\n const quadStream: AsyncIterator = new BindingsToQuadsIterator(\n operationOriginal.template,\n output.bindingsStream,\n );\n\n // Let the final metadata contain the estimated number of triples\n const metadata: (() => Promise) = () => output.metadata().then(meta => ({\n ...meta,\n order: undefined,\n cardinality: {\n type: meta.cardinality.type,\n value: meta.cardinality.value * operationOriginal.template.length,\n },\n canContainUndefs: false,\n availableOrders: undefined,\n }));\n\n return {\n metadata,\n quadStream,\n type: 'quads',\n };\n }\n}\n","import type { Bindings, BindingsStream } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { ArrayIterator, MultiTransformIterator } from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport { mapTermsNested } from 'rdf-terms';\n\nconst DF = new DataFactory();\n\n/**\n * Transforms a bindings stream into a quad stream given a quad template.\n *\n * This conforms to the SPARQL 1.1 spec on constructing triples:\n * https://www.w3.org/TR/sparql11-query/#rConstructTriples\n */\nexport class BindingsToQuadsIterator extends MultiTransformIterator {\n protected readonly template: RDF.BaseQuad[];\n protected blankNodeCounter: number;\n\n public constructor(template: RDF.BaseQuad[], bindingsStream: BindingsStream) {\n super(bindingsStream, { autoStart: false });\n this.template = template;\n this.blankNodeCounter = 0;\n }\n\n /**\n * Bind the given term.\n * If the term is a variable and the variable is bound in the bindings object,\n * return the bindings value.\n * If the term is a variable and the variable is not bound in the bindings object,\n * a falsy value is returned..\n * Otherwise, the term itself is returned.\n * @param {Bindings} bindings A bindings object.\n * @param {RDF.Term} term An RDF term.\n * @return {RDF.Term} If the given term is not a variable, the term itself is returned.\n * If the given term is a variable, then the bound term is returned,\n * or a falsy value if it did not exist in the bindings.\n */\n public static bindTerm(bindings: Bindings, term: RDF.Term): RDF.Term | undefined {\n if (term.termType === 'Variable') {\n return bindings.get(term);\n }\n return term;\n }\n\n /**\n * Bind the given quad pattern.\n * If one of the terms was a variable AND is not bound in the bindings,\n * a falsy value will be returned.\n * @param {Bindings} bindings A bindings object.\n * @param {RDF.Quad} pattern An RDF quad.\n * @return {RDF.Quad} A bound RDF quad or undefined.\n */\n public static bindQuad(bindings: Bindings, pattern: RDF.BaseQuad): RDF.Quad | undefined {\n try {\n return mapTermsNested( pattern, term => {\n const boundTerm = BindingsToQuadsIterator.bindTerm(bindings, term);\n if (!boundTerm) {\n throw new Error('Unbound term');\n }\n return boundTerm;\n });\n } catch {\n // Do nothing\n }\n }\n\n /**\n * Convert a blank node to a unique blank node in the given context.\n * If the given term is not a blank node, the term itself will be returned.\n * @param blankNodeCounter A counter value for the blank node.\n * @param {RDF.Term} term The term that should be localized.\n * @return {RDF.Term} A term.\n */\n public static localizeBlankNode(blankNodeCounter: number,\n term: RDF.Term): RDF.Term {\n if (term.termType === 'BlankNode') {\n return DF.blankNode(`${term.value}${blankNodeCounter}`);\n }\n return term;\n }\n\n /**\n * Convert the given quad to a quad that only contains unique blank nodes.\n * @param blankNodeCounter A counter value for the blank node.\n * @param {RDF.BaseQuad} pattern The pattern that should be localized.\n * @return {RDF.BaseQuad} A quad.\n */\n public static localizeQuad(blankNodeCounter: number,\n pattern: RDF.BaseQuad): RDF.BaseQuad {\n return mapTermsNested(pattern, term => BindingsToQuadsIterator.localizeBlankNode(blankNodeCounter, term));\n }\n\n /**\n * Convert the given template to a list of quads based on the given bindings.\n * @param {Bindings} bindings A bindings object.\n * @param {RDF.Quad[]} template A list of quad patterns.\n * @param blankNodeCounter A counter value for the blank node.\n * @return {RDF.Quad[]} A list of quads.\n */\n public bindTemplate(bindings: Bindings, template: RDF.BaseQuad[], blankNodeCounter: number): RDF.Quad[] {\n const quads: RDF.BaseQuad[] = template\n // Make sure the multiple instantiations of the template contain different blank nodes, as required by SPARQL 1.1.\n .map(BindingsToQuadsIterator.localizeQuad.bind(null, blankNodeCounter))\n // Bind variables to bound terms\n .map(x => BindingsToQuadsIterator.bindQuad.bind(null, bindings)(x))\n // Remove quads that contained unbound terms, i.e., variables.\n .filter(Boolean);\n return quads;\n }\n\n public _createTransformer(bindings: Bindings): AsyncIterator {\n return new ArrayIterator(this.bindTemplate(\n bindings, this.template, this.blankNodeCounter++,\n ), { autoStart: false });\n }\n}\n","import { ActorQueryOperationUnion } from '@comunica/actor-query-operation-union';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation, ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryOperationResultQuads, IActionContext, IQueryOperationResult, MetadataQuads } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { UnionIterator } from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport { Algebra } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A comunica Describe Subject Query Operation Actor.\n */\nexport class ActorQueryOperationDescribeSubject extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'describe');\n }\n\n public async testOperation(operation: Algebra.Describe, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operationOriginal: Algebra.Describe, context: IActionContext):\n Promise {\n // Create separate construct queries for all non-variable terms\n const operations: Algebra.Construct[] = operationOriginal.terms\n .filter(term => term.termType !== 'Variable')\n .map((term: RDF.Term) => {\n // Transform each term to a separate construct operation with S ?p ?o patterns (BGP) for all terms\n const patterns: RDF.BaseQuad[] = [\n DF.quad(term, DF.variable('__predicate'), DF.variable('__object')),\n ];\n // eslint-disable-next-line no-return-assign\n patterns.forEach((templatePattern: any) => templatePattern.type = 'pattern');\n const templateOperation: Algebra.Operation = {\n type: Algebra.types.BGP,\n patterns: patterns,\n };\n\n // Create a construct query\n return {\n input: templateOperation,\n template: patterns,\n type: 'construct',\n };\n });\n\n // If we have variables in the term list,\n // create one separate construct operation to determine these variables using the input pattern.\n if (operations.length !== operationOriginal.terms.length) {\n let variablePatterns: Algebra.Pattern[] = [];\n operationOriginal.terms\n .filter(term => term.termType === 'Variable')\n .forEach((term: RDF.Term, i: number) => {\n // Transform each term to an S ?p ?o pattern in a non-conflicting way\n const patterns: RDF.BaseQuad[] = [\n DF.quad(term, DF.variable(`__predicate${i}`), DF.variable(`__object${i}`)),\n ];\n // eslint-disable-next-line no-return-assign\n patterns.forEach((templatePattern: any) => templatePattern.type = 'pattern');\n variablePatterns = [ ...variablePatterns, ... patterns ];\n });\n\n // Add a single construct for the variables\n // This requires a join between the input pattern and our variable patterns that form a simple BGP\n operations.push({\n input: {\n type: Algebra.types.JOIN,\n input: [\n operationOriginal.input,\n { type: Algebra.types.BGP, patterns: variablePatterns },\n ],\n },\n template: variablePatterns,\n type: Algebra.types.CONSTRUCT,\n });\n }\n\n // Evaluate the construct queries\n const outputs: IQueryOperationResultQuads[] = (await Promise.all(operations.map(\n operation => this.mediatorQueryOperation.mediate({ operation, context }),\n )))\n .map(ActorQueryOperation.getSafeQuads);\n\n // Take the union of all quad streams\n const quadStream = new UnionIterator(outputs.map(output => output.quadStream), { autoStart: false });\n\n // Take union of metadata\n const metadata: () => Promise = () => Promise.all(outputs\n .map(x => x.metadata()))\n .then(metadatas => ActorQueryOperationUnion.unionMetadata(metadatas, false));\n\n return { type: 'quads', quadStream, metadata };\n }\n}\n","import type { MediatorHashBindings } from '@comunica/bus-hash-bindings';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { Bindings, BindingsStream, IActionContext,\n IQueryOperationResult, IQueryOperationResultBindings } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Distinct Hash Query Operation Actor.\n */\nexport class ActorQueryOperationDistinctHash extends ActorQueryOperationTypedMediated {\n public readonly mediatorHashBindings: MediatorHashBindings;\n\n public constructor(args: IActorQueryOperationDistinctHashArgs) {\n super(args, 'distinct');\n }\n\n public async testOperation(operation: Algebra.Distinct, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Distinct, context: IActionContext): Promise {\n const output: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: operation.input, context }),\n );\n const bindingsStream: BindingsStream = output.bindingsStream.filter(await this.newHashFilter(context));\n return {\n type: 'bindings',\n bindingsStream,\n metadata: output.metadata,\n };\n }\n\n /**\n * Create a new distinct filter function.\n * This will maintain an internal hash datastructure so that every bindings object only returns true once.\n * @param context The action context.\n * @return {(bindings: Bindings) => boolean} A distinct filter for bindings.\n */\n public async newHashFilter(context: IActionContext): Promise<(bindings: Bindings) => boolean> {\n const { hashFunction } = await this.mediatorHashBindings.mediate({ allowHashCollisions: true, context });\n const hashes: Record = {};\n return (bindings: Bindings) => {\n const hash: string = hashFunction(bindings);\n // eslint-disable-next-line no-return-assign\n return !(hash in hashes) && (hashes[hash] = true);\n };\n }\n}\n\nexport interface IActorQueryOperationDistinctHashArgs extends IActorQueryOperationTypedMediatedArgs {\n mediatorHashBindings: MediatorHashBindings;\n}\n","import { bindingsToString } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation, ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { ExpressionError } from '@comunica/expression-evaluator';\nimport { AsyncEvaluator, isExpressionError } from '@comunica/expression-evaluator';\nimport type { Bindings, IActionContext, IQueryOperationResult, IQueryOperationResultBindings } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Extend Query Operation Actor.\n *\n * See https://www.w3.org/TR/sparql11-query/#sparqlAlgebra;\n */\nexport class ActorQueryOperationExtend extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'extend');\n }\n\n public async testOperation(operation: Algebra.Extend, context: IActionContext): Promise {\n // Will throw error for unsupported opperations\n const _ = Boolean(new AsyncEvaluator(operation.expression,\n ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation)));\n return true;\n }\n\n public async runOperation(operation: Algebra.Extend, context: IActionContext):\n Promise {\n const { expression, input, variable } = operation;\n\n const output: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: input, context }),\n );\n\n // Throw if the variable has already been bound\n if ((await output.metadata()).variables.some(innerVariable => innerVariable.equals(variable))) {\n throw new Error(`Illegal binding to variable '${variable.value}' that has already been bound`);\n }\n\n const config = { ...ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation) };\n const evaluator = new AsyncEvaluator(expression, config);\n\n // Transform the stream by extending each Bindings with the expression result\n const transform = async(bindings: Bindings, next: any, push: (pusbBindings: Bindings) => void): Promise => {\n try {\n const result = await evaluator.evaluate(bindings);\n // Extend operation is undefined when the key already exists\n // We just override it here.\n const extended = bindings.set(variable, result);\n push(extended);\n } catch (error: unknown) {\n if (isExpressionError( error)) {\n // Errors silently don't actually extend according to the spec\n push(bindings);\n // But let's warn anyway\n this.logWarn(context, `Expression error for extend operation (${( error).message})` +\n `with bindings '${bindingsToString(bindings)}'`);\n } else {\n bindingsStream.emit('error', error);\n }\n }\n next();\n };\n\n const bindingsStream = output.bindingsStream.transform({ autoStart: false, transform });\n return {\n type: 'bindings',\n bindingsStream,\n async metadata() {\n const outputMetadata = await output.metadata();\n return { ...outputMetadata, variables: [ ...outputMetadata.variables, variable ]};\n },\n };\n }\n}\n","import { bindingsToString } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { AsyncEvaluator, isExpressionError } from '@comunica/expression-evaluator';\nimport type { Bindings, IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Filter Sparqlee Query Operation Actor.\n */\nexport class ActorQueryOperationFilterSparqlee extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'filter');\n }\n\n public async testOperation(operation: Algebra.Filter, context: IActionContext): Promise {\n // Will throw error for unsupported operators\n const config = { ...ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation) };\n const _ = new AsyncEvaluator(operation.expression, config);\n return true;\n }\n\n public async runOperation(operation: Algebra.Filter, context: IActionContext):\n Promise {\n const outputRaw = await this.mediatorQueryOperation.mediate({ operation: operation.input, context });\n const output = ActorQueryOperation.getSafeBindings(outputRaw);\n ActorQueryOperation.validateQueryOutput(output, 'bindings');\n\n const config = { ...ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation) };\n const evaluator = new AsyncEvaluator(operation.expression, config);\n\n const transform = async(item: Bindings, next: any, push: (bindings: Bindings) => void): Promise => {\n try {\n const result = await evaluator.evaluateAsEBV(item);\n if (result) {\n push(item);\n }\n } catch (error: unknown) {\n // We ignore all Expression errors.\n // Other errors (likely programming mistakes) are still propagated.\n //\n // > Specifically, FILTERs eliminate any solutions that,\n // > when substituted into the expression, either result in\n // > an effective boolean value of false or produce an error.\n // > ...\n // > These errors have no effect outside of FILTER evaluation.\n // https://www.w3.org/TR/sparql11-query/#expressions\n if (isExpressionError( error)) {\n // In many cases, this is a user error, where the user should manually cast the variable to a string.\n // In order to help users debug this, we should report these errors via the logger as warnings.\n this.logWarn(context, 'Error occurred while filtering.', () => ({ error, bindings: bindingsToString(item) }));\n } else {\n bindingsStream.emit('error', error);\n }\n }\n next();\n };\n\n const bindingsStream = output.bindingsStream.transform({ transform, autoStart: false });\n return { type: 'bindings', bindingsStream, metadata: output.metadata };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Algebra, Factory } from 'sparqlalgebrajs';\n\n/**\n * A comunica From Query Operation Actor.\n */\nexport class ActorQueryOperationFromQuad extends ActorQueryOperationTypedMediated {\n private static readonly FACTORY: Factory = new Factory();\n private static readonly ALGEBRA_TYPES: string[] = Object.keys(Algebra.types).map(key => ( Algebra.types)[key]);\n\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'from');\n }\n\n /**\n * Create a deep copy of the given operation.\n * @param {Operation} operation An operation.\n * @param {(subOperation: Operation) => Operation} recursiveCb A callback for recursive operation calls.\n * @return {Operation} The copied operation.\n */\n public static copyOperation(operation: Algebra.Operation,\n recursiveCb: (subOperation: Algebra.Operation) => Algebra.Operation): Algebra.Operation {\n const copiedOperation: Algebra.Operation = {};\n for (const key of Object.keys(operation)) {\n if (Array.isArray(operation[key]) && key !== 'template') {\n // We exclude the 'template' entry, as we don't want to modify the template value of construct operations\n if (key === 'variables') {\n copiedOperation[key] = operation[key];\n } else {\n copiedOperation[key] = operation[key].map(recursiveCb);\n }\n } else if (ActorQueryOperationFromQuad.ALGEBRA_TYPES.includes(operation[key].type)) {\n copiedOperation[key] = recursiveCb(operation[key]);\n } else {\n copiedOperation[key] = operation[key];\n }\n }\n return copiedOperation;\n }\n\n /**\n * Recursively transform the given operation to use the given graphs as default graph\n * This will (possibly) create a new operation and not modify the given operation.\n * @param {Operation} operation An operation.\n * @param {RDF.Term[]} defaultGraphs Graph terms.\n * @return {Operation} A new operation.\n */\n public static applyOperationDefaultGraph(operation: Algebra.Operation, defaultGraphs: RDF.Term[]): Algebra.Operation {\n // If the operation is a BGP or Path, change the graph.\n if ((operation.type === 'bgp' && operation.patterns.length > 0) ||\n operation.type === 'path' ||\n operation.type === 'pattern') {\n if (operation.type === 'bgp') {\n return ActorQueryOperationFromQuad.joinOperations(operation.patterns.map((pattern: Algebra.Pattern) => {\n if (pattern.graph.termType !== 'DefaultGraph') {\n return ActorQueryOperationFromQuad.FACTORY.createBgp([ pattern ]);\n }\n const bgps = defaultGraphs.map((graph: RDF.Term) =>\n ActorQueryOperationFromQuad.FACTORY.createBgp([ ActorQueryOperationFromQuad.FACTORY\n .createPattern(pattern.subject, pattern.predicate, pattern.object, graph) ]));\n return ActorQueryOperationFromQuad.unionOperations(bgps);\n }));\n }\n if (operation.graph.termType !== 'DefaultGraph') {\n return operation;\n }\n const paths = defaultGraphs.map(\n (graph: RDF.Term) => {\n if (operation.type === 'path') {\n return ActorQueryOperationFromQuad.FACTORY\n .createPath(operation.subject, operation.predicate, operation.object, graph);\n }\n return ActorQueryOperationFromQuad.FACTORY\n .createPattern(operation.subject, operation.predicate, operation.object, graph);\n },\n );\n return ActorQueryOperationFromQuad.unionOperations(paths);\n }\n\n return ActorQueryOperationFromQuad.copyOperation(operation,\n (subOperation: Algebra.Operation) => this.applyOperationDefaultGraph(subOperation, defaultGraphs));\n }\n\n /**\n * Recursively transform the given operation to use the given graphs as named graph\n * This will (possibly) create a new operation and not modify the given operation.\n * @param {Operation} operation An operation.\n * @param {RDF.Term[]} namedGraphs Graph terms.\n * @param {RDF.Term[]} defaultGraphs Default graph terms.\n * @return {Operation} A new operation.\n */\n public static applyOperationNamedGraph(operation: Algebra.Operation, namedGraphs: RDF.NamedNode[],\n defaultGraphs: RDF.Term[]): Algebra.Operation {\n // If the operation is a BGP or Path, change the graph.\n if ((operation.type === 'bgp' && operation.patterns.length > 0) ||\n operation.type === 'path' ||\n operation.type === 'pattern') {\n const patternGraph: RDF.Term = operation.type === 'bgp' ? operation.patterns[0].graph : operation.graph;\n if (patternGraph.termType === 'DefaultGraph') {\n // SPARQL spec (8.2) describes that when FROM NAMED's are used without a FROM, the default graph must be empty.\n // The FROMs are transformed before this step to a named node, so this will not apply to this case anymore.\n return { type: Algebra.types.BGP, patterns: []};\n }\n if (patternGraph.termType === 'Variable') {\n if (namedGraphs.length === 1) {\n const graph: RDF.NamedNode = namedGraphs[0];\n // If the pattern graph is a variable, replace the graph and bind the variable using VALUES\n const bindings: Record = {};\n bindings[`?${patternGraph.value}`] = graph;\n const values: Algebra.Values = ActorQueryOperationFromQuad.FACTORY\n .createValues([ patternGraph ], [ bindings ]);\n\n let pattern: Algebra.Operation;\n if (operation.type === 'bgp') {\n pattern = ActorQueryOperationFromQuad.FACTORY\n .createBgp(operation.patterns.map((pat: Algebra.Pattern) => ActorQueryOperationFromQuad.FACTORY\n .createPattern(pat.subject, pat.predicate, pat.object, graph)));\n } else if (operation.type === 'path') {\n pattern = ActorQueryOperationFromQuad.FACTORY\n .createPath(operation.subject, operation.predicate, operation.object, graph);\n } else {\n pattern = ActorQueryOperationFromQuad.FACTORY\n .createPattern(operation.subject, operation.predicate, operation.object, graph);\n }\n\n return ActorQueryOperationFromQuad.FACTORY.createJoin([ values, pattern ]);\n }\n // If the pattern graph is a variable, take the union of the pattern applied to each available named graph\n return ActorQueryOperationFromQuad.unionOperations(namedGraphs.map(\n (graph: RDF.NamedNode) => ActorQueryOperationFromQuad.applyOperationNamedGraph(\n operation, [ graph ], defaultGraphs,\n ),\n ));\n }\n // The pattern's graph is defined (including the default graphs)\n const isNamedGraphAvailable: boolean = [ ...namedGraphs, ...defaultGraphs ].some(\n (namedGraph: RDF.Term) => namedGraph.equals(patternGraph),\n );\n if (isNamedGraphAvailable) {\n // Return the pattern as-is if the pattern's graph was selected in a FROM NAMED\n return operation;\n }\n // No-op if the pattern's graph was not selected in a FROM NAMED.\n return { type: Algebra.types.BGP, patterns: []};\n }\n\n return ActorQueryOperationFromQuad.copyOperation(operation,\n (subOperation: Algebra.Operation) => this.applyOperationNamedGraph(subOperation, namedGraphs, defaultGraphs));\n }\n\n /**\n * Transform the given array of operations into a join operation.\n * @param {Operation[]} operations An array of operations, must contain at least one operation.\n * @return {Join} A join operation.\n */\n public static joinOperations(operations: Algebra.Operation[]): Algebra.Operation {\n if (operations.length === 1) {\n return operations[0];\n }\n if (operations.length > 1) {\n return ActorQueryOperationFromQuad.FACTORY.createJoin(operations);\n }\n throw new Error('A join can only be applied on at least one operation');\n }\n\n /**\n * Transform the given array of operations into a union operation.\n * @param {Operation[]} operations An array of operations, must contain at least one operation.\n * @return {Union} A union operation.\n */\n public static unionOperations(operations: Algebra.Operation[]): Algebra.Operation {\n if (operations.length === 1) {\n return operations[0];\n }\n if (operations.length > 1) {\n return ActorQueryOperationFromQuad.FACTORY.createUnion(operations);\n }\n throw new Error('A union can only be applied on at least one operation');\n }\n\n /**\n * Transform an operation based on the default and named graphs in the pattern.\n *\n * FROM sets the default graph.\n * If multiple are available, take the union of the operation for all of them at quad-pattern level.\n *\n * FROM NAMED indicates which named graphs are available.\n * This will rewrite the query so that only triples from the given named graphs can be selected.\n *\n * @param {From} pattern A from operation.\n * @return {Operation} The transformed operation.\n */\n public static createOperation(pattern: Algebra.From): Algebra.Operation {\n let operation: Algebra.Operation = pattern.input;\n if (pattern.default.length > 0) {\n operation = ActorQueryOperationFromQuad.applyOperationDefaultGraph(operation, pattern.default);\n }\n if (pattern.named.length > 0 || pattern.default.length > 0) {\n operation = ActorQueryOperationFromQuad.applyOperationNamedGraph(operation, pattern.named, pattern.default);\n }\n return operation;\n }\n\n public async testOperation(operation: Algebra.From, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(\n operationOriginal: Algebra.From,\n context: IActionContext,\n ): Promise {\n const operation: Algebra.Operation = ActorQueryOperationFromQuad.createOperation(operationOriginal);\n return this.mediatorQueryOperation.mediate({ operation, context });\n }\n}\n","import type { MediatorHashBindings } from '@comunica/bus-hash-bindings';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { AsyncEvaluator } from '@comunica/expression-evaluator';\nimport type { BindingsStream, IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { ArrayIterator, TransformIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { GroupsState } from './GroupsState';\n\n/**\n * A comunica Group Query Operation Actor.\n */\nexport class ActorQueryOperationGroup extends ActorQueryOperationTypedMediated {\n public readonly mediatorHashBindings: MediatorHashBindings;\n\n public constructor(args: IActorQueryOperationGroupArgs) {\n super(args, 'group');\n }\n\n public async testOperation(operation: Algebra.Group, context: IActionContext): Promise {\n for (const aggregate of operation.aggregates) {\n // Will throw for unsupported expressions\n const _ = new AsyncEvaluator(\n aggregate.expression,\n ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation),\n );\n }\n return true;\n }\n\n public async runOperation(operation: Algebra.Group, context: IActionContext):\n Promise {\n // Create a hash function\n const { hashFunction } = await this.mediatorHashBindings.mediate({ allowHashCollisions: true, context });\n\n // Get result stream for the input query\n const { input, aggregates } = operation;\n const outputRaw = await this.mediatorQueryOperation.mediate({ operation: input, context });\n const output = ActorQueryOperation.getSafeBindings(outputRaw);\n\n // The variables in scope are the variables on which we group, i.e. pattern.variables.\n // For 'GROUP BY ?x, ?z', this is [?x, ?z], for 'GROUP by expr(?x) as ?e' this is [?e].\n // But also in scope are the variables defined by the aggregations, since GROUP has to handle this.\n const variables = [\n ...operation.variables,\n ...aggregates.map(agg => agg.variable),\n ];\n\n const sparqleeConfig = ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation);\n\n // Wrap a new promise inside an iterator that completes when the stream has ended or when an error occurs\n const bindingsStream = new TransformIterator(() => new Promise((resolve, reject) => {\n const groups = new GroupsState(hashFunction, operation, sparqleeConfig);\n\n // Phase 2: Collect aggregator results\n // We can only return when the binding stream ends, when that happens\n // we return the identified groups. Which are nothing more than Bindings\n // of the grouping variables merged with the aggregate variables\n output.bindingsStream.on('end', async() => {\n try {\n const bindingsStreamInner = new ArrayIterator(await groups.collectResults(), { autoStart: false });\n resolve(bindingsStreamInner);\n } catch (error: unknown) {\n reject(error);\n }\n });\n\n // Make sure to propagate any errors in the binding stream\n output.bindingsStream.on('error', reject);\n\n // Phase 1: Consume the stream, identify the groups and populate the aggregators.\n // We need to bind this after the 'error' and 'end' listeners to avoid the\n // stream having ended before those listeners are bound.\n output.bindingsStream.on('data', bindings => {\n groups.consumeBindings(bindings).catch(reject);\n });\n }), { autoStart: false });\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({ ...await output.metadata(), variables }),\n };\n }\n}\n\nexport interface IActorQueryOperationGroupArgs extends IActorQueryOperationTypedMediatedArgs {\n mediatorHashBindings: MediatorHashBindings;\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { HashFunction } from '@comunica/bus-hash-bindings';\nimport type { IAsyncEvaluatorContext } from '@comunica/expression-evaluator';\nimport { AsyncAggregateEvaluator } from '@comunica/expression-evaluator';\nimport type { Bindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\nconst BF = new BindingsFactory();\n\n/**\n * A simple type alias for strings that should be hashes of Bindings\n */\nexport type BindingsHash = string;\n\n/**\n * A state container for a single group\n *\n * @property {Bindings} bindings - The binding entries on which we group\n */\nexport interface IGroup {\n bindings: Bindings;\n aggregators: Record;\n}\n\n/**\n * A state manager for the groups constructed by consuming the bindings-stream.\n */\nexport class GroupsState {\n private readonly groups: Map;\n // We need to the promises of a group so we can await the initialisation/ creation of them.\n // Without this we could have duplicate work/ override precious work.\n private readonly groupsInitializer: Map>;\n private readonly groupVariables: Set;\n private readonly distinctHashes: null | Map>;\n private waitCounter: number;\n // Function that resolves the promise given by collectResults\n private waitResolver: (bindings: Bindings[]) => void;\n private resultHasBeenCalled: boolean;\n\n public constructor(\n private readonly hashFunction: HashFunction,\n private readonly pattern: Algebra.Group,\n private readonly sparqleeConfig: IAsyncEvaluatorContext,\n ) {\n this.groups = new Map();\n this.groupsInitializer = new Map();\n this.groupVariables = new Set(this.pattern.variables.map(x => x.value));\n this.distinctHashes = pattern.aggregates.some(({ distinct }) => distinct) ?\n new Map() :\n null;\n this.waitCounter = 1;\n this.resultHasBeenCalled = false;\n }\n\n /**\n * - Consumes a stream binding\n * - Find the corresponding group and create one if need be\n * - Feeds the binding to the group's aggregators\n *\n * @param {Bindings} bindings - The Bindings to consume\n */\n public consumeBindings(bindings: Bindings): Promise {\n const check = this.resultCheck();\n if (check) {\n return check;\n }\n // We increment the counter and decrement him when put action is performed.\n this.waitCounter++;\n\n // Select the bindings on which we group\n const grouper = bindings\n .filter((_, variable) => this.groupVariables.has(variable.value));\n const groupHash = this.hashBindings(grouper);\n\n // First member of group -> create new group\n let groupInitializer: Promise | undefined = this.groupsInitializer.get(groupHash);\n\n let res: Promise;\n if (!groupInitializer) {\n // Initialize state for all aggregators for new group\n groupInitializer = (async() => {\n const aggregators: Record = {};\n await Promise.all(this.pattern.aggregates.map(async aggregate => {\n const key = aggregate.variable.value;\n aggregators[key] = new AsyncAggregateEvaluator(aggregate, this.sparqleeConfig);\n await aggregators[key].put(bindings);\n }));\n\n if (this.distinctHashes) {\n const bindingsHash = this.hashBindings(bindings);\n this.distinctHashes.set(groupHash, new Set([ bindingsHash ]));\n }\n const group = { aggregators, bindings: grouper };\n this.groups.set(groupHash, group);\n this.subtractWaitCounterAndCollect();\n return group;\n })();\n this.groupsInitializer.set(groupHash, groupInitializer);\n res = groupInitializer;\n } else {\n const groupInitializerDefined = groupInitializer;\n res = (async() => {\n const group = await groupInitializerDefined;\n await Promise.all(this.pattern.aggregates.map(async aggregate => {\n // If distinct, check first whether we have inserted these values already\n if (aggregate.distinct) {\n const hash = this.hashBindings(bindings);\n if (this.distinctHashes!.get(groupHash)!.has(hash)) {\n return;\n }\n this.distinctHashes!.get(groupHash)!.add(hash);\n }\n\n const variable = aggregate.variable.value;\n await group.aggregators[variable].put(bindings);\n }));\n })().then(() => {\n this.subtractWaitCounterAndCollect();\n });\n }\n return res;\n }\n\n private subtractWaitCounterAndCollect(): void {\n if (--this.waitCounter === 0) {\n this.handleResultCollection();\n }\n }\n\n private handleResultCollection(): void {\n // Collect groups\n let rows: Bindings[] = [ ...this.groups ].map(([ _, group ]) => {\n const { bindings: groupBindings, aggregators } = group;\n\n // Collect aggregator bindings\n // If the aggregate errorred, the result will be undefined\n let returnBindings = groupBindings;\n for (const variable in aggregators) {\n const value = aggregators[variable].result();\n if (value) {\n // Filter undefined\n returnBindings = returnBindings.set(DF.variable(variable), value);\n }\n }\n\n // Merge grouping bindings and aggregator bindings\n return returnBindings;\n });\n\n // Case: No Input\n // Some aggregators still define an output on the empty input\n // Result is a single Bindings\n if (rows.length === 0 && this.groupVariables.size === 0) {\n const single: [RDF.Variable, RDF.Term][] = [];\n for (const aggregate of this.pattern.aggregates) {\n const key = aggregate.variable;\n const value = AsyncAggregateEvaluator.emptyValue(aggregate);\n if (value !== undefined) {\n single.push([ key, value ]);\n }\n }\n rows = [ BF.bindings(single) ];\n }\n this.waitResolver(rows);\n }\n\n private resultCheck(): Promise | undefined {\n if (this.resultHasBeenCalled) {\n return Promise.reject(new Error('Calling any function after calling collectResult is invalid.'));\n }\n }\n\n /**\n * Collect the result of the final state. This returns a Bindings per group,\n * and a (possibly empty) Bindings in case no Bindings have been consumed yet.\n * You can only call this method once, after calling this method,\n * calling any function on this will result in an error being thrown.\n */\n public collectResults(): Promise {\n const check = this.resultCheck();\n if (check) {\n return check;\n }\n this.resultHasBeenCalled = true;\n const res = new Promise(resolve => {\n this.waitResolver = resolve;\n });\n this.subtractWaitCounterAndCollect();\n return res;\n }\n\n /**\n * @param {Bindings} bindings - Bindings to hash\n */\n private hashBindings(bindings: Bindings): BindingsHash {\n return this.hashFunction(bindings);\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { MediatorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryOperationResult, IActionContext, IJoinEntry } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Join Query Operation Actor.\n */\nexport class ActorQueryOperationJoin extends ActorQueryOperationTypedMediated {\n public readonly mediatorJoin: MediatorRdfJoin;\n\n public constructor(args: IActorQueryOperationJoinArgs) {\n super(args, 'join');\n }\n\n public async testOperation(operation: Algebra.Join, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(\n operationOriginal: Algebra.Join,\n context: IActionContext,\n ): Promise {\n const entries: IJoinEntry[] = (await Promise.all(operationOriginal.input\n .map(async subOperation => ({\n output: await this.mediatorQueryOperation.mediate({ operation: subOperation, context }),\n operation: subOperation,\n }))))\n .map(({ output, operation }) => ({\n output: ActorQueryOperation.getSafeBindings(output),\n operation,\n }));\n\n return this.mediatorJoin.mediate({ type: 'inner', entries, context });\n }\n}\n\nexport interface IActorQueryOperationJoinArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * A mediator for joining Bindings streams\n */\n mediatorJoin: MediatorRdfJoin;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { MediatorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IActorTest } from '@comunica/core';\nimport { AsyncEvaluator, isExpressionError } from '@comunica/expression-evaluator';\nimport type { IQueryOperationResult, Bindings, IActionContext, IJoinEntry } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica LeftJoin Query Operation Actor.\n */\nexport class ActorQueryOperationLeftJoin extends ActorQueryOperationTypedMediated {\n public readonly mediatorJoin: MediatorRdfJoin;\n\n public constructor(args: IActorQueryOperationLeftJoinArgs) {\n super(args, 'leftjoin');\n }\n\n public async testOperation(operation: Algebra.LeftJoin, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operationOriginal: Algebra.LeftJoin, context: IActionContext):\n Promise {\n // Delegate to join bus\n const entries: IJoinEntry[] = (await Promise.all(operationOriginal.input\n .map(async subOperation => ({\n output: await this.mediatorQueryOperation.mediate({ operation: subOperation, context }),\n operation: subOperation,\n }))))\n .map(({ output, operation }) => ({\n output: ActorQueryOperation.getSafeBindings(output),\n operation,\n }));\n const joined = await this.mediatorJoin.mediate({ type: 'optional', entries, context });\n\n // If the pattern contains an expression, filter the resulting stream\n if (operationOriginal.expression) {\n const rightMetadata = await entries[1].output.metadata();\n const expressionVariables = rightMetadata.variables;\n const config = { ...ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation) };\n const evaluator = new AsyncEvaluator(operationOriginal.expression, config);\n const bindingsStream = joined.bindingsStream\n .transform({\n autoStart: false,\n transform: async(bindings: Bindings, done: () => void, push: (item: Bindings) => void) => {\n // If variables of the right-hand entry are missing, we skip expression evaluation\n if (!expressionVariables.every(variable => bindings.has(variable.value))) {\n push(bindings);\n return done();\n }\n\n try {\n const result = await evaluator.evaluateAsEBV(bindings);\n if (result) {\n push(bindings);\n }\n } catch (error: unknown) {\n // We ignore all Expression errors.\n // Other errors (likely programming mistakes) are still propagated.\n // Left Join is defined in terms of Filter (https://www.w3.org/TR/sparql11-query/#defn_algJoin),\n // and Filter requires this (https://www.w3.org/TR/sparql11-query/#expressions).\n if (isExpressionError(error)) {\n // In many cases, this is a user error, where the user should manually cast the variable to a string.\n // In order to help users debug this, we should report these errors via the logger as warnings.\n this.logWarn(context, 'Error occurred while filtering.', () => ({ error, bindings }));\n } else {\n bindingsStream.emit('error', error);\n }\n }\n done();\n },\n });\n joined.bindingsStream = bindingsStream;\n }\n\n return joined;\n }\n}\n\nexport interface IActorQueryOperationLeftJoinArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * A mediator for joining Bindings streams\n */\n mediatorJoin: MediatorRdfJoin;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { MediatorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult, IJoinEntry } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Minus Query Operation Actor.\n */\nexport class ActorQueryOperationMinus extends ActorQueryOperationTypedMediated {\n public readonly mediatorJoin: MediatorRdfJoin;\n\n public constructor(args: IActorQueryOperationMinusArgs) {\n super(args, 'minus');\n }\n\n public async testOperation(operation: Algebra.Minus, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(\n operationOriginal: Algebra.Minus,\n context: IActionContext,\n ): Promise {\n const entries: IJoinEntry[] = (await Promise.all(operationOriginal.input\n .map(async subOperation => ({\n output: await this.mediatorQueryOperation.mediate({ operation: subOperation, context }),\n operation: subOperation,\n }))))\n .map(({ output, operation }) => ({\n output: ActorQueryOperation.getSafeBindings(output),\n operation,\n }));\n\n return this.mediatorJoin.mediate({ type: 'minus', entries, context });\n }\n}\n\nexport interface IActorQueryOperationMinusArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * A mediator for joining Bindings streams\n */\n mediatorJoin: MediatorRdfJoin;\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { SingletonIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation)\n * actor that handles SPARQL nop operations.\n */\nexport class ActorQueryOperationNop extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'nop');\n }\n\n public async testOperation(operation: Algebra.Nop, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Nop, context: IActionContext): Promise {\n return {\n bindingsStream: new SingletonIterator(BF.bindings()),\n metadata: () => Promise.resolve({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 1 },\n canContainUndefs: false,\n variables: [],\n }),\n type: 'bindings',\n };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation, ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { AsyncEvaluator, isExpressionError, orderTypes } from '@comunica/expression-evaluator';\nimport type { Bindings, IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Term } from '@rdfjs/types';\nimport { Algebra } from 'sparqlalgebrajs';\nimport { SortIterator } from './SortIterator';\n\n/**\n * A comunica OrderBy Sparqlee Query Operation Actor.\n */\nexport class ActorQueryOperationOrderBySparqlee extends ActorQueryOperationTypedMediated {\n private readonly window: number;\n\n public constructor(args: IActorQueryOperationOrderBySparqleeArgs) {\n super(args, 'orderby');\n this.window = args.window ?? Number.POSITIVE_INFINITY;\n }\n\n public async testOperation(operation: Algebra.OrderBy, context: IActionContext): Promise {\n // Will throw error for unsupported operators\n for (let expr of operation.expressions) {\n expr = this.extractSortExpression(expr);\n const _ = new AsyncEvaluator(\n expr,\n ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation),\n );\n }\n return true;\n }\n\n public async runOperation(operation: Algebra.OrderBy, context: IActionContext):\n Promise {\n const outputRaw = await this.mediatorQueryOperation.mediate({ operation: operation.input, context });\n const output = ActorQueryOperation.getSafeBindings(outputRaw);\n\n const options = { window: this.window };\n const sparqleeConfig = { ...ActorQueryOperation.getAsyncExpressionContext(context, this.mediatorQueryOperation) };\n let { bindingsStream } = output;\n\n // Sorting backwards since the first one is the most important therefore should be ordered last.\n for (let i = operation.expressions.length - 1; i >= 0; i--) {\n let expr = operation.expressions[i];\n const isAscending = this.isAscending(expr);\n expr = this.extractSortExpression(expr);\n // Transform the stream by annotating it with the expr result\n const evaluator = new AsyncEvaluator(expr, sparqleeConfig);\n interface IAnnotatedBinding {\n bindings: Bindings; result: Term | undefined;\n }\n // eslint-disable-next-line @typescript-eslint/no-loop-func\n const transform = async(bindings: Bindings, next: any, push: (result: IAnnotatedBinding) => void):\n Promise => {\n try {\n const result = await evaluator.evaluate(bindings);\n push({ bindings, result });\n } catch (error: unknown) {\n // We ignore all Expression errors.\n // Other errors (likely programming mistakes) are still propagated.\n // I can't recall where this is defined in the spec.\n if (!isExpressionError( error)) {\n bindingsStream.emit('error', error);\n }\n push({ bindings, result: undefined });\n }\n next();\n };\n const transformedStream = bindingsStream.transform({ transform });\n\n // Sort the annoted stream\n const sortedStream = new SortIterator(transformedStream,\n (left, right) => {\n let compare = orderTypes(left.result, right.result);\n if (!isAscending) {\n compare *= -1;\n }\n return compare;\n },\n options);\n\n // Remove the annotation\n bindingsStream = sortedStream.map(({ bindings, result }) => bindings);\n }\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: output.metadata,\n };\n }\n\n // Remove descending operator if necessary\n private extractSortExpression(expr: Algebra.Expression): Algebra.Expression {\n const { expressionType, operator } = expr;\n if (expressionType !== Algebra.expressionTypes.OPERATOR) {\n return expr;\n }\n return operator === 'desc' ?\n expr.args[0] :\n expr;\n }\n\n private isAscending(expr: Algebra.Expression): boolean {\n const { expressionType, operator } = expr;\n if (expressionType !== Algebra.expressionTypes.OPERATOR) {\n return true;\n }\n return operator !== 'desc';\n }\n}\n\n/**\n * The window parameter determines how many of the elements to consider when sorting.\n */\nexport interface IActorQueryOperationOrderBySparqleeArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The size of the window for the sort iterator.\n * @range {integer}\n */\n window?: number;\n}\n","import type { AsyncIterator } from 'asynciterator';\nimport { TransformIterator } from 'asynciterator';\n\n// Based on https://github.com/LinkedDataFragments/Client.js/blob/master/lib/sparql/SortIterator.js\nexport class SortIterator extends TransformIterator {\n private readonly windowLength: number;\n private readonly sort: (left: T, right: T) => number;\n private readonly sorted: T[];\n\n public constructor(source: AsyncIterator, sort: (left: T, right: T) => number, options?: any) {\n super(source, options);\n\n // The `window` parameter indicates the length of the sliding window to apply sorting\n const window: number = options && options.window;\n this.windowLength = Number.isFinite(window) && window > 0 ? window : Number.POSITIVE_INFINITY;\n this.sort = sort;\n this.sorted = [];\n }\n\n // Reads the smallest item in the current sorting window\n public _read(count: number, done: () => void): void {\n let item;\n let { length } = this.sorted;\n // Try to read items until we reach the desired window length\n while (length !== this.windowLength) {\n item = this.source!.read();\n if (item === null) {\n break;\n }\n // Insert the item in the sorted window (smallest last)\n let left = 0;\n let right = length - 1;\n let mid;\n let order;\n while (left <= right) {\n mid = Math.trunc((left + right) / 2);\n order = this.sort(item, this.sorted[mid]);\n if (order < 0) {\n left = mid + 1;\n } else if (order > 0) {\n right = mid - 1;\n } else {\n left = mid;\n right = -1;\n }\n }\n this.sorted.splice(left, 0, item);\n length++;\n }\n // Push the smallest item in the window\n if (length === this.windowLength) {\n this._push(this.sorted.pop()!);\n }\n done();\n }\n\n // Flushes remaining data after the source has ended\n public _flush(done: () => void): void {\n let { length } = this.sorted;\n while (length--) {\n this._push(this.sorted.pop()!);\n }\n done();\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport { ActorQueryOperationUnion } from '@comunica/actor-query-operation-union';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport type { IQueryOperationResultBindings, IQueryOperationResult,\n IActionContext, MetadataBindings } from '@comunica/types';\nimport { UnionIterator } from 'asynciterator';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Path Alt Query Operation Actor.\n */\nexport class ActorQueryOperationPathAlt extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.ALT);\n }\n\n public async runOperation(operation: Algebra.Path, context: IActionContext): Promise {\n const predicate = operation.predicate;\n\n const subOperations: IQueryOperationResultBindings[] = (await Promise.all(predicate.input\n .map(subPredicate => this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY\n .createPath(operation.subject, subPredicate, operation.object, operation.graph),\n }))))\n .map(ActorQueryOperation.getSafeBindings);\n\n const bindingsStream = new UnionIterator(subOperations.map(op => op.bindingsStream), { autoStart: false });\n const metadata: (() => Promise) = () =>\n Promise.all(subOperations.map(output => output.metadata()))\n .then(subMeta => ActorQueryOperationUnion.unionMetadata(subMeta, true));\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata,\n };\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Path Inv Query Operation Actor.\n */\nexport class ActorQueryOperationPathInv extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.INV);\n }\n\n public async runOperation(operation: Algebra.Path, context: IActionContext): Promise {\n const predicate = operation.predicate;\n const invPath = ActorAbstractPath.FACTORY\n .createPath(operation.object, predicate.path, operation.subject, operation.graph);\n return this.mediatorQueryOperation.mediate({ operation: invPath, context });\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Path Link Query Operation Actor.\n */\nexport class ActorQueryOperationPathLink extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.LINK);\n }\n\n public async runOperation(\n operationOriginal: Algebra.Path,\n context: IActionContext,\n ): Promise {\n const predicate = operationOriginal.predicate;\n const operation = ActorAbstractPath.FACTORY.createPattern(\n operationOriginal.subject, predicate.iri, operationOriginal.object, operationOriginal.graph,\n );\n return this.mediatorQueryOperation.mediate({ operation, context });\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n} from '@comunica/bus-query-operation';\nimport type { Bindings, IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Path Nps Query Operation Actor.\n */\nexport class ActorQueryOperationPathNps extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.NPS);\n }\n\n public async runOperation(operation: Algebra.Path, context: IActionContext): Promise {\n const predicate = operation.predicate;\n const blank = this.generateVariable(operation);\n\n const pattern = ActorAbstractPath.FACTORY\n .createPattern(operation.subject, blank, operation.object, operation.graph);\n const output = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: pattern, context }),\n );\n\n // Remove the generated blank nodes from the bindings\n const bindingsStream = output.bindingsStream.transform({\n filter(bindings) {\n return !predicate.iris.some(iri => iri.equals(bindings.get(blank)));\n },\n transform(item, next, push) {\n push(item.delete(blank));\n next();\n },\n });\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: output.metadata,\n };\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport type { IQueryOperationResultBindings, Bindings, IQueryOperationResult, IActionContext } from '@comunica/types';\nimport { BufferedIterator, MultiTransformIterator, TransformIterator } from 'asynciterator';\nimport { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica Path OneOrMore Query Operation Actor.\n */\nexport class ActorQueryOperationPathOneOrMore extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.ONE_OR_MORE_PATH);\n }\n\n public async runOperation(operation: Algebra.Path, context: IActionContext): Promise {\n const distinct = await this.isPathArbitraryLengthDistinct(context, operation);\n if (distinct.operation) {\n return distinct.operation;\n }\n\n context = distinct.context;\n\n const predicate = operation.predicate;\n\n if (operation.subject.termType !== 'Variable' && operation.object.termType === 'Variable') {\n const objectVar = operation.object;\n const starEval = await this.getObjectsPredicateStarEval(\n operation.subject,\n predicate.path,\n objectVar,\n operation.graph,\n context,\n false,\n );\n const variables = operation.graph.termType === 'Variable' ? [ objectVar, operation.graph ] : [ objectVar ];\n return {\n type: 'bindings',\n bindingsStream: starEval.bindingsStream,\n metadata: async() => ({ ...await starEval.metadata(), variables }),\n };\n }\n if (operation.subject.termType === 'Variable' && operation.object.termType === 'Variable') {\n // Get all the results of subjects with same predicate, but once, then fill in first variable for those\n const single = ActorAbstractPath.FACTORY.createDistinct(\n ActorAbstractPath.FACTORY\n .createPath(operation.subject, operation.predicate.path, operation.object, operation.graph),\n );\n const results = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ context, operation: single }),\n );\n const subjectVar = operation.subject;\n const objectVar = operation.object;\n\n const termHashes = {};\n\n const bindingsStream: MultiTransformIterator = new MultiTransformIterator(\n results.bindingsStream,\n {\n multiTransform: (bindings: Bindings) => {\n const subject = bindings.get(subjectVar);\n const object = bindings.get(objectVar);\n const graph = operation.graph.termType === 'Variable' ? bindings.get(operation.graph) : operation.graph;\n return new TransformIterator(\n async() => {\n const it = new BufferedIterator();\n await this.getSubjectAndObjectBindingsPredicateStar(\n subjectVar,\n objectVar,\n subject!,\n object!,\n predicate.path,\n graph!,\n context,\n termHashes,\n {},\n it,\n { count: 0 },\n );\n return it.transform({\n transform(item, next, push) {\n if (operation.graph.termType === 'Variable') {\n item = item.set(operation.graph, graph!);\n }\n push(item);\n next();\n },\n });\n }, { maxBufferSize: 128 },\n );\n },\n autoStart: false,\n },\n );\n const variables = operation.graph.termType === 'Variable' ?\n [ subjectVar, objectVar, operation.graph ] :\n [ subjectVar, objectVar ];\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({ ...await results.metadata(), variables }),\n };\n }\n if (operation.subject.termType === 'Variable' && operation.object.termType !== 'Variable') {\n return > this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY.createPath(\n operation.object,\n ActorAbstractPath.FACTORY.createOneOrMorePath(\n ActorAbstractPath.FACTORY.createInv(predicate.path),\n ),\n operation.subject,\n operation.graph,\n ),\n });\n }\n // If (!sVar && !oVar)\n const variable = this.generateVariable();\n const results = ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY.createPath(operation.subject, predicate, variable, operation.graph),\n }));\n const bindingsStream = results.bindingsStream.transform({\n filter: item => operation.object.equals(item.get(variable)),\n transform(item, next, push) {\n const binding = operation.graph.termType === 'Variable' ?\n BF.bindings([[ operation.graph, item.get(operation.graph)! ]]) :\n BF.bindings();\n push(binding);\n next();\n },\n });\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({\n ...await results.metadata(),\n variables: operation.graph.termType === 'Variable' ? [ operation.graph ] : [],\n }),\n };\n }\n}\n\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n} from '@comunica/bus-query-operation';\nimport type { MediatorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { Bindings, IActionContext, IQueryOperationResult, IJoinEntry } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Path Seq Query Operation Actor.\n */\nexport class ActorQueryOperationPathSeq extends ActorAbstractPath {\n public readonly mediatorJoin: MediatorRdfJoin;\n\n public constructor(args: IActorQueryOperationPathSeq) {\n super(args, Algebra.types.SEQ);\n }\n\n public async runOperation(\n operationOriginal: Algebra.Path,\n context: IActionContext,\n ): Promise {\n const predicate = operationOriginal.predicate;\n\n let joiner: RDF.Term = operationOriginal.subject;\n const generatedVariableNames: RDF.Variable[] = [];\n const entries: IJoinEntry[] = await Promise.all(predicate.input\n .map((subPredicate, i) => {\n const nextJoiner = i === predicate.input.length - 1 ? operationOriginal.object : this.generateVariable(operationOriginal, `b${i}`);\n const operation = ActorAbstractPath.FACTORY\n .createPath(joiner, subPredicate, nextJoiner, operationOriginal.graph);\n const output = this.mediatorQueryOperation.mediate({\n context,\n operation,\n });\n\n joiner = nextJoiner;\n if (i < predicate.input.length - 1) {\n generatedVariableNames.push(nextJoiner);\n }\n\n return { output, operation };\n })\n .map(async({ output, operation }) => ({\n output: ActorQueryOperation.getSafeBindings(await output),\n operation,\n })));\n\n const join = ActorQueryOperation.getSafeBindings(await this.mediatorJoin\n .mediate({ type: 'inner', entries, context }));\n // Remove the generated variable from the bindings\n const bindingsStream = join.bindingsStream.transform({\n transform(item, next, push) {\n for (const generatedVariableName of generatedVariableNames) {\n item = item.delete(generatedVariableName);\n }\n push(item);\n next();\n },\n });\n\n // Remove the generated variable from the list of variables\n return {\n type: 'bindings',\n bindingsStream,\n async metadata() {\n const joinMetadata = await join.metadata();\n const variables = joinMetadata.variables.filter(variable => !generatedVariableNames\n .some(generatedVariableName => generatedVariableName.value === variable.value));\n return { ...joinMetadata, variables };\n },\n };\n }\n}\n\nexport interface IActorQueryOperationPathSeq extends IActorQueryOperationTypedMediatedArgs {\n /**\n * A mediator for joining Bindings streams\n */\n mediatorJoin: MediatorRdfJoin;\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport type { Bindings, IQueryOperationResult, IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { MultiTransformIterator, TransformIterator, EmptyIterator, BufferedIterator } from 'asynciterator';\nimport { termToString } from 'rdf-string';\nimport { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica Path ZeroOrMore Query Operation Actor.\n */\nexport class ActorQueryOperationPathZeroOrMore extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.ZERO_OR_MORE_PATH);\n }\n\n public async runOperation(operation: Algebra.Path, context: IActionContext): Promise {\n const distinct = await this.isPathArbitraryLengthDistinct(context, operation);\n if (distinct.operation) {\n return distinct.operation;\n }\n\n context = distinct.context;\n\n const predicate = operation.predicate;\n\n const sVar = operation.subject.termType === 'Variable';\n const oVar = operation.object.termType === 'Variable';\n\n if (operation.subject.termType === 'Variable' && operation.object.termType === 'Variable') {\n // Query ?s ?p ?o, to get all possible namedNodes in de the db\n const predVar = this.generateVariable(operation);\n const single = ActorAbstractPath.FACTORY\n .createPattern(operation.subject, predVar, operation.object, operation.graph);\n const results = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ context, operation: single }),\n );\n const subjectVar = operation.subject;\n const objectVar = operation.object;\n\n // Set with all namedNodes we have already started a predicate* search from\n const entities: Set = new Set();\n\n const termHashes = {};\n\n const bindingsStream: MultiTransformIterator = new MultiTransformIterator(\n results.bindingsStream,\n {\n multiTransform: (bindings: Bindings) => {\n // Get the subject and object of the triples (?s ?p ?o) and extract graph if it was a variable\n const subject: RDF.Term = bindings.get(subjectVar)!;\n const object: RDF.Term = bindings.get(objectVar)!;\n const graph: RDF.Term = operation.graph.termType === 'Variable' ?\n bindings.get(operation.graph)! :\n operation.graph;\n // Make a hash of namedNode + graph to remember from where we already started a search\n const subjectGraphHash = termToString(subject) + termToString(graph);\n const objectGraphHash = termToString(object) + termToString(graph);\n return new TransformIterator(\n async() => {\n // If no new namedNodes in this triple, return nothing\n if (entities.has(subjectGraphHash) && entities.has(objectGraphHash)) {\n return new EmptyIterator();\n }\n // Set up an iterator to which getSubjectAndObjectBindingsPredicateStar will push solutions\n const it = new BufferedIterator();\n const counter = { count: 0 };\n // If not started from this namedNode (subject in triple) in this graph, start a search\n if (!entities.has(subjectGraphHash)) {\n entities.add(subjectGraphHash);\n await this.getSubjectAndObjectBindingsPredicateStar(\n subjectVar,\n objectVar,\n subject,\n subject,\n predicate.path,\n graph,\n context,\n termHashes,\n {},\n it,\n counter,\n );\n }\n // If not started from this namedNode (object in triple) in this graph, start a search\n if (!entities.has(objectGraphHash)) {\n entities.add(objectGraphHash);\n await this.getSubjectAndObjectBindingsPredicateStar(\n subjectVar,\n objectVar,\n object,\n object,\n predicate.path,\n graph,\n context,\n termHashes,\n {},\n it,\n counter,\n );\n }\n return it.transform({\n transform(item, next, push) {\n // If the graph was a variable, fill in it's binding (we got it from the ?s ?p ?o binding)\n if (operation.graph.termType === 'Variable') {\n item = item.set(operation.graph, graph);\n }\n push(item);\n next();\n },\n });\n },\n );\n },\n },\n );\n const variables: RDF.Variable[] = operation.graph.termType === 'Variable' ?\n [ subjectVar, operation.object, operation.graph ] :\n [ subjectVar, operation.object ];\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({ ...await results.metadata(), variables }),\n };\n }\n if (!sVar && !oVar) {\n const variable = this.generateVariable();\n const starEval = await this.getObjectsPredicateStarEval(\n operation.subject,\n predicate.path,\n variable,\n operation.graph,\n context,\n true,\n );\n const bindingsStream = starEval.bindingsStream.transform({\n filter: item => operation.object.equals(item.get(variable)),\n transform(item, next, push) {\n // Return graph binding if graph was a variable, otherwise empty binding\n const binding = operation.graph.termType === 'Variable' ?\n BF.bindings([[ operation.graph, item.get(operation.graph)! ]]) :\n BF.bindings();\n push(binding);\n next();\n },\n });\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({\n ...await starEval.metadata(),\n variables: operation.graph.termType === 'Variable' ? [ operation.graph ] : [],\n }),\n };\n }\n // If (sVar || oVar)\n const subject = sVar ? operation.object : operation.subject;\n const value: RDF.Variable = (sVar ? operation.subject : operation.object);\n const pred = sVar ? ActorAbstractPath.FACTORY.createInv(predicate.path) : predicate.path;\n const starEval = await this.getObjectsPredicateStarEval(\n subject,\n pred,\n value,\n operation.graph,\n context,\n true,\n );\n const variables: RDF.Variable[] = operation.graph.termType === 'Variable' ? [ value, operation.graph ] : [ value ];\n return {\n type: 'bindings',\n bindingsStream: starEval.bindingsStream,\n metadata: async() => ({ ...await starEval.metadata(), variables }),\n };\n }\n}\n","import { ActorAbstractPath } from '@comunica/actor-abstract-path';\nimport { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { Bindings, IQueryOperationResult, IActionContext, BindingsStream } from '@comunica/types';\nimport {\n SingletonIterator, UnionIterator,\n} from 'asynciterator';\nimport { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica Path ZeroOrOne Query Operation Actor.\n */\nexport class ActorQueryOperationPathZeroOrOne extends ActorAbstractPath {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, Algebra.types.ZERO_OR_ONE_PATH);\n }\n\n public async runOperation(\n operation: Algebra.Path,\n context: IActionContext,\n ): Promise {\n const predicate = operation.predicate;\n\n const extra: Bindings[] = [];\n\n // Both subject and object non-variables\n if (operation.subject.termType !== 'Variable' &&\n operation.object.termType !== 'Variable' &&\n operation.subject.equals(operation.object)) {\n return {\n type: 'bindings',\n bindingsStream: new SingletonIterator(BF.bindings()),\n metadata: () => Promise.resolve({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 1 },\n canContainUndefs: false,\n variables: [],\n }),\n };\n }\n\n // Check if we require a distinct path operation\n const distinct = await this.isPathArbitraryLengthDistinct(context, operation);\n if (distinct.operation) {\n return distinct.operation;\n }\n context = distinct.context;\n\n // Create an operator that resolve to the \"One\" part\n const bindingsOne = ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY\n .createPath(operation.subject, predicate.path, operation.object, operation.graph),\n }));\n\n // Determine the bindings stream based on the variable-ness of subject and object\n let bindingsStream: BindingsStream;\n if (operation.subject.termType === 'Variable' && operation.object.termType === 'Variable') {\n // Both subject and object are variables\n // To determine the \"Zero\" part, we\n // query ?s ?p ?o. FILTER ?s = ?0, to get all possible namedNodes in de the db\n const varP = this.generateVariable(operation);\n const bindingsZero = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({\n context,\n operation: ActorAbstractPath.FACTORY.createFilter(\n ActorAbstractPath.FACTORY\n .createPattern(operation.subject, varP, operation.object, operation.graph),\n ActorAbstractPath.FACTORY.createOperatorExpression('=', [\n ActorAbstractPath.FACTORY.createTermExpression(operation.subject),\n ActorAbstractPath.FACTORY.createTermExpression(operation.object),\n ]),\n ),\n }),\n ).bindingsStream.transform({\n map(bindings) {\n return bindings.delete(varP);\n },\n autoStart: false,\n });\n bindingsStream = new UnionIterator([\n bindingsZero,\n bindingsOne.bindingsStream,\n ], { autoStart: false });\n } else {\n // If subject or object is not a variable, then determining the \"Zero\" part is simple.\n if (operation.subject.termType === 'Variable') {\n extra.push(BF.bindings([[ operation.subject, operation.object ]]));\n }\n if (operation.object.termType === 'Variable') {\n extra.push(BF.bindings([[ operation.object, operation.subject ]]));\n }\n\n bindingsStream = bindingsOne.bindingsStream.prepend(extra);\n }\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: bindingsOne.metadata,\n };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { BlankNodeBindingsScoped } from '@comunica/data-factory';\nimport type {\n Bindings,\n BindingsStream,\n IActionContext,\n IQueryOperationResult,\n IQueryOperationResultBindings,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A comunica Project Query Operation Actor.\n */\nexport class ActorQueryOperationProject extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'project');\n }\n\n public async testOperation(operation: Algebra.Project, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Project, context: IActionContext):\n Promise {\n // Resolve the input\n const output: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: operation.input, context }),\n );\n\n // Find all variables that should be deleted from the input stream.\n const outputMetadata = await output.metadata();\n const variables = operation.variables;\n const deleteVariables = outputMetadata.variables\n .filter(variable => !variables.some(subVariable => variable.value === subVariable.value));\n\n // Error if there are variables that are not bound in the input stream.\n const missingVariables = variables\n .filter(variable => !outputMetadata.variables.some(subVariable => variable.value === subVariable.value));\n if (missingVariables.length > 0) {\n throw new Error(`Variables '${missingVariables.map(variable => `?${variable.value}`)}' are used in the projection result, but are not assigned.`);\n }\n\n // Make sure the project variables are the only variables that are present in the bindings.\n let bindingsStream: BindingsStream = deleteVariables.length === 0 ?\n output.bindingsStream :\n output.bindingsStream.transform({\n map(bindings: Bindings) {\n for (const deleteVariable of deleteVariables) {\n bindings = bindings.delete(deleteVariable);\n }\n return bindings;\n },\n autoStart: false,\n });\n\n // Make sure that blank nodes with same labels are not reused over different bindings, as required by SPARQL 1.1.\n // Required for the BNODE() function: https://www.w3.org/TR/sparql11-query/#func-bnode\n // When we have a scoped blank node, make sure the skolemized value is maintained.\n let blankNodeCounter = 0;\n bindingsStream = bindingsStream.transform({\n map(bindings: Bindings) {\n blankNodeCounter++;\n const scopedBlankNodesCache = new Map();\n return bindings.map(term => {\n if (term instanceof BlankNodeBindingsScoped) {\n let scopedBlankNode = scopedBlankNodesCache.get(term.value);\n if (!scopedBlankNode) {\n scopedBlankNode = DF.blankNode(`${term.value}${blankNodeCounter}`);\n scopedBlankNodesCache.set(term.value, scopedBlankNode);\n }\n return scopedBlankNode;\n }\n return term;\n });\n },\n autoStart: false,\n });\n\n return {\n type: 'bindings',\n bindingsStream,\n metadata: async() => ({ ...outputMetadata, variables }),\n };\n }\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActionQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperationTyped, ClosableTransformIterator } from '@comunica/bus-query-operation';\nimport type { MediatorRdfResolveQuadPattern } from '@comunica/bus-rdf-resolve-quad-pattern';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IActorArgs, IActorTest } from '@comunica/core';\nimport type { BindingsStream,\n IQueryOperationResult,\n IActionContext, MetadataBindings,\n MetadataQuads, TermsOrder } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport { termToString } from 'rdf-string';\nimport type { QuadTermName } from 'rdf-terms';\nimport { forEachTermsNested,\n getTermsNested,\n getValueNestedPath,\n reduceTermsNested,\n uniqTerms } from 'rdf-terms';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\nconst DF = new DataFactory();\nconst AF = new Factory();\n\n/**\n * A comunica actor for handling 'quadpattern' query operations.\n */\nexport class ActorQueryOperationQuadpattern extends ActorQueryOperationTyped\n implements IActorQueryOperationQuadpatternArgs {\n public readonly mediatorResolveQuadPattern: MediatorRdfResolveQuadPattern;\n public readonly unionDefaultGraph: boolean;\n\n public constructor(args: IActorQueryOperationQuadpatternArgs) {\n super(args, 'pattern');\n }\n\n /**\n * Check if a term is a variable.\n * @param {RDF.Term} term An RDF term.\n * @return {any} If the term is a variable or blank node.\n */\n public static isTermVariable(term: RDF.Term): term is RDF.Variable {\n return term.termType === 'Variable';\n }\n\n /**\n * Get all variables in the given pattern.\n * No duplicates are returned.\n * @param {RDF.BaseQuad} pattern A quad pattern.\n */\n public static getVariables(pattern: RDF.BaseQuad): RDF.Variable[] {\n return uniqTerms(getTermsNested(pattern)\n .filter(ActorQueryOperationQuadpattern.isTermVariable));\n }\n\n /**\n * A helper function to find a hash with quad elements that have duplicate variables.\n *\n * @param {RDF.Quad} pattern A quad pattern.\n *\n * @return {{[p: string]: string[]}} If no equal variable names are present in the four terms, this returns undefined.\n * Otherwise, this maps quad elements paths (['subject'], ['predicate'], ['object'],\n * ['graph'])\n * to the list of quad elements it shares a variable name with.\n * For quoted triples, paths such as ['subject', 'object'] may occur.\n * If no links for a certain element exist, this element will\n * not be included in the hash.\n * Note 1: Quad elements will never have a link to themselves.\n * So this can never occur: { subject: [[ 'subject']] },\n * instead 'null' would be returned.\n * Note 2: Links only exist in one direction,\n * this means that { subject: [[ 'predicate']], predicate: [[ 'subject' ]] }\n * will not occur, instead only { subject: [[ 'predicate']] }\n * will be returned.\n * Note 3: Keys can also be paths, but they are delimited by '_', such as:\n * { subject_object_subject: [[ 'predicate']] }\n */\n public static getDuplicateElementLinks(pattern: RDF.BaseQuad): Record | undefined {\n // Collect a variable to quad elements mapping.\n const variableElements: Record = {};\n let duplicateVariables = false;\n forEachTermsNested(pattern, (value, keys) => {\n if (value.termType === 'Variable') {\n const val = termToString(value);\n const length = (variableElements[val] || (variableElements[val] = [])).push(keys);\n duplicateVariables = duplicateVariables || length > 1;\n }\n });\n\n if (!duplicateVariables) {\n return;\n }\n\n // Collect quad element to elements with equal variables mapping.\n const duplicateElementLinks: Record = {};\n for (const variable in variableElements) {\n const elements = variableElements[variable];\n const remainingElements = elements.slice(1);\n // Only store the elements that have at least one equal element.\n if (remainingElements.length > 0) {\n duplicateElementLinks[elements[0].join('_')] = remainingElements;\n }\n }\n\n return duplicateElementLinks;\n }\n\n /**\n * Ensure that the given raw metadata object contains all required metadata entries.\n * @param metadataRaw A raw metadata object.\n */\n public static validateMetadata(metadataRaw: Record): MetadataQuads {\n for (const key of [ 'cardinality', 'canContainUndefs' ]) {\n if (!(key in metadataRaw)) {\n throw new Error(`Invalid metadata: missing ${key} in ${JSON.stringify(metadataRaw)}`);\n }\n }\n return metadataRaw;\n }\n\n /**\n * Get the metadata of the given action on a quad stream.\n *\n * @param {AsyncIterator} data The data stream that is guaranteed to emit the metadata property.\n * @param elementVariables Mapping of quad term name to variable name.\n * @param variables Variables to include in the metadata\n * @return {() => Promise<{[p: string]: any}>} A lazy promise behind a callback resolving to a metadata object.\n */\n protected static getMetadata(\n data: AsyncIterator,\n elementVariables: Record,\n variables: RDF.Variable[],\n ): () => Promise {\n return () => new Promise>((resolve, reject) => {\n data.getProperty('metadata', (metadata: Record) => resolve(metadata));\n data.on('error', reject);\n }).then(metadataRaw => {\n if (!('canContainUndefs' in metadataRaw)) {\n metadataRaw.canContainUndefs = false;\n }\n return ActorQueryOperationQuadpattern.quadsMetadataToBindingsMetadata(\n ActorQueryOperationQuadpattern.validateMetadata(metadataRaw),\n elementVariables,\n variables,\n );\n });\n }\n\n protected static quadsMetadataToBindingsMetadata(\n metadataQuads: MetadataQuads,\n elementVariables: Record,\n variables: RDF.Variable[],\n ): MetadataBindings {\n return {\n ...metadataQuads,\n order: metadataQuads.order ?\n ActorQueryOperationQuadpattern.quadsOrderToBindingsOrder(metadataQuads.order, elementVariables) :\n undefined,\n availableOrders: metadataQuads.availableOrders ?\n metadataQuads.availableOrders.map(orderDef => ({\n cost: orderDef.cost,\n terms: ActorQueryOperationQuadpattern.quadsOrderToBindingsOrder(orderDef.terms, elementVariables),\n })) :\n undefined,\n variables,\n };\n }\n\n protected static quadsOrderToBindingsOrder(\n quadsOrder: TermsOrder,\n elementVariables: Record,\n ): TermsOrder {\n const mappedVariables: Record = {};\n return > quadsOrder.map(entry => {\n // Omit entries that do not map to a variable\n const variableName = elementVariables[entry.term];\n if (!variableName) {\n return;\n }\n\n // Omit entries that have been mapped already\n if (mappedVariables[variableName]) {\n return;\n }\n\n mappedVariables[variableName] = true;\n return {\n term: DF.variable(variableName),\n direction: entry.direction,\n };\n }).filter(entry => Boolean(entry));\n }\n\n public async testOperation(operation: Algebra.Pattern, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(pattern: Algebra.Pattern, context: IActionContext):\n Promise {\n // Apply the (optional) pattern-specific context\n if (pattern.context) {\n context = context.merge(pattern.context);\n }\n\n // Modify pattern with default graph when using union default graph semantics\n let patternInner = pattern;\n const unionDefaultGraph = this.unionDefaultGraph || context.get(KeysQueryOperation.unionDefaultGraph);\n if (pattern.graph.termType === 'DefaultGraph' && unionDefaultGraph) {\n patternInner = AF.createPattern(\n pattern.subject,\n pattern.predicate,\n pattern.object,\n DF.variable('__comunica:defaultGraph'),\n );\n }\n\n // Resolve the quad pattern\n const result = await this.mediatorResolveQuadPattern.mediate({ pattern: patternInner, context });\n\n // Collect all variables from the pattern\n const variables = ActorQueryOperationQuadpattern.getVariables(pattern);\n\n // Convenience datastructure for mapping quad elements to variables\n const elementVariables: Record = reduceTermsNested(pattern,\n (acc: Record, term: RDF.Term, keys: QuadTermName[]) => {\n if (term.termType === 'Variable') {\n acc[keys.join('_')] = term.value;\n }\n return acc;\n },\n {});\n\n // Create the metadata callback\n const metadata = ActorQueryOperationQuadpattern.getMetadata(result.data, elementVariables, variables);\n\n // Optionally filter, and construct bindings\n const bindingsStream: BindingsStream = new ClosableTransformIterator(async() => {\n let filteredOutput = result.data;\n\n // Detect duplicate variables in the pattern\n const duplicateElementLinks: Record | undefined = ActorQueryOperationQuadpattern\n .getDuplicateElementLinks(pattern);\n\n // SPARQL query semantics allow graph variables to only match with named graphs, excluding the default graph\n // But this is not the case when using union default graph semantics\n if (pattern.graph.termType === 'Variable' && !unionDefaultGraph) {\n filteredOutput = filteredOutput.filter(quad => quad.graph.termType !== 'DefaultGraph');\n }\n\n // If there are duplicate variables in the search pattern,\n // make sure that we filter out the triples that don't have equal values for those triple elements,\n // as the rdf-resolve-quad-pattern bus ignores variable names.\n if (duplicateElementLinks) {\n filteredOutput = filteredOutput.filter(quad => {\n for (const keyLeft in duplicateElementLinks) {\n const keysLeft: QuadTermName[] = keyLeft.split('_');\n const valueLeft = getValueNestedPath(quad, keysLeft);\n for (const keysRight of duplicateElementLinks[keyLeft]) {\n if (!valueLeft.equals(getValueNestedPath(quad, keysRight))) {\n return false;\n }\n }\n }\n return true;\n });\n }\n\n return filteredOutput.map(quad => BF.bindings(Object.keys(elementVariables).map(key => {\n const keys: QuadTermName[] = key.split('_');\n const variable = elementVariables[key];\n const term = getValueNestedPath(quad, keys);\n return [ DF.variable(variable), term ];\n })));\n }, {\n autoStart: false,\n onClose: () => result.data.destroy(),\n });\n\n return { type: 'bindings', bindingsStream, metadata };\n }\n}\n\nexport interface IActorQueryOperationQuadpatternArgs extends\n IActorArgs {\n /**\n * The quad pattern resolve mediator\n */\n mediatorResolveQuadPattern: MediatorRdfResolveQuadPattern;\n /**\n * If the default graph should also contain the union of all named graphs.\n * This can be overridden by {@link KeysQueryOperation#unionDefaultGraph}.\n * @default {false}\n */\n unionDefaultGraph: boolean;\n}\n","import type { MediatorHashBindings } from '@comunica/bus-hash-bindings';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type {\n Bindings, BindingsStream, IActionContext, IQueryOperationResult, IQueryOperationResultBindings,\n} from '@comunica/types';\nimport { LRUCache } from 'lru-cache';\nimport type { Algebra } from 'sparqlalgebrajs';\n/**\n * A comunica Reduced Hash Query Operation Actor.\n */\nexport class ActorQueryOperationReducedHash extends ActorQueryOperationTypedMediated {\n public readonly mediatorHashBindings: MediatorHashBindings;\n public readonly cacheSize: number;\n\n public constructor(args: IActorQueryOperationReducedHashArgs) {\n super(args, 'reduced');\n }\n\n public async testOperation(operation: Algebra.Reduced, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Reduced, context: IActionContext): Promise {\n const output: IQueryOperationResultBindings = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: operation.input, context }),\n );\n const bindingsStream: BindingsStream = output.bindingsStream.filter(await this.newHashFilter(context));\n return {\n type: 'bindings',\n bindingsStream,\n metadata: output.metadata,\n };\n }\n\n /**\n * Create a new distinct filter function.\n * This will maintain an internal hash datastructure so that every bindings object only returns true once.\n * @param context The action context.\n * @return {(bindings: Bindings) => boolean} A distinct filter for bindings.\n */\n public async newHashFilter(context: IActionContext): Promise<(bindings: Bindings) => boolean> {\n const { hashFunction } = await this.mediatorHashBindings.mediate({ allowHashCollisions: true, context });\n const hashes = new LRUCache({ max: this.cacheSize });\n return (bindings: Bindings) => {\n const hash: string = hashFunction(bindings);\n if (hashes.has(hash)) {\n return false;\n }\n hashes.set(hash, true);\n return true;\n };\n }\n}\n\nexport interface IActorQueryOperationReducedHashArgs extends IActorQueryOperationTypedMediatedArgs {\n mediatorHashBindings: MediatorHashBindings;\n /**\n * @range {integer}\n * @default {100}\n */\n cacheSize: number;\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport { KeysInitQuery, KeysRdfResolveQuadPattern } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { IActionContext, IQueryOperationResult, IQueryOperationResultBindings } from '@comunica/types';\nimport { SingletonIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica Service Query Operation Actor.\n * It unwraps the SERVICE operation and executes it on the given source.\n */\nexport class ActorQueryOperationService extends ActorQueryOperationTypedMediated {\n public readonly forceSparqlEndpoint: boolean;\n\n public constructor(args: IActorQueryOperationServiceArgs) {\n super(args, 'service');\n }\n\n public async testOperation(operation: Algebra.Service, context: IActionContext): Promise {\n if (operation.name.termType !== 'NamedNode') {\n throw new Error(`${this.name} can only query services by IRI, while a ${operation.name.termType} was given.`);\n }\n return true;\n }\n\n public async runOperation(operation: Algebra.Service, context: IActionContext):\n Promise {\n const endpoint: string = operation.name.value;\n\n // Adjust our context to only have the endpoint as source\n let subContext: IActionContext = context\n .delete(KeysRdfResolveQuadPattern.source)\n .delete(KeysRdfResolveQuadPattern.sources)\n .delete(KeysInitQuery.queryString);\n const sourceType = this.forceSparqlEndpoint ? 'sparql' : undefined;\n subContext = subContext.set(KeysRdfResolveQuadPattern.sources, [{ type: sourceType, value: endpoint }]);\n // Query the source\n let output: IQueryOperationResultBindings;\n try {\n output = ActorQueryOperation.getSafeBindings(\n await this.mediatorQueryOperation.mediate({ operation: operation.input, context: subContext }),\n );\n } catch (error: unknown) {\n if (operation.silent) {\n // Emit a single empty binding\n output = {\n bindingsStream: new SingletonIterator(BF.bindings()),\n type: 'bindings',\n metadata: async() => ({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 1 },\n canContainUndefs: false,\n variables: [],\n }),\n };\n } else {\n throw error;\n }\n }\n\n return output;\n }\n}\n\nexport interface IActorQueryOperationServiceArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * If the SERVICE target should be assumed to be a SPARQL endpoint.\n * @default {false}\n */\n forceSparqlEndpoint: boolean;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type {\n IQueryOperationResult,\n IQueryOperationResultBindings,\n IQueryOperationResultQuads,\n IQueryOperationResultStream, IMetadata, IActionContext,\n} from '@comunica/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Slice Query Operation Actor.\n */\nexport class ActorQueryOperationSlice extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'slice');\n }\n\n public async testOperation(operation: Algebra.Slice, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Slice, context: IActionContext):\n Promise {\n // Add limit indicator to the context, which can be used for query planning\n // eslint-disable-next-line unicorn/explicit-length-check\n if (operation.length) {\n context = context.set(KeysQueryOperation.limitIndicator, operation.length);\n }\n\n // Resolve the input\n const output: IQueryOperationResult = await this.mediatorQueryOperation\n .mediate({ operation: operation.input, context });\n\n if (output.type === 'bindings') {\n const bindingsStream = this.sliceStream(output.bindingsStream, operation);\n return {\n type: 'bindings',\n bindingsStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n if (output.type === 'quads') {\n const quadStream = this.sliceStream(output.quadStream, operation);\n return {\n type: 'quads',\n quadStream,\n metadata: this.sliceMetadata(output, operation),\n };\n }\n\n throw new Error(`Invalid query output type: Expected 'bindings' or 'quads' but got '${output.type}'`);\n }\n\n // Slice the stream based on the pattern values\n private sliceStream(stream: AsyncIterator, pattern: Algebra.Slice): AsyncIterator {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n const { start } = pattern;\n const end = hasLength ? pattern.start + pattern.length! - 1 : Number.POSITIVE_INFINITY;\n return stream.transform({ offset: start, limit: Math.max(end - start + 1, 0), autoStart: false });\n }\n\n // If we find metadata, apply slicing on the total number of items\n private sliceMetadata(\n output: IQueryOperationResultStream,\n pattern: Algebra.Slice,\n ): () => Promise> {\n // eslint-disable-next-line unicorn/explicit-length-check\n const hasLength: boolean = Boolean(pattern.length) || pattern.length === 0;\n return () => (<() => Promise>>output.metadata)()\n .then(subMetadata => {\n const cardinality = { ...subMetadata.cardinality };\n if (Number.isFinite(cardinality.value)) {\n cardinality.value = Math.max(0, cardinality.value - pattern.start);\n if (hasLength) {\n cardinality.value = Math.min(cardinality.value, pattern.length!);\n }\n }\n return { ...subMetadata, cardinality };\n });\n }\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { MediatorHttp } from '@comunica/bus-http';\nimport type { IActionQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport { getContextSourceFirst, getDataSourceType, getDataSourceValue } from '@comunica/bus-rdf-resolve-quad-pattern';\nimport {\n getContextDestinationFirst,\n getDataDestinationType,\n getDataDestinationValue,\n} from '@comunica/bus-rdf-update-quads';\nimport { KeysInitQuery } from '@comunica/context-entries';\nimport type { IActorArgs, IActorTest } from '@comunica/core';\nimport type { IMediatorTypeHttpRequests } from '@comunica/mediatortype-httprequests';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { IQueryOperationResult,\n IQueryOperationResultBindings,\n IQueryOperationResultBoolean,\n IQueryOperationResultQuads,\n IMetadata,\n IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { wrap } from 'asynciterator';\nimport { SparqlEndpointFetcher } from 'fetch-sparql-endpoint';\nimport type { IUpdateTypes } from 'fetch-sparql-endpoint';\nimport { DataFactory } from 'rdf-data-factory';\nimport { Factory, toSparql, Util, Algebra } from 'sparqlalgebrajs';\nimport { LazyCardinalityIterator } from './LazyCardinalityIterator';\n\nconst BF = new BindingsFactory();\nconst DF = new DataFactory();\n\n/**\n * A comunica SPARQL Endpoint Query Operation Actor.\n */\nexport class ActorQueryOperationSparqlEndpoint extends ActorQueryOperation {\n protected static readonly FACTORY: Factory = new Factory();\n\n public readonly mediatorHttp: MediatorHttp;\n\n public readonly checkUrlSuffixSparql: boolean;\n public readonly checkUrlSuffixUpdate: boolean;\n\n public readonly endpointFetcher: SparqlEndpointFetcher;\n\n protected lastContext: IActionContext;\n\n public constructor(args: IActorQueryOperationSparqlEndpointArgs) {\n super(args);\n this.endpointFetcher = new SparqlEndpointFetcher({\n method: args.forceHttpGet ? 'GET' : 'POST',\n fetch: (input: Request | string, init?: RequestInit) => this.mediatorHttp.mediate(\n { input, init, context: this.lastContext },\n ),\n prefixVariableQuestionMark: true,\n });\n }\n\n public async test(action: IActionQueryOperation): Promise {\n if (!action.operation) {\n throw new Error('Missing field \\'operation\\' in a query operation action.');\n }\n const source = getContextSourceFirst(action.context);\n const destination = getContextDestinationFirst(action.context);\n const sourceType = source ? getDataSourceType(source) : undefined;\n const destinationType = destination ? getDataDestinationType(destination) : undefined;\n const sourceValue = source ? getDataSourceValue(source) : undefined;\n const destinationValue = destination ? getDataDestinationValue(destination) : undefined;\n if ((source && sourceType === 'sparql' &&\n (!destination || (destinationType === 'sparql' && destinationValue === sourceValue))) ||\n (source && !sourceType && (!destination || (!destinationType && destinationValue === sourceValue)) &&\n typeof sourceValue === 'string' && (\n (this.checkUrlSuffixSparql && sourceValue.endsWith('/sparql')) ||\n (this.checkUrlSuffixUpdate && sourceValue.endsWith('/update'))\n ))) {\n return { httpRequests: 1 };\n }\n throw new Error(`${this.name} requires a single source with a 'sparql' endpoint to be present in the context or URL ending on /sparql or /update.`);\n }\n\n public async run(action: IActionQueryOperation): Promise {\n const source = getContextSourceFirst(action.context);\n if (!source) {\n throw new Error('Illegal state: undefined sparql endpoint source.');\n }\n const endpoint: string = getDataSourceValue(source);\n this.lastContext = action.context;\n\n // Determine the full SPARQL query that needs to be sent to the endpoint\n // Also check the type of the query (SELECT, CONSTRUCT (includes DESCRIBE) or ASK)\n let query: string;\n let type: 'SELECT' | 'CONSTRUCT' | 'ASK' | 'UNKNOWN' | IUpdateTypes | undefined;\n let variables: RDF.Variable[] | undefined;\n try {\n // Use the original query string if available\n query = action.context.get(KeysInitQuery.queryString) ?? toSparql(action.operation, { sparqlStar: true });\n // This will throw an error in case the result is an invalid SPARQL query\n type = this.endpointFetcher.getQueryType(query);\n\n // Also check if this is an update query\n if (type === 'UNKNOWN') {\n type = this.endpointFetcher.getUpdateTypes(query);\n }\n } catch {\n // Ignore errors\n }\n // If the input is an sub-query, wrap this in a SELECT\n if (!type || type === 'UNKNOWN') {\n variables = Util.inScopeVariables(action.operation);\n query = toSparql(ActorQueryOperationSparqlEndpoint.FACTORY.createProject(action.operation, variables));\n type = 'SELECT';\n }\n\n const canContainUndefs = this.canOperationContainUndefs(action.operation);\n\n // Execute the query against the endpoint depending on the type\n switch (type) {\n case 'SELECT':\n if (!variables) {\n variables = Util.inScopeVariables(action.operation);\n }\n return this.executeQuery(endpoint, query!, false, variables, canContainUndefs);\n case 'CONSTRUCT':\n return this.executeQuery(endpoint, query!, true, undefined, false);\n case 'ASK':\n return {\n type: 'boolean',\n execute: () => this.endpointFetcher.fetchAsk(endpoint, query!),\n };\n default:\n return {\n type: 'void',\n execute: () => this.endpointFetcher.fetchUpdate(endpoint, query!),\n };\n }\n }\n\n /**\n * Execute the given SELECT or CONSTRUCT query against the given endpoint.\n * @param endpoint A SPARQL endpoint URL.\n * @param query A SELECT or CONSTRUCT query.\n * @param quads If the query returns quads, i.e., if it is a CONSTRUCT query.\n * @param variables Variables for SELECT queries.\n * @param canContainUndefs If the operation can contain undefined binding values.\n */\n public executeQuery(\n endpoint: string,\n query: string,\n quads: boolean,\n variables: RDF.Variable[] | undefined,\n canContainUndefs: boolean,\n ): IQueryOperationResult {\n const inputStream: Promise = quads ?\n this.endpointFetcher.fetchTriples(endpoint, query) :\n this.endpointFetcher.fetchBindings(endpoint, query);\n\n const stream = wrap(inputStream, { autoStart: false }).map(rawData => quads ?\n rawData :\n BF.bindings(Object.entries(rawData)\n .map(([ key, value ]: [string, RDF.Term]) => [ DF.variable(key.slice(1)), value ])));\n\n const resultStream = new LazyCardinalityIterator(stream);\n\n const metadata: () => Promise> = ActorQueryOperationSparqlEndpoint.cachifyMetadata(\n async() => ({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: await resultStream.getCardinality() },\n canContainUndefs,\n variables,\n }),\n );\n\n if (quads) {\n return {\n type: 'quads',\n quadStream: resultStream,\n metadata,\n };\n }\n return {\n type: 'bindings',\n bindingsStream: > resultStream,\n metadata,\n };\n }\n\n /**\n * Inspect the query to determine if the query could produce undefined bindings values.\n * @param operation A query operation.\n */\n public canOperationContainUndefs(operation: Algebra.Operation): boolean {\n let canContainUndefs = false;\n\n Util.recurseOperation(operation, {\n [Algebra.types.LEFT_JOIN]() {\n canContainUndefs = true;\n return false;\n },\n [Algebra.types.VALUES](op) {\n for (const bindings of op.bindings) {\n const bindingsKeys = Object.keys(bindings);\n if (!op.variables.every(variable => bindingsKeys.includes(`?${variable.value}`))) {\n canContainUndefs = true;\n }\n }\n return false;\n },\n });\n\n return canContainUndefs;\n }\n}\n\nexport interface IActorQueryOperationSparqlEndpointArgs\n extends IActorArgs {\n /**\n * The HTTP mediator\n */\n mediatorHttp: MediatorHttp;\n /**\n * If URLs ending with '/sparql' should also be considered SPARQL endpoints.\n * @default {true}\n */\n checkUrlSuffixSparql: boolean;\n /**\n * If URLs ending with '/update' should also be considered SPARQL endpoints.\n * @default {true}\n */\n checkUrlSuffixUpdate: boolean;\n /**\n * If queries should be sent via HTTP GET instead of POST.\n * @default {false}\n */\n forceHttpGet: boolean;\n}\n","import { AsyncIterator, LinkedList, DESTINATION } from 'asynciterator';\n\n/**\n An iterator that maintains an internal buffer of items.\n This class serves as a base class for other iterators\n with a typically complex item generation process.\n @extends module:asynciterator.AsyncIterator\n*/\nexport class LazyCardinalityIterator extends AsyncIterator {\n private _buffer?: LinkedList;\n private _cardinality?: Promise;\n private readonly _error: any;\n private _count = 0;\n private _buffering = true;\n\n public constructor(private readonly _source: AsyncIterator) {\n super();\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n (> _source)[DESTINATION] = this;\n _source.on('readable', destinationSetReadable);\n _source.on('end', destinationSetReadable);\n _source.on('error', destinationEmitError);\n this.readable = _source.readable;\n }\n\n public read(): T | null {\n if (this._buffer) {\n if (!this._buffer.empty) {\n return this._buffer.shift()!;\n }\n if (!this._buffering) {\n this.close();\n }\n\n this.readable = false;\n return null;\n }\n\n let item: T | null = null;\n // eslint-disable-next-line no-cond-assign\n if (this._source.readable && (item = this._source.read()) !== null) {\n this._count += 1;\n } else {\n this.readable = false;\n if (this._source.done) {\n this.close();\n }\n }\n\n return item;\n }\n\n public getCardinality(): Promise {\n if (this._cardinality) {\n return this._cardinality;\n }\n\n if (this._error) {\n return Promise.reject(this._error);\n }\n\n if (this._source.done) {\n this.close();\n }\n\n if (this.done) {\n this._cardinality = Promise.resolve(this._count);\n } else {\n this._buffer = new LinkedList();\n this._cardinality = new Promise((resolve, reject) => {\n this._source.removeListener('readable', destinationSetReadable);\n this._source.removeListener('end', destinationSetReadable);\n\n const clean = (): void => {\n this._source.removeListener('data', onData);\n this._source.removeListener('end', onEnd);\n this._source.removeListener('error', onError);\n };\n\n const onData = (data: T): void => {\n this._buffer!.push(data);\n this._count += 1;\n this.readable = true;\n };\n const onEnd = (): void => {\n this._buffering = false;\n clean();\n resolve(this._count);\n };\n const onError = (err: any): void => {\n this._buffering = false;\n clean();\n reject(err);\n };\n\n this._source.on('data', onData);\n this._source.on('end', onEnd);\n this._source.on('error', onError);\n });\n }\n\n return this._cardinality;\n }\n\n public close(): void {\n this._source.removeListener('readable', destinationSetReadable);\n this._source.removeListener('end', destinationSetReadable);\n this._source.removeListener('error', destinationEmitError);\n delete ( this._source)[DESTINATION];\n this._source.destroy();\n super.close();\n }\n}\n\ntype InternalSource = AsyncIterator & { [DESTINATION]: AsyncIterator };\n\nfunction destinationSetReadable(this: InternalSource): void {\n this[DESTINATION]!.readable = true;\n}\nfunction destinationEmitError(this: InternalSource, error: Error): void {\n ( this[DESTINATION]!)._error = error;\n this[DESTINATION]!.emit('error', error);\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { BindingsStream,\n IQueryOperationResultBindings,\n IActionContext,\n IQueryOperationResult,\n MetadataBindings, MetadataQuads } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { UnionIterator } from 'asynciterator';\nimport { uniqTerms } from 'rdf-terms';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Union Query Operation Actor.\n */\nexport class ActorQueryOperationUnion extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'union');\n }\n\n /**\n * Takes the union of the given double array variables.\n * Uniqueness is guaranteed.\n * @param {string[][]} variables Double array of variables to take the union of.\n * @return {string[]} The union of the given variables.\n */\n public static unionVariables(variables: RDF.Variable[][]): RDF.Variable[] {\n return uniqTerms(variables.flat());\n }\n\n /**\n * Takes the union of the given metadata array.\n * It will ensure that the cardinality metadata value is properly calculated.\n * @param {{[p: string]: any}[]} metadatas Array of metadata.\n * @param bindings If the union of the variables field should also be taken.\n * @return {{[p: string]: any}} Union of the metadata.\n */\n public static unionMetadata<\n Bindings extends boolean,\n M extends (Bindings extends true ? MetadataBindings : MetadataQuads)\n >(metadatas: M[], bindings: Bindings): M {\n // Union cardinality\n const cardinality: RDF.QueryResultCardinality = { type: 'exact', value: 0 };\n for (const metadata of metadatas) {\n if ((metadata.cardinality.value && Number.isFinite(metadata.cardinality.value)) ||\n metadata.cardinality.value === 0) {\n if (metadata.cardinality.type === 'estimate') {\n cardinality.type = 'estimate';\n }\n cardinality.value += metadata.cardinality.value;\n } else {\n cardinality.type = 'estimate';\n cardinality.value = Number.POSITIVE_INFINITY;\n break;\n }\n }\n\n const metadataBase: MetadataQuads = {\n state: new MetadataValidationState(),\n cardinality,\n canContainUndefs: metadatas.some(metadata => metadata.canContainUndefs),\n };\n\n // Propagate metadata invalidations\n const invalidateListener = (): void => metadataBase.state.invalidate();\n for (const metadata of metadatas) {\n metadata.state.addInvalidateListener(invalidateListener);\n }\n\n // Union variables\n if (bindings) {\n metadataBase.variables = ActorQueryOperationUnion.unionVariables(metadatas.map(metadata => metadata.variables));\n return metadataBase;\n }\n return metadataBase;\n }\n\n public async testOperation(operation: Algebra.Union, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Union, context: IActionContext):\n Promise {\n const outputs: IQueryOperationResultBindings[] = (await Promise.all(operation.input\n .map(subOperation => this.mediatorQueryOperation.mediate({ operation: subOperation, context }))))\n .map(ActorQueryOperation.getSafeBindings);\n\n const bindingsStream: BindingsStream = new UnionIterator(outputs.map(\n (output: IQueryOperationResultBindings) => output.bindingsStream,\n ), { autoStart: false });\n\n const metadata: () => Promise = () => Promise.all(outputs.map(output => output.metadata()))\n .then(subMeta => ActorQueryOperationUnion.unionMetadata(subMeta, true));\n return { type: 'bindings', bindingsStream, metadata };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor\n * that handles SPARQL add operations.\n */\nexport class ActorQueryOperationAddRewrite extends ActorQueryOperationTypedMediated {\n private readonly factory: Factory;\n\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'add');\n this.factory = new Factory();\n }\n\n public async testOperation(operation: Algebra.Add, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public runOperation(operationOriginal: Algebra.Add, context: IActionContext): Promise {\n // CONSTRUCT all quads from the source, and INSERT them into the destination\n const destination = operationOriginal.destination === 'DEFAULT' ? DF.defaultGraph() : operationOriginal.destination;\n const source = operationOriginal.source === 'DEFAULT' ? DF.defaultGraph() : operationOriginal.source;\n\n const operation = this.factory.createDeleteInsert(undefined, [\n this.factory.createPattern(DF.variable('s'), DF.variable('p'), DF.variable('o'), destination),\n ], this.factory.createPattern(DF.variable('s'), DF.variable('p'), DF.variable('o'), source));\n\n return this.mediatorQueryOperation.mediate({ operation, context });\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type {\n MediatorRdfUpdateQuads,\n} from '@comunica/bus-rdf-update-quads';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor\n * that handles SPARQL clear operations.\n */\nexport class ActorQueryOperationClear extends ActorQueryOperationTypedMediated {\n public readonly mediatorUpdateQuads: MediatorRdfUpdateQuads;\n\n public constructor(args: IActorQueryOperationClearArgs) {\n super(args, 'clear');\n }\n\n public async testOperation(operation: Algebra.Clear, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operation: Algebra.Clear, context: IActionContext):\n Promise {\n // Delegate to update-quads bus\n let graphs: RDF.DefaultGraph | 'NAMED' | 'ALL' | RDF.NamedNode[];\n if (operation.source === 'DEFAULT') {\n graphs = DF.defaultGraph();\n } else if (typeof operation.source === 'string') {\n graphs = operation.source;\n } else {\n graphs = [ operation.source ];\n }\n const { execute } = await this.mediatorUpdateQuads.mediate({\n deleteGraphs: {\n graphs,\n requireExistence: !operation.silent,\n dropGraphs: false,\n },\n context,\n });\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n\nexport interface IActorQueryOperationClearArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The RDF Update Quads mediator\n */\n mediatorUpdateQuads: MediatorRdfUpdateQuads;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation,\n ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Update CompositeUpdate Query Operation Actor.\n */\nexport class ActorQueryOperationUpdateCompositeUpdate\n extends ActorQueryOperationTypedMediated {\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'compositeupdate');\n }\n\n public async testOperation(\n operation: Algebra.CompositeUpdate,\n context: IActionContext,\n ): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operationOriginal: Algebra.CompositeUpdate, context: IActionContext):\n Promise {\n const execute = (): Promise => (async(): Promise => {\n // Execute update operations in sequence\n for (const operation of operationOriginal.updates) {\n const subResult = ActorQueryOperation\n .getSafeVoid(await this.mediatorQueryOperation.mediate({ operation, context }));\n await subResult.execute();\n }\n })();\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor that\n * handles SPARQL copy operations.\n */\nexport class ActorQueryOperationCopyRewrite extends ActorQueryOperationTypedMediated {\n private readonly factory: Factory;\n\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'copy');\n this.factory = new Factory();\n }\n\n public async testOperation(operation: Algebra.Copy, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public runOperation(operationOriginal: Algebra.Copy, context: IActionContext): Promise {\n // No-op if source === destination\n if ((typeof operationOriginal.destination === 'string' && typeof operationOriginal.source === 'string' &&\n operationOriginal.destination === operationOriginal.source) ||\n (typeof operationOriginal.destination !== 'string' && typeof operationOriginal.source !== 'string' &&\n operationOriginal.destination.equals(operationOriginal.source))) {\n return Promise.resolve({\n type: 'void',\n execute: () => Promise.resolve(),\n });\n }\n\n // COPY is equivalent to drop destination, and add\n const operation = this.factory.createCompositeUpdate([\n this.factory.createDrop(operationOriginal.destination, true),\n this.factory.createAdd(operationOriginal.source, operationOriginal.destination, operationOriginal.silent),\n ]);\n return this.mediatorQueryOperation.mediate({ operation, context });\n }\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { MediatorRdfUpdateQuads } from '@comunica/bus-rdf-update-quads';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor that\n * handles SPARQL create operations.\n */\nexport class ActorQueryOperationCreate extends ActorQueryOperationTypedMediated {\n public readonly mediatorUpdateQuads: MediatorRdfUpdateQuads;\n\n public constructor(args: IActorQueryOperationCreateArgs) {\n super(args, 'create');\n }\n\n public async testOperation(operation: Algebra.Create, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operation: Algebra.Create, context: IActionContext):\n Promise {\n // Delegate to update-quads bus\n const { execute } = await this.mediatorUpdateQuads.mediate({\n createGraphs: {\n graphs: [ operation.source ],\n requireNonExistence: !operation.silent,\n },\n context,\n });\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n\nexport interface IActorQueryOperationCreateArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The RDF Update Quads mediator\n */\n mediatorUpdateQuads: MediatorRdfUpdateQuads;\n}\n","import { BindingsToQuadsIterator } from '@comunica/actor-query-operation-construct';\nimport { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport {\n ActorQueryOperation, ActorQueryOperationTypedMediated,\n} from '@comunica/bus-query-operation';\nimport type { MediatorRdfUpdateQuads } from '@comunica/bus-rdf-update-quads';\nimport type { IActorTest } from '@comunica/core';\nimport type { IQueryOperationResult, BindingsStream, IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport type { AsyncIterator } from 'asynciterator';\nimport { ArrayIterator } from 'asynciterator';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\n/**\n * A comunica Update DeleteInsert Query Operation Actor.\n */\nexport class ActorQueryOperationUpdateDeleteInsert extends ActorQueryOperationTypedMediated {\n public readonly mediatorUpdateQuads: MediatorRdfUpdateQuads;\n\n protected blankNodeCounter = 0;\n\n public constructor(args: IActorQueryOperationUpdateDeleteInsertArgs) {\n super(args, 'deleteinsert');\n }\n\n public async testOperation(\n operation: Algebra.DeleteInsert,\n context: IActionContext,\n ): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operation: Algebra.DeleteInsert, context: IActionContext):\n Promise {\n // Evaluate the where clause\n const whereBindings: BindingsStream = operation.where ?\n ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation\n .mediate({ operation: operation.where, context })).bindingsStream :\n new ArrayIterator([ BF.bindings() ], { autoStart: false });\n\n // Construct triples using the result based on the pattern.\n let quadStreamInsert: AsyncIterator | undefined;\n let quadStreamDelete: AsyncIterator | undefined;\n if (operation.insert) {\n // Localize blank nodes in pattern, to avoid clashes across different INSERT/DELETE calls\n quadStreamInsert = new BindingsToQuadsIterator(\n operation.insert.map(BindingsToQuadsIterator.localizeQuad.bind(null, this.blankNodeCounter)),\n whereBindings.clone(),\n );\n this.blankNodeCounter++;\n }\n if (operation.delete) {\n // Localize blank nodes in pattern, to avoid clashes across different INSERT/DELETE calls\n quadStreamDelete = new BindingsToQuadsIterator(\n operation.delete.map(BindingsToQuadsIterator.localizeQuad.bind(null, this.blankNodeCounter)),\n whereBindings.clone(),\n );\n this.blankNodeCounter++;\n }\n\n // Evaluate the required modifications\n const { execute } = await this.mediatorUpdateQuads.mediate({\n quadStreamInsert,\n quadStreamDelete,\n context,\n });\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n\nexport interface IActorQueryOperationUpdateDeleteInsertArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The RDF Update Quads mediator\n */\n mediatorUpdateQuads: MediatorRdfUpdateQuads;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { MediatorRdfUpdateQuads } from '@comunica/bus-rdf-update-quads';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor\n * that handles SPARQL drop operations.\n */\nexport class ActorQueryOperationDrop extends ActorQueryOperationTypedMediated {\n public readonly mediatorUpdateQuads: MediatorRdfUpdateQuads;\n\n public constructor(args: IActorQueryOperationDropArgs) {\n super(args, 'drop');\n }\n\n public async testOperation(operation: Algebra.Drop, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operation: Algebra.Drop, context: IActionContext):\n Promise {\n // Delegate to update-quads bus\n let graphs: RDF.DefaultGraph | 'NAMED' | 'ALL' | RDF.NamedNode[];\n if (operation.source === 'DEFAULT') {\n graphs = DF.defaultGraph();\n } else if (typeof operation.source === 'string') {\n graphs = operation.source;\n } else {\n graphs = [ operation.source ];\n }\n const { execute } = await this.mediatorUpdateQuads.mediate({\n deleteGraphs: {\n graphs,\n requireExistence: !operation.silent,\n dropGraphs: true,\n },\n context,\n });\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n\nexport interface IActorQueryOperationDropArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The RDF Update Quads mediator\n */\n mediatorUpdateQuads: MediatorRdfUpdateQuads;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { MediatorRdfUpdateQuads } from '@comunica/bus-rdf-update-quads';\nimport { KeysInitQuery, KeysRdfResolveQuadPattern } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\nconst DF = new DataFactory();\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor\n * that handles SPARQL load operations.\n */\nexport class ActorQueryOperationLoad extends ActorQueryOperationTypedMediated {\n public readonly mediatorUpdateQuads: MediatorRdfUpdateQuads;\n\n private readonly factory: Factory;\n private readonly constructOperation: Algebra.Construct;\n\n public constructor(args: IActorQueryOperationLoadArgs) {\n super(args, 'load');\n this.factory = new Factory();\n this.constructOperation = this.factory.createConstruct(\n this.factory.createPattern(DF.variable('s'), DF.variable('p'), DF.variable('o')),\n [ this.factory.createPattern(DF.variable('s'), DF.variable('p'), DF.variable('o')) ],\n );\n }\n\n public async testOperation(operation: Algebra.Load, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public async runOperation(operation: Algebra.Load, context: IActionContext):\n Promise {\n // Create CONSTRUCT query on the given source\n let subContext = context.set(KeysRdfResolveQuadPattern.sources, [ operation.source.value ]);\n if (operation.silent) {\n subContext = subContext.set(KeysInitQuery.lenient, true);\n }\n const output = ActorQueryOperationLoad.getSafeQuads(await this.mediatorQueryOperation.mediate({\n operation: this.constructOperation,\n context: subContext,\n }));\n\n // Determine quad stream to insert\n let quadStream = output.quadStream;\n if (operation.destination) {\n quadStream = quadStream.map(quad => DF.quad(quad.subject, quad.predicate, quad.object, operation.destination));\n }\n\n // Insert quad stream\n const { execute } = await this.mediatorUpdateQuads.mediate({\n quadStreamInsert: quadStream,\n context,\n });\n\n return {\n type: 'void',\n execute,\n };\n }\n}\n\nexport interface IActorQueryOperationLoadArgs extends IActorQueryOperationTypedMediatedArgs {\n /**\n * The RDF Update Quads mediator\n */\n mediatorUpdateQuads: MediatorRdfUpdateQuads;\n}\n","import type { IActorQueryOperationTypedMediatedArgs } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, ActorQueryOperationTypedMediated } from '@comunica/bus-query-operation';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResult } from '@comunica/types';\nimport type { Algebra } from 'sparqlalgebrajs';\nimport { Factory } from 'sparqlalgebrajs';\n\n/**\n * A [Query Operation](https://github.com/comunica/comunica/tree/master/packages/bus-query-operation) actor that\n * handles SPARQL move operations.\n */\nexport class ActorQueryOperationMoveRewrite extends ActorQueryOperationTypedMediated {\n private readonly factory: Factory;\n\n public constructor(args: IActorQueryOperationTypedMediatedArgs) {\n super(args, 'move');\n this.factory = new Factory();\n }\n\n public async testOperation(operation: Algebra.Move, context: IActionContext): Promise {\n ActorQueryOperation.throwOnReadOnly(context);\n return true;\n }\n\n public runOperation(operationOriginal: Algebra.Move, context: IActionContext): Promise {\n // No-op if source === destination\n if ((typeof operationOriginal.destination === 'string' && typeof operationOriginal.source === 'string' &&\n operationOriginal.destination === operationOriginal.source) ||\n (typeof operationOriginal.destination !== 'string' && typeof operationOriginal.source !== 'string' &&\n operationOriginal.destination.equals(operationOriginal.source))) {\n return Promise.resolve({\n type: 'void',\n execute: () => Promise.resolve(),\n });\n }\n\n // MOVE is equivalent to drop destination, add, and drop source\n const updates = [\n this.factory.createDrop(operationOriginal.destination, true),\n this.factory.createAdd(operationOriginal.source, operationOriginal.destination, operationOriginal.silent),\n this.factory.createDrop(operationOriginal.source),\n ];\n const operation = this.factory.createCompositeUpdate(updates);\n return this.mediatorQueryOperation.mediate({ operation, context });\n }\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActionQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperationTyped } from '@comunica/bus-query-operation';\nimport type { IActorArgs, IActorTest } from '@comunica/core';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { IQueryOperationResult,\n BindingsStream,\n Bindings,\n IActionContext,\n MetadataBindings } from '@comunica/types';\nimport { ArrayIterator } from 'asynciterator';\nimport { DataFactory } from 'rdf-data-factory';\nimport type { Algebra } from 'sparqlalgebrajs';\n\nconst BF = new BindingsFactory();\nconst DF = new DataFactory();\n\n/**\n * A comunica Values Query Operation Actor.\n */\nexport class ActorQueryOperationValues extends ActorQueryOperationTyped {\n public constructor(args: IActorArgs) {\n super(args, 'values');\n }\n\n public async testOperation(operation: Algebra.Values, context: IActionContext): Promise {\n return true;\n }\n\n public async runOperation(operation: Algebra.Values, context: IActionContext):\n Promise {\n const bindingsStream: BindingsStream = new ArrayIterator(operation.bindings\n .map(x => BF.bindings(Object.entries(x)\n .map(([ key, value ]) => [ DF.variable(key.slice(1)), value ]))));\n const variables = operation.variables;\n const metadata = (): Promise => Promise.resolve({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: operation.bindings.length },\n canContainUndefs: operation.bindings.some(bindings => variables.some(variable => !(`?${variable.value}` in bindings))),\n variables,\n });\n return { type: 'bindings', bindingsStream, metadata };\n }\n}\n","import type { IActionQueryParse, IActorQueryParseArgs, IActorQueryParseOutput } from '@comunica/bus-query-parse';\nimport { ActorQueryParse } from '@comunica/bus-query-parse';\nimport { KeysInitQuery } from '@comunica/context-entries';\nimport type { IActorTest } from '@comunica/core';\nimport { Converter } from 'graphql-to-sparql';\n\n/**\n * A comunica GraphQL SPARQL Parse Actor.\n */\nexport class ActorQueryParseGraphql extends ActorQueryParse {\n private readonly graphqlToSparql: Converter;\n\n public constructor(args: IActorQueryParseArgs) {\n super(args);\n this.graphqlToSparql = new Converter({ requireContext: true });\n }\n\n public async test(action: IActionQueryParse): Promise {\n if (action.queryFormat?.language !== 'graphql') {\n throw new Error('This actor can only parse GraphQL queries');\n }\n return true;\n }\n\n public async run(action: IActionQueryParse): Promise {\n const context: any = action.context.get(KeysInitQuery.jsonLdContext) || {};\n const options = {\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n singularizeVariables: action.context.get(KeysInitQuery.graphqlSingularizeVariables),\n };\n return { operation: await this.graphqlToSparql.graphqlToSparqlAlgebra(action.query, context, options) };\n }\n}\n","import type { IActionQueryParse, IActorQueryParseArgs, IActorQueryParseOutput } from '@comunica/bus-query-parse';\nimport { ActorQueryParse } from '@comunica/bus-query-parse';\nimport type { IActorTest } from '@comunica/core';\nimport { translate } from 'sparqlalgebrajs';\nimport { Parser as SparqlParser } from 'sparqljs';\n\n/**\n * A comunica Algebra SPARQL Parse Actor.\n */\nexport class ActorQueryParseSparql extends ActorQueryParse {\n public readonly prefixes: Record;\n\n public constructor(args: IActorQueryParseSparqlArgs) {\n super(args);\n this.prefixes = Object.freeze(this.prefixes);\n }\n\n public async test(action: IActionQueryParse): Promise {\n if (action.queryFormat && action.queryFormat.language !== 'sparql') {\n throw new Error('This actor can only parse SPARQL queries');\n }\n return true;\n }\n\n public async run(action: IActionQueryParse): Promise {\n const parser = new SparqlParser({ prefixes: this.prefixes, baseIRI: action.baseIRI, sparqlStar: true });\n const parsedSyntax = parser.parse(action.query);\n const baseIRI = parsedSyntax.type === 'query' ? parsedSyntax.base : undefined;\n return {\n baseIRI,\n operation: translate(parsedSyntax,\n { quads: true, prefixes: this.prefixes, blankToVariable: true, baseIRI: action.baseIRI }),\n };\n }\n}\n\nexport interface IActorQueryParseSparqlArgs extends IActorQueryParseArgs {\n /**\n * Default prefixes to use\n * @range {json}\n * @default {{\n * \"rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\n * \"rdfs\": \"http://www.w3.org/2000/01/rdf-schema#\",\n * \"owl\": \"http://www.w3.org/2002/07/owl#\",\n * \"xsd\": \"http://www.w3.org/2001/XMLSchema#\",\n * \"dc\": \"http://purl.org/dc/terms/\",\n * \"dcterms\": \"http://purl.org/dc/terms/\",\n * \"dc11\": \"http://purl.org/dc/elements/1.1/\",\n * \"foaf\": \"http://xmlns.com/foaf/0.1/\",\n * \"geo\": \"http://www.w3.org/2003/01/geo/wgs84_pos#\",\n * \"dbpedia\": \"http://dbpedia.org/resource/\",\n * \"dbpedia-owl\": \"http://dbpedia.org/ontology/\",\n * \"dbpprop\": \"http://dbpedia.org/property/\",\n * \"schema\": \"http://schema.org/\",\n * \"skos\": \"http://www.w3.org/2008/05/skos#\"\n * }}\n */\n prefixes?: Record;\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type {\n IActionContext, IQueryOperationResultBindings, IQueryOperationResultBoolean,\n IQueryOperationResultQuads,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport * as RdfString from 'rdf-string';\nimport { Readable } from 'readable-stream';\n\n/**\n * A comunica JSON Query Result Serialize Actor.\n */\nexport class ActorQueryResultSerializeJson extends ActorQueryResultSerializeFixedMediaTypes {\n /**\n * @param args -\n * \\ @defaultNested {{\n * \"application/json\": 1.0\n * }} mediaTypePriorities\n * \\ @defaultNested {{\n * \"application/json\": \"https://comunica.linkeddatafragments.org/#results_JSON\"\n * }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'quads', 'boolean' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings or quad streams.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n let empty = true;\n if (action.type === 'bindings') {\n const resultStream = ( action).bindingsStream;\n data.push('[');\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', (element: RDF.Bindings) => {\n data.push(empty ? '\\n' : ',\\n');\n data.push(JSON.stringify(Object.fromEntries([ ...element ]\n .map(([ key, value ]) => [ key.value, RdfString.termToString(value) ]))));\n empty = false;\n });\n resultStream.on('end', () => {\n data.push(empty ? ']\\n' : '\\n]\\n');\n data.push(null);\n });\n } else if (action.type === 'quads') {\n const resultStream = ( action).quadStream;\n data.push('[');\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', element => {\n data.push(empty ? '\\n' : ',\\n');\n data.push(JSON.stringify(RdfString.quadToStringQuad(element)));\n empty = false;\n });\n resultStream.on('end', () => {\n data.push(empty ? ']\\n' : '\\n]\\n');\n data.push(null);\n });\n } else {\n try {\n data.push(`${JSON.stringify(await ( action).execute())}\\n`);\n data.push(null);\n } catch (error: unknown) {\n setTimeout(() => data.emit('error', error));\n }\n }\n\n return { data };\n }\n}\n","import type { IActorQueryResultSerializeArgs, IActorQueryResultSerializeOutput,\n IActionSparqlSerialize } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerialize } from '@comunica/bus-query-result-serialize';\nimport type { MediatorRdfSerializeHandle, MediatorRdfSerializeMediaTypeFormats,\n MediatorRdfSerializeMediaTypes } from '@comunica/bus-rdf-serialize';\nimport type { IActorTest } from '@comunica/core';\nimport type { IActionContext, IQueryOperationResultQuads } from '@comunica/types';\n\n/**\n * A comunica RDF Query Result Serialize Actor.\n *\n * It serializes quad streams (for example resulting from a CONSTRUCT query)\n * to an RDF syntax.\n */\nexport class ActorQueryResultSerializeRdf extends ActorQueryResultSerialize\n implements IActorQueryResultSerializeRdfArgs {\n public readonly mediatorRdfSerialize: MediatorRdfSerializeHandle;\n public readonly mediatorMediaTypeCombiner: MediatorRdfSerializeMediaTypes;\n public readonly mediatorMediaTypeFormatCombiner: MediatorRdfSerializeMediaTypeFormats;\n\n public constructor(args: IActorQueryResultSerializeRdfArgs) {\n super(args);\n }\n\n public async testHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n // Check if we are provided with a quad stream\n if (action.type !== 'quads') {\n throw new Error(`Actor ${this.name} can only handle quad streams`);\n }\n\n // Check if the given media type can be handled\n const { mediaTypes } = await this.mediatorMediaTypeCombiner.mediate(\n { context, mediaTypes: true },\n );\n if (!(mediaType in mediaTypes)) {\n throw new Error(`Actor ${this.name} can not handle media type ${mediaType}. All available types: ${\n Object.keys(mediaTypes)}`);\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n // Delegate handling to the mediator\n return (await this.mediatorRdfSerialize.mediate({\n context,\n handle: {\n context,\n quadStream: ( action).quadStream,\n },\n handleMediaType: mediaType,\n })).handle;\n }\n\n public async testMediaType(context: IActionContext): Promise {\n return true;\n }\n\n public async getMediaTypes(context: IActionContext): Promise> {\n return (await this.mediatorMediaTypeCombiner.mediate({ context, mediaTypes: true })).mediaTypes;\n }\n\n public async testMediaTypeFormats(context: IActionContext): Promise {\n return true;\n }\n\n public async getMediaTypeFormats(context: IActionContext): Promise> {\n return (await this.mediatorMediaTypeFormatCombiner.mediate({ context, mediaTypeFormats: true })).mediaTypeFormats;\n }\n}\n\nexport interface IActorQueryResultSerializeRdfArgs extends IActorQueryResultSerializeArgs {\n mediatorRdfSerialize: MediatorRdfSerializeHandle;\n mediatorMediaTypeCombiner: MediatorRdfSerializeMediaTypes;\n mediatorMediaTypeFormatCombiner: MediatorRdfSerializeMediaTypeFormats;\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type { IActionContext, IQueryOperationResultBindings, IQueryOperationResultBoolean,\n IQueryOperationResultQuads, IQueryOperationResultVoid } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { termToString } from 'rdf-string';\nimport { Readable } from 'readable-stream';\n\n/**\n * A comunica Simple Sparql Serialize Actor.\n */\nexport class ActorQueryResultSerializeSimple extends ActorQueryResultSerializeFixedMediaTypes {\n /**\n * @param args -\n * \\ @defaultNested {{ \"simple\": 0.9 }} mediaTypePriorities\n * \\ @defaultNested {{ \"simple\": \"https://comunica.linkeddatafragments.org/#results_simple\" }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'quads', 'boolean', 'void' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings streams, quad streams, booleans, or updates.');\n }\n return true;\n }\n\n protected static termToString(term: RDF.Term): string {\n return term.termType === 'Quad' ? termToString(term) : term.value;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n let resultStream: NodeJS.EventEmitter;\n if (action.type === 'bindings') {\n resultStream = ( action).bindingsStream;\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', (bindings: RDF.Bindings) => data.push(`${[ ...bindings ].map(\n ([ key, value ]) => `?${key.value}: ${ActorQueryResultSerializeSimple.termToString(value)}`,\n ).join('\\n')}\\n\\n`));\n resultStream.on('end', () => data.push(null));\n } else if (action.type === 'quads') {\n resultStream = ( action).quadStream;\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', quad => data.push(\n `subject: ${ActorQueryResultSerializeSimple.termToString(quad.subject)}\\n` +\n `predicate: ${ActorQueryResultSerializeSimple.termToString(quad.predicate)}\\n` +\n `object: ${ActorQueryResultSerializeSimple.termToString(quad.object)}\\n` +\n `graph: ${ActorQueryResultSerializeSimple.termToString(quad.graph)}\\n\\n`,\n ));\n resultStream.on('end', () => data.push(null));\n } else if (action.type === 'boolean') {\n try {\n data.push(`${JSON.stringify(await ( action).execute())}\\n`);\n data.push(null);\n } catch (error: unknown) {\n setTimeout(() => data.emit('error', error));\n }\n } else {\n ( action).execute()\n .then(() => {\n data.push('ok\\n');\n data.push(null);\n })\n .catch(error => setTimeout(() => data.emit('error', error)));\n }\n\n return { data };\n }\n}\n","import type { IActionSparqlSerialize, IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport {\n ActorQueryResultSerializeFixedMediaTypes,\n} from '@comunica/bus-query-result-serialize';\nimport type { Bindings, IActionContext, IQueryOperationResultBindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\n\n/**\n * A comunica SPARQL CSV Query Result Serialize Actor.\n */\nexport class ActorQueryResultSerializeSparqlCsv extends ActorQueryResultSerializeFixedMediaTypes {\n /**\n * @param args -\n * \\ @defaultNested {{\n * \"text/csv\": 0.75\n * }} mediaTypePriorities\n * \\ @defaultNested {{\n * \"text/csv\": \"http://www.w3.org/ns/formats/SPARQL_Results_CSV\"\n * }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n /**\n * Converts an RDF term to its CSV representation.\n * @param {RDF.Term} value An RDF term.\n * @return {string} A string representation of the given value.\n */\n public static bindingToCsvBindings(value?: RDF.Term): string {\n if (!value) {\n return '';\n }\n\n let stringValue = value.value;\n\n if (value.termType === 'Literal') {\n // This is a lossy representation, since language and datatype are not encoded in here.\n stringValue = `${stringValue}`;\n } else if (value.termType === 'BlankNode') {\n stringValue = `_:${stringValue}`;\n } else if (value.termType === 'Quad') {\n let object = ActorQueryResultSerializeSparqlCsv.bindingToCsvBindings(value.object);\n if (value.object.termType === 'Literal') {\n // If object is a literal, it must be put in quotes, and internal quotes must be escaped\n object = `\"${object.replace(/\"/ug, '\"\"')}\"`;\n }\n stringValue = `<< ${ActorQueryResultSerializeSparqlCsv.bindingToCsvBindings(value.subject)} ${ActorQueryResultSerializeSparqlCsv.bindingToCsvBindings(value.predicate)} ${object} >>`;\n } else {\n stringValue = `<${stringValue}>`;\n }\n\n // If a value contains certain characters, put it between double quotes\n if (/[\",\\n\\r]/u.test(stringValue)) {\n // Within quote strings, \" is written using a pair of quotation marks \"\".\n stringValue = `\"${stringValue.replace(/\"/ug, '\"\"')}\"`;\n }\n\n return stringValue;\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (action.type !== 'bindings') {\n throw new Error('This actor can only handle bindings streams.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string | undefined, context: IActionContext):\n Promise {\n const bindingsAction = action;\n\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n // Write head\n const metadata = await bindingsAction.metadata();\n data.push(`${metadata.variables.map(variable => variable.value).join(',')}\\r\\n`);\n\n // Write bindings\n bindingsAction.bindingsStream.on('error', (error: Error) => {\n data.emit('error', error);\n });\n bindingsAction.bindingsStream.on('data', (bindings: Bindings) => {\n data.push(`${metadata.variables\n .map(key => ActorQueryResultSerializeSparqlCsv.bindingToCsvBindings(bindings.get(key)))\n .join(',')}\\r\\n`);\n });\n bindingsAction.bindingsStream.on('end', () => {\n data.push(null);\n });\n\n return { data };\n }\n}\n","import type { IActionHttp, IActorHttpOutput } from '@comunica/bus-http';\nimport type { ActorHttpInvalidateListenable } from '@comunica/bus-http-invalidate';\nimport type { Actor, IActionObserverArgs, IActorTest } from '@comunica/core';\nimport { ActionObserver } from '@comunica/core';\n\n/**\n * Observes HTTP actions, and maintains a counter of the number of requests.\n */\nexport class ActionObserverHttp extends ActionObserver {\n public readonly httpInvalidator: ActorHttpInvalidateListenable;\n public requests = 0;\n\n /* eslint-disable max-len */\n /**\n * @param args - @defaultNested {} bus\n */\n public constructor(args: IActionObserverHttpArgs) {\n super(args);\n this.bus.subscribeObserver(this);\n this.httpInvalidator.addInvalidateListener(() => {\n this.requests = 0;\n });\n }\n /* eslint-enable max-len */\n\n public onRun(actor: Actor,\n action: IActionHttp, output: Promise): void {\n this.requests++;\n }\n}\n\nexport interface IActionObserverHttpArgs extends IActionObserverArgs {\n /* eslint-disable max-len */\n /**\n * An actor that listens to HTTP invalidation events\n * @default { a }\n */\n httpInvalidator: ActorHttpInvalidateListenable;\n /* eslint-enable max-len */\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type {\n Bindings, IActionContext, IQueryOperationResultBindings,\n IQueryOperationResultBoolean,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\nimport type { ActionObserverHttp } from './ActionObserverHttp';\n\n/**\n * A comunica sparql-results+xml Serialize Actor.\n */\nexport class ActorQueryResultSerializeSparqlJson extends ActorQueryResultSerializeFixedMediaTypes {\n private readonly emitMetadata: boolean;\n public readonly httpObserver: ActionObserverHttp;\n\n /* eslint-disable max-len */\n /**\n * @param args -\n * \\ @defaultNested {{\n * \"application/sparql-results+json\": 0.8\n * }} mediaTypePriorities\n * \\ @defaultNested {{\n * \"application/sparql-results+json\": \"http://www.w3.org/ns/formats/SPARQL_Results_JSON\"\n * }} mediaTypeFormats\n * \\ @defaultNested {true} emitMetadata\n * \\ @defaultNested { a } httpObserver\n */\n public constructor(args: IActorQueryResultSerializeSparqlJsonArgs) {\n super(args);\n }\n /* eslint-enable max-len */\n\n /**\n * Converts an RDF term to its JSON representation.\n * @param {RDF.Term} value An RDF term.\n * @return {any} A JSON object.\n */\n public static bindingToJsonBindings(value: RDF.Term): any {\n if (value.termType === 'Literal') {\n const literal: RDF.Literal = value;\n const jsonValue: any = { value: literal.value, type: 'literal' };\n const { language } = literal;\n const { datatype } = literal;\n if (language) {\n jsonValue['xml:lang'] = language;\n } else if (datatype && datatype.value !== 'http://www.w3.org/2001/XMLSchema#string') {\n jsonValue.datatype = datatype.value;\n }\n return jsonValue;\n }\n if (value.termType === 'BlankNode') {\n return { value: value.value, type: 'bnode' };\n }\n if (value.termType === 'Quad') {\n return {\n value: {\n subject: ActorQueryResultSerializeSparqlJson.bindingToJsonBindings(value.subject),\n predicate: ActorQueryResultSerializeSparqlJson.bindingToJsonBindings(value.predicate),\n object: ActorQueryResultSerializeSparqlJson.bindingToJsonBindings(value.object),\n },\n type: 'triple',\n };\n }\n return { value: value.value, type: 'uri' };\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'boolean' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings streams or booleans.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string | undefined, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n // Write head\n const head: any = {};\n if (action.type === 'bindings') {\n const metadata = await ( action).metadata();\n if (metadata.variables.length > 0) {\n head.vars = metadata.variables.map(variable => variable.value);\n }\n }\n data.push(`{\"head\": ${JSON.stringify(head)},\\n`);\n let empty = true;\n\n if (action.type === 'bindings') {\n const resultStream: NodeJS.EventEmitter = ( action).bindingsStream;\n\n // Write bindings\n resultStream.on('error', (error: Error) => {\n data.emit('error', error);\n });\n resultStream.on('data', (bindings: Bindings) => {\n if (empty) {\n data.push('\"results\": { \"bindings\": [\\n');\n } else {\n data.push(',\\n');\n }\n\n // JSON SPARQL results spec does not allow unbound variables and blank node bindings\n const bindingsJson = Object.fromEntries([ ...bindings ]\n .map(([ key, value ]) => [ key.value, ActorQueryResultSerializeSparqlJson.bindingToJsonBindings(value) ]));\n data.push(JSON.stringify(bindingsJson));\n empty = false;\n });\n\n // Close streams\n resultStream.on('end', () => {\n // Push bindings header if empty\n if (empty) {\n data.push('\"results\": { \"bindings\": [\\n');\n }\n\n // End bindings array\n data.push('\\n]}');\n\n // Push metadata footer\n if (this.emitMetadata) {\n data.push(`,\\n\"metadata\": { \"httpRequests\": ${this.httpObserver.requests} }`);\n }\n\n // End stream\n data.push('}\\n');\n data.push(null);\n });\n } else {\n try {\n data.push(`\"boolean\":${await ( action).execute()}\\n}\\n`);\n data.push(null);\n } catch (error: unknown) {\n data.once('newListener', () => data.emit('error', error));\n }\n }\n\n return { data };\n }\n}\n\nexport interface IActorQueryResultSerializeSparqlJsonArgs extends IActorQueryResultSerializeFixedMediaTypesArgs {\n emitMetadata: boolean;\n httpObserver: ActionObserverHttp;\n}\n","import type { IActionSparqlSerialize, IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport {\n ActorQueryResultSerializeFixedMediaTypes,\n} from '@comunica/bus-query-result-serialize';\nimport type { Bindings, IActionContext, IQueryOperationResultBindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { termToString } from 'rdf-string-ttl';\nimport { Readable } from 'readable-stream';\n\n/**\n * A comunica SPARQL TSV Query Result Serialize Actor.\n */\nexport class ActorQueryResultSerializeSparqlTsv extends ActorQueryResultSerializeFixedMediaTypes {\n /**\n * @param args -\n * \\ @defaultNested {{\n * \"text/tab-separated-values\": 0.75\n * }} mediaTypePriorities\n * \\ @defaultNested {{\n * \"text/tab-separated-values\": \"http://www.w3.org/ns/formats/SPARQL_Results_TSV\"\n * }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n /**\n * Converts an RDF term to its TSV representation.\n * @param {RDF.Term} value An RDF term.\n * @return {string} A string representation of the given value.\n */\n public static bindingToTsvBindings(value?: RDF.Term): string {\n if (!value) {\n return '';\n }\n\n // Escape tab, newline and carriage return characters\n return termToString(value)\n .replace(/\\t/gu, '\\\\t')\n .replace(/\\n/gu, '\\\\n')\n .replace(/\\r/gu, '\\\\r');\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (action.type !== 'bindings') {\n throw new Error('This actor can only handle bindings streams.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string | undefined, context: IActionContext):\n Promise {\n const bindingsAction = action;\n\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n // Write head\n const metadata = await bindingsAction.metadata();\n data.push(`${metadata.variables.map((variable: RDF.Variable) => variable.value).join('\\t')}\\n`);\n\n // Write bindings\n bindingsAction.bindingsStream.on('error', (error: Error) => {\n data.emit('error', error);\n });\n bindingsAction.bindingsStream.on('data', (bindings: Bindings) => {\n data.push(`${metadata.variables\n .map((key: RDF.Variable) => ActorQueryResultSerializeSparqlTsv\n .bindingToTsvBindings(bindings.get(key)))\n .join('\\t')}\\n`);\n });\n bindingsAction.bindingsStream.on('end', () => {\n data.push(null);\n });\n\n return { data };\n }\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type {\n Bindings, IActionContext, IQueryOperationResultBindings,\n IQueryOperationResultBoolean,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\nimport { XmlSerializer, type IXmlNode } from './XmlSerializer';\n\n/**\n * A comunica sparql-results+xml Serialize Actor.\n */\nexport class ActorQueryResultSerializeSparqlXml extends ActorQueryResultSerializeFixedMediaTypes {\n /**\n * @param args -\n * \\ @defaultNested {{\n * \"application/sparql-results+xml\": 0.8\n * }} mediaTypePriorities\n * \\ @defaultNested {{\n * \"application/sparql-results+xml\": \"http://www.w3.org/ns/formats/SPARQL_Results_XML\"\n * }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n /**\n * Converts an RDF term to its object-based XML representation.\n * @param {RDF.Term} value An RDF term.\n * @param {string} key A variable name, '?' must be included as a prefix.\n * @return {IXmlNode} An object-based XML tag.\n */\n public static bindingToXmlBindings(value: RDF.Term, key: RDF.Variable): IXmlNode {\n return { name: 'binding', attributes: { name: key.value }, children: [ this.valueToXmlValue(value) ]};\n }\n\n public static valueToXmlValue(value: RDF.Term): IXmlNode {\n let attributes;\n switch (value.termType) {\n case 'Literal':\n if (value.language) {\n attributes = { 'xml:lang': value.language };\n } else if (value.datatype && value.datatype.value !== 'http://www.w3.org/2001/XMLSchema#string') {\n attributes = { datatype: value.datatype.value };\n } else {\n attributes = {};\n }\n return { name: 'literal', attributes, children: value.value };\n case 'BlankNode':\n return { name: 'bnode', children: value.value };\n case 'Quad':\n return {\n name: 'triple',\n children: [\n { name: 'subject', children: [ this.valueToXmlValue(value.subject) ]},\n { name: 'predicate', children: [ this.valueToXmlValue(value.predicate) ]},\n { name: 'object', children: [ this.valueToXmlValue(value.object) ]},\n ],\n };\n default:\n return { name: 'uri', children: value.value };\n }\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'boolean' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings streams or booleans.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n // Write head\n const serializer = new XmlSerializer(chunk => data.push(chunk));\n serializer.open('sparql', { xmlns: 'http://www.w3.org/2005/sparql-results#' });\n const metadata = await ( action).metadata();\n serializer.add({\n name: 'head',\n children: metadata.variables.map(variable => ({ name: 'variable', attributes: { name: variable.value }})),\n });\n if (action.type === 'bindings') {\n serializer.open('results');\n const resultStream: NodeJS.EventEmitter = ( action).bindingsStream;\n\n // Write bindings\n resultStream.on('error', (error: Error) => {\n data.emit('error', error);\n });\n resultStream.on('data', (bindings: Bindings) => {\n // XML SPARQL results spec does not allow unbound variables and blank node bindings\n serializer.add({ name: 'result',\n children: [ ...bindings ]\n .map(([ key, value ]) => ActorQueryResultSerializeSparqlXml.bindingToXmlBindings(value, key)) });\n });\n\n // Close streams\n resultStream.on('end', () => {\n serializer.close();\n serializer.close();\n setTimeout(() => data.push(null));\n });\n } else {\n try {\n const result = await ( action).execute();\n serializer.add({ name: 'boolean', children: result.toString() });\n serializer.close();\n setTimeout(() => data.push(null));\n } catch (error: unknown) {\n setTimeout(() => data.emit('error', error));\n }\n }\n\n return { data };\n }\n}\n","/**\n * A very simple XML serializer\n */\nexport class XmlSerializer {\n private readonly push: (data: string) => void;\n\n private readonly stack: string[] = [];\n\n public constructor(push: (data: string) => void) {\n this.push = push;\n this.push(`\\n`);\n }\n\n /**\n *\n * @param name should be a valid XML tag name\n * @param attributes keys should be valid attribute names\n */\n public open(name: string, attributes?: Record): void {\n this.push(`${this.identation() + this.formatTag(name, attributes, 'open')}\\n`);\n this.stack.push(name);\n }\n\n public close(): void {\n const name = this.stack.pop();\n if (name === undefined) {\n throw new Error('There is no tag left to close');\n }\n this.push(`${this.identation() + this.formatTag(name, {}, 'close')}\\n`);\n }\n\n public add(node: IXmlNode): void {\n this.push(this.serializeNode(node));\n }\n\n private serializeNode(node: IXmlNode): string {\n if (node.children === undefined) {\n return `${this.identation() + this.formatTag(node.name, node.attributes, 'self-closing')}\\n`;\n }\n if (typeof node.children === 'string') {\n return `${this.identation() + this.formatTag(node.name, node.attributes, 'open') + this.escape(node.children) + this.formatTag(node.name, {}, 'close')}\\n`;\n }\n const parts = [];\n parts.push(`${this.identation() + this.formatTag(node.name, node.attributes, 'open')}\\n`);\n this.stack.push(node.name);\n for (const child of node.children) {\n parts.push(this.serializeNode(child));\n }\n this.stack.pop();\n parts.push(`${this.identation() + this.formatTag(node.name, {}, 'close')}\\n`);\n return parts.join('');\n }\n\n private identation(): string {\n return this.stack.map(_ => ' ').join('');\n }\n\n private formatTag(\n name: string, attributes: Record | undefined, state: 'open' | 'close' | 'self-closing',\n ): string {\n return `<${state === 'close' ? '/' : ''}${name}${Object.entries(attributes || {}).map(attr => ` ${attr[0]}=\"${this.escape(attr[1])}\"`)}${state === 'self-closing' ? '/' : ''}>`;\n }\n\n private escape(text: string): string {\n return text.replace(/[\"&'<>]/gu, (char: '\"' | '&' | '\\'' | '<' | '>') => {\n switch (char) {\n case '<': return '<';\n case '>': return '>';\n case '&': return '&';\n case '\\'': return ''';\n case '\"': return '"';\n }\n });\n }\n}\n\nexport interface IXmlNode {\n name: string;\n attributes?: Record;\n children?: (IXmlNode[]) | string;\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type {\n IActionContext, IQueryOperationResultBindings,\n IQueryOperationResultQuads,\n} from '@comunica/types';\nimport { Readable } from 'readable-stream';\nimport type { ActionObserverHttp } from './ActionObserverHttp';\n\nconst process: NodeJS.Process = require('process/');\n\n/**\n * Serializes SPARQL results for testing and debugging.\n */\nexport class ActorQueryResultSerializeStats extends ActorQueryResultSerializeFixedMediaTypes {\n public readonly httpObserver: ActionObserverHttp;\n\n /* eslint-disable max-len */\n /**\n * @param args -\n * \\ @defaultNested {{ \"stats\": 0.5 }} mediaTypePriorities\n * \\ @defaultNested {{ \"stats\": \"https://comunica.linkeddatafragments.org/#results_stats\" }} mediaTypeFormats\n * \\ @defaultNested { a } httpObserver\n */\n public constructor(args: IActorQueryResultSerializeStatsArgs) {\n super(args);\n }\n /* eslint-enable max-len */\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'quads' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings streams or quad streams.');\n }\n return true;\n }\n\n public pushHeader(data: Readable): void {\n const header: string = [ 'Result', 'Delay (ms)', 'HTTP requests',\n ].join(',');\n data.push(`${header}\\n`);\n }\n\n public pushStat(data: Readable, startTime: number, result: number): void {\n const row: string = [ result, this.delay(startTime), this.httpObserver.requests,\n ].join(',');\n data.push(`${row}\\n`);\n }\n\n public pushFooter(data: Readable, startTime: number): void {\n const footer: string = [ 'TOTAL', this.delay(startTime), this.httpObserver.requests,\n ].join(',');\n data.push(`${footer}\\n`);\n data.push(null);\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n const resultStream: NodeJS.EventEmitter = action.type === 'bindings' ?\n ( action).bindingsStream :\n ( action).quadStream;\n\n const startTime = this.now();\n let result = 1;\n\n this.pushHeader(data);\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', () => this.pushStat(data, startTime, result++));\n resultStream.on('end', () => this.pushFooter(data, startTime));\n\n return { data };\n }\n\n /* istanbul ignore next */\n public now(): number {\n // TODO: remove when we will drop support of Node 14\n if (typeof performance === 'undefined') {\n const time: [number, number] = process.hrtime();\n return time[0] * 1_000 + (time[1] / 1_000_000);\n }\n return performance.now();\n }\n\n public delay(startTime: number): number {\n return this.now() - startTime;\n }\n}\n\nexport interface IActorQueryResultSerializeStatsArgs extends IActorQueryResultSerializeFixedMediaTypesArgs {\n httpObserver: ActionObserverHttp;\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport type {\n Bindings, IActionContext,\n IQueryOperationResultBindings,\n IQueryOperationResultQuads,\n} from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { DataFactory } from 'rdf-data-factory';\nimport { termToString } from 'rdf-string';\nimport { getTerms, QUAD_TERM_NAMES } from 'rdf-terms';\nimport { Readable } from 'readable-stream';\n\nconst DF = new DataFactory();\nconst QUAD_TERM_NAMES_VARS = QUAD_TERM_NAMES.map(name => DF.variable(name));\n\n/**\n * A comunica Table Sparql Serialize Actor.\n */\nexport class ActorQueryResultSerializeTable extends ActorQueryResultSerializeFixedMediaTypes\n implements IActorQueryResultSerializeTableArgs {\n public readonly columnWidth: number;\n public readonly padding: string;\n\n /**\n * @param args -\n * \\ @defaultNested {{ \"table\": 0.6 }} mediaTypePriorities\n * \\ @defaultNested {{ \"table\": \"https://comunica.linkeddatafragments.org/#results_table\" }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeTableArgs) {\n super(args);\n this.padding = ActorQueryResultSerializeTable.repeat(' ', this.columnWidth);\n }\n\n public static repeat(str: string, count: number): string {\n return str.repeat(count);\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize, context: IActionContext): Promise {\n if (![ 'bindings', 'quads' ].includes(action.type)) {\n throw new Error('This actor can only handle bindings or quad streams.');\n }\n return true;\n }\n\n public termToString(term: RDF.Term): string {\n return term.termType === 'Quad' ? termToString(term) : term.value;\n }\n\n public pad(str: string): string {\n if (str.length <= this.columnWidth) {\n return str + this.padding.slice(str.length);\n }\n return `${str.slice(0, this.columnWidth - 1)}…`;\n }\n\n public pushHeader(data: Readable, labels: RDF.Variable[]): void {\n const header: string = labels.map(label => this.pad(label.value)).join(' ');\n data.push(`${header}\\n${ActorQueryResultSerializeTable.repeat('-', header.length)}\\n`);\n }\n\n public pushRow(data: Readable, labels: RDF.Variable[], bindings: Bindings): void {\n data.push(`${labels\n .map(label => bindings.has(label) ? this.termToString(bindings.get(label)!) : '')\n .map(label => this.pad(label))\n .join(' ')}\\n`);\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string, context: IActionContext):\n Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n let resultStream: NodeJS.EventEmitter;\n if (action.type === 'bindings') {\n resultStream = ( action).bindingsStream;\n const labels = (await ( action).metadata()).variables;\n this.pushHeader(data, labels);\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', bindings => this.pushRow(data, labels, bindings));\n } else {\n resultStream = ( action).quadStream;\n this.pushHeader(data, QUAD_TERM_NAMES_VARS);\n resultStream.on('error', error => data.emit('error', error));\n resultStream.on('data', quad => data.push(\n `${getTerms(quad).map(term => this.pad(this.termToString(term))).join(' ')}\\n`,\n ));\n }\n resultStream.on('end', () => data.push(null));\n\n return { data };\n }\n}\n\nexport interface IActorQueryResultSerializeTableArgs extends IActorQueryResultSerializeFixedMediaTypesArgs {\n /**\n * The table column width in number of characters\n * @range {integer}\n * @default {50}\n */\n columnWidth: number;\n}\n","import type { IActionSparqlSerialize,\n IActorQueryResultSerializeFixedMediaTypesArgs,\n IActorQueryResultSerializeOutput } from '@comunica/bus-query-result-serialize';\nimport { ActorQueryResultSerializeFixedMediaTypes } from '@comunica/bus-query-result-serialize';\nimport { KeysInitQuery } from '@comunica/context-entries';\nimport { ActionContext } from '@comunica/core';\nimport type { IQueryOperationResultBindings, BindingsStream, IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\nimport type { IConverterSettings, ISchema } from 'sparqljson-to-tree';\nimport { Converter } from 'sparqljson-to-tree';\n\n/**\n * A comunica Tree Query Result Serialize Actor.\n */\nexport class ActorQueryResultSerializeTree extends ActorQueryResultSerializeFixedMediaTypes\n implements IActorQueryResultSerializeFixedMediaTypesArgs {\n /**\n * @param args -\n * \\ @defaultNested {{ \"tree\": 0.5 }} mediaTypePriorities\n * \\ @defaultNested {{ \"tree\": \"https://comunica.linkeddatafragments.org/#results_tree\" }} mediaTypeFormats\n */\n public constructor(args: IActorQueryResultSerializeFixedMediaTypesArgs) {\n super(args);\n }\n\n /**\n *\n * @param {BindingsStream} bindingsStream\n * @param context\n * @param {IConverterSettings} converterSettings\n * @return {Promise}\n */\n public static bindingsStreamToGraphQl(bindingsStream: BindingsStream,\n context: IActionContext | Record | undefined,\n converterSettings?: IConverterSettings): Promise {\n const actionContext: IActionContext = ActionContext.ensureActionContext(context);\n return new Promise((resolve, reject) => {\n const bindingsArray: Record[] = [];\n const converter: Converter = new Converter(converterSettings);\n\n const schema: ISchema = {\n singularizeVariables: actionContext.get(KeysInitQuery.graphqlSingularizeVariables) || {},\n };\n\n bindingsStream.on('error', reject);\n bindingsStream.on('data', (bindings: RDF.Bindings) => {\n bindingsArray.push(Object.fromEntries([ ...bindings ]\n .map(([ key, value ]) => [ key.value, value ])));\n });\n bindingsStream.on('end', () => {\n resolve(converter.bindingsToTree(bindingsArray, schema));\n });\n });\n }\n\n public async testHandleChecked(action: IActionSparqlSerialize): Promise {\n if (action.type !== 'bindings') {\n throw new Error('This actor can only handle bindings streams.');\n }\n return true;\n }\n\n public async runHandle(action: IActionSparqlSerialize, mediaType: string): Promise {\n const data = new Readable();\n data._read = () => {\n // Do nothing\n };\n\n const resultStream: BindingsStream = ( action).bindingsStream;\n resultStream.on('error', error => data.emit('error', error));\n ActorQueryResultSerializeTree.bindingsStreamToGraphQl(resultStream, action.context, { materializeRdfJsTerms: true })\n .then((result: any) => {\n data.push(JSON.stringify(result, null, ' '));\n data.push(null);\n })\n .catch(error => data.emit('error', error));\n\n return { data };\n }\n}\n","import type { IActionRdfJoinEntriesSort,\n IActorRdfJoinEntriesSortOutput } from '@comunica/bus-rdf-join-entries-sort';\nimport { ActorRdfJoinEntriesSort } from '@comunica/bus-rdf-join-entries-sort';\nimport type { IActorArgs, IActorTest } from '@comunica/core';\n\n/**\n * An actor that sorts join entries by increasing cardinality.\n */\nexport class ActorRdfJoinEntriesSortCardinality extends ActorRdfJoinEntriesSort {\n public constructor(\n args: IActorArgs,\n ) {\n super(args);\n }\n\n public async test(action: IActionRdfJoinEntriesSort): Promise {\n return true;\n }\n\n public async run(action: IActionRdfJoinEntriesSort): Promise {\n const entries = [ ...action.entries ]\n .sort((entryLeft, entryRight) => entryLeft.metadata.cardinality.value - entryRight.metadata.cardinality.value);\n return { entries };\n }\n}\n","import type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings,\n MetadataBindings } from '@comunica/types';\nimport { HashJoin } from 'asyncjoin';\n\n/**\n * A comunica Hash RDF Join Actor.\n */\nexport class ActorRdfJoinHash extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'hash',\n limitEntries: 2,\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n const metadatas = await ActorRdfJoin.getMetadatas(action.entries);\n const variables = ActorRdfJoin.overlappingVariables(metadatas);\n const join = new HashJoin(\n action.entries[0].output.bindingsStream,\n action.entries[1].output.bindingsStream,\n entry => ActorRdfJoin.hash(entry, variables),\n ActorRdfJoin.joinBindings,\n );\n return {\n result: {\n type: 'bindings',\n bindingsStream: join,\n metadata: async() => await this.constructResultMetadata(action.entries, metadatas, action.context),\n },\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n iterations: metadatas[0].cardinality.value + metadatas[1].cardinality.value,\n persistedItems: metadatas[0].cardinality.value,\n blockingItems: metadatas[0].cardinality.value,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import type { MediatorQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation, materializeOperation } from '@comunica/bus-query-operation';\nimport type {\n IActionRdfJoin,\n IActorRdfJoinOutputInner,\n IActorRdfJoinArgs,\n} from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { MediatorRdfJoinEntriesSort } from '@comunica/bus-rdf-join-entries-sort';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings, BindingsStream, IQueryOperationResultBindings,\n MetadataBindings, IActionContext, IJoinEntryWithMetadata } from '@comunica/types';\nimport { MultiTransformIterator, TransformIterator, UnionIterator } from 'asynciterator';\nimport { Factory, Algebra, Util } from 'sparqlalgebrajs';\n\n/**\n * A comunica Multi-way Bind RDF Join Actor.\n */\nexport class ActorRdfJoinMultiBind extends ActorRdfJoin {\n public readonly bindOrder: BindOrder;\n public readonly selectivityModifier: number;\n public readonly mediatorJoinEntriesSort: MediatorRdfJoinEntriesSort;\n public readonly mediatorQueryOperation: MediatorQueryOperation;\n\n public static readonly FACTORY = new Factory();\n\n public constructor(args: IActorRdfJoinMultiBindArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'bind',\n canHandleUndefs: true,\n });\n }\n\n /**\n * Create a new bindings stream that takes every binding of the base stream\n * and binds it to the remaining patterns, evaluates those patterns, and emits all their bindings.\n *\n * @param bindOrder The order in which elements should be bound.\n * @param baseStream The base stream.\n * @param operations The operations to bind with each binding of the base stream.\n * @param operationBinder A callback to retrieve the bindings stream of bound operations.\n * @param optional If the original bindings should be emitted when the resulting bindings stream is empty.\n * @return {BindingsStream}\n */\n public static createBindStream(\n bindOrder: BindOrder,\n baseStream: BindingsStream,\n operations: Algebra.Operation[],\n operationBinder: (boundOperations: Algebra.Operation[], operationBindings: Bindings)\n => Promise,\n optional: boolean,\n ): BindingsStream {\n // Create bindings function\n const binder = (bindings: Bindings): BindingsStream => {\n // We don't bind the filter because filters are always handled last,\n // and we need to avoid binding filters of sub-queries, which are to be handled first. (see spec test bind10)\n const subOperations = operations\n .map(operation => materializeOperation(operation, bindings, { bindFilter: false }));\n const bindingsMerger = (subBindings: Bindings): Bindings | undefined => subBindings.merge(bindings);\n return new TransformIterator(async() => (await operationBinder(subOperations, bindings))\n .transform({ map: bindingsMerger }), { maxBufferSize: 128, autoStart: false });\n };\n\n // Create an iterator that binds elements from the base stream in different orders\n switch (bindOrder) {\n case 'depth-first':\n return new MultiTransformIterator(baseStream, { autoStart: false, multiTransform: binder, optional });\n case 'breadth-first':\n return new UnionIterator(baseStream.transform({\n map: binder,\n optional,\n }), { autoStart: false });\n default:\n throw new Error(`Received request for unknown bind order: ${bindOrder}`);\n }\n }\n\n /**\n * Order the given join entries using the join-entries-sort bus.\n * @param {IJoinEntryWithMetadata[]} entries An array of join entries.\n * @param context The action context.\n * @return {IJoinEntryWithMetadata[]} The sorted join entries.\n */\n public async sortJoinEntries(\n entries: IJoinEntryWithMetadata[],\n context: IActionContext,\n ): Promise {\n // If there is a stream that can contain undefs, we don't modify the join order.\n const canContainUndefs = entries.some(entry => entry.metadata.canContainUndefs);\n if (canContainUndefs) {\n return entries;\n }\n\n // Calculate number of occurrences of each variable\n const variableOccurrences: Record = {};\n for (const entry of entries) {\n for (const variable of entry.metadata.variables) {\n let counter = variableOccurrences[variable.value];\n if (!counter) {\n counter = 0;\n }\n variableOccurrences[variable.value] = ++counter;\n }\n }\n\n // Determine variables that occur in at least two join entries\n const multiOccurrenceVariables: string[] = [];\n for (const [ variable, count ] of Object.entries(variableOccurrences)) {\n if (count >= 2) {\n multiOccurrenceVariables.push(variable);\n }\n }\n\n // Reject if no entries have common variables\n if (multiOccurrenceVariables.length === 0) {\n throw new Error(`Bind join can only join entries with at least one common variable`);\n }\n\n // Determine entries without common variables\n // These will be placed in the back of the sorted array\n const entriesWithoutCommonVariables: IJoinEntryWithMetadata[] = [];\n for (const entry of entries) {\n let hasCommon = false;\n for (const variable of entry.metadata.variables) {\n if (multiOccurrenceVariables.includes(variable.value)) {\n hasCommon = true;\n break;\n }\n }\n if (!hasCommon) {\n entriesWithoutCommonVariables.push(entry);\n }\n }\n\n return (await this.mediatorJoinEntriesSort.mediate({ entries, context })).entries\n .sort((entryLeft, entryRight) => {\n // Sort to make sure that entries without common variables come last in the array.\n // For all other entries, the original order is kept.\n const leftWithoutCommonVariables = entriesWithoutCommonVariables.includes(entryLeft);\n const rightWithoutCommonVariables = entriesWithoutCommonVariables.includes(entryRight);\n if (leftWithoutCommonVariables === rightWithoutCommonVariables) {\n return 0;\n }\n return leftWithoutCommonVariables ?\n 1 :\n -1;\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n // Order the entries so we can pick the first one (usually the one with the lowest cardinality)\n const entriesUnsorted = await ActorRdfJoin.getEntriesWithMetadatas(action.entries);\n const entries = await this.sortJoinEntries(entriesUnsorted, action.context);\n\n this.logDebug(action.context,\n 'First entry for Bind Join: ',\n () => ({ entry: entries[0].operation, metadata: entries[0].metadata }));\n\n // Close the non-smallest streams\n for (const [ i, element ] of entries.entries()) {\n if (i !== 0) {\n element.output.bindingsStream.close();\n }\n }\n\n // Take the stream with the lowest cardinality\n const smallestStream: IQueryOperationResultBindings = entries[0].output;\n const remainingEntries = [ ...entries ];\n remainingEntries.splice(0, 1);\n\n // Bind the remaining patterns for each binding in the stream\n const subContext = action.context\n .set(KeysQueryOperation.joinLeftMetadata, entries[0].metadata)\n .set(KeysQueryOperation.joinRightMetadatas, remainingEntries.map(entry => entry.metadata));\n const bindingsStream: BindingsStream = ActorRdfJoinMultiBind.createBindStream(\n this.bindOrder,\n smallestStream.bindingsStream,\n remainingEntries.map(entry => entry.operation),\n async(operations: Algebra.Operation[], operationBindings: Bindings) => {\n // Send the materialized patterns to the mediator for recursive join evaluation.\n const operation = operations.length === 1 ?\n operations[0] :\n ActorRdfJoinMultiBind.FACTORY.createJoin(operations);\n const output = ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate(\n { operation, context: subContext?.set(KeysQueryOperation.joinBindings, operationBindings) },\n ));\n return output.bindingsStream;\n },\n false,\n );\n\n return {\n result: {\n type: 'bindings',\n bindingsStream,\n metadata: () => this.constructResultMetadata(entries, entries.map(entry => entry.metadata), action.context),\n },\n physicalPlanMetadata: {\n bindIndex: entriesUnsorted.indexOf(entries[0]),\n bindOrder: this.bindOrder,\n },\n };\n }\n\n public canBindWithOperation(operation: Algebra.Operation): boolean {\n let valid = true;\n Util.recurseOperation(operation, {\n [Algebra.types.EXTEND](): boolean {\n valid = false;\n return false;\n },\n [Algebra.types.GROUP](): boolean {\n valid = false;\n return false;\n },\n [Algebra.types.FILTER](): boolean {\n valid = false;\n return false;\n },\n });\n\n return valid;\n }\n\n public async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n // Order the entries so we can pick the first one (usually the one with the lowest cardinality)\n const entries = await this.sortJoinEntries(action.entries\n .map((entry, i) => ({ ...entry, metadata: metadatas[i] })), action.context);\n metadatas = entries.map(entry => entry.metadata);\n\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n\n // Determine first stream and remaining ones\n const remainingEntries = [ ...entries ];\n const remainingRequestInitialTimes = [ ...requestInitialTimes ];\n const remainingRequestItemTimes = [ ...requestItemTimes ];\n remainingEntries.splice(0, 1);\n remainingRequestInitialTimes.splice(0, 1);\n remainingRequestItemTimes.splice(0, 1);\n\n // Reject binding on some operation types\n if (remainingEntries\n .some(entry => !this.canBindWithOperation(entry.operation))) {\n throw new Error(`Actor ${this.name} can not bind on Extend, Group, and Filter operations`);\n }\n\n // Determine selectivities of smallest entry with all other entries\n const selectivities = await Promise.all(remainingEntries\n .map(async entry => (await this.mediatorJoinSelectivity.mediate({\n entries: [ entries[0], entry ],\n context: action.context,\n })).selectivity * this.selectivityModifier));\n\n // Determine coefficients for remaining entries\n const cardinalityRemaining = remainingEntries\n .map((entry, i) => entry.metadata.cardinality.value * selectivities[i])\n .reduce((sum, element) => sum + element, 0);\n const receiveInitialCostRemaining = remainingRequestInitialTimes\n .reduce((sum, element, i) => sum + (element * selectivities[i]), 0);\n const receiveItemCostRemaining = remainingRequestItemTimes\n .reduce((sum, element, i) => sum + (element * selectivities[i]), 0);\n\n return {\n iterations: metadatas[0].cardinality.value * cardinalityRemaining,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] +\n metadatas[0].cardinality.value * (\n requestItemTimes[0] +\n receiveInitialCostRemaining +\n cardinalityRemaining * receiveItemCostRemaining\n ),\n };\n }\n}\n\nexport interface IActorRdfJoinMultiBindArgs extends IActorRdfJoinArgs {\n /**\n * The order in which elements should be bound\n * @default {depth-first}\n */\n bindOrder: BindOrder;\n /**\n * Multiplier for selectivity values\n * @range {double}\n * @default {0.0001}\n */\n selectivityModifier: number;\n /**\n * The join entries sort mediator\n */\n mediatorJoinEntriesSort: MediatorRdfJoinEntriesSort;\n /**\n * The query operation mediator\n */\n mediatorQueryOperation: MediatorQueryOperation;\n}\n\nexport type BindOrder = 'depth-first' | 'breadth-first';\n","import type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport type { MetadataBindings } from '@comunica/types';\nimport { ArrayIterator } from 'asynciterator';\n\n/**\n * A comunica Multi Empty RDF Join Actor.\n */\nexport class ActorRdfJoinMultiEmpty extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'multi-empty',\n canHandleUndefs: true,\n });\n }\n\n public async test(action: IActionRdfJoin): Promise {\n if ((await ActorRdfJoin.getMetadatas(action.entries))\n .every(metadata => ActorRdfJoin.getCardinality(metadata).value > 0)) {\n throw new Error(`Actor ${this.name} can only join entries where at least one is empty`);\n }\n return super.test(action);\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n // Close all entries\n for (const entry of action.entries) {\n entry.output.bindingsStream.close();\n }\n\n return {\n result: {\n bindingsStream: new ArrayIterator([], { autoStart: false }),\n metadata: async() => ({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 0 },\n canContainUndefs: false,\n variables: ActorRdfJoin.joinVariables(await ActorRdfJoin.getMetadatas(action.entries)),\n }),\n type: 'bindings',\n },\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n return {\n iterations: 0,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: 0,\n };\n }\n}\n","import {\n ActorQueryOperation,\n} from '@comunica/bus-query-operation';\nimport type {\n IActionRdfJoin,\n IActorRdfJoinOutputInner,\n IActorRdfJoinArgs,\n MediatorRdfJoin,\n} from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { MediatorRdfJoinEntriesSort } from '@comunica/bus-rdf-join-entries-sort';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { MetadataBindings, IJoinEntry, IActionContext, IJoinEntryWithMetadata } from '@comunica/types';\nimport { Factory } from 'sparqlalgebrajs';\n\n/**\n * A Multi Smallest RDF Join Actor.\n * It accepts 3 or more streams, joins the smallest two, and joins the result with the remaining streams.\n */\nexport class ActorRdfJoinMultiSmallest extends ActorRdfJoin {\n public readonly mediatorJoinEntriesSort: MediatorRdfJoinEntriesSort;\n public readonly mediatorJoin: MediatorRdfJoin;\n\n public static readonly FACTORY = new Factory();\n\n public constructor(args: IActorRdfJoinMultiSmallestArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'multi-smallest',\n limitEntries: 3,\n limitEntriesMin: true,\n canHandleUndefs: true,\n });\n }\n\n /**\n * Order the given join entries using the join-entries-sort bus.\n * @param {IJoinEntryWithMetadata[]} entries An array of join entries.\n * @param context The action context.\n * @return {IJoinEntryWithMetadata[]} The sorted join entries.\n */\n public async sortJoinEntries(\n entries: IJoinEntryWithMetadata[],\n context: IActionContext,\n ): Promise {\n return (await this.mediatorJoinEntriesSort.mediate({ entries, context })).entries;\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n // Determine the two smallest streams by sorting (e.g. via cardinality)\n const entries: IJoinEntry[] = await this.sortJoinEntries(\n await ActorRdfJoin.getEntriesWithMetadatas([ ...action.entries ]),\n action.context,\n );\n const smallestEntry1 = entries[0];\n const smallestEntry2 = entries[1];\n entries.splice(0, 2);\n\n // Join the two selected streams, and then join the result with the remaining streams\n const firstEntry: IJoinEntry = {\n output: ActorQueryOperation.getSafeBindings(await this.mediatorJoin\n .mediate({ type: action.type, entries: [ smallestEntry1, smallestEntry2 ], context: action.context })),\n operation: ActorRdfJoinMultiSmallest.FACTORY\n .createJoin([ smallestEntry1.operation, smallestEntry2.operation ], false),\n };\n entries.push(firstEntry);\n return {\n result: await this.mediatorJoin.mediate({\n type: action.type,\n entries,\n context: action.context,\n }),\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n metadatas = [ ...metadatas ];\n // Determine the two smallest streams by sorting (e.g. via cardinality)\n const entriesWithMetadata = await this.sortJoinEntries(action.entries\n .map((entry, i) => ({ ...entry, metadata: metadatas[i] })), action.context);\n metadatas = entriesWithMetadata.map(entry => entry.metadata);\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n\n return {\n iterations: metadatas[0].cardinality.value * metadatas[1].cardinality.value *\n metadatas.slice(2).reduce((acc, metadata) => acc * metadata.cardinality.value, 1),\n persistedItems: 0,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1] +\n metadatas.slice(2).reduce((sum, metadata, i) => sum + requestInitialTimes.slice(2)[i] +\n metadata.cardinality.value * requestItemTimes.slice(2)[i], 0),\n };\n }\n}\n\nexport interface IActorRdfJoinMultiSmallestArgs extends IActorRdfJoinArgs {\n /**\n * The join entries sort mediator\n */\n mediatorJoinEntriesSort: MediatorRdfJoinEntriesSort;\n /**\n * A mediator for joining Bindings streams\n */\n mediatorJoin: MediatorRdfJoin;\n}\n","import type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings, MetadataBindings } from '@comunica/types';\nimport { NestedLoopJoin } from 'asyncjoin';\n\n/**\n * A comunica NestedLoop RDF Join Actor.\n */\nexport class ActorRdfJoinNestedLoop extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'nested-loop',\n limitEntries: 2,\n canHandleUndefs: true,\n });\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n const join = new NestedLoopJoin(\n action.entries[0].output.bindingsStream,\n action.entries[1].output.bindingsStream,\n ActorRdfJoin.joinBindings,\n { autoStart: false },\n );\n return {\n result: {\n type: 'bindings',\n bindingsStream: join,\n metadata: async() => await this.constructResultMetadata(\n action.entries,\n await ActorRdfJoin.getMetadatas(action.entries),\n action.context,\n ),\n },\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n iterations: metadatas[0].cardinality.value * metadatas[1].cardinality.value,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import { BindingsFactory } from '@comunica/bindings-factory';\nimport type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport { MetadataValidationState } from '@comunica/metadata';\nimport { ArrayIterator } from 'asynciterator';\n\nconst BF = new BindingsFactory();\n\n/**\n * A comunica None RDF Join Actor.\n */\nexport class ActorRdfJoinNone extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'none',\n limitEntries: 0,\n });\n }\n\n public async test(action: IActionRdfJoin): Promise {\n // Allow joining of one or zero streams\n if (action.entries.length > 0) {\n throw new Error(`Actor ${this.name} can only join zero entries`);\n }\n return await this.getJoinCoefficients();\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n return {\n result: {\n bindingsStream: new ArrayIterator([ BF.bindings() ], { autoStart: false }),\n metadata: () => Promise.resolve({\n state: new MetadataValidationState(),\n cardinality: { type: 'exact', value: 1 },\n canContainUndefs: false,\n variables: [],\n }),\n type: 'bindings',\n },\n };\n }\n\n protected async getJoinCoefficients(): Promise {\n return {\n iterations: 0,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: 0,\n };\n }\n}\n","import type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\n\n/**\n * A comunica Single RDF Join Actor.\n */\nexport class ActorRdfJoinSingle extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'single',\n limitEntries: 1,\n });\n this.includeInLogs = false;\n }\n\n public async test(action: IActionRdfJoin): Promise {\n // Allow joining of one or zero streams\n if (action.entries.length !== 1) {\n throw new Error(`Actor ${this.name} can only join a single entry`);\n }\n return await this.getJoinCoefficients();\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n return {\n result: action.entries[0].output,\n };\n }\n\n protected async getJoinCoefficients(): Promise {\n return {\n iterations: 0,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: 0,\n };\n }\n}\n","import type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings, MetadataBindings } from '@comunica/types';\nimport { SymmetricHashJoin } from 'asyncjoin';\n\n/**\n * A comunica Hash RDF Join Actor.\n */\nexport class ActorRdfJoinSymmetricHash extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'inner',\n physicalName: 'symmetric-hash',\n limitEntries: 2,\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n const metadatas = await ActorRdfJoin.getMetadatas(action.entries);\n const variables = ActorRdfJoin.overlappingVariables(metadatas);\n const join = new SymmetricHashJoin(\n action.entries[0].output.bindingsStream,\n action.entries[1].output.bindingsStream,\n entry => ActorRdfJoinSymmetricHash.hash(entry, variables),\n ActorRdfJoin.joinBindings,\n );\n return {\n result: {\n type: 'bindings',\n bindingsStream: join,\n metadata: async() => await this.constructResultMetadata(action.entries, metadatas, action.context),\n },\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n iterations: metadatas[0].cardinality.value + metadatas[1].cardinality.value,\n persistedItems: metadatas[0].cardinality.value + metadatas[1].cardinality.value,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import { ClosableTransformIterator } from '@comunica/bus-query-operation';\nimport type { IActionRdfJoin,\n IActorRdfJoinOutputInner,\n IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport {\n ActorRdfJoin,\n} from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { MetadataBindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { BindingsIndex } from './BindingsIndex';\n\n/**\n * A comunica Minus Hash RDF Join Actor.\n */\nexport class ActorRdfJoinMinusHashUndef extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'minus',\n physicalName: 'hash-undef',\n limitEntries: 2,\n canHandleUndefs: true,\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n const buffer = action.entries[1].output;\n const output = action.entries[0].output;\n\n const metadatas = await ActorRdfJoin.getMetadatas(action.entries);\n const commonVariables: RDF.Variable[] = ActorRdfJoin.overlappingVariables(metadatas);\n if (commonVariables.length > 0) {\n /**\n * To assure we've filtered all B (`buffer`) values from A (`output`) we wait until we've fetched all values of B.\n * Then we save these triples in `index` and use it to filter our A-stream.\n */\n const index: BindingsIndex = new BindingsIndex(commonVariables);\n const bindingsStream = new ClosableTransformIterator(async() => {\n await new Promise(resolve => {\n buffer.bindingsStream.on('data', data => index.add(data));\n buffer.bindingsStream.on('end', resolve);\n });\n return output.bindingsStream.filter(data => !index.contains(data));\n }, {\n autoStart: false,\n onClose() {\n buffer.bindingsStream.destroy();\n output.bindingsStream.destroy();\n },\n });\n return {\n result: {\n type: 'bindings',\n bindingsStream,\n async metadata() {\n const bufferMetadata = await output.metadata();\n const outputMetadata = await output.metadata();\n return {\n ...outputMetadata,\n canContainUndefs: bufferMetadata.canContainUndefs || outputMetadata.canContainUndefs,\n };\n },\n },\n };\n }\n // Destroy the buffer stream since it is not needed when\n // there are no common variables.\n buffer.bindingsStream.destroy();\n return {\n result: output,\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n // Slightly increase iteration cost, as operations in our BindingsIndex do not happen in constant time\n // This enables the mediator to favor other minus actors,\n // while this one will only be selected when streams contain undefs.\n iterations: (metadatas[0].cardinality.value + metadatas[1].cardinality.value) * 1.01,\n persistedItems: metadatas[0].cardinality.value,\n blockingItems: metadatas[0].cardinality.value,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import type { Bindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { termToString } from 'rdf-string';\n\n/**\n * A simple efficient tree-based index for maintaining bindings,\n * and checking whether or not a bindings is contained in this index.\n *\n * This will consider bindings with a variable term or a missing term\n * as a 'match-all' with other terms.\n */\nexport class BindingsIndex {\n private readonly keys: RDF.Variable[];\n private readonly data: IDataIndex = {};\n\n public constructor(keys: RDF.Variable[]) {\n this.keys = keys;\n }\n\n protected static hashTerm(term: RDF.Term | undefined): string {\n return term && term.termType !== 'Variable' ? termToString(term) : '';\n }\n\n /**\n * Add the given bindings to the index.\n * @param {Bindings} bindings A bindings.\n */\n public add(bindings: Bindings): void {\n if (this.isBindingsValid(bindings)) {\n let dataIt = this.data;\n for (const key of this.keys) {\n const dataKey = BindingsIndex.hashTerm(bindings.get(key));\n let subDataIt = dataIt[dataKey];\n if (!subDataIt) {\n subDataIt = dataIt[dataKey] = {};\n }\n dataIt = subDataIt;\n }\n }\n }\n\n /**\n * Check if the given bindings is contained in this index.\n * @param {Bindings} bindings A bindings.\n * @return {boolean} If it exists in the index.\n */\n public contains(bindings: Bindings): boolean {\n // Always return false if the bindings contain none of the expected keys\n if (!this.isBindingsValid(bindings)) {\n return false;\n }\n\n return this.containsRecursive(bindings, this.keys, [ this.data ]);\n }\n\n protected isBindingsValid(bindings: Bindings): boolean {\n let validKeys = false;\n for (const key of this.keys) {\n if (bindings.get(key)) {\n validKeys = true;\n break;\n }\n }\n return validKeys;\n }\n\n protected containsRecursive(bindings: Bindings, keys: RDF.Variable[], dataIndexes: IDataIndex[]): boolean {\n if (keys.length === 0) {\n return true;\n }\n\n let key: RDF.Variable;\n // eslint-disable-next-line prefer-const\n [ key, ...keys ] = keys;\n for (const data of dataIndexes) {\n // If the index contained a variable, all terms will match.\n const dataKey = BindingsIndex.hashTerm(bindings.get(key));\n if (!dataKey) {\n // Iterate over all entries\n let subDatas = Object.keys(data).map(subKey => data[subKey]);\n if (subDatas.length === 0) {\n subDatas = [{}];\n }\n if (this.containsRecursive(bindings, keys, subDatas)) {\n return true;\n }\n } else {\n // Check the entry for the term, and the variable term.\n const subDatas = [ data[dataKey], data[''] ].filter(Boolean);\n if (subDatas.length === 0) {\n continue;\n }\n if (this.containsRecursive(bindings, keys, subDatas)) {\n return true;\n }\n }\n }\n return false;\n }\n}\n\nexport interface IDataIndex {\n [key: string]: IDataIndex;\n}\n","import { ClosableTransformIterator } from '@comunica/bus-query-operation';\nimport type { IActionRdfJoin,\n IActorRdfJoinOutputInner,\n IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport {\n ActorRdfJoin,\n} from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { MetadataBindings } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\n\n/**\n * A comunica Minus Hash RDF Join Actor.\n */\nexport class ActorRdfJoinMinusHash extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'minus',\n physicalName: 'hash',\n limitEntries: 2,\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n const buffer = action.entries[1].output;\n const output = action.entries[0].output;\n\n const metadatas = await ActorRdfJoin.getMetadatas(action.entries);\n const commonVariables: RDF.Variable[] = ActorRdfJoin.overlappingVariables(metadatas);\n if (commonVariables.length > 0) {\n /**\n * To assure we've filtered all B (`buffer`) values from A (`output`) we wait until we've fetched all values of B.\n * Then we save these triples in `index` and use it to filter our A-stream.\n */\n const index: Record = {};\n const bindingsStream = new ClosableTransformIterator(async() => {\n await new Promise(resolve => {\n buffer.bindingsStream.on('data', data => {\n index[ActorRdfJoin.hash(data, commonVariables)] = true;\n });\n buffer.bindingsStream.on('end', resolve);\n });\n return output.bindingsStream.filter(data => !index[ActorRdfJoin.hash(data, commonVariables)]);\n }, {\n autoStart: false,\n onClose() {\n buffer.bindingsStream.destroy();\n output.bindingsStream.destroy();\n },\n });\n return {\n result: {\n type: 'bindings',\n bindingsStream,\n metadata: output.metadata,\n },\n };\n }\n // Destroy the buffer stream since it is not needed when\n // there are no common variables.\n buffer.bindingsStream.destroy();\n return {\n result: output,\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n iterations: metadatas[0].cardinality.value + metadatas[1].cardinality.value,\n persistedItems: metadatas[0].cardinality.value,\n blockingItems: metadatas[0].cardinality.value,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import type { BindOrder } from '@comunica/actor-rdf-join-inner-multi-bind';\nimport { ActorRdfJoinMultiBind } from '@comunica/actor-rdf-join-inner-multi-bind';\nimport type { MediatorQueryOperation } from '@comunica/bus-query-operation';\nimport { ActorQueryOperation } from '@comunica/bus-query-operation';\nimport type { IActionRdfJoin, IActorRdfJoinOutputInner, IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport { ActorRdfJoin } from '@comunica/bus-rdf-join';\nimport { KeysQueryOperation } from '@comunica/context-entries';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings, BindingsStream, MetadataBindings } from '@comunica/types';\nimport { Algebra } from 'sparqlalgebrajs';\n\n/**\n * A comunica Optional Bind RDF Join Actor.\n */\nexport class ActorRdfJoinOptionalBind extends ActorRdfJoin {\n public readonly bindOrder: BindOrder;\n public readonly selectivityModifier: number;\n public readonly mediatorQueryOperation: MediatorQueryOperation;\n\n public constructor(args: IActorRdfJoinOptionalBindArgs) {\n super(args, {\n logicalType: 'optional',\n physicalName: 'bind',\n limitEntries: 2,\n canHandleUndefs: true,\n });\n }\n\n protected async getOutput(action: IActionRdfJoin): Promise {\n // Close the right stream, since we don't need that one\n action.entries[1].output.bindingsStream.close();\n\n // Bind the right pattern for each binding in the stream\n const subContext = action.context\n .set(KeysQueryOperation.joinLeftMetadata, await action.entries[0].output.metadata())\n .set(KeysQueryOperation.joinRightMetadatas, [ await action.entries[1].output.metadata() ]);\n const bindingsStream: BindingsStream = ActorRdfJoinMultiBind.createBindStream(\n this.bindOrder,\n action.entries[0].output.bindingsStream,\n [ action.entries[1].operation ],\n async(operations: Algebra.Operation[], operationBindings: Bindings) => {\n // Send the materialized patterns to the mediator for recursive join evaluation.\n // Length of operations will always be 1\n const operation = operations[0];\n const output = ActorQueryOperation.getSafeBindings(await this.mediatorQueryOperation.mediate(\n { operation, context: subContext?.set(KeysQueryOperation.joinBindings, operationBindings) },\n ));\n return output.bindingsStream;\n },\n true,\n );\n\n return {\n result: {\n type: 'bindings',\n bindingsStream,\n metadata: async() => await this.constructResultMetadata(\n action.entries,\n await ActorRdfJoin.getMetadatas(action.entries),\n action.context,\n { canContainUndefs: true },\n ),\n },\n };\n }\n\n public async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n\n // Reject binding on some operation types\n if (action.entries[1].operation.type === Algebra.types.EXTEND ||\n action.entries[1].operation.type === Algebra.types.GROUP) {\n throw new Error(`Actor ${this.name} can not bind on Extend and Group operations`);\n }\n\n // Determine selectivity of join\n const selectivity = (await this.mediatorJoinSelectivity.mediate({\n entries: action.entries,\n context: action.context,\n })).selectivity * this.selectivityModifier;\n\n return {\n iterations: metadatas[0].cardinality.value * metadatas[1].cardinality.value * selectivity,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] +\n metadatas[0].cardinality.value * selectivity * (\n requestItemTimes[0] +\n requestInitialTimes[1] +\n metadatas[1].cardinality.value * requestItemTimes[1]\n ),\n };\n }\n}\n\nexport interface IActorRdfJoinOptionalBindArgs extends IActorRdfJoinArgs {\n /**\n * The order in which elements should be bound\n * @default {depth-first}\n */\n bindOrder: BindOrder;\n /**\n * Multiplier for selectivity values\n * @range {double}\n * @default {0.0001}\n */\n selectivityModifier: number;\n /**\n * The query operation mediator\n */\n mediatorQueryOperation: MediatorQueryOperation;\n}\n","import type { IActionRdfJoin,\n IActorRdfJoinOutputInner,\n IActorRdfJoinArgs } from '@comunica/bus-rdf-join';\nimport {\n ActorRdfJoin,\n} from '@comunica/bus-rdf-join';\nimport type { IMediatorTypeJoinCoefficients } from '@comunica/mediatortype-join-coefficients';\nimport type { Bindings, MetadataBindings } from '@comunica/types';\nimport { NestedLoopJoin } from 'asyncjoin';\n\n/**\n * A comunica Optional Nested Loop RDF Join Actor.\n */\nexport class ActorRdfJoinOptionalNestedLoop extends ActorRdfJoin {\n public constructor(args: IActorRdfJoinArgs) {\n super(args, {\n logicalType: 'optional',\n physicalName: 'nested-loop',\n limitEntries: 2,\n canHandleUndefs: true,\n });\n }\n\n public async getOutput(action: IActionRdfJoin): Promise {\n const join = new NestedLoopJoin(\n action.entries[0].output.bindingsStream,\n action.entries[1].output.bindingsStream,\n ActorRdfJoin.joinBindings,\n { optional: true, autoStart: false },\n );\n return {\n result: {\n type: 'bindings',\n bindingsStream: join,\n metadata: async() => await this.constructResultMetadata(\n action.entries,\n await ActorRdfJoin.getMetadatas(action.entries),\n action.context,\n { canContainUndefs: true },\n ),\n },\n };\n }\n\n protected async getJoinCoefficients(\n action: IActionRdfJoin,\n metadatas: MetadataBindings[],\n ): Promise {\n const requestInitialTimes = ActorRdfJoin.getRequestInitialTimes(metadatas);\n const requestItemTimes = ActorRdfJoin.getRequestItemTimes(metadatas);\n return {\n iterations: metadatas[0].cardinality.value * metadatas[1].cardinality.value,\n persistedItems: 0,\n blockingItems: 0,\n requestTime: requestInitialTimes[0] + metadatas[0].cardinality.value * requestItemTimes[0] +\n requestInitialTimes[1] + metadatas[1].cardinality.value * requestItemTimes[1],\n };\n }\n}\n","import type { IActionRdfJoinSelectivity, IActorRdfJoinSelectivityOutput } from '@comunica/bus-rdf-join-selectivity';\nimport { ActorRdfJoinSelectivity } from '@comunica/bus-rdf-join-selectivity';\nimport type { IActorArgs } from '@comunica/core';\nimport type { IMediatorTypeAccuracy } from '@comunica/mediatortype-accuracy';\nimport { Algebra, Util } from 'sparqlalgebrajs';\n\n/**\n * A comunica Variable Counting RDF Join Selectivity Actor.\n * Based on the \"variable counting predicates\" heuristic from\n * \"SPARQL basic graph pattern optimization using selectivity estimation.\"\n */\nexport class ActorRdfJoinSelectivityVariableCounting extends ActorRdfJoinSelectivity {\n // Calculated as sum of unbound join type costs times 2 (best-case)\n public static MAX_PAIRWISE_COST = 41 * 2;\n\n public constructor(\n args: IActorArgs,\n ) {\n super(args);\n }\n\n public async test(action: IActionRdfJoinSelectivity): Promise {\n return { accuracy: 0.5 };\n }\n\n public static getPatternCost(pattern: Algebra.Pattern | Algebra.Path): number {\n let cost = 1;\n if (pattern.subject.termType === 'Variable') {\n cost += 4;\n }\n if (pattern.predicate.termType === 'Variable' || pattern.type === Algebra.types.PATH) {\n cost += 1;\n }\n if (pattern.object.termType === 'Variable') {\n cost += 2;\n }\n if (pattern.graph.termType === 'Variable') {\n cost += 1;\n }\n return cost / 9;\n }\n\n public static getJoinTypes(\n operation1: Algebra.Pattern | Algebra.Path,\n operation2: Algebra.Pattern | Algebra.Path,\n ): JoinTypes[] {\n const joinTypes: JoinTypes[] = [];\n\n // Check operation1.subject\n if (operation1.subject.termType === 'Variable') {\n if (operation1.subject.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.unboundSS);\n }\n if (operation2.type === 'pattern' && operation1.subject.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.unboundSP);\n }\n if (operation1.subject.equals(operation2.object)) {\n joinTypes.push(JoinTypes.unboundSO);\n }\n if (operation1.subject.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.unboundSG);\n }\n } else {\n if (operation1.subject.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.boundSS);\n }\n if (operation2.type === 'pattern' && operation1.subject.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.boundSP);\n }\n if (operation1.subject.equals(operation2.object)) {\n joinTypes.push(JoinTypes.boundSO);\n }\n if (operation1.subject.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.boundSG);\n }\n }\n\n // Check operation1.predicate\n if (operation1.type === 'pattern') {\n if (operation1.predicate.termType === 'Variable') {\n if (operation1.predicate.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.unboundPS);\n }\n if (operation2.type === 'pattern' && operation1.predicate.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.unboundPP);\n }\n if (operation1.predicate.equals(operation2.object)) {\n joinTypes.push(JoinTypes.unboundPO);\n }\n if (operation1.predicate.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.unboundPG);\n }\n } else {\n if (operation1.predicate.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.boundPS);\n }\n if (operation2.type === 'pattern' && operation1.predicate.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.boundPP);\n }\n if (operation1.predicate.equals(operation2.object)) {\n joinTypes.push(JoinTypes.boundPO);\n }\n if (operation1.predicate.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.boundPG);\n }\n }\n }\n\n // Check operation1.object\n if (operation1.object.termType === 'Variable') {\n if (operation1.object.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.unboundOS);\n }\n if (operation2.type === 'pattern' && operation1.object.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.unboundOP);\n }\n if (operation1.object.equals(operation2.object)) {\n joinTypes.push(JoinTypes.unboundOO);\n }\n if (operation1.object.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.unboundOG);\n }\n } else {\n if (operation1.object.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.boundOS);\n }\n if (operation2.type === 'pattern' && operation1.object.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.boundOP);\n }\n if (operation1.object.equals(operation2.object)) {\n joinTypes.push(JoinTypes.boundOO);\n }\n if (operation1.object.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.boundOG);\n }\n }\n\n // Check operation1.graph\n if (operation1.graph.termType === 'Variable') {\n if (operation1.graph.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.unboundGS);\n }\n if (operation2.type === 'pattern' && operation1.graph.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.unboundGP);\n }\n if (operation1.graph.equals(operation2.object)) {\n joinTypes.push(JoinTypes.unboundGO);\n }\n if (operation1.graph.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.unboundGG);\n }\n } else {\n if (operation1.graph.equals(operation2.subject)) {\n joinTypes.push(JoinTypes.boundGS);\n }\n if (operation2.type === 'pattern' && operation1.graph.equals(operation2.predicate)) {\n joinTypes.push(JoinTypes.boundGP);\n }\n if (operation1.graph.equals(operation2.object)) {\n joinTypes.push(JoinTypes.boundGO);\n }\n if (operation1.graph.equals(operation2.graph)) {\n joinTypes.push(JoinTypes.boundGG);\n }\n }\n\n return joinTypes;\n }\n\n public static getOperationsPairwiseJoinCost(\n operation1: Algebra.Pattern | Algebra.Path,\n operation2: Algebra.Pattern | Algebra.Path,\n ): number {\n let cost = ActorRdfJoinSelectivityVariableCounting.MAX_PAIRWISE_COST;\n\n for (const joinType of ActorRdfJoinSelectivityVariableCounting.getJoinTypes(operation1, operation2)) {\n switch (joinType) {\n case JoinTypes.boundSS:\n cost -= 2 * 2;\n break;\n case JoinTypes.boundSP:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundSO:\n cost -= 1 * 2;\n break;\n case JoinTypes.boundSG:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundPS:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundPP:\n // Special case: patterns with equal (bound) predicates have the highest cost\n return 1;\n case JoinTypes.boundPO:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundPG:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundOS:\n cost -= 1 * 2;\n break;\n case JoinTypes.boundOP:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundOO:\n cost -= 1 * 2;\n break;\n case JoinTypes.boundOG:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundGS:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundGP:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundGO:\n cost -= 3 * 2;\n break;\n case JoinTypes.boundGG:\n cost -= 3 * 2;\n break;\n case JoinTypes.unboundSS:\n cost -= 2;\n break;\n case JoinTypes.unboundSP:\n cost -= 3;\n break;\n case JoinTypes.unboundSO:\n cost -= 1;\n break;\n case JoinTypes.unboundSG:\n cost -= 3;\n break;\n case JoinTypes.unboundPS:\n cost -= 3;\n break;\n case JoinTypes.unboundPP:\n cost -= 3;\n break;\n case JoinTypes.unboundPO:\n cost -= 3;\n break;\n case JoinTypes.unboundPG:\n cost -= 3;\n break;\n case JoinTypes.unboundOS:\n cost -= 1;\n break;\n case JoinTypes.unboundOP:\n cost -= 3;\n break;\n case JoinTypes.unboundOO:\n cost -= 1;\n break;\n case JoinTypes.unboundOG:\n cost -= 3;\n break;\n case JoinTypes.unboundGS:\n cost -= 3;\n break;\n case JoinTypes.unboundGP:\n cost -= 3;\n break;\n case JoinTypes.unboundGO:\n cost -= 3;\n break;\n case JoinTypes.unboundGG:\n cost -= 3;\n break;\n }\n }\n\n return cost / ActorRdfJoinSelectivityVariableCounting.MAX_PAIRWISE_COST;\n }\n\n public static getOperationsJoinCost(operations: Algebra.Operation[]): number {\n // Determine all operations that select values (patterns and paths)\n const patterns: (Algebra.Pattern | Algebra.Path)[] = [];\n for (const operation of operations) {\n Util.recurseOperation(operation, {\n [Algebra.types.PATTERN](pattern: Algebra.Pattern): boolean {\n patterns.push(pattern);\n return false;\n },\n [Algebra.types.PATH](path: Algebra.Path): boolean {\n patterns.push(path);\n return false;\n },\n });\n }\n\n // Determine pairwise costs\n let totalCost = 0;\n let costEntries = 0;\n for (const pattern1 of patterns) {\n for (const pattern2 of patterns) {\n if (pattern1 !== pattern2) {\n totalCost += ActorRdfJoinSelectivityVariableCounting.getOperationsPairwiseJoinCost(pattern1, pattern2);\n costEntries++;\n }\n }\n }\n\n // If there are no overlapping patterns, the cost is 1\n if (costEntries === 0) {\n return 1;\n }\n\n // Combine all pairwise costs, and multiply with costs of each pattern separately\n return totalCost / costEntries * patterns\n .reduce((factor, pattern) => factor * ActorRdfJoinSelectivityVariableCounting.getPatternCost(pattern), 1);\n }\n\n public async run(action: IActionRdfJoinSelectivity): Promise {\n if (action.entries.length <= 1) {\n return { selectivity: 1 };\n }\n return {\n selectivity: ActorRdfJoinSelectivityVariableCounting\n .getOperationsJoinCost(action.entries.map(entry => entry.operation)),\n };\n }\n}\n\nexport enum JoinTypes {\n boundSS,\n boundSP,\n boundSO,\n boundSG,\n boundPS,\n boundPP,\n boundPO,\n boundPG,\n boundOS,\n boundOP,\n boundOO,\n boundOG,\n boundGS,\n boundGP,\n boundGO,\n boundGG,\n\n unboundSS,\n unboundSP,\n unboundSO,\n unboundSG,\n unboundPS,\n unboundPP,\n unboundPO,\n unboundPG,\n unboundOS,\n unboundOP,\n unboundOO,\n unboundOG,\n unboundGS,\n unboundGP,\n unboundGO,\n unboundGG,\n}\n","import type { IActionRdfMetadataAccumulate, IActorRdfMetadataAccumulateOutput,\n IActorRdfMetadataAccumulateArgs } from '@comunica/bus-rdf-metadata-accumulate';\nimport { ActorRdfMetadataAccumulate } from '@comunica/bus-rdf-metadata-accumulate';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica CanContainUndefs RDF Metadata Accumulate Actor.\n */\nexport class ActorRdfMetadataAccumulateCanContainUndefs extends ActorRdfMetadataAccumulate {\n public constructor(args: IActorRdfMetadataAccumulateArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataAccumulate): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataAccumulate): Promise {\n // Return default value on initialize\n if (action.mode === 'initialize') {\n return { metadata: { canContainUndefs: false }};\n }\n\n // Otherwise, attempt to increment existing value\n let canContainUndefs = action.accumulatedMetadata.canContainUndefs;\n if (action.appendingMetadata.canContainUndefs) {\n canContainUndefs = true;\n }\n return { metadata: { canContainUndefs }};\n }\n}\n","import type { IActionRdfMetadataAccumulate, IActorRdfMetadataAccumulateOutput,\n IActorRdfMetadataAccumulateArgs } from '@comunica/bus-rdf-metadata-accumulate';\nimport { ActorRdfMetadataAccumulate } from '@comunica/bus-rdf-metadata-accumulate';\nimport type { IActorTest } from '@comunica/core';\nimport type { QueryResultCardinality } from '@comunica/types';\n\n/**\n * A comunica Cardinality RDF Metadata Accumulate Actor.\n */\nexport class ActorRdfMetadataAccumulateCardinality extends ActorRdfMetadataAccumulate {\n public constructor(args: IActorRdfMetadataAccumulateArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataAccumulate): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataAccumulate): Promise {\n // Return default value on initialize\n if (action.mode === 'initialize') {\n return { metadata: { cardinality: { type: 'exact', value: 0 }}};\n }\n\n // Otherwise, attempt to update existing value\n const cardinality: QueryResultCardinality = { ...action.accumulatedMetadata.cardinality };\n\n if (cardinality.dataset) {\n if (action.appendingMetadata.cardinality.dataset) {\n // If the accumulated cardinality is dataset-wide\n if (cardinality.dataset !== action.appendingMetadata.cardinality.dataset &&\n action.appendingMetadata.subsetOf === cardinality.dataset) {\n // If the appending cardinality refers to the subset of a dataset,\n // use the cardinality of the subset.\n return { metadata: { cardinality: action.appendingMetadata.cardinality }};\n }\n if (cardinality.dataset !== action.appendingMetadata.cardinality.dataset) {\n // If the appending cardinality refers to another dataset,\n // remove the dataset scopes.\n delete cardinality.dataset;\n } else {\n // If the appending cardinality is for the same dataset,\n // keep the accumulated cardinality unchanged.\n return { metadata: { cardinality }};\n }\n } else {\n // If the appending cardinality refers to a dataset subset,\n // keep the accumulated cardinality unchanged.\n return { metadata: { cardinality }};\n }\n }\n\n if (!action.appendingMetadata.cardinality || !Number.isFinite(action.appendingMetadata.cardinality.value)) {\n // We're already at infinite, so ignore any later metadata\n cardinality.type = 'estimate';\n cardinality.value = Number.POSITIVE_INFINITY;\n } else {\n if (action.appendingMetadata.cardinality.type === 'estimate') {\n cardinality.type = 'estimate';\n }\n cardinality.value += action.appendingMetadata.cardinality.value;\n }\n\n return { metadata: { cardinality }};\n }\n}\n","import type { IActionRdfMetadataAccumulate, IActorRdfMetadataAccumulateOutput,\n IActorRdfMetadataAccumulateArgs } from '@comunica/bus-rdf-metadata-accumulate';\nimport { ActorRdfMetadataAccumulate } from '@comunica/bus-rdf-metadata-accumulate';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica PageSize RDF Metadata Accumulate Actor.\n */\nexport class ActorRdfMetadataAccumulatePageSize extends ActorRdfMetadataAccumulate {\n public constructor(args: IActorRdfMetadataAccumulateArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataAccumulate): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataAccumulate): Promise {\n // Return nothing on initialize\n if (action.mode === 'initialize') {\n return { metadata: {}};\n }\n\n // Otherwise, attempt to increment existing value\n return {\n metadata: {\n ...('pageSize' in action.accumulatedMetadata) || ('pageSize' in action.appendingMetadata) ?\n {\n pageSize: (action.accumulatedMetadata.pageSize || 0) + (action.appendingMetadata.pageSize || 0),\n } :\n {},\n },\n };\n }\n}\n","import type { IActionRdfMetadataAccumulate, IActorRdfMetadataAccumulateOutput,\n IActorRdfMetadataAccumulateArgs } from '@comunica/bus-rdf-metadata-accumulate';\nimport { ActorRdfMetadataAccumulate } from '@comunica/bus-rdf-metadata-accumulate';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica RequestTime RDF Metadata Accumulate Actor.\n */\nexport class ActorRdfMetadataAccumulateRequestTime extends ActorRdfMetadataAccumulate {\n public constructor(args: IActorRdfMetadataAccumulateArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataAccumulate): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataAccumulate): Promise {\n // Return nothing on initialize\n if (action.mode === 'initialize') {\n return { metadata: {}};\n }\n\n // Otherwise, attempt to increment existing value\n return {\n metadata: {\n ...('requestTime' in action.accumulatedMetadata) || ('requestTime' in action.appendingMetadata) ?\n {\n requestTime: (action.accumulatedMetadata.requestTime || 0) + (action.appendingMetadata.requestTime || 0),\n } :\n {},\n },\n };\n }\n}\n","import type { IActionRdfMetadata, IActorRdfMetadataArgs, IActorRdfMetadataOutput } from '@comunica/bus-rdf-metadata';\nimport { ActorRdfMetadata } from '@comunica/bus-rdf-metadata';\nimport type { IActorTest } from '@comunica/core';\nimport { Readable } from 'readable-stream';\n\n/**\n * A comunica All RDF Metadata Actor.\n */\nexport class ActorRdfMetadataAll extends ActorRdfMetadata {\n public constructor(args: IActorRdfMetadataArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadata): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadata): Promise {\n const data: Readable = new Readable({ objectMode: true });\n const metadata: Readable = new Readable({ objectMode: true });\n\n // Forward errors (attach them immediately as they could arrive earlier)\n action.quads.on('error', error => {\n data.emit('error', error);\n metadata.emit('error', error);\n });\n\n // Delay attachment of listeners until the data or metadata stream is being read.\n const attachListeners = (): void => {\n // Attach listeners only once\n data._read = metadata._read = () => {\n // Do nothing\n };\n\n // Forward quads to both streams\n action.quads.on('data', quad => {\n data.push(quad);\n metadata.push(quad);\n });\n\n // Terminate both streams on-end\n action.quads.on('end', () => {\n data.push(null);\n metadata.push(null);\n });\n };\n data._read = metadata._read = () => {\n attachListeners();\n };\n\n return { data, metadata };\n }\n}\n","import type {\n IActionRdfMetadataExtract,\n IActorRdfMetadataExtractArgs,\n IActorRdfMetadataExtractOutput,\n} from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica Allow HTTP Methods RDF Metadata Extract Actor.\n */\nexport class ActorRdfMetadataExtractAllowHttpMethods extends ActorRdfMetadataExtract {\n public constructor(args: IActorRdfMetadataExtractArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n const metadata: Record = {};\n if (action.headers?.get('allow')) {\n metadata.allowHttpMethods = action.headers.get('allow')?.split(/, */u);\n }\n return { metadata };\n }\n}\n","import type { IActionRdfMetadataExtract,\n IActorRdfMetadataExtractOutput, IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\nimport type * as RDF from '@rdfjs/types';\nimport type { UriTemplate } from 'uritemplate';\nimport { parse as parseUriTemplate } from 'uritemplate';\n\n/**\n * An RDF Metadata Extract Actor that extracts all Hydra controls from the metadata stream.\n */\nexport class ActorRdfMetadataExtractHydraControls extends ActorRdfMetadataExtract {\n public static readonly HYDRA: string = 'http://www.w3.org/ns/hydra/core#';\n public static readonly LINK_TYPES: string[] = [ 'first', 'next', 'previous', 'last' ];\n protected readonly parsedUriTemplateCache: Record = {};\n\n public constructor(args: IActorRdfMetadataExtractArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n /**\n * Collect all Hydra page links from the given Hydra properties object.\n * @param pageUrl The page URL in which the Hydra properties are defined.\n * @param hydraProperties The collected Hydra properties.\n * @return The Hydra links\n */\n public getLinks(pageUrl: string, hydraProperties: Record>):\n Record {\n return Object.fromEntries(ActorRdfMetadataExtractHydraControls.LINK_TYPES.map(link => {\n // First check the correct hydra:next, then the deprecated hydra:nextPage\n const links = hydraProperties[link] || hydraProperties[`${link}Page`];\n const linkTargets = links && links[pageUrl];\n return [ link, linkTargets && linkTargets.length > 0 ? linkTargets[0] : null ];\n }));\n }\n\n /**\n * Parse a URI template, or retrieve it from a cache.\n * @param {string} template A URI template string.\n * @return {} A parsed URI template object.\n */\n public parseUriTemplateCached(template: string): UriTemplate {\n const cachedUriTemplate: UriTemplate = this.parsedUriTemplateCache[template];\n if (cachedUriTemplate) {\n return cachedUriTemplate;\n }\n // eslint-disable-next-line no-return-assign\n return this.parsedUriTemplateCache[template] = parseUriTemplate(template);\n }\n\n /**\n * Collect all search forms from the given Hydra properties object.\n * @param hydraProperties The collected Hydra properties.\n * @return The search forms.\n */\n public getSearchForms(hydraProperties: Record>): ISearchForms {\n const searchFormData: Record = hydraProperties.search;\n const searchForms: ISearchForm[] = [];\n if (searchFormData) {\n for (const dataset in searchFormData) {\n for (const searchFormId of searchFormData[dataset]) {\n const searchTemplates = (hydraProperties.template || {})[searchFormId] || [];\n\n // Parse the template\n if (searchTemplates.length !== 1) {\n throw new Error(`Expected 1 hydra:template for ${searchFormId}`);\n }\n const template: string = searchTemplates[0];\n const searchTemplate: UriTemplate = this.parseUriTemplateCached(template);\n\n // Parse the template mappings\n const mappings: Record = Object\n .fromEntries(((hydraProperties.mapping || {})[searchFormId] || [])\n .map(mapping => {\n const variable = ((hydraProperties.variable || {})[mapping] || [])[0];\n const property = ((hydraProperties.property || {})[mapping] || [])[0];\n if (!variable) {\n throw new Error(`Expected a hydra:variable for ${mapping}`);\n }\n if (!property) {\n throw new Error(`Expected a hydra:property for ${mapping}`);\n }\n return [ property, variable ];\n }));\n\n // Gets the URL of the Triple Pattern Fragment with the given triple pattern\n const getUri = (entries: Record): string => searchTemplate\n .expand(Object.fromEntries(Object.keys(entries).map(key => [ mappings[key], entries[key] ])));\n\n searchForms.push({ dataset, template, mappings, getUri });\n }\n }\n }\n return { values: searchForms };\n }\n\n /**\n * Collect all hydra properties from a given metadata stream\n * in a nice convenient nested hash (property / subject / objects).\n * @param {RDF.Stream} metadata\n * @return The collected Hydra properties.\n */\n public getHydraProperties(metadata: RDF.Stream): Promise>> {\n return new Promise((resolve, reject) => {\n metadata.on('error', reject);\n\n // Collect all hydra properties in a nice convenient nested hash (property / subject / objects).\n const hydraProperties: Record> = {};\n metadata.on('data', quad => {\n if (quad.predicate.value.startsWith(ActorRdfMetadataExtractHydraControls.HYDRA)) {\n const property = quad.predicate.value.slice(ActorRdfMetadataExtractHydraControls.HYDRA.length);\n const subjectProperties = hydraProperties[property] || (hydraProperties[property] = {});\n const objects = subjectProperties[quad.subject.value] || (subjectProperties[quad.subject.value] = []);\n objects.push(quad.object.value);\n }\n });\n\n metadata.on('end', () => resolve(hydraProperties));\n });\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n const metadata: IActorRdfMetadataExtractOutput['metadata'] = {};\n const hydraProperties = await this.getHydraProperties(action.metadata);\n Object.assign(metadata, this.getLinks(action.url, hydraProperties));\n metadata.searchForms = this.getSearchForms(hydraProperties);\n return { metadata };\n }\n}\n\nexport interface ISearchForm {\n /**\n * The dataset in which the search form is defined.\n */\n dataset: string;\n /**\n * The URI template containing Hydra variables.\n */\n template: string;\n /**\n * The mappings.\n * With as keys the Hydra properties,\n * and as values the Hydra variables\n */\n mappings: Record;\n\n /**\n * Instantiate a uri based on the given Hydra variable values.\n * @param entries Entries with as keys Hydra properties,\n * and as values Hydra variable values.\n * @return {string} The instantiated URI\n */\n getUri: (entries: Record) => string;\n}\n\nexport interface ISearchForms {\n /**\n * All available search forms.\n */\n values: ISearchForm[];\n}\n","import type { IActionRdfMetadataExtract,\n IActorRdfMetadataExtractOutput, IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * An RDF Metadata Extract Actor that extracts total items counts from a metadata stream based on the given predicates.\n */\nexport class ActorRdfMetadataExtractHydraCount extends ActorRdfMetadataExtract\n implements IActorRdfParseFixedMediaTypesArgs {\n public readonly predicates: string[];\n\n public constructor(args: IActorRdfParseFixedMediaTypesArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public run(action: IActionRdfMetadataExtract): Promise {\n return new Promise((resolve, reject) => {\n // Forward errors\n action.metadata.on('error', reject);\n\n // Immediately resolve when a value has been found.\n action.metadata.on('data', quad => {\n if (this.predicates.includes(quad.predicate.value)) {\n resolve({\n metadata: {\n cardinality: {\n type: 'estimate',\n value: Number.parseInt(quad.object.value, 10),\n dataset: quad.subject.value,\n },\n },\n });\n }\n });\n\n // If no value has been found, assume infinity.\n action.metadata.on('end', () => {\n resolve({ metadata: { cardinality: { type: 'estimate', value: 0 }}});\n });\n });\n }\n}\n\nexport interface IActorRdfParseFixedMediaTypesArgs extends IActorRdfMetadataExtractArgs {\n /**\n * A predicate that provides a count estimate\n * @default {http://www.w3.org/ns/hydra/core#totalItems}\n * @default {http://rdfs.org/ns/void#triples}\n */\n predicates: string[];\n}\n","import type { IActionRdfMetadataExtract, IActorRdfMetadataExtractOutput,\n IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica Hydra Pagesize RDF Metadata Extract Actor.\n */\nexport class ActorRdfMetadataExtractHydraPagesize extends ActorRdfMetadataExtract {\n public readonly predicates: string[];\n\n public constructor(args: IActorRdfMetadataExtractHydraPagesizeArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n return new Promise((resolve, reject) => {\n // Forward errors\n action.metadata.on('error', reject);\n\n // Immediately resolve when a value has been found.\n action.metadata.on('data', quad => {\n if (this.predicates.includes(quad.predicate.value)) {\n resolve({ metadata: { pageSize: Number.parseInt(quad.object.value, 10) }});\n }\n });\n\n // If no value has been found, don't define the pageSize value.\n action.metadata.on('end', () => {\n resolve({ metadata: {}});\n });\n });\n }\n}\n\nexport interface IActorRdfMetadataExtractHydraPagesizeArgs extends IActorRdfMetadataExtractArgs {\n /**\n * A predicate that provides the page size\n * @default {http://www.w3.org/ns/hydra/core#itemsPerPage}\n */\n predicates: string[];\n}\n","import type {\n IActionRdfMetadataExtract, IActorRdfMetadataExtractOutput,\n IActorRdfMetadataExtractArgs,\n} from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica Patch SPARQL Update RDF Metadata Extract Actor.\n */\nexport class ActorRdfMetadataExtractPatchSparqlUpdate extends ActorRdfMetadataExtract {\n public constructor(args: IActorRdfMetadataExtractArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n const metadata: IActorRdfMetadataExtractOutput['metadata'] = {};\n // The ms-author-via header is added for backwards-compatibility with old Solid servers\n if (\n action.headers?.get('accept-patch')?.includes('application/sparql-update') ||\n action.headers?.get('ms-author-via')?.includes('SPARQL')\n ) {\n metadata.patchSparqlUpdate = true;\n }\n return { metadata };\n }\n}\n","import type { IActionRdfMetadataExtract, IActorRdfMetadataExtractOutput,\n IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica PUT Accepted RDF Metadata Extract Actor.\n */\nexport class ActorRdfMetadataExtractPutAccepted extends ActorRdfMetadataExtract {\n public constructor(args: IActorRdfMetadataExtractArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n const metadata: IActorRdfMetadataExtractOutput['metadata'] = {};\n if (action.headers?.get('accept-put')) {\n metadata.putAccepted = action.headers.get('accept-put')?.split(/, */u);\n }\n return { metadata };\n }\n}\n","import type { IActionRdfMetadataExtract, IActorRdfMetadataExtractOutput,\n IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\n\n/**\n * A comunica Request Time RDF Metadata Extract Actor.\n */\nexport class ActorRdfMetadataExtractRequestTime extends ActorRdfMetadataExtract {\n public constructor(args: IActorRdfMetadataExtractArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n return { metadata: { requestTime: action.requestTime }};\n }\n}\n","import type { IActionRdfMetadataExtract, IActorRdfMetadataExtractOutput,\n IActorRdfMetadataExtractArgs } from '@comunica/bus-rdf-metadata-extract';\nimport { ActorRdfMetadataExtract } from '@comunica/bus-rdf-metadata-extract';\nimport type { IActorTest } from '@comunica/core';\nimport { resolve as resolveIri } from 'relative-to-absolute-iri';\n\n/**\n * A comunica RDF Metadata Extract Actor for SPARQL service descriptions.\n */\nexport class ActorRdfMetadataExtractSparqlService extends ActorRdfMetadataExtract {\n private readonly inferHttpsEndpoint: boolean;\n\n public constructor(args: IActorRdfMetadataExtractSparqlServiceArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadataExtract): Promise {\n return true;\n }\n\n public async run(action: IActionRdfMetadataExtract): Promise {\n return new Promise((resolve, reject) => {\n // Forward errors\n action.metadata.on('error', reject);\n\n // Immediately resolve when a SPARQL service endpoint URL has been found\n const metadata: any = {};\n action.metadata.on('data', quad => {\n if (quad.predicate.value === 'http://www.w3.org/ns/sparql-service-description#endpoint' &&\n (quad.subject.termType === 'BlankNode' || quad.subject.value === action.url)) {\n metadata.sparqlService = quad.object.termType === 'Literal' ?\n resolveIri(quad.object.value, action.url) :\n quad.object.value;\n\n // Fix a common mistake in SPARQL endpoint setups where HTTPS SD's refer to a non-existing HTTP API\n if (this.inferHttpsEndpoint &&\n action.url.startsWith('https') && !metadata.sparqlService.startsWith('https')) {\n metadata.sparqlService = metadata.sparqlService.replace('http:', 'https:');\n }\n } else if (quad.predicate.value === 'http://www.w3.org/ns/sparql-service-description#defaultGraph') {\n metadata.defaultGraph = quad.object.value;\n }\n });\n\n // If no value has been found, emit nothing.\n action.metadata.on('end', () => {\n resolve({ metadata });\n });\n });\n }\n}\n\nexport interface IActorRdfMetadataExtractSparqlServiceArgs extends IActorRdfMetadataExtractArgs {\n /**\n * If HTTPS endpoints should be forcefully used if the original URL was HTTPS-based\n * @default {true}\n */\n inferHttpsEndpoint: boolean;\n}\n","import type { IActionRdfMetadata, IActorRdfMetadataArgs, IActorRdfMetadataOutput } from '@comunica/bus-rdf-metadata';\nimport { ActorRdfMetadata } from '@comunica/bus-rdf-metadata';\nimport type { IActorTest } from '@comunica/core';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\n\n/**\n * An RDF Metadata Actor that splits off the metadata based on the existence of a 'foaf:primaryTopic' link.\n * Only non-triple quad streams are supported.\n */\nexport class ActorRdfMetadataPrimaryTopic extends ActorRdfMetadata {\n private readonly metadataToData: boolean;\n private readonly dataToMetadataOnInvalidMetadataGraph: boolean;\n\n public constructor(args: IActorRdfMetadataPrimaryTopicArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfMetadata): Promise {\n if (action.triples) {\n throw new Error('This actor only supports non-triple quad streams.');\n }\n return true;\n }\n\n public async run(action: IActionRdfMetadata): Promise {\n const data: Readable = new Readable({ objectMode: true });\n const metadata: Readable = new Readable({ objectMode: true });\n\n // Delay attachment of listeners until the data or metadata stream is being read.\n const attachListeners = (): void => {\n // Attach listeners only once\n data._read = metadata._read = () => {\n // Do nothing\n };\n\n // Forward errors\n action.quads.on('error', error => {\n data.emit('error', error);\n metadata.emit('error', error);\n });\n\n // First pass over data to categorize in graphs,\n // and to detect the primaryTopic triple.\n const graphs: Record = {};\n let endpointIdentifier: string | undefined;\n const primaryTopics: Record = {};\n action.quads.on('data', quad => {\n if (quad.predicate.value === 'http://rdfs.org/ns/void#subset' &&\n quad.object.value === action.url) {\n endpointIdentifier = quad.subject.value;\n } else if (quad.predicate.value === 'http://xmlns.com/foaf/0.1/primaryTopic') {\n primaryTopics[quad.object.value] = quad.subject.value;\n }\n let quads: RDF.Quad[] = graphs[quad.graph.value];\n if (!quads) {\n quads = graphs[quad.graph.value] = [];\n }\n quads.push(quad);\n });\n\n // When the stream has finished,\n // determine the appropriate metadata graph,\n // and emit all quads to the appropriate streams.\n action.quads.on('end', () => {\n const metadataGraph: string | undefined = endpointIdentifier ? primaryTopics[endpointIdentifier] : undefined;\n for (const graphName in graphs) {\n if (graphName === metadataGraph) {\n for (const quad of graphs[graphName]) {\n metadata.push(quad);\n }\n // Also emit metadata to data if requested\n if (this.metadataToData) {\n for (const quad of graphs[graphName]) {\n data.push(quad);\n }\n }\n } else {\n for (const quad of graphs[graphName]) {\n data.push(quad);\n }\n if (!metadataGraph && this.dataToMetadataOnInvalidMetadataGraph) {\n for (const quad of graphs[graphName]) {\n metadata.push(quad);\n }\n }\n }\n }\n data.push(null);\n metadata.push(null);\n });\n };\n data._read = metadata._read = () => {\n attachListeners();\n };\n\n return { data, metadata };\n }\n}\n\nexport interface IActorRdfMetadataPrimaryTopicArgs extends IActorRdfMetadataArgs {\n /**\n * If detected metadata triples should also be emitted as data triples\n * @default {false}\n */\n metadataToData: boolean;\n /**\n * If all data should also be seen as metadata when no metadata graph was detected\n * @default {true}\n */\n dataToMetadataOnInvalidMetadataGraph: boolean;\n}\n","import type {\n IActionRdfParseHtml,\n IActorRdfParseHtmlArgs,\n IActorRdfParseHtmlOutput,\n} from '@comunica/bus-rdf-parse-html';\nimport { ActorRdfParseHtml } from '@comunica/bus-rdf-parse-html';\nimport type { IActorTest } from '@comunica/core';\nimport { MicrodataRdfParser } from 'microdata-rdf-streaming-parser';\n\n/**\n * A comunica Microdata RDF Parse Html Actor.\n */\nexport class ActorRdfParseHtmlMicrodata extends ActorRdfParseHtml {\n public constructor(args: IActorRdfParseHtmlArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfParseHtml): Promise {\n return true;\n }\n\n public async run(action: IActionRdfParseHtml): Promise {\n const mediaType = action.headers ? action.headers.get('content-type') : null;\n const xmlMode = mediaType?.includes('xml');\n\n const htmlParseListener = new MicrodataRdfParser({ baseIRI: action.baseIRI, xmlMode });\n htmlParseListener.on('error', action.error);\n htmlParseListener.on('data', action.emit);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const onTagEndOld = htmlParseListener.onEnd;\n htmlParseListener.onEnd = () => {\n onTagEndOld.call(htmlParseListener);\n action.end();\n };\n return { htmlParseListener };\n }\n}\n","import type { IActionRdfParseHtml, IActorRdfParseHtmlOutput,\n IActorRdfParseHtmlArgs } from '@comunica/bus-rdf-parse-html';\nimport { ActorRdfParseHtml } from '@comunica/bus-rdf-parse-html';\nimport type { IActorTest } from '@comunica/core';\nimport { RdfaParser } from 'rdfa-streaming-parser';\n\n/**\n * A comunica RDFa RDF Parse Html Actor.\n */\nexport class ActorRdfParseHtmlRdfa extends ActorRdfParseHtml {\n public constructor(args: IActorRdfParseHtmlArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfParseHtml): Promise {\n return true;\n }\n\n public async run(action: IActionRdfParseHtml): Promise {\n const mediaType = action.headers ? action.headers.get('content-type') : null;\n const language = (action.headers && action.headers.get('content-language')) ?? undefined;\n const profile = mediaType && mediaType.includes('xml') ? 'xhtml' : 'html';\n\n const htmlParseListener = new RdfaParser({ baseIRI: action.baseIRI, profile, language });\n htmlParseListener.on('error', action.error);\n htmlParseListener.on('data', action.emit);\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const onTagEndOld = htmlParseListener.onEnd;\n htmlParseListener.onEnd = () => {\n onTagEndOld.call(htmlParseListener);\n action.end();\n };\n return { htmlParseListener };\n }\n}\n","import type { MediatorRdfParseHandle, MediatorRdfParseMediaTypes } from '@comunica/bus-rdf-parse';\nimport type { IActionRdfParseHtml, IActorRdfParseHtmlOutput,\n IActorRdfParseHtmlArgs } from '@comunica/bus-rdf-parse-html';\nimport { ActorRdfParseHtml } from '@comunica/bus-rdf-parse-html';\nimport type { IActorTest } from '@comunica/core';\nimport { HtmlScriptListener } from './HtmlScriptListener';\n\n/**\n * A HTML script RDF Parse actor that listens on the 'rdf-parse' bus.\n *\n * It is able to extract and parse any RDF serialization from script tags in HTML files\n * and announce the presence of them by media type.\n */\nexport class ActorRdfParseHtmlScript extends ActorRdfParseHtml {\n private readonly mediatorRdfParseMediatypes: MediatorRdfParseMediaTypes;\n private readonly mediatorRdfParseHandle: MediatorRdfParseHandle;\n\n public constructor(args: IActorRdfParseHtmlScriptArgs) {\n super(args);\n }\n\n public async test(action: IActionRdfParseHtml): Promise {\n return true;\n }\n\n public async run(action: IActionRdfParseHtml): Promise {\n const supportedTypes: Record = (await this.mediatorRdfParseMediatypes\n .mediate({ context: action.context, mediaTypes: true })).mediaTypes;\n const htmlParseListener = new HtmlScriptListener(\n this.mediatorRdfParseHandle,\n action.emit,\n action.error,\n action.end,\n supportedTypes,\n action.context,\n action.baseIRI,\n action.headers,\n );\n return { htmlParseListener };\n }\n}\n\nexport interface IActorRdfParseHtmlScriptArgs extends IActorRdfParseHtmlArgs {\n /**\n * The RDF Parse mediator for collecting media types\n */\n mediatorRdfParseMediatypes: MediatorRdfParseMediaTypes;\n /**\n * The RDF Parse mediator for handling parsing\n */\n mediatorRdfParseHandle: MediatorRdfParseHandle;\n}\n","import type { MediatorRdfParseHandle } from '@comunica/bus-rdf-parse';\nimport type { IHtmlParseListener } from '@comunica/bus-rdf-parse-html';\nimport { KeysRdfParseHtmlScript } from '@comunica/context-entries';\nimport type { IActionContext } from '@comunica/types';\nimport type * as RDF from '@rdfjs/types';\nimport { Readable } from 'readable-stream';\nimport { resolve as resolveIri } from 'relative-to-absolute-iri';\n\n/**\n * An HTML parse listeners that detects `.\n this.sequenceIndex = Number(c === CharCodes.Lt);\n }\n };\n Tokenizer.prototype.stateCDATASequence = function (c) {\n if (c === Sequences.Cdata[this.sequenceIndex]) {\n if (++this.sequenceIndex === Sequences.Cdata.length) {\n this.state = State.InCommentLike;\n this.currentSequence = Sequences.CdataEnd;\n this.sequenceIndex = 0;\n this.sectionStart = this.index + 1;\n }\n }\n else {\n this.sequenceIndex = 0;\n this.state = State.InDeclaration;\n this.stateInDeclaration(c); // Reconsume the character\n }\n };\n /**\n * When we wait for one specific character, we can speed things up\n * by skipping through the buffer until we find it.\n *\n * @returns Whether the character was found.\n */\n Tokenizer.prototype.fastForwardTo = function (c) {\n while (++this.index < this.buffer.length + this.offset) {\n if (this.buffer.charCodeAt(this.index - this.offset) === c) {\n return true;\n }\n }\n /*\n * We increment the index at the end of the `parse` loop,\n * so set it to `buffer.length - 1` here.\n *\n * TODO: Refactor `parse` to increment index before calling states.\n */\n this.index = this.buffer.length + this.offset - 1;\n return false;\n };\n /**\n * Comments and CDATA end with `-->` and `]]>`.\n *\n * Their common qualities are:\n * - Their end sequences have a distinct character they start with.\n * - That character is then repeated, so we have to check multiple repeats.\n * - All characters but the start character of the sequence can be skipped.\n */\n Tokenizer.prototype.stateInCommentLike = function (c) {\n if (c === this.currentSequence[this.sequenceIndex]) {\n if (++this.sequenceIndex === this.currentSequence.length) {\n if (this.currentSequence === Sequences.CdataEnd) {\n this.cbs.oncdata(this.sectionStart, this.index, 2);\n }\n else {\n this.cbs.oncomment(this.sectionStart, this.index, 2);\n }\n this.sequenceIndex = 0;\n this.sectionStart = this.index + 1;\n this.state = State.Text;\n }\n }\n else if (this.sequenceIndex === 0) {\n // Fast-forward to the first character of the sequence\n if (this.fastForwardTo(this.currentSequence[0])) {\n this.sequenceIndex = 1;\n }\n }\n else if (c !== this.currentSequence[this.sequenceIndex - 1]) {\n // Allow long sequences, eg. --->, ]]]>\n this.sequenceIndex = 0;\n }\n };\n /**\n * HTML only allows ASCII alpha characters (a-z and A-Z) at the beginning of a tag name.\n *\n * XML allows a lot more characters here (@see https://www.w3.org/TR/REC-xml/#NT-NameStartChar).\n * We allow anything that wouldn't end the tag.\n */\n Tokenizer.prototype.isTagStartChar = function (c) {\n return this.xmlMode ? !isEndOfTagSection(c) : isASCIIAlpha(c);\n };\n Tokenizer.prototype.startSpecial = function (sequence, offset) {\n this.isSpecial = true;\n this.currentSequence = sequence;\n this.sequenceIndex = offset;\n this.state = State.SpecialStartSequence;\n };\n Tokenizer.prototype.stateBeforeTagName = function (c) {\n if (c === CharCodes.ExclamationMark) {\n this.state = State.BeforeDeclaration;\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.Questionmark) {\n this.state = State.InProcessingInstruction;\n this.sectionStart = this.index + 1;\n }\n else if (this.isTagStartChar(c)) {\n var lower = c | 0x20;\n this.sectionStart = this.index;\n if (!this.xmlMode && lower === Sequences.TitleEnd[2]) {\n this.startSpecial(Sequences.TitleEnd, 3);\n }\n else {\n this.state =\n !this.xmlMode && lower === Sequences.ScriptEnd[2]\n ? State.BeforeSpecialS\n : State.InTagName;\n }\n }\n else if (c === CharCodes.Slash) {\n this.state = State.BeforeClosingTagName;\n }\n else {\n this.state = State.Text;\n this.stateText(c);\n }\n };\n Tokenizer.prototype.stateInTagName = function (c) {\n if (isEndOfTagSection(c)) {\n this.cbs.onopentagname(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n };\n Tokenizer.prototype.stateBeforeClosingTagName = function (c) {\n if (isWhitespace(c)) {\n // Ignore\n }\n else if (c === CharCodes.Gt) {\n this.state = State.Text;\n }\n else {\n this.state = this.isTagStartChar(c)\n ? State.InClosingTagName\n : State.InSpecialComment;\n this.sectionStart = this.index;\n }\n };\n Tokenizer.prototype.stateInClosingTagName = function (c) {\n if (c === CharCodes.Gt || isWhitespace(c)) {\n this.cbs.onclosetag(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.state = State.AfterClosingTagName;\n this.stateAfterClosingTagName(c);\n }\n };\n Tokenizer.prototype.stateAfterClosingTagName = function (c) {\n // Skip everything until \">\"\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.state = State.Text;\n this.baseState = State.Text;\n this.sectionStart = this.index + 1;\n }\n };\n Tokenizer.prototype.stateBeforeAttributeName = function (c) {\n if (c === CharCodes.Gt) {\n this.cbs.onopentagend(this.index);\n if (this.isSpecial) {\n this.state = State.InSpecialTag;\n this.sequenceIndex = 0;\n }\n else {\n this.state = State.Text;\n }\n this.baseState = this.state;\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.Slash) {\n this.state = State.InSelfClosingTag;\n }\n else if (!isWhitespace(c)) {\n this.state = State.InAttributeName;\n this.sectionStart = this.index;\n }\n };\n Tokenizer.prototype.stateInSelfClosingTag = function (c) {\n if (c === CharCodes.Gt) {\n this.cbs.onselfclosingtag(this.index);\n this.state = State.Text;\n this.baseState = State.Text;\n this.sectionStart = this.index + 1;\n this.isSpecial = false; // Reset special state, in case of self-closing special tags\n }\n else if (!isWhitespace(c)) {\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n };\n Tokenizer.prototype.stateInAttributeName = function (c) {\n if (c === CharCodes.Eq || isEndOfTagSection(c)) {\n this.cbs.onattribname(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.state = State.AfterAttributeName;\n this.stateAfterAttributeName(c);\n }\n };\n Tokenizer.prototype.stateAfterAttributeName = function (c) {\n if (c === CharCodes.Eq) {\n this.state = State.BeforeAttributeValue;\n }\n else if (c === CharCodes.Slash || c === CharCodes.Gt) {\n this.cbs.onattribend(QuoteType.NoValue, this.index);\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n else if (!isWhitespace(c)) {\n this.cbs.onattribend(QuoteType.NoValue, this.index);\n this.state = State.InAttributeName;\n this.sectionStart = this.index;\n }\n };\n Tokenizer.prototype.stateBeforeAttributeValue = function (c) {\n if (c === CharCodes.DoubleQuote) {\n this.state = State.InAttributeValueDq;\n this.sectionStart = this.index + 1;\n }\n else if (c === CharCodes.SingleQuote) {\n this.state = State.InAttributeValueSq;\n this.sectionStart = this.index + 1;\n }\n else if (!isWhitespace(c)) {\n this.sectionStart = this.index;\n this.state = State.InAttributeValueNq;\n this.stateInAttributeValueNoQuotes(c); // Reconsume token\n }\n };\n Tokenizer.prototype.handleInAttributeValue = function (c, quote) {\n if (c === quote ||\n (!this.decodeEntities && this.fastForwardTo(quote))) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.cbs.onattribend(quote === CharCodes.DoubleQuote\n ? QuoteType.Double\n : QuoteType.Single, this.index);\n this.state = State.BeforeAttributeName;\n }\n else if (this.decodeEntities && c === CharCodes.Amp) {\n this.baseState = this.state;\n this.state = State.BeforeEntity;\n }\n };\n Tokenizer.prototype.stateInAttributeValueDoubleQuotes = function (c) {\n this.handleInAttributeValue(c, CharCodes.DoubleQuote);\n };\n Tokenizer.prototype.stateInAttributeValueSingleQuotes = function (c) {\n this.handleInAttributeValue(c, CharCodes.SingleQuote);\n };\n Tokenizer.prototype.stateInAttributeValueNoQuotes = function (c) {\n if (isWhitespace(c) || c === CharCodes.Gt) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = -1;\n this.cbs.onattribend(QuoteType.Unquoted, this.index);\n this.state = State.BeforeAttributeName;\n this.stateBeforeAttributeName(c);\n }\n else if (this.decodeEntities && c === CharCodes.Amp) {\n this.baseState = this.state;\n this.state = State.BeforeEntity;\n }\n };\n Tokenizer.prototype.stateBeforeDeclaration = function (c) {\n if (c === CharCodes.OpeningSquareBracket) {\n this.state = State.CDATASequence;\n this.sequenceIndex = 0;\n }\n else {\n this.state =\n c === CharCodes.Dash\n ? State.BeforeComment\n : State.InDeclaration;\n }\n };\n Tokenizer.prototype.stateInDeclaration = function (c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.ondeclaration(this.sectionStart, this.index);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n };\n Tokenizer.prototype.stateInProcessingInstruction = function (c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.onprocessinginstruction(this.sectionStart, this.index);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n };\n Tokenizer.prototype.stateBeforeComment = function (c) {\n if (c === CharCodes.Dash) {\n this.state = State.InCommentLike;\n this.currentSequence = Sequences.CommentEnd;\n // Allow short comments (eg. )\n this.sequenceIndex = 2;\n this.sectionStart = this.index + 1;\n }\n else {\n this.state = State.InDeclaration;\n }\n };\n Tokenizer.prototype.stateInSpecialComment = function (c) {\n if (c === CharCodes.Gt || this.fastForwardTo(CharCodes.Gt)) {\n this.cbs.oncomment(this.sectionStart, this.index, 0);\n this.state = State.Text;\n this.sectionStart = this.index + 1;\n }\n };\n Tokenizer.prototype.stateBeforeSpecialS = function (c) {\n var lower = c | 0x20;\n if (lower === Sequences.ScriptEnd[3]) {\n this.startSpecial(Sequences.ScriptEnd, 4);\n }\n else if (lower === Sequences.StyleEnd[3]) {\n this.startSpecial(Sequences.StyleEnd, 4);\n }\n else {\n this.state = State.InTagName;\n this.stateInTagName(c); // Consume the token again\n }\n };\n Tokenizer.prototype.stateBeforeEntity = function (c) {\n // Start excess with 1 to include the '&'\n this.entityExcess = 1;\n this.entityResult = 0;\n if (c === CharCodes.Number) {\n this.state = State.BeforeNumericEntity;\n }\n else if (c === CharCodes.Amp) {\n // We have two `&` characters in a row. Stay in the current state.\n }\n else {\n this.trieIndex = 0;\n this.trieCurrent = this.entityTrie[0];\n this.state = State.InNamedEntity;\n this.stateInNamedEntity(c);\n }\n };\n Tokenizer.prototype.stateInNamedEntity = function (c) {\n this.entityExcess += 1;\n this.trieIndex = (0, decode_js_1.determineBranch)(this.entityTrie, this.trieCurrent, this.trieIndex + 1, c);\n if (this.trieIndex < 0) {\n this.emitNamedEntity();\n this.index--;\n return;\n }\n this.trieCurrent = this.entityTrie[this.trieIndex];\n var masked = this.trieCurrent & decode_js_1.BinTrieFlags.VALUE_LENGTH;\n // If the branch is a value, store it and continue\n if (masked) {\n // The mask is the number of bytes of the value, including the current byte.\n var valueLength = (masked >> 14) - 1;\n // If we have a legacy entity while parsing strictly, just skip the number of bytes\n if (!this.allowLegacyEntity() && c !== CharCodes.Semi) {\n this.trieIndex += valueLength;\n }\n else {\n // Add 1 as we have already incremented the excess\n var entityStart = this.index - this.entityExcess + 1;\n if (entityStart > this.sectionStart) {\n this.emitPartial(this.sectionStart, entityStart);\n }\n // If this is a surrogate pair, consume the next two bytes\n this.entityResult = this.trieIndex;\n this.trieIndex += valueLength;\n this.entityExcess = 0;\n this.sectionStart = this.index + 1;\n if (valueLength === 0) {\n this.emitNamedEntity();\n }\n }\n }\n };\n Tokenizer.prototype.emitNamedEntity = function () {\n this.state = this.baseState;\n if (this.entityResult === 0) {\n return;\n }\n var valueLength = (this.entityTrie[this.entityResult] & decode_js_1.BinTrieFlags.VALUE_LENGTH) >>\n 14;\n switch (valueLength) {\n case 1: {\n this.emitCodePoint(this.entityTrie[this.entityResult] &\n ~decode_js_1.BinTrieFlags.VALUE_LENGTH);\n break;\n }\n case 2: {\n this.emitCodePoint(this.entityTrie[this.entityResult + 1]);\n break;\n }\n case 3: {\n this.emitCodePoint(this.entityTrie[this.entityResult + 1]);\n this.emitCodePoint(this.entityTrie[this.entityResult + 2]);\n }\n }\n };\n Tokenizer.prototype.stateBeforeNumericEntity = function (c) {\n if ((c | 0x20) === CharCodes.LowerX) {\n this.entityExcess++;\n this.state = State.InHexEntity;\n }\n else {\n this.state = State.InNumericEntity;\n this.stateInNumericEntity(c);\n }\n };\n Tokenizer.prototype.emitNumericEntity = function (strict) {\n var entityStart = this.index - this.entityExcess - 1;\n var numberStart = entityStart + 2 + Number(this.state === State.InHexEntity);\n if (numberStart !== this.index) {\n // Emit leading data if any\n if (entityStart > this.sectionStart) {\n this.emitPartial(this.sectionStart, entityStart);\n }\n this.sectionStart = this.index + Number(strict);\n this.emitCodePoint((0, decode_js_1.replaceCodePoint)(this.entityResult));\n }\n this.state = this.baseState;\n };\n Tokenizer.prototype.stateInNumericEntity = function (c) {\n if (c === CharCodes.Semi) {\n this.emitNumericEntity(true);\n }\n else if (isNumber(c)) {\n this.entityResult = this.entityResult * 10 + (c - CharCodes.Zero);\n this.entityExcess++;\n }\n else {\n if (this.allowLegacyEntity()) {\n this.emitNumericEntity(false);\n }\n else {\n this.state = this.baseState;\n }\n this.index--;\n }\n };\n Tokenizer.prototype.stateInHexEntity = function (c) {\n if (c === CharCodes.Semi) {\n this.emitNumericEntity(true);\n }\n else if (isNumber(c)) {\n this.entityResult = this.entityResult * 16 + (c - CharCodes.Zero);\n this.entityExcess++;\n }\n else if (isHexDigit(c)) {\n this.entityResult =\n this.entityResult * 16 + ((c | 0x20) - CharCodes.LowerA + 10);\n this.entityExcess++;\n }\n else {\n if (this.allowLegacyEntity()) {\n this.emitNumericEntity(false);\n }\n else {\n this.state = this.baseState;\n }\n this.index--;\n }\n };\n Tokenizer.prototype.allowLegacyEntity = function () {\n return (!this.xmlMode &&\n (this.baseState === State.Text ||\n this.baseState === State.InSpecialTag));\n };\n /**\n * Remove data that has already been consumed from the buffer.\n */\n Tokenizer.prototype.cleanup = function () {\n // If we are inside of text or attributes, emit what we already have.\n if (this.running && this.sectionStart !== this.index) {\n if (this.state === State.Text ||\n (this.state === State.InSpecialTag && this.sequenceIndex === 0)) {\n this.cbs.ontext(this.sectionStart, this.index);\n this.sectionStart = this.index;\n }\n else if (this.state === State.InAttributeValueDq ||\n this.state === State.InAttributeValueSq ||\n this.state === State.InAttributeValueNq) {\n this.cbs.onattribdata(this.sectionStart, this.index);\n this.sectionStart = this.index;\n }\n }\n };\n Tokenizer.prototype.shouldContinue = function () {\n return this.index < this.buffer.length + this.offset && this.running;\n };\n /**\n * Iterates through the buffer, calling the function corresponding to the current state.\n *\n * States that are more likely to be hit are higher up, as a performance improvement.\n */\n Tokenizer.prototype.parse = function () {\n while (this.shouldContinue()) {\n var c = this.buffer.charCodeAt(this.index - this.offset);\n switch (this.state) {\n case State.Text: {\n this.stateText(c);\n break;\n }\n case State.SpecialStartSequence: {\n this.stateSpecialStartSequence(c);\n break;\n }\n case State.InSpecialTag: {\n this.stateInSpecialTag(c);\n break;\n }\n case State.CDATASequence: {\n this.stateCDATASequence(c);\n break;\n }\n case State.InAttributeValueDq: {\n this.stateInAttributeValueDoubleQuotes(c);\n break;\n }\n case State.InAttributeName: {\n this.stateInAttributeName(c);\n break;\n }\n case State.InCommentLike: {\n this.stateInCommentLike(c);\n break;\n }\n case State.InSpecialComment: {\n this.stateInSpecialComment(c);\n break;\n }\n case State.BeforeAttributeName: {\n this.stateBeforeAttributeName(c);\n break;\n }\n case State.InTagName: {\n this.stateInTagName(c);\n break;\n }\n case State.InClosingTagName: {\n this.stateInClosingTagName(c);\n break;\n }\n case State.BeforeTagName: {\n this.stateBeforeTagName(c);\n break;\n }\n case State.AfterAttributeName: {\n this.stateAfterAttributeName(c);\n break;\n }\n case State.InAttributeValueSq: {\n this.stateInAttributeValueSingleQuotes(c);\n break;\n }\n case State.BeforeAttributeValue: {\n this.stateBeforeAttributeValue(c);\n break;\n }\n case State.BeforeClosingTagName: {\n this.stateBeforeClosingTagName(c);\n break;\n }\n case State.AfterClosingTagName: {\n this.stateAfterClosingTagName(c);\n break;\n }\n case State.BeforeSpecialS: {\n this.stateBeforeSpecialS(c);\n break;\n }\n case State.InAttributeValueNq: {\n this.stateInAttributeValueNoQuotes(c);\n break;\n }\n case State.InSelfClosingTag: {\n this.stateInSelfClosingTag(c);\n break;\n }\n case State.InDeclaration: {\n this.stateInDeclaration(c);\n break;\n }\n case State.BeforeDeclaration: {\n this.stateBeforeDeclaration(c);\n break;\n }\n case State.BeforeComment: {\n this.stateBeforeComment(c);\n break;\n }\n case State.InProcessingInstruction: {\n this.stateInProcessingInstruction(c);\n break;\n }\n case State.InNamedEntity: {\n this.stateInNamedEntity(c);\n break;\n }\n case State.BeforeEntity: {\n this.stateBeforeEntity(c);\n break;\n }\n case State.InHexEntity: {\n this.stateInHexEntity(c);\n break;\n }\n case State.InNumericEntity: {\n this.stateInNumericEntity(c);\n break;\n }\n default: {\n // `this._state === State.BeforeNumericEntity`\n this.stateBeforeNumericEntity(c);\n }\n }\n this.index++;\n }\n this.cleanup();\n };\n Tokenizer.prototype.finish = function () {\n if (this.state === State.InNamedEntity) {\n this.emitNamedEntity();\n }\n // If there is remaining data, emit it in a reasonable way\n if (this.sectionStart < this.index) {\n this.handleTrailingData();\n }\n this.cbs.onend();\n };\n /** Handle any trailing data. */\n Tokenizer.prototype.handleTrailingData = function () {\n var endIndex = this.buffer.length + this.offset;\n if (this.state === State.InCommentLike) {\n if (this.currentSequence === Sequences.CdataEnd) {\n this.cbs.oncdata(this.sectionStart, endIndex, 0);\n }\n else {\n this.cbs.oncomment(this.sectionStart, endIndex, 0);\n }\n }\n else if (this.state === State.InNumericEntity &&\n this.allowLegacyEntity()) {\n this.emitNumericEntity(false);\n // All trailing data will have been consumed\n }\n else if (this.state === State.InHexEntity &&\n this.allowLegacyEntity()) {\n this.emitNumericEntity(false);\n // All trailing data will have been consumed\n }\n else if (this.state === State.InTagName ||\n this.state === State.BeforeAttributeName ||\n this.state === State.BeforeAttributeValue ||\n this.state === State.AfterAttributeName ||\n this.state === State.InAttributeName ||\n this.state === State.InAttributeValueSq ||\n this.state === State.InAttributeValueDq ||\n this.state === State.InAttributeValueNq ||\n this.state === State.InClosingTagName) {\n /*\n * If we are currently in an opening or closing tag, us not calling the\n * respective callback signals that the tag should be ignored.\n */\n }\n else {\n this.cbs.ontext(this.sectionStart, endIndex);\n }\n };\n Tokenizer.prototype.emitPartial = function (start, endIndex) {\n if (this.baseState !== State.Text &&\n this.baseState !== State.InSpecialTag) {\n this.cbs.onattribdata(start, endIndex);\n }\n else {\n this.cbs.ontext(start, endIndex);\n }\n };\n Tokenizer.prototype.emitCodePoint = function (cp) {\n if (this.baseState !== State.Text &&\n this.baseState !== State.InSpecialTag) {\n this.cbs.onattribentity(cp);\n }\n else {\n this.cbs.ontextentity(cp);\n }\n };\n return Tokenizer;\n}());\nexports.default = Tokenizer;\n//# sourceMappingURL=Tokenizer.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DomUtils = exports.parseFeed = exports.getFeed = exports.ElementType = exports.Tokenizer = exports.createDomStream = exports.parseDOM = exports.parseDocument = exports.DefaultHandler = exports.DomHandler = exports.Parser = void 0;\nvar Parser_js_1 = require(\"./Parser.js\");\nvar Parser_js_2 = require(\"./Parser.js\");\nObject.defineProperty(exports, \"Parser\", { enumerable: true, get: function () { return Parser_js_2.Parser; } });\nvar domhandler_1 = require(\"domhandler\");\nvar domhandler_2 = require(\"domhandler\");\nObject.defineProperty(exports, \"DomHandler\", { enumerable: true, get: function () { return domhandler_2.DomHandler; } });\n// Old name for DomHandler\nObject.defineProperty(exports, \"DefaultHandler\", { enumerable: true, get: function () { return domhandler_2.DomHandler; } });\n// Helper methods\n/**\n * Parses the data, returns the resulting document.\n *\n * @param data The data that should be parsed.\n * @param options Optional options for the parser and DOM builder.\n */\nfunction parseDocument(data, options) {\n var handler = new domhandler_1.DomHandler(undefined, options);\n new Parser_js_1.Parser(handler, options).end(data);\n return handler.root;\n}\nexports.parseDocument = parseDocument;\n/**\n * Parses data, returns an array of the root nodes.\n *\n * Note that the root nodes still have a `Document` node as their parent.\n * Use `parseDocument` to get the `Document` node instead.\n *\n * @param data The data that should be parsed.\n * @param options Optional options for the parser and DOM builder.\n * @deprecated Use `parseDocument` instead.\n */\nfunction parseDOM(data, options) {\n return parseDocument(data, options).children;\n}\nexports.parseDOM = parseDOM;\n/**\n * Creates a parser instance, with an attached DOM handler.\n *\n * @param callback A callback that will be called once parsing has been completed.\n * @param options Optional options for the parser and DOM builder.\n * @param elementCallback An optional callback that will be called every time a tag has been completed inside of the DOM.\n */\nfunction createDomStream(callback, options, elementCallback) {\n var handler = new domhandler_1.DomHandler(callback, options, elementCallback);\n return new Parser_js_1.Parser(handler, options);\n}\nexports.createDomStream = createDomStream;\nvar Tokenizer_js_1 = require(\"./Tokenizer.js\");\nObject.defineProperty(exports, \"Tokenizer\", { enumerable: true, get: function () { return __importDefault(Tokenizer_js_1).default; } });\n/*\n * All of the following exports exist for backwards-compatibility.\n * They should probably be removed eventually.\n */\nexports.ElementType = __importStar(require(\"domelementtype\"));\nvar domutils_1 = require(\"domutils\");\nvar domutils_2 = require(\"domutils\");\nObject.defineProperty(exports, \"getFeed\", { enumerable: true, get: function () { return domutils_2.getFeed; } });\nvar parseFeedDefaultOptions = { xmlMode: true };\n/**\n * Parse a feed.\n *\n * @param feed The feed that should be parsed, as a string.\n * @param options Optionally, options for parsing. When using this, you should set `xmlMode` to `true`.\n */\nfunction parseFeed(feed, options) {\n if (options === void 0) { options = parseFeedDefaultOptions; }\n return (0, domutils_1.getFeed)(parseDOM(feed, options));\n}\nexports.parseFeed = parseFeed;\nexports.DomUtils = __importStar(require(\"domutils\"));\n//# sourceMappingURL=index.js.map","'use strict'\n\nvar COMPATIBLE_ENCODING_PATTERN = /^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i\nvar WS_TRIM_PATTERN = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g\nvar WS_CHAR_PATTERN = /\\s|\\uFEFF|\\xA0/\nvar WS_FOLD_PATTERN = /\\r?\\n[\\x20\\x09]+/g\nvar DELIMITER_PATTERN = /[;,\"]/\nvar WS_DELIMITER_PATTERN = /[;,\"]|\\s/\n\n/**\n * Token character pattern\n * @type {RegExp}\n * @see https://tools.ietf.org/html/rfc7230#section-3.2.6\n */\nvar TOKEN_PATTERN = /^[!#$%&'*+\\-\\.^_`|~\\da-zA-Z]+$/\n\nvar STATE = {\n IDLE: 1 << 0,\n URI: 1 << 1,\n ATTR: 1 << 2,\n}\n\nfunction trim( value ) {\n return value.replace( WS_TRIM_PATTERN, '' )\n}\n\nfunction hasWhitespace( value ) {\n return WS_CHAR_PATTERN.test( value )\n}\n\nfunction skipWhitespace( value, offset ) {\n while( hasWhitespace( value[offset] ) ) {\n offset++\n }\n return offset\n}\n\nfunction needsQuotes( value ) {\n return WS_DELIMITER_PATTERN.test( value ) ||\n !TOKEN_PATTERN.test( value )\n}\n\n/**\n * Shallow compares two objects to check if their properties match.\n * @param {object} object1 First object to compare.\n * @param {object} object2 Second object to compare.\n * @returns {boolean} Do the objects have matching properties.\n */\nfunction shallowCompareObjects( object1, object2 ) {\n return (\n Object.keys( object1 ).length === Object.keys( object2 ).length &&\n Object.keys( object1 ).every(\n ( key ) => key in object2 && object1[ key ] === object2[ key ]\n )\n );\n}\n\nclass Link {\n\n /**\n * Link\n * @constructor\n * @param {String} [value]\n * @returns {Link}\n */\n constructor( value ) {\n\n /** @type {Array} URI references */\n this.refs = []\n\n if( value ) {\n this.parse( value )\n }\n\n }\n\n /**\n * Get refs with given relation type\n * @param {String} value\n * @returns {Array}\n */\n rel( value ) {\n\n var links = []\n var type = value.toLowerCase()\n\n for( var i = 0; i < this.refs.length; i++ ) {\n if( this.refs[ i ].rel.toLowerCase() === type ) {\n links.push( this.refs[ i ] )\n }\n }\n\n return links\n\n }\n\n /**\n * Get refs where given attribute has a given value\n * @param {String} attr\n * @param {String} value\n * @returns {Array}\n */\n get( attr, value ) {\n\n attr = attr.toLowerCase()\n\n var links = []\n\n for( var i = 0; i < this.refs.length; i++ ) {\n if( this.refs[ i ][ attr ] === value ) {\n links.push( this.refs[ i ] )\n }\n }\n\n return links\n\n }\n\n /** Sets a reference. */\n set( link ) {\n this.refs.push( link )\n return this\n }\n\n /**\n * Sets a reference if a reference with similar properties isn’t already set.\n */\n setUnique( link ) {\n\n if( !this.refs.some(( ref ) => shallowCompareObjects( ref, link )) ) {\n this.refs.push( link )\n }\n\n return this\n\n }\n\n has( attr, value ) {\n\n attr = attr.toLowerCase()\n\n for( var i = 0; i < this.refs.length; i++ ) {\n if( this.refs[ i ][ attr ] === value ) {\n return true\n }\n }\n\n return false\n\n }\n\n parse( value, offset ) {\n\n offset = offset || 0\n value = offset ? value.slice( offset ) : value\n\n // Trim & unfold folded lines\n value = trim( value ).replace( WS_FOLD_PATTERN, '' )\n\n var state = STATE.IDLE\n var length = value.length\n var offset = 0\n var ref = null\n\n while( offset < length ) {\n if( state === STATE.IDLE ) {\n if( hasWhitespace( value[offset] ) ) {\n offset++\n continue\n } else if( value[offset] === '<' ) {\n if( ref != null ) {\n ref.rel != null ?\n this.refs.push( ...Link.expandRelations( ref ) ) :\n this.refs.push( ref )\n }\n var end = value.indexOf( '>', offset )\n if( end === -1 ) throw new Error( 'Expected end of URI delimiter at offset ' + offset )\n ref = { uri: value.slice( offset + 1, end ) }\n // this.refs.push( ref )\n offset = end\n state = STATE.URI\n } else {\n throw new Error( 'Unexpected character \"' + value[offset] + '\" at offset ' + offset )\n }\n offset++\n } else if( state === STATE.URI ) {\n if( hasWhitespace( value[offset] ) ) {\n offset++\n continue\n } else if( value[offset] === ';' ) {\n state = STATE.ATTR\n offset++\n } else if( value[offset] === ',' ) {\n state = STATE.IDLE\n offset++\n } else {\n throw new Error( 'Unexpected character \"' + value[offset] + '\" at offset ' + offset )\n }\n } else if( state === STATE.ATTR ) {\n if( value[offset] ===';' || hasWhitespace( value[offset] ) ) {\n offset++\n continue\n }\n var end = value.indexOf( '=', offset )\n if( end === -1 ) end = value.indexOf( ';', offset )\n if( end === -1 ) end = value.length\n var attr = trim( value.slice( offset, end ) ).toLowerCase()\n var attrValue = ''\n offset = end + 1\n offset = skipWhitespace( value, offset )\n if( value[offset] === '\"' ) {\n offset++\n while( offset < length ) {\n if( value[offset] === '\"' ) {\n offset++; break\n }\n if( value[offset] === '\\\\' ) {\n offset++\n }\n attrValue += value[offset]\n offset++\n }\n } else {\n var end = offset + 1\n while( !DELIMITER_PATTERN.test( value[end] ) && end < length ) {\n end++\n }\n attrValue = value.slice( offset, end )\n offset = end\n }\n if( ref[ attr ] && Link.isSingleOccurenceAttr( attr ) ) {\n // Ignore multiples of attributes which may only appear once\n } else if( attr[ attr.length - 1 ] === '*' ) {\n ref[ attr ] = Link.parseExtendedValue( attrValue )\n } else {\n attrValue = attr === 'type' ?\n attrValue.toLowerCase() : attrValue\n if( ref[ attr ] != null ) {\n if( Array.isArray( ref[ attr ] ) ) {\n ref[ attr ].push( attrValue )\n } else {\n ref[ attr ] = [ ref[ attr ], attrValue ]\n }\n } else {\n ref[ attr ] = attrValue\n }\n }\n switch( value[offset] ) {\n case ',': state = STATE.IDLE; break\n case ';': state = STATE.ATTR; break\n }\n offset++\n } else {\n throw new Error( 'Unknown parser state \"' + state + '\"' )\n }\n }\n\n if( ref != null ) {\n ref.rel != null ?\n this.refs.push( ...Link.expandRelations( ref ) ) :\n this.refs.push( ref )\n }\n\n ref = null\n\n return this\n\n }\n\n toString() {\n\n var refs = []\n var link = ''\n var ref = null\n\n for( var i = 0; i < this.refs.length; i++ ) {\n ref = this.refs[i]\n link = Object.keys( this.refs[i] ).reduce( function( link, attr ) {\n if( attr === 'uri' ) return link\n return link + '; ' + Link.formatAttribute( attr, ref[ attr ] )\n }, '<' + ref.uri + '>' )\n refs.push( link )\n }\n\n return refs.join( ', ' )\n\n }\n\n}\n\n/**\n * Determines whether an encoding can be\n * natively handled with a `Buffer`\n * @param {String} value\n * @returns {Boolean}\n */\nLink.isCompatibleEncoding = function( value ) {\n return COMPATIBLE_ENCODING_PATTERN.test( value )\n}\n\nLink.parse = function( value, offset ) {\n return new Link().parse( value, offset )\n}\n\nLink.isSingleOccurenceAttr = function( attr ) {\n return attr === 'rel' || attr === 'type' || attr === 'media' ||\n attr === 'title' || attr === 'title*'\n}\n\nLink.isTokenAttr = function( attr ) {\n return attr === 'rel' || attr === 'type' || attr === 'anchor'\n}\n\nLink.escapeQuotes = function( value ) {\n return value.replace( /\"/g, '\\\\\"' )\n}\n\nLink.expandRelations = function( ref ) {\n var rels = ref.rel.split( ' ' )\n return rels.map( function( rel ) {\n var value = Object.assign( {}, ref )\n value.rel = rel\n return value\n })\n}\n\n/**\n * Parses an extended value and attempts to decode it\n * @internal\n * @param {String} value\n * @return {Object}\n */\nLink.parseExtendedValue = function( value ) {\n var parts = /([^']+)?(?:'([^']*)')?(.+)/.exec( value )\n return {\n language: parts[2].toLowerCase(),\n encoding: Link.isCompatibleEncoding( parts[1] ) ?\n null : parts[1].toLowerCase(),\n value: Link.isCompatibleEncoding( parts[1] ) ?\n decodeURIComponent( parts[3] ) : parts[3]\n }\n}\n\n/**\n * Format a given extended attribute and it's value\n * @param {String} attr\n * @param {Object} data\n * @return {String}\n */\nLink.formatExtendedAttribute = function( attr, data ) {\n\n var encoding = ( data.encoding || 'utf-8' ).toUpperCase()\n var language = data.language || 'en'\n\n var encodedValue = ''\n\n if( Buffer.isBuffer( data.value ) && Link.isCompatibleEncoding( encoding ) ) {\n encodedValue = data.value.toString( encoding )\n } else if( Buffer.isBuffer( data.value ) ) {\n encodedValue = data.value.toString( 'hex' )\n .replace( /[0-9a-f]{2}/gi, '%$1' )\n } else {\n encodedValue = encodeURIComponent( data.value )\n }\n\n return attr + '=' + encoding + '\\'' +\n language + '\\'' + encodedValue\n\n}\n\n/**\n * Format a given attribute and it's value\n * @param {String} attr\n * @param {String|Object} value\n * @return {String}\n */\nLink.formatAttribute = function( attr, value ) {\n\n if( Array.isArray( value ) ) {\n return value.map(( item ) => {\n return Link.formatAttribute( attr, item )\n }).join( '; ' )\n }\n\n if( attr[ attr.length - 1 ] === '*' || typeof value !== 'string' ) {\n return Link.formatExtendedAttribute( attr, value )\n }\n\n if( Link.isTokenAttr( attr ) ) {\n value = needsQuotes( value ) ?\n '\"' + Link.escapeQuotes( value ) + '\"' :\n Link.escapeQuotes( value )\n } else if( needsQuotes( value ) ) {\n value = encodeURIComponent( value )\n // We don't need to escape <,> <;> within quotes\n value = value\n .replace( /%20/g, ' ' )\n .replace( /%2C/g, ',' )\n .replace( /%3B/g, ';' )\n\n value = '\"' + value + '\"'\n }\n\n return attr + '=' + value\n\n}\n\nmodule.exports = Link\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/**\n * MIT License\n * \n * Copyright (c) 2014-present, Lee Byron and other contributors.\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar DELETE = 'delete';\n\n// Constants describing the size of trie nodes.\nvar SHIFT = 5; // Resulted in best performance after ______?\nvar SIZE = 1 << SHIFT;\nvar MASK = SIZE - 1;\n\n// A consistent shared value representing \"not set\" which equals nothing other\n// than itself, and nothing that could be provided externally.\nvar NOT_SET = {};\n\n// Boolean references, Rough equivalent of `bool &`.\nfunction MakeRef() {\n return { value: false };\n}\n\nfunction SetRef(ref) {\n if (ref) {\n ref.value = true;\n }\n}\n\n// A function which returns a value representing an \"owner\" for transient writes\n// to tries. The return value will only ever equal itself, and will not equal\n// the return of any subsequent call of this function.\nfunction OwnerID() {}\n\nfunction ensureSize(iter) {\n if (iter.size === undefined) {\n iter.size = iter.__iterate(returnTrue);\n }\n return iter.size;\n}\n\nfunction wrapIndex(iter, index) {\n // This implements \"is array index\" which the ECMAString spec defines as:\n //\n // A String property name P is an array index if and only if\n // ToString(ToUint32(P)) is equal to P and ToUint32(P) is not equal\n // to 2^32−1.\n //\n // http://www.ecma-international.org/ecma-262/6.0/#sec-array-exotic-objects\n if (typeof index !== 'number') {\n var uint32Index = index >>> 0; // N >>> 0 is shorthand for ToUint32\n if ('' + uint32Index !== index || uint32Index === 4294967295) {\n return NaN;\n }\n index = uint32Index;\n }\n return index < 0 ? ensureSize(iter) + index : index;\n}\n\nfunction returnTrue() {\n return true;\n}\n\nfunction wholeSlice(begin, end, size) {\n return (\n ((begin === 0 && !isNeg(begin)) ||\n (size !== undefined && begin <= -size)) &&\n (end === undefined || (size !== undefined && end >= size))\n );\n}\n\nfunction resolveBegin(begin, size) {\n return resolveIndex(begin, size, 0);\n}\n\nfunction resolveEnd(end, size) {\n return resolveIndex(end, size, size);\n}\n\nfunction resolveIndex(index, size, defaultIndex) {\n // Sanitize indices using this shorthand for ToInt32(argument)\n // http://www.ecma-international.org/ecma-262/6.0/#sec-toint32\n return index === undefined\n ? defaultIndex\n : isNeg(index)\n ? size === Infinity\n ? size\n : Math.max(0, size + index) | 0\n : size === undefined || size === index\n ? index\n : Math.min(size, index) | 0;\n}\n\nfunction isNeg(value) {\n // Account for -0 which is negative, but not less than 0.\n return value < 0 || (value === 0 && 1 / value === -Infinity);\n}\n\nvar IS_COLLECTION_SYMBOL = '@@__IMMUTABLE_ITERABLE__@@';\n\nfunction isCollection(maybeCollection) {\n return Boolean(maybeCollection && maybeCollection[IS_COLLECTION_SYMBOL]);\n}\n\nvar IS_KEYED_SYMBOL = '@@__IMMUTABLE_KEYED__@@';\n\nfunction isKeyed(maybeKeyed) {\n return Boolean(maybeKeyed && maybeKeyed[IS_KEYED_SYMBOL]);\n}\n\nvar IS_INDEXED_SYMBOL = '@@__IMMUTABLE_INDEXED__@@';\n\nfunction isIndexed(maybeIndexed) {\n return Boolean(maybeIndexed && maybeIndexed[IS_INDEXED_SYMBOL]);\n}\n\nfunction isAssociative(maybeAssociative) {\n return isKeyed(maybeAssociative) || isIndexed(maybeAssociative);\n}\n\nvar Collection = function Collection(value) {\n return isCollection(value) ? value : Seq(value);\n};\n\nvar KeyedCollection = /*@__PURE__*/(function (Collection) {\n function KeyedCollection(value) {\n return isKeyed(value) ? value : KeyedSeq(value);\n }\n\n if ( Collection ) KeyedCollection.__proto__ = Collection;\n KeyedCollection.prototype = Object.create( Collection && Collection.prototype );\n KeyedCollection.prototype.constructor = KeyedCollection;\n\n return KeyedCollection;\n}(Collection));\n\nvar IndexedCollection = /*@__PURE__*/(function (Collection) {\n function IndexedCollection(value) {\n return isIndexed(value) ? value : IndexedSeq(value);\n }\n\n if ( Collection ) IndexedCollection.__proto__ = Collection;\n IndexedCollection.prototype = Object.create( Collection && Collection.prototype );\n IndexedCollection.prototype.constructor = IndexedCollection;\n\n return IndexedCollection;\n}(Collection));\n\nvar SetCollection = /*@__PURE__*/(function (Collection) {\n function SetCollection(value) {\n return isCollection(value) && !isAssociative(value) ? value : SetSeq(value);\n }\n\n if ( Collection ) SetCollection.__proto__ = Collection;\n SetCollection.prototype = Object.create( Collection && Collection.prototype );\n SetCollection.prototype.constructor = SetCollection;\n\n return SetCollection;\n}(Collection));\n\nCollection.Keyed = KeyedCollection;\nCollection.Indexed = IndexedCollection;\nCollection.Set = SetCollection;\n\nvar IS_SEQ_SYMBOL = '@@__IMMUTABLE_SEQ__@@';\n\nfunction isSeq(maybeSeq) {\n return Boolean(maybeSeq && maybeSeq[IS_SEQ_SYMBOL]);\n}\n\nvar IS_RECORD_SYMBOL = '@@__IMMUTABLE_RECORD__@@';\n\nfunction isRecord(maybeRecord) {\n return Boolean(maybeRecord && maybeRecord[IS_RECORD_SYMBOL]);\n}\n\nfunction isImmutable(maybeImmutable) {\n return isCollection(maybeImmutable) || isRecord(maybeImmutable);\n}\n\nvar IS_ORDERED_SYMBOL = '@@__IMMUTABLE_ORDERED__@@';\n\nfunction isOrdered(maybeOrdered) {\n return Boolean(maybeOrdered && maybeOrdered[IS_ORDERED_SYMBOL]);\n}\n\nvar ITERATE_KEYS = 0;\nvar ITERATE_VALUES = 1;\nvar ITERATE_ENTRIES = 2;\n\nvar REAL_ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\nvar FAUX_ITERATOR_SYMBOL = '@@iterator';\n\nvar ITERATOR_SYMBOL = REAL_ITERATOR_SYMBOL || FAUX_ITERATOR_SYMBOL;\n\nvar Iterator = function Iterator(next) {\n this.next = next;\n};\n\nIterator.prototype.toString = function toString () {\n return '[Iterator]';\n};\n\nIterator.KEYS = ITERATE_KEYS;\nIterator.VALUES = ITERATE_VALUES;\nIterator.ENTRIES = ITERATE_ENTRIES;\n\nIterator.prototype.inspect = Iterator.prototype.toSource = function () {\n return this.toString();\n};\nIterator.prototype[ITERATOR_SYMBOL] = function () {\n return this;\n};\n\nfunction iteratorValue(type, k, v, iteratorResult) {\n var value = type === 0 ? k : type === 1 ? v : [k, v];\n iteratorResult\n ? (iteratorResult.value = value)\n : (iteratorResult = {\n value: value,\n done: false,\n });\n return iteratorResult;\n}\n\nfunction iteratorDone() {\n return { value: undefined, done: true };\n}\n\nfunction hasIterator(maybeIterable) {\n if (Array.isArray(maybeIterable)) {\n // IE11 trick as it does not support `Symbol.iterator`\n return true;\n }\n\n return !!getIteratorFn(maybeIterable);\n}\n\nfunction isIterator(maybeIterator) {\n return maybeIterator && typeof maybeIterator.next === 'function';\n}\n\nfunction getIterator(iterable) {\n var iteratorFn = getIteratorFn(iterable);\n return iteratorFn && iteratorFn.call(iterable);\n}\n\nfunction getIteratorFn(iterable) {\n var iteratorFn =\n iterable &&\n ((REAL_ITERATOR_SYMBOL && iterable[REAL_ITERATOR_SYMBOL]) ||\n iterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n}\n\nfunction isEntriesIterable(maybeIterable) {\n var iteratorFn = getIteratorFn(maybeIterable);\n return iteratorFn && iteratorFn === maybeIterable.entries;\n}\n\nfunction isKeysIterable(maybeIterable) {\n var iteratorFn = getIteratorFn(maybeIterable);\n return iteratorFn && iteratorFn === maybeIterable.keys;\n}\n\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isArrayLike(value) {\n if (Array.isArray(value) || typeof value === 'string') {\n return true;\n }\n\n return (\n value &&\n typeof value === 'object' &&\n Number.isInteger(value.length) &&\n value.length >= 0 &&\n (value.length === 0\n ? // Only {length: 0} is considered Array-like.\n Object.keys(value).length === 1\n : // An object is only Array-like if it has a property where the last value\n // in the array-like may be found (which could be undefined).\n value.hasOwnProperty(value.length - 1))\n );\n}\n\nvar Seq = /*@__PURE__*/(function (Collection) {\n function Seq(value) {\n return value === undefined || value === null\n ? emptySequence()\n : isImmutable(value)\n ? value.toSeq()\n : seqFromValue(value);\n }\n\n if ( Collection ) Seq.__proto__ = Collection;\n Seq.prototype = Object.create( Collection && Collection.prototype );\n Seq.prototype.constructor = Seq;\n\n Seq.prototype.toSeq = function toSeq () {\n return this;\n };\n\n Seq.prototype.toString = function toString () {\n return this.__toString('Seq {', '}');\n };\n\n Seq.prototype.cacheResult = function cacheResult () {\n if (!this._cache && this.__iterateUncached) {\n this._cache = this.entrySeq().toArray();\n this.size = this._cache.length;\n }\n return this;\n };\n\n // abstract __iterateUncached(fn, reverse)\n\n Seq.prototype.__iterate = function __iterate (fn, reverse) {\n var cache = this._cache;\n if (cache) {\n var size = cache.length;\n var i = 0;\n while (i !== size) {\n var entry = cache[reverse ? size - ++i : i++];\n if (fn(entry[1], entry[0], this) === false) {\n break;\n }\n }\n return i;\n }\n return this.__iterateUncached(fn, reverse);\n };\n\n // abstract __iteratorUncached(type, reverse)\n\n Seq.prototype.__iterator = function __iterator (type, reverse) {\n var cache = this._cache;\n if (cache) {\n var size = cache.length;\n var i = 0;\n return new Iterator(function () {\n if (i === size) {\n return iteratorDone();\n }\n var entry = cache[reverse ? size - ++i : i++];\n return iteratorValue(type, entry[0], entry[1]);\n });\n }\n return this.__iteratorUncached(type, reverse);\n };\n\n return Seq;\n}(Collection));\n\nvar KeyedSeq = /*@__PURE__*/(function (Seq) {\n function KeyedSeq(value) {\n return value === undefined || value === null\n ? emptySequence().toKeyedSeq()\n : isCollection(value)\n ? isKeyed(value)\n ? value.toSeq()\n : value.fromEntrySeq()\n : isRecord(value)\n ? value.toSeq()\n : keyedSeqFromValue(value);\n }\n\n if ( Seq ) KeyedSeq.__proto__ = Seq;\n KeyedSeq.prototype = Object.create( Seq && Seq.prototype );\n KeyedSeq.prototype.constructor = KeyedSeq;\n\n KeyedSeq.prototype.toKeyedSeq = function toKeyedSeq () {\n return this;\n };\n\n return KeyedSeq;\n}(Seq));\n\nvar IndexedSeq = /*@__PURE__*/(function (Seq) {\n function IndexedSeq(value) {\n return value === undefined || value === null\n ? emptySequence()\n : isCollection(value)\n ? isKeyed(value)\n ? value.entrySeq()\n : value.toIndexedSeq()\n : isRecord(value)\n ? value.toSeq().entrySeq()\n : indexedSeqFromValue(value);\n }\n\n if ( Seq ) IndexedSeq.__proto__ = Seq;\n IndexedSeq.prototype = Object.create( Seq && Seq.prototype );\n IndexedSeq.prototype.constructor = IndexedSeq;\n\n IndexedSeq.of = function of (/*...values*/) {\n return IndexedSeq(arguments);\n };\n\n IndexedSeq.prototype.toIndexedSeq = function toIndexedSeq () {\n return this;\n };\n\n IndexedSeq.prototype.toString = function toString () {\n return this.__toString('Seq [', ']');\n };\n\n return IndexedSeq;\n}(Seq));\n\nvar SetSeq = /*@__PURE__*/(function (Seq) {\n function SetSeq(value) {\n return (\n isCollection(value) && !isAssociative(value) ? value : IndexedSeq(value)\n ).toSetSeq();\n }\n\n if ( Seq ) SetSeq.__proto__ = Seq;\n SetSeq.prototype = Object.create( Seq && Seq.prototype );\n SetSeq.prototype.constructor = SetSeq;\n\n SetSeq.of = function of (/*...values*/) {\n return SetSeq(arguments);\n };\n\n SetSeq.prototype.toSetSeq = function toSetSeq () {\n return this;\n };\n\n return SetSeq;\n}(Seq));\n\nSeq.isSeq = isSeq;\nSeq.Keyed = KeyedSeq;\nSeq.Set = SetSeq;\nSeq.Indexed = IndexedSeq;\n\nSeq.prototype[IS_SEQ_SYMBOL] = true;\n\n// #pragma Root Sequences\n\nvar ArraySeq = /*@__PURE__*/(function (IndexedSeq) {\n function ArraySeq(array) {\n this._array = array;\n this.size = array.length;\n }\n\n if ( IndexedSeq ) ArraySeq.__proto__ = IndexedSeq;\n ArraySeq.prototype = Object.create( IndexedSeq && IndexedSeq.prototype );\n ArraySeq.prototype.constructor = ArraySeq;\n\n ArraySeq.prototype.get = function get (index, notSetValue) {\n return this.has(index) ? this._array[wrapIndex(this, index)] : notSetValue;\n };\n\n ArraySeq.prototype.__iterate = function __iterate (fn, reverse) {\n var array = this._array;\n var size = array.length;\n var i = 0;\n while (i !== size) {\n var ii = reverse ? size - ++i : i++;\n if (fn(array[ii], ii, this) === false) {\n break;\n }\n }\n return i;\n };\n\n ArraySeq.prototype.__iterator = function __iterator (type, reverse) {\n var array = this._array;\n var size = array.length;\n var i = 0;\n return new Iterator(function () {\n if (i === size) {\n return iteratorDone();\n }\n var ii = reverse ? size - ++i : i++;\n return iteratorValue(type, ii, array[ii]);\n });\n };\n\n return ArraySeq;\n}(IndexedSeq));\n\nvar ObjectSeq = /*@__PURE__*/(function (KeyedSeq) {\n function ObjectSeq(object) {\n var keys = Object.keys(object).concat(\n Object.getOwnPropertySymbols ? Object.getOwnPropertySymbols(object) : []\n );\n this._object = object;\n this._keys = keys;\n this.size = keys.length;\n }\n\n if ( KeyedSeq ) ObjectSeq.__proto__ = KeyedSeq;\n ObjectSeq.prototype = Object.create( KeyedSeq && KeyedSeq.prototype );\n ObjectSeq.prototype.constructor = ObjectSeq;\n\n ObjectSeq.prototype.get = function get (key, notSetValue) {\n if (notSetValue !== undefined && !this.has(key)) {\n return notSetValue;\n }\n return this._object[key];\n };\n\n ObjectSeq.prototype.has = function has (key) {\n return hasOwnProperty.call(this._object, key);\n };\n\n ObjectSeq.prototype.__iterate = function __iterate (fn, reverse) {\n var object = this._object;\n var keys = this._keys;\n var size = keys.length;\n var i = 0;\n while (i !== size) {\n var key = keys[reverse ? size - ++i : i++];\n if (fn(object[key], key, this) === false) {\n break;\n }\n }\n return i;\n };\n\n ObjectSeq.prototype.__iterator = function __iterator (type, reverse) {\n var object = this._object;\n var keys = this._keys;\n var size = keys.length;\n var i = 0;\n return new Iterator(function () {\n if (i === size) {\n return iteratorDone();\n }\n var key = keys[reverse ? size - ++i : i++];\n return iteratorValue(type, key, object[key]);\n });\n };\n\n return ObjectSeq;\n}(KeyedSeq));\nObjectSeq.prototype[IS_ORDERED_SYMBOL] = true;\n\nvar CollectionSeq = /*@__PURE__*/(function (IndexedSeq) {\n function CollectionSeq(collection) {\n this._collection = collection;\n this.size = collection.length || collection.size;\n }\n\n if ( IndexedSeq ) CollectionSeq.__proto__ = IndexedSeq;\n CollectionSeq.prototype = Object.create( IndexedSeq && IndexedSeq.prototype );\n CollectionSeq.prototype.constructor = CollectionSeq;\n\n CollectionSeq.prototype.__iterateUncached = function __iterateUncached (fn, reverse) {\n if (reverse) {\n return this.cacheResult().__iterate(fn, reverse);\n }\n var collection = this._collection;\n var iterator = getIterator(collection);\n var iterations = 0;\n if (isIterator(iterator)) {\n var step;\n while (!(step = iterator.next()).done) {\n if (fn(step.value, iterations++, this) === false) {\n break;\n }\n }\n }\n return iterations;\n };\n\n CollectionSeq.prototype.__iteratorUncached = function __iteratorUncached (type, reverse) {\n if (reverse) {\n return this.cacheResult().__iterator(type, reverse);\n }\n var collection = this._collection;\n var iterator = getIterator(collection);\n if (!isIterator(iterator)) {\n return new Iterator(iteratorDone);\n }\n var iterations = 0;\n return new Iterator(function () {\n var step = iterator.next();\n return step.done ? step : iteratorValue(type, iterations++, step.value);\n });\n };\n\n return CollectionSeq;\n}(IndexedSeq));\n\n// # pragma Helper functions\n\nvar EMPTY_SEQ;\n\nfunction emptySequence() {\n return EMPTY_SEQ || (EMPTY_SEQ = new ArraySeq([]));\n}\n\nfunction keyedSeqFromValue(value) {\n var seq = maybeIndexedSeqFromValue(value);\n if (seq) {\n return seq.fromEntrySeq();\n }\n if (typeof value === 'object') {\n return new ObjectSeq(value);\n }\n throw new TypeError(\n 'Expected Array or collection object of [k, v] entries, or keyed object: ' +\n value\n );\n}\n\nfunction indexedSeqFromValue(value) {\n var seq = maybeIndexedSeqFromValue(value);\n if (seq) {\n return seq;\n }\n throw new TypeError(\n 'Expected Array or collection object of values: ' + value\n );\n}\n\nfunction seqFromValue(value) {\n var seq = maybeIndexedSeqFromValue(value);\n if (seq) {\n return isEntriesIterable(value)\n ? seq.fromEntrySeq()\n : isKeysIterable(value)\n ? seq.toSetSeq()\n : seq;\n }\n if (typeof value === 'object') {\n return new ObjectSeq(value);\n }\n throw new TypeError(\n 'Expected Array or collection object of values, or keyed object: ' + value\n );\n}\n\nfunction maybeIndexedSeqFromValue(value) {\n return isArrayLike(value)\n ? new ArraySeq(value)\n : hasIterator(value)\n ? new CollectionSeq(value)\n : undefined;\n}\n\nvar IS_MAP_SYMBOL = '@@__IMMUTABLE_MAP__@@';\n\nfunction isMap(maybeMap) {\n return Boolean(maybeMap && maybeMap[IS_MAP_SYMBOL]);\n}\n\nfunction isOrderedMap(maybeOrderedMap) {\n return isMap(maybeOrderedMap) && isOrdered(maybeOrderedMap);\n}\n\nfunction isValueObject(maybeValue) {\n return Boolean(\n maybeValue &&\n typeof maybeValue.equals === 'function' &&\n typeof maybeValue.hashCode === 'function'\n );\n}\n\n/**\n * An extension of the \"same-value\" algorithm as [described for use by ES6 Map\n * and Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map#Key_equality)\n *\n * NaN is considered the same as NaN, however -0 and 0 are considered the same\n * value, which is different from the algorithm described by\n * [`Object.is`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is).\n *\n * This is extended further to allow Objects to describe the values they\n * represent, by way of `valueOf` or `equals` (and `hashCode`).\n *\n * Note: because of this extension, the key equality of Immutable.Map and the\n * value equality of Immutable.Set will differ from ES6 Map and Set.\n *\n * ### Defining custom values\n *\n * The easiest way to describe the value an object represents is by implementing\n * `valueOf`. For example, `Date` represents a value by returning a unix\n * timestamp for `valueOf`:\n *\n * var date1 = new Date(1234567890000); // Fri Feb 13 2009 ...\n * var date2 = new Date(1234567890000);\n * date1.valueOf(); // 1234567890000\n * assert( date1 !== date2 );\n * assert( Immutable.is( date1, date2 ) );\n *\n * Note: overriding `valueOf` may have other implications if you use this object\n * where JavaScript expects a primitive, such as implicit string coercion.\n *\n * For more complex types, especially collections, implementing `valueOf` may\n * not be performant. An alternative is to implement `equals` and `hashCode`.\n *\n * `equals` takes another object, presumably of similar type, and returns true\n * if it is equal. Equality is symmetrical, so the same result should be\n * returned if this and the argument are flipped.\n *\n * assert( a.equals(b) === b.equals(a) );\n *\n * `hashCode` returns a 32bit integer number representing the object which will\n * be used to determine how to store the value object in a Map or Set. You must\n * provide both or neither methods, one must not exist without the other.\n *\n * Also, an important relationship between these methods must be upheld: if two\n * values are equal, they *must* return the same hashCode. If the values are not\n * equal, they might have the same hashCode; this is called a hash collision,\n * and while undesirable for performance reasons, it is acceptable.\n *\n * if (a.equals(b)) {\n * assert( a.hashCode() === b.hashCode() );\n * }\n *\n * All Immutable collections are Value Objects: they implement `equals()`\n * and `hashCode()`.\n */\nfunction is(valueA, valueB) {\n if (valueA === valueB || (valueA !== valueA && valueB !== valueB)) {\n return true;\n }\n if (!valueA || !valueB) {\n return false;\n }\n if (\n typeof valueA.valueOf === 'function' &&\n typeof valueB.valueOf === 'function'\n ) {\n valueA = valueA.valueOf();\n valueB = valueB.valueOf();\n if (valueA === valueB || (valueA !== valueA && valueB !== valueB)) {\n return true;\n }\n if (!valueA || !valueB) {\n return false;\n }\n }\n return !!(\n isValueObject(valueA) &&\n isValueObject(valueB) &&\n valueA.equals(valueB)\n );\n}\n\nvar imul =\n typeof Math.imul === 'function' && Math.imul(0xffffffff, 2) === -2\n ? Math.imul\n : function imul(a, b) {\n a |= 0; // int\n b |= 0; // int\n var c = a & 0xffff;\n var d = b & 0xffff;\n // Shift by 0 fixes the sign on the high part.\n return (c * d + ((((a >>> 16) * d + c * (b >>> 16)) << 16) >>> 0)) | 0; // int\n };\n\n// v8 has an optimization for storing 31-bit signed numbers.\n// Values which have either 00 or 11 as the high order bits qualify.\n// This function drops the highest order bit in a signed number, maintaining\n// the sign bit.\nfunction smi(i32) {\n return ((i32 >>> 1) & 0x40000000) | (i32 & 0xbfffffff);\n}\n\nvar defaultValueOf = Object.prototype.valueOf;\n\nfunction hash(o) {\n if (o == null) {\n return hashNullish(o);\n }\n\n if (typeof o.hashCode === 'function') {\n // Drop any high bits from accidentally long hash codes.\n return smi(o.hashCode(o));\n }\n\n var v = valueOf(o);\n\n if (v == null) {\n return hashNullish(v);\n }\n\n switch (typeof v) {\n case 'boolean':\n // The hash values for built-in constants are a 1 value for each 5-byte\n // shift region expect for the first, which encodes the value. This\n // reduces the odds of a hash collision for these common values.\n return v ? 0x42108421 : 0x42108420;\n case 'number':\n return hashNumber(v);\n case 'string':\n return v.length > STRING_HASH_CACHE_MIN_STRLEN\n ? cachedHashString(v)\n : hashString(v);\n case 'object':\n case 'function':\n return hashJSObj(v);\n case 'symbol':\n return hashSymbol(v);\n default:\n if (typeof v.toString === 'function') {\n return hashString(v.toString());\n }\n throw new Error('Value type ' + typeof v + ' cannot be hashed.');\n }\n}\n\nfunction hashNullish(nullish) {\n return nullish === null ? 0x42108422 : /* undefined */ 0x42108423;\n}\n\n// Compress arbitrarily large numbers into smi hashes.\nfunction hashNumber(n) {\n if (n !== n || n === Infinity) {\n return 0;\n }\n var hash = n | 0;\n if (hash !== n) {\n hash ^= n * 0xffffffff;\n }\n while (n > 0xffffffff) {\n n /= 0xffffffff;\n hash ^= n;\n }\n return smi(hash);\n}\n\nfunction cachedHashString(string) {\n var hashed = stringHashCache[string];\n if (hashed === undefined) {\n hashed = hashString(string);\n if (STRING_HASH_CACHE_SIZE === STRING_HASH_CACHE_MAX_SIZE) {\n STRING_HASH_CACHE_SIZE = 0;\n stringHashCache = {};\n }\n STRING_HASH_CACHE_SIZE++;\n stringHashCache[string] = hashed;\n }\n return hashed;\n}\n\n// http://jsperf.com/hashing-strings\nfunction hashString(string) {\n // This is the hash from JVM\n // The hash code for a string is computed as\n // s[0] * 31 ^ (n - 1) + s[1] * 31 ^ (n - 2) + ... + s[n - 1],\n // where s[i] is the ith character of the string and n is the length of\n // the string. We \"mod\" the result to make it between 0 (inclusive) and 2^31\n // (exclusive) by dropping high bits.\n var hashed = 0;\n for (var ii = 0; ii < string.length; ii++) {\n hashed = (31 * hashed + string.charCodeAt(ii)) | 0;\n }\n return smi(hashed);\n}\n\nfunction hashSymbol(sym) {\n var hashed = symbolMap[sym];\n if (hashed !== undefined) {\n return hashed;\n }\n\n hashed = nextHash();\n\n symbolMap[sym] = hashed;\n\n return hashed;\n}\n\nfunction hashJSObj(obj) {\n var hashed;\n if (usingWeakMap) {\n hashed = weakMap.get(obj);\n if (hashed !== undefined) {\n return hashed;\n }\n }\n\n hashed = obj[UID_HASH_KEY];\n if (hashed !== undefined) {\n return hashed;\n }\n\n if (!canDefineProperty) {\n hashed = obj.propertyIsEnumerable && obj.propertyIsEnumerable[UID_HASH_KEY];\n if (hashed !== undefined) {\n return hashed;\n }\n\n hashed = getIENodeHash(obj);\n if (hashed !== undefined) {\n return hashed;\n }\n }\n\n hashed = nextHash();\n\n if (usingWeakMap) {\n weakMap.set(obj, hashed);\n } else if (isExtensible !== undefined && isExtensible(obj) === false) {\n throw new Error('Non-extensible objects are not allowed as keys.');\n } else if (canDefineProperty) {\n Object.defineProperty(obj, UID_HASH_KEY, {\n enumerable: false,\n configurable: false,\n writable: false,\n value: hashed,\n });\n } else if (\n obj.propertyIsEnumerable !== undefined &&\n obj.propertyIsEnumerable === obj.constructor.prototype.propertyIsEnumerable\n ) {\n // Since we can't define a non-enumerable property on the object\n // we'll hijack one of the less-used non-enumerable properties to\n // save our hash on it. Since this is a function it will not show up in\n // `JSON.stringify` which is what we want.\n obj.propertyIsEnumerable = function () {\n return this.constructor.prototype.propertyIsEnumerable.apply(\n this,\n arguments\n );\n };\n obj.propertyIsEnumerable[UID_HASH_KEY] = hashed;\n } else if (obj.nodeType !== undefined) {\n // At this point we couldn't get the IE `uniqueID` to use as a hash\n // and we couldn't use a non-enumerable property to exploit the\n // dontEnum bug so we simply add the `UID_HASH_KEY` on the node\n // itself.\n obj[UID_HASH_KEY] = hashed;\n } else {\n throw new Error('Unable to set a non-enumerable property on object.');\n }\n\n return hashed;\n}\n\n// Get references to ES5 object methods.\nvar isExtensible = Object.isExtensible;\n\n// True if Object.defineProperty works as expected. IE8 fails this test.\nvar canDefineProperty = (function () {\n try {\n Object.defineProperty({}, '@', {});\n return true;\n } catch (e) {\n return false;\n }\n})();\n\n// IE has a `uniqueID` property on DOM nodes. We can construct the hash from it\n// and avoid memory leaks from the IE cloneNode bug.\nfunction getIENodeHash(node) {\n if (node && node.nodeType > 0) {\n switch (node.nodeType) {\n case 1: // Element\n return node.uniqueID;\n case 9: // Document\n return node.documentElement && node.documentElement.uniqueID;\n }\n }\n}\n\nfunction valueOf(obj) {\n return obj.valueOf !== defaultValueOf && typeof obj.valueOf === 'function'\n ? obj.valueOf(obj)\n : obj;\n}\n\nfunction nextHash() {\n var nextHash = ++_objHashUID;\n if (_objHashUID & 0x40000000) {\n _objHashUID = 0;\n }\n return nextHash;\n}\n\n// If possible, use a WeakMap.\nvar usingWeakMap = typeof WeakMap === 'function';\nvar weakMap;\nif (usingWeakMap) {\n weakMap = new WeakMap();\n}\n\nvar symbolMap = Object.create(null);\n\nvar _objHashUID = 0;\n\nvar UID_HASH_KEY = '__immutablehash__';\nif (typeof Symbol === 'function') {\n UID_HASH_KEY = Symbol(UID_HASH_KEY);\n}\n\nvar STRING_HASH_CACHE_MIN_STRLEN = 16;\nvar STRING_HASH_CACHE_MAX_SIZE = 255;\nvar STRING_HASH_CACHE_SIZE = 0;\nvar stringHashCache = {};\n\nvar ToKeyedSequence = /*@__PURE__*/(function (KeyedSeq) {\n function ToKeyedSequence(indexed, useKeys) {\n this._iter = indexed;\n this._useKeys = useKeys;\n this.size = indexed.size;\n }\n\n if ( KeyedSeq ) ToKeyedSequence.__proto__ = KeyedSeq;\n ToKeyedSequence.prototype = Object.create( KeyedSeq && KeyedSeq.prototype );\n ToKeyedSequence.prototype.constructor = ToKeyedSequence;\n\n ToKeyedSequence.prototype.get = function get (key, notSetValue) {\n return this._iter.get(key, notSetValue);\n };\n\n ToKeyedSequence.prototype.has = function has (key) {\n return this._iter.has(key);\n };\n\n ToKeyedSequence.prototype.valueSeq = function valueSeq () {\n return this._iter.valueSeq();\n };\n\n ToKeyedSequence.prototype.reverse = function reverse () {\n var this$1$1 = this;\n\n var reversedSequence = reverseFactory(this, true);\n if (!this._useKeys) {\n reversedSequence.valueSeq = function () { return this$1$1._iter.toSeq().reverse(); };\n }\n return reversedSequence;\n };\n\n ToKeyedSequence.prototype.map = function map (mapper, context) {\n var this$1$1 = this;\n\n var mappedSequence = mapFactory(this, mapper, context);\n if (!this._useKeys) {\n mappedSequence.valueSeq = function () { return this$1$1._iter.toSeq().map(mapper, context); };\n }\n return mappedSequence;\n };\n\n ToKeyedSequence.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n return this._iter.__iterate(function (v, k) { return fn(v, k, this$1$1); }, reverse);\n };\n\n ToKeyedSequence.prototype.__iterator = function __iterator (type, reverse) {\n return this._iter.__iterator(type, reverse);\n };\n\n return ToKeyedSequence;\n}(KeyedSeq));\nToKeyedSequence.prototype[IS_ORDERED_SYMBOL] = true;\n\nvar ToIndexedSequence = /*@__PURE__*/(function (IndexedSeq) {\n function ToIndexedSequence(iter) {\n this._iter = iter;\n this.size = iter.size;\n }\n\n if ( IndexedSeq ) ToIndexedSequence.__proto__ = IndexedSeq;\n ToIndexedSequence.prototype = Object.create( IndexedSeq && IndexedSeq.prototype );\n ToIndexedSequence.prototype.constructor = ToIndexedSequence;\n\n ToIndexedSequence.prototype.includes = function includes (value) {\n return this._iter.includes(value);\n };\n\n ToIndexedSequence.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n var i = 0;\n reverse && ensureSize(this);\n return this._iter.__iterate(\n function (v) { return fn(v, reverse ? this$1$1.size - ++i : i++, this$1$1); },\n reverse\n );\n };\n\n ToIndexedSequence.prototype.__iterator = function __iterator (type, reverse) {\n var this$1$1 = this;\n\n var iterator = this._iter.__iterator(ITERATE_VALUES, reverse);\n var i = 0;\n reverse && ensureSize(this);\n return new Iterator(function () {\n var step = iterator.next();\n return step.done\n ? step\n : iteratorValue(\n type,\n reverse ? this$1$1.size - ++i : i++,\n step.value,\n step\n );\n });\n };\n\n return ToIndexedSequence;\n}(IndexedSeq));\n\nvar ToSetSequence = /*@__PURE__*/(function (SetSeq) {\n function ToSetSequence(iter) {\n this._iter = iter;\n this.size = iter.size;\n }\n\n if ( SetSeq ) ToSetSequence.__proto__ = SetSeq;\n ToSetSequence.prototype = Object.create( SetSeq && SetSeq.prototype );\n ToSetSequence.prototype.constructor = ToSetSequence;\n\n ToSetSequence.prototype.has = function has (key) {\n return this._iter.includes(key);\n };\n\n ToSetSequence.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n return this._iter.__iterate(function (v) { return fn(v, v, this$1$1); }, reverse);\n };\n\n ToSetSequence.prototype.__iterator = function __iterator (type, reverse) {\n var iterator = this._iter.__iterator(ITERATE_VALUES, reverse);\n return new Iterator(function () {\n var step = iterator.next();\n return step.done\n ? step\n : iteratorValue(type, step.value, step.value, step);\n });\n };\n\n return ToSetSequence;\n}(SetSeq));\n\nvar FromEntriesSequence = /*@__PURE__*/(function (KeyedSeq) {\n function FromEntriesSequence(entries) {\n this._iter = entries;\n this.size = entries.size;\n }\n\n if ( KeyedSeq ) FromEntriesSequence.__proto__ = KeyedSeq;\n FromEntriesSequence.prototype = Object.create( KeyedSeq && KeyedSeq.prototype );\n FromEntriesSequence.prototype.constructor = FromEntriesSequence;\n\n FromEntriesSequence.prototype.entrySeq = function entrySeq () {\n return this._iter.toSeq();\n };\n\n FromEntriesSequence.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n return this._iter.__iterate(function (entry) {\n // Check if entry exists first so array access doesn't throw for holes\n // in the parent iteration.\n if (entry) {\n validateEntry(entry);\n var indexedCollection = isCollection(entry);\n return fn(\n indexedCollection ? entry.get(1) : entry[1],\n indexedCollection ? entry.get(0) : entry[0],\n this$1$1\n );\n }\n }, reverse);\n };\n\n FromEntriesSequence.prototype.__iterator = function __iterator (type, reverse) {\n var iterator = this._iter.__iterator(ITERATE_VALUES, reverse);\n return new Iterator(function () {\n while (true) {\n var step = iterator.next();\n if (step.done) {\n return step;\n }\n var entry = step.value;\n // Check if entry exists first so array access doesn't throw for holes\n // in the parent iteration.\n if (entry) {\n validateEntry(entry);\n var indexedCollection = isCollection(entry);\n return iteratorValue(\n type,\n indexedCollection ? entry.get(0) : entry[0],\n indexedCollection ? entry.get(1) : entry[1],\n step\n );\n }\n }\n });\n };\n\n return FromEntriesSequence;\n}(KeyedSeq));\n\nToIndexedSequence.prototype.cacheResult =\n ToKeyedSequence.prototype.cacheResult =\n ToSetSequence.prototype.cacheResult =\n FromEntriesSequence.prototype.cacheResult =\n cacheResultThrough;\n\nfunction flipFactory(collection) {\n var flipSequence = makeSequence(collection);\n flipSequence._iter = collection;\n flipSequence.size = collection.size;\n flipSequence.flip = function () { return collection; };\n flipSequence.reverse = function () {\n var reversedSequence = collection.reverse.apply(this); // super.reverse()\n reversedSequence.flip = function () { return collection.reverse(); };\n return reversedSequence;\n };\n flipSequence.has = function (key) { return collection.includes(key); };\n flipSequence.includes = function (key) { return collection.has(key); };\n flipSequence.cacheResult = cacheResultThrough;\n flipSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n return collection.__iterate(function (v, k) { return fn(k, v, this$1$1) !== false; }, reverse);\n };\n flipSequence.__iteratorUncached = function (type, reverse) {\n if (type === ITERATE_ENTRIES) {\n var iterator = collection.__iterator(type, reverse);\n return new Iterator(function () {\n var step = iterator.next();\n if (!step.done) {\n var k = step.value[0];\n step.value[0] = step.value[1];\n step.value[1] = k;\n }\n return step;\n });\n }\n return collection.__iterator(\n type === ITERATE_VALUES ? ITERATE_KEYS : ITERATE_VALUES,\n reverse\n );\n };\n return flipSequence;\n}\n\nfunction mapFactory(collection, mapper, context) {\n var mappedSequence = makeSequence(collection);\n mappedSequence.size = collection.size;\n mappedSequence.has = function (key) { return collection.has(key); };\n mappedSequence.get = function (key, notSetValue) {\n var v = collection.get(key, NOT_SET);\n return v === NOT_SET\n ? notSetValue\n : mapper.call(context, v, key, collection);\n };\n mappedSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n return collection.__iterate(\n function (v, k, c) { return fn(mapper.call(context, v, k, c), k, this$1$1) !== false; },\n reverse\n );\n };\n mappedSequence.__iteratorUncached = function (type, reverse) {\n var iterator = collection.__iterator(ITERATE_ENTRIES, reverse);\n return new Iterator(function () {\n var step = iterator.next();\n if (step.done) {\n return step;\n }\n var entry = step.value;\n var key = entry[0];\n return iteratorValue(\n type,\n key,\n mapper.call(context, entry[1], key, collection),\n step\n );\n });\n };\n return mappedSequence;\n}\n\nfunction reverseFactory(collection, useKeys) {\n var this$1$1 = this;\n\n var reversedSequence = makeSequence(collection);\n reversedSequence._iter = collection;\n reversedSequence.size = collection.size;\n reversedSequence.reverse = function () { return collection; };\n if (collection.flip) {\n reversedSequence.flip = function () {\n var flipSequence = flipFactory(collection);\n flipSequence.reverse = function () { return collection.flip(); };\n return flipSequence;\n };\n }\n reversedSequence.get = function (key, notSetValue) { return collection.get(useKeys ? key : -1 - key, notSetValue); };\n reversedSequence.has = function (key) { return collection.has(useKeys ? key : -1 - key); };\n reversedSequence.includes = function (value) { return collection.includes(value); };\n reversedSequence.cacheResult = cacheResultThrough;\n reversedSequence.__iterate = function (fn, reverse) {\n var this$1$1 = this;\n\n var i = 0;\n reverse && ensureSize(collection);\n return collection.__iterate(\n function (v, k) { return fn(v, useKeys ? k : reverse ? this$1$1.size - ++i : i++, this$1$1); },\n !reverse\n );\n };\n reversedSequence.__iterator = function (type, reverse) {\n var i = 0;\n reverse && ensureSize(collection);\n var iterator = collection.__iterator(ITERATE_ENTRIES, !reverse);\n return new Iterator(function () {\n var step = iterator.next();\n if (step.done) {\n return step;\n }\n var entry = step.value;\n return iteratorValue(\n type,\n useKeys ? entry[0] : reverse ? this$1$1.size - ++i : i++,\n entry[1],\n step\n );\n });\n };\n return reversedSequence;\n}\n\nfunction filterFactory(collection, predicate, context, useKeys) {\n var filterSequence = makeSequence(collection);\n if (useKeys) {\n filterSequence.has = function (key) {\n var v = collection.get(key, NOT_SET);\n return v !== NOT_SET && !!predicate.call(context, v, key, collection);\n };\n filterSequence.get = function (key, notSetValue) {\n var v = collection.get(key, NOT_SET);\n return v !== NOT_SET && predicate.call(context, v, key, collection)\n ? v\n : notSetValue;\n };\n }\n filterSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n var iterations = 0;\n collection.__iterate(function (v, k, c) {\n if (predicate.call(context, v, k, c)) {\n iterations++;\n return fn(v, useKeys ? k : iterations - 1, this$1$1);\n }\n }, reverse);\n return iterations;\n };\n filterSequence.__iteratorUncached = function (type, reverse) {\n var iterator = collection.__iterator(ITERATE_ENTRIES, reverse);\n var iterations = 0;\n return new Iterator(function () {\n while (true) {\n var step = iterator.next();\n if (step.done) {\n return step;\n }\n var entry = step.value;\n var key = entry[0];\n var value = entry[1];\n if (predicate.call(context, value, key, collection)) {\n return iteratorValue(type, useKeys ? key : iterations++, value, step);\n }\n }\n });\n };\n return filterSequence;\n}\n\nfunction countByFactory(collection, grouper, context) {\n var groups = Map().asMutable();\n collection.__iterate(function (v, k) {\n groups.update(grouper.call(context, v, k, collection), 0, function (a) { return a + 1; });\n });\n return groups.asImmutable();\n}\n\nfunction groupByFactory(collection, grouper, context) {\n var isKeyedIter = isKeyed(collection);\n var groups = (isOrdered(collection) ? OrderedMap() : Map()).asMutable();\n collection.__iterate(function (v, k) {\n groups.update(\n grouper.call(context, v, k, collection),\n function (a) { return ((a = a || []), a.push(isKeyedIter ? [k, v] : v), a); }\n );\n });\n var coerce = collectionClass(collection);\n return groups.map(function (arr) { return reify(collection, coerce(arr)); }).asImmutable();\n}\n\nfunction partitionFactory(collection, predicate, context) {\n var isKeyedIter = isKeyed(collection);\n var groups = [[], []];\n collection.__iterate(function (v, k) {\n groups[predicate.call(context, v, k, collection) ? 1 : 0].push(\n isKeyedIter ? [k, v] : v\n );\n });\n var coerce = collectionClass(collection);\n return groups.map(function (arr) { return reify(collection, coerce(arr)); });\n}\n\nfunction sliceFactory(collection, begin, end, useKeys) {\n var originalSize = collection.size;\n\n if (wholeSlice(begin, end, originalSize)) {\n return collection;\n }\n\n var resolvedBegin = resolveBegin(begin, originalSize);\n var resolvedEnd = resolveEnd(end, originalSize);\n\n // begin or end will be NaN if they were provided as negative numbers and\n // this collection's size is unknown. In that case, cache first so there is\n // a known size and these do not resolve to NaN.\n if (resolvedBegin !== resolvedBegin || resolvedEnd !== resolvedEnd) {\n return sliceFactory(collection.toSeq().cacheResult(), begin, end, useKeys);\n }\n\n // Note: resolvedEnd is undefined when the original sequence's length is\n // unknown and this slice did not supply an end and should contain all\n // elements after resolvedBegin.\n // In that case, resolvedSize will be NaN and sliceSize will remain undefined.\n var resolvedSize = resolvedEnd - resolvedBegin;\n var sliceSize;\n if (resolvedSize === resolvedSize) {\n sliceSize = resolvedSize < 0 ? 0 : resolvedSize;\n }\n\n var sliceSeq = makeSequence(collection);\n\n // If collection.size is undefined, the size of the realized sliceSeq is\n // unknown at this point unless the number of items to slice is 0\n sliceSeq.size =\n sliceSize === 0 ? sliceSize : (collection.size && sliceSize) || undefined;\n\n if (!useKeys && isSeq(collection) && sliceSize >= 0) {\n sliceSeq.get = function (index, notSetValue) {\n index = wrapIndex(this, index);\n return index >= 0 && index < sliceSize\n ? collection.get(index + resolvedBegin, notSetValue)\n : notSetValue;\n };\n }\n\n sliceSeq.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n if (sliceSize === 0) {\n return 0;\n }\n if (reverse) {\n return this.cacheResult().__iterate(fn, reverse);\n }\n var skipped = 0;\n var isSkipping = true;\n var iterations = 0;\n collection.__iterate(function (v, k) {\n if (!(isSkipping && (isSkipping = skipped++ < resolvedBegin))) {\n iterations++;\n return (\n fn(v, useKeys ? k : iterations - 1, this$1$1) !== false &&\n iterations !== sliceSize\n );\n }\n });\n return iterations;\n };\n\n sliceSeq.__iteratorUncached = function (type, reverse) {\n if (sliceSize !== 0 && reverse) {\n return this.cacheResult().__iterator(type, reverse);\n }\n // Don't bother instantiating parent iterator if taking 0.\n if (sliceSize === 0) {\n return new Iterator(iteratorDone);\n }\n var iterator = collection.__iterator(type, reverse);\n var skipped = 0;\n var iterations = 0;\n return new Iterator(function () {\n while (skipped++ < resolvedBegin) {\n iterator.next();\n }\n if (++iterations > sliceSize) {\n return iteratorDone();\n }\n var step = iterator.next();\n if (useKeys || type === ITERATE_VALUES || step.done) {\n return step;\n }\n if (type === ITERATE_KEYS) {\n return iteratorValue(type, iterations - 1, undefined, step);\n }\n return iteratorValue(type, iterations - 1, step.value[1], step);\n });\n };\n\n return sliceSeq;\n}\n\nfunction takeWhileFactory(collection, predicate, context) {\n var takeSequence = makeSequence(collection);\n takeSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n if (reverse) {\n return this.cacheResult().__iterate(fn, reverse);\n }\n var iterations = 0;\n collection.__iterate(\n function (v, k, c) { return predicate.call(context, v, k, c) && ++iterations && fn(v, k, this$1$1); }\n );\n return iterations;\n };\n takeSequence.__iteratorUncached = function (type, reverse) {\n var this$1$1 = this;\n\n if (reverse) {\n return this.cacheResult().__iterator(type, reverse);\n }\n var iterator = collection.__iterator(ITERATE_ENTRIES, reverse);\n var iterating = true;\n return new Iterator(function () {\n if (!iterating) {\n return iteratorDone();\n }\n var step = iterator.next();\n if (step.done) {\n return step;\n }\n var entry = step.value;\n var k = entry[0];\n var v = entry[1];\n if (!predicate.call(context, v, k, this$1$1)) {\n iterating = false;\n return iteratorDone();\n }\n return type === ITERATE_ENTRIES ? step : iteratorValue(type, k, v, step);\n });\n };\n return takeSequence;\n}\n\nfunction skipWhileFactory(collection, predicate, context, useKeys) {\n var skipSequence = makeSequence(collection);\n skipSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n if (reverse) {\n return this.cacheResult().__iterate(fn, reverse);\n }\n var isSkipping = true;\n var iterations = 0;\n collection.__iterate(function (v, k, c) {\n if (!(isSkipping && (isSkipping = predicate.call(context, v, k, c)))) {\n iterations++;\n return fn(v, useKeys ? k : iterations - 1, this$1$1);\n }\n });\n return iterations;\n };\n skipSequence.__iteratorUncached = function (type, reverse) {\n var this$1$1 = this;\n\n if (reverse) {\n return this.cacheResult().__iterator(type, reverse);\n }\n var iterator = collection.__iterator(ITERATE_ENTRIES, reverse);\n var skipping = true;\n var iterations = 0;\n return new Iterator(function () {\n var step;\n var k;\n var v;\n do {\n step = iterator.next();\n if (step.done) {\n if (useKeys || type === ITERATE_VALUES) {\n return step;\n }\n if (type === ITERATE_KEYS) {\n return iteratorValue(type, iterations++, undefined, step);\n }\n return iteratorValue(type, iterations++, step.value[1], step);\n }\n var entry = step.value;\n k = entry[0];\n v = entry[1];\n skipping && (skipping = predicate.call(context, v, k, this$1$1));\n } while (skipping);\n return type === ITERATE_ENTRIES ? step : iteratorValue(type, k, v, step);\n });\n };\n return skipSequence;\n}\n\nfunction concatFactory(collection, values) {\n var isKeyedCollection = isKeyed(collection);\n var iters = [collection]\n .concat(values)\n .map(function (v) {\n if (!isCollection(v)) {\n v = isKeyedCollection\n ? keyedSeqFromValue(v)\n : indexedSeqFromValue(Array.isArray(v) ? v : [v]);\n } else if (isKeyedCollection) {\n v = KeyedCollection(v);\n }\n return v;\n })\n .filter(function (v) { return v.size !== 0; });\n\n if (iters.length === 0) {\n return collection;\n }\n\n if (iters.length === 1) {\n var singleton = iters[0];\n if (\n singleton === collection ||\n (isKeyedCollection && isKeyed(singleton)) ||\n (isIndexed(collection) && isIndexed(singleton))\n ) {\n return singleton;\n }\n }\n\n var concatSeq = new ArraySeq(iters);\n if (isKeyedCollection) {\n concatSeq = concatSeq.toKeyedSeq();\n } else if (!isIndexed(collection)) {\n concatSeq = concatSeq.toSetSeq();\n }\n concatSeq = concatSeq.flatten(true);\n concatSeq.size = iters.reduce(function (sum, seq) {\n if (sum !== undefined) {\n var size = seq.size;\n if (size !== undefined) {\n return sum + size;\n }\n }\n }, 0);\n return concatSeq;\n}\n\nfunction flattenFactory(collection, depth, useKeys) {\n var flatSequence = makeSequence(collection);\n flatSequence.__iterateUncached = function (fn, reverse) {\n if (reverse) {\n return this.cacheResult().__iterate(fn, reverse);\n }\n var iterations = 0;\n var stopped = false;\n function flatDeep(iter, currentDepth) {\n iter.__iterate(function (v, k) {\n if ((!depth || currentDepth < depth) && isCollection(v)) {\n flatDeep(v, currentDepth + 1);\n } else {\n iterations++;\n if (fn(v, useKeys ? k : iterations - 1, flatSequence) === false) {\n stopped = true;\n }\n }\n return !stopped;\n }, reverse);\n }\n flatDeep(collection, 0);\n return iterations;\n };\n flatSequence.__iteratorUncached = function (type, reverse) {\n if (reverse) {\n return this.cacheResult().__iterator(type, reverse);\n }\n var iterator = collection.__iterator(type, reverse);\n var stack = [];\n var iterations = 0;\n return new Iterator(function () {\n while (iterator) {\n var step = iterator.next();\n if (step.done !== false) {\n iterator = stack.pop();\n continue;\n }\n var v = step.value;\n if (type === ITERATE_ENTRIES) {\n v = v[1];\n }\n if ((!depth || stack.length < depth) && isCollection(v)) {\n stack.push(iterator);\n iterator = v.__iterator(type, reverse);\n } else {\n return useKeys ? step : iteratorValue(type, iterations++, v, step);\n }\n }\n return iteratorDone();\n });\n };\n return flatSequence;\n}\n\nfunction flatMapFactory(collection, mapper, context) {\n var coerce = collectionClass(collection);\n return collection\n .toSeq()\n .map(function (v, k) { return coerce(mapper.call(context, v, k, collection)); })\n .flatten(true);\n}\n\nfunction interposeFactory(collection, separator) {\n var interposedSequence = makeSequence(collection);\n interposedSequence.size = collection.size && collection.size * 2 - 1;\n interposedSequence.__iterateUncached = function (fn, reverse) {\n var this$1$1 = this;\n\n var iterations = 0;\n collection.__iterate(\n function (v) { return (!iterations || fn(separator, iterations++, this$1$1) !== false) &&\n fn(v, iterations++, this$1$1) !== false; },\n reverse\n );\n return iterations;\n };\n interposedSequence.__iteratorUncached = function (type, reverse) {\n var iterator = collection.__iterator(ITERATE_VALUES, reverse);\n var iterations = 0;\n var step;\n return new Iterator(function () {\n if (!step || iterations % 2) {\n step = iterator.next();\n if (step.done) {\n return step;\n }\n }\n return iterations % 2\n ? iteratorValue(type, iterations++, separator)\n : iteratorValue(type, iterations++, step.value, step);\n });\n };\n return interposedSequence;\n}\n\nfunction sortFactory(collection, comparator, mapper) {\n if (!comparator) {\n comparator = defaultComparator;\n }\n var isKeyedCollection = isKeyed(collection);\n var index = 0;\n var entries = collection\n .toSeq()\n .map(function (v, k) { return [k, v, index++, mapper ? mapper(v, k, collection) : v]; })\n .valueSeq()\n .toArray();\n entries\n .sort(function (a, b) { return comparator(a[3], b[3]) || a[2] - b[2]; })\n .forEach(\n isKeyedCollection\n ? function (v, i) {\n entries[i].length = 2;\n }\n : function (v, i) {\n entries[i] = v[1];\n }\n );\n return isKeyedCollection\n ? KeyedSeq(entries)\n : isIndexed(collection)\n ? IndexedSeq(entries)\n : SetSeq(entries);\n}\n\nfunction maxFactory(collection, comparator, mapper) {\n if (!comparator) {\n comparator = defaultComparator;\n }\n if (mapper) {\n var entry = collection\n .toSeq()\n .map(function (v, k) { return [v, mapper(v, k, collection)]; })\n .reduce(function (a, b) { return (maxCompare(comparator, a[1], b[1]) ? b : a); });\n return entry && entry[0];\n }\n return collection.reduce(function (a, b) { return (maxCompare(comparator, a, b) ? b : a); });\n}\n\nfunction maxCompare(comparator, a, b) {\n var comp = comparator(b, a);\n // b is considered the new max if the comparator declares them equal, but\n // they are not equal and b is in fact a nullish value.\n return (\n (comp === 0 && b !== a && (b === undefined || b === null || b !== b)) ||\n comp > 0\n );\n}\n\nfunction zipWithFactory(keyIter, zipper, iters, zipAll) {\n var zipSequence = makeSequence(keyIter);\n var sizes = new ArraySeq(iters).map(function (i) { return i.size; });\n zipSequence.size = zipAll ? sizes.max() : sizes.min();\n // Note: this a generic base implementation of __iterate in terms of\n // __iterator which may be more generically useful in the future.\n zipSequence.__iterate = function (fn, reverse) {\n /* generic:\n var iterator = this.__iterator(ITERATE_ENTRIES, reverse);\n var step;\n var iterations = 0;\n while (!(step = iterator.next()).done) {\n iterations++;\n if (fn(step.value[1], step.value[0], this) === false) {\n break;\n }\n }\n return iterations;\n */\n // indexed:\n var iterator = this.__iterator(ITERATE_VALUES, reverse);\n var step;\n var iterations = 0;\n while (!(step = iterator.next()).done) {\n if (fn(step.value, iterations++, this) === false) {\n break;\n }\n }\n return iterations;\n };\n zipSequence.__iteratorUncached = function (type, reverse) {\n var iterators = iters.map(\n function (i) { return ((i = Collection(i)), getIterator(reverse ? i.reverse() : i)); }\n );\n var iterations = 0;\n var isDone = false;\n return new Iterator(function () {\n var steps;\n if (!isDone) {\n steps = iterators.map(function (i) { return i.next(); });\n isDone = zipAll ? steps.every(function (s) { return s.done; }) : steps.some(function (s) { return s.done; });\n }\n if (isDone) {\n return iteratorDone();\n }\n return iteratorValue(\n type,\n iterations++,\n zipper.apply(\n null,\n steps.map(function (s) { return s.value; })\n )\n );\n });\n };\n return zipSequence;\n}\n\n// #pragma Helper Functions\n\nfunction reify(iter, seq) {\n return iter === seq ? iter : isSeq(iter) ? seq : iter.constructor(seq);\n}\n\nfunction validateEntry(entry) {\n if (entry !== Object(entry)) {\n throw new TypeError('Expected [K, V] tuple: ' + entry);\n }\n}\n\nfunction collectionClass(collection) {\n return isKeyed(collection)\n ? KeyedCollection\n : isIndexed(collection)\n ? IndexedCollection\n : SetCollection;\n}\n\nfunction makeSequence(collection) {\n return Object.create(\n (isKeyed(collection)\n ? KeyedSeq\n : isIndexed(collection)\n ? IndexedSeq\n : SetSeq\n ).prototype\n );\n}\n\nfunction cacheResultThrough() {\n if (this._iter.cacheResult) {\n this._iter.cacheResult();\n this.size = this._iter.size;\n return this;\n }\n return Seq.prototype.cacheResult.call(this);\n}\n\nfunction defaultComparator(a, b) {\n if (a === undefined && b === undefined) {\n return 0;\n }\n\n if (a === undefined) {\n return 1;\n }\n\n if (b === undefined) {\n return -1;\n }\n\n return a > b ? 1 : a < b ? -1 : 0;\n}\n\nfunction arrCopy(arr, offset) {\n offset = offset || 0;\n var len = Math.max(0, arr.length - offset);\n var newArr = new Array(len);\n for (var ii = 0; ii < len; ii++) {\n newArr[ii] = arr[ii + offset];\n }\n return newArr;\n}\n\nfunction invariant(condition, error) {\n if (!condition) { throw new Error(error); }\n}\n\nfunction assertNotInfinite(size) {\n invariant(\n size !== Infinity,\n 'Cannot perform this action with an infinite size.'\n );\n}\n\nfunction coerceKeyPath(keyPath) {\n if (isArrayLike(keyPath) && typeof keyPath !== 'string') {\n return keyPath;\n }\n if (isOrdered(keyPath)) {\n return keyPath.toArray();\n }\n throw new TypeError(\n 'Invalid keyPath: expected Ordered Collection or Array: ' + keyPath\n );\n}\n\nvar toString = Object.prototype.toString;\n\nfunction isPlainObject(value) {\n // The base prototype's toString deals with Argument objects and native namespaces like Math\n if (\n !value ||\n typeof value !== 'object' ||\n toString.call(value) !== '[object Object]'\n ) {\n return false;\n }\n\n var proto = Object.getPrototypeOf(value);\n if (proto === null) {\n return true;\n }\n\n // Iteratively going up the prototype chain is needed for cross-realm environments (differing contexts, iframes, etc)\n var parentProto = proto;\n var nextProto = Object.getPrototypeOf(proto);\n while (nextProto !== null) {\n parentProto = nextProto;\n nextProto = Object.getPrototypeOf(parentProto);\n }\n return parentProto === proto;\n}\n\n/**\n * Returns true if the value is a potentially-persistent data structure, either\n * provided by Immutable.js or a plain Array or Object.\n */\nfunction isDataStructure(value) {\n return (\n typeof value === 'object' &&\n (isImmutable(value) || Array.isArray(value) || isPlainObject(value))\n );\n}\n\nfunction quoteString(value) {\n try {\n return typeof value === 'string' ? JSON.stringify(value) : String(value);\n } catch (_ignoreError) {\n return JSON.stringify(value);\n }\n}\n\nfunction has(collection, key) {\n return isImmutable(collection)\n ? collection.has(key)\n : isDataStructure(collection) && hasOwnProperty.call(collection, key);\n}\n\nfunction get(collection, key, notSetValue) {\n return isImmutable(collection)\n ? collection.get(key, notSetValue)\n : !has(collection, key)\n ? notSetValue\n : typeof collection.get === 'function'\n ? collection.get(key)\n : collection[key];\n}\n\nfunction shallowCopy(from) {\n if (Array.isArray(from)) {\n return arrCopy(from);\n }\n var to = {};\n for (var key in from) {\n if (hasOwnProperty.call(from, key)) {\n to[key] = from[key];\n }\n }\n return to;\n}\n\nfunction remove(collection, key) {\n if (!isDataStructure(collection)) {\n throw new TypeError(\n 'Cannot update non-data-structure value: ' + collection\n );\n }\n if (isImmutable(collection)) {\n if (!collection.remove) {\n throw new TypeError(\n 'Cannot update immutable value without .remove() method: ' + collection\n );\n }\n return collection.remove(key);\n }\n if (!hasOwnProperty.call(collection, key)) {\n return collection;\n }\n var collectionCopy = shallowCopy(collection);\n if (Array.isArray(collectionCopy)) {\n collectionCopy.splice(key, 1);\n } else {\n delete collectionCopy[key];\n }\n return collectionCopy;\n}\n\nfunction set(collection, key, value) {\n if (!isDataStructure(collection)) {\n throw new TypeError(\n 'Cannot update non-data-structure value: ' + collection\n );\n }\n if (isImmutable(collection)) {\n if (!collection.set) {\n throw new TypeError(\n 'Cannot update immutable value without .set() method: ' + collection\n );\n }\n return collection.set(key, value);\n }\n if (hasOwnProperty.call(collection, key) && value === collection[key]) {\n return collection;\n }\n var collectionCopy = shallowCopy(collection);\n collectionCopy[key] = value;\n return collectionCopy;\n}\n\nfunction updateIn$1(collection, keyPath, notSetValue, updater) {\n if (!updater) {\n updater = notSetValue;\n notSetValue = undefined;\n }\n var updatedValue = updateInDeeply(\n isImmutable(collection),\n collection,\n coerceKeyPath(keyPath),\n 0,\n notSetValue,\n updater\n );\n return updatedValue === NOT_SET ? notSetValue : updatedValue;\n}\n\nfunction updateInDeeply(\n inImmutable,\n existing,\n keyPath,\n i,\n notSetValue,\n updater\n) {\n var wasNotSet = existing === NOT_SET;\n if (i === keyPath.length) {\n var existingValue = wasNotSet ? notSetValue : existing;\n var newValue = updater(existingValue);\n return newValue === existingValue ? existing : newValue;\n }\n if (!wasNotSet && !isDataStructure(existing)) {\n throw new TypeError(\n 'Cannot update within non-data-structure value in path [' +\n keyPath.slice(0, i).map(quoteString) +\n ']: ' +\n existing\n );\n }\n var key = keyPath[i];\n var nextExisting = wasNotSet ? NOT_SET : get(existing, key, NOT_SET);\n var nextUpdated = updateInDeeply(\n nextExisting === NOT_SET ? inImmutable : isImmutable(nextExisting),\n nextExisting,\n keyPath,\n i + 1,\n notSetValue,\n updater\n );\n return nextUpdated === nextExisting\n ? existing\n : nextUpdated === NOT_SET\n ? remove(existing, key)\n : set(\n wasNotSet ? (inImmutable ? emptyMap() : {}) : existing,\n key,\n nextUpdated\n );\n}\n\nfunction setIn$1(collection, keyPath, value) {\n return updateIn$1(collection, keyPath, NOT_SET, function () { return value; });\n}\n\nfunction setIn(keyPath, v) {\n return setIn$1(this, keyPath, v);\n}\n\nfunction removeIn(collection, keyPath) {\n return updateIn$1(collection, keyPath, function () { return NOT_SET; });\n}\n\nfunction deleteIn(keyPath) {\n return removeIn(this, keyPath);\n}\n\nfunction update$1(collection, key, notSetValue, updater) {\n return updateIn$1(collection, [key], notSetValue, updater);\n}\n\nfunction update(key, notSetValue, updater) {\n return arguments.length === 1\n ? key(this)\n : update$1(this, key, notSetValue, updater);\n}\n\nfunction updateIn(keyPath, notSetValue, updater) {\n return updateIn$1(this, keyPath, notSetValue, updater);\n}\n\nfunction merge$1() {\n var iters = [], len = arguments.length;\n while ( len-- ) iters[ len ] = arguments[ len ];\n\n return mergeIntoKeyedWith(this, iters);\n}\n\nfunction mergeWith$1(merger) {\n var iters = [], len = arguments.length - 1;\n while ( len-- > 0 ) iters[ len ] = arguments[ len + 1 ];\n\n if (typeof merger !== 'function') {\n throw new TypeError('Invalid merger function: ' + merger);\n }\n return mergeIntoKeyedWith(this, iters, merger);\n}\n\nfunction mergeIntoKeyedWith(collection, collections, merger) {\n var iters = [];\n for (var ii = 0; ii < collections.length; ii++) {\n var collection$1 = KeyedCollection(collections[ii]);\n if (collection$1.size !== 0) {\n iters.push(collection$1);\n }\n }\n if (iters.length === 0) {\n return collection;\n }\n if (\n collection.toSeq().size === 0 &&\n !collection.__ownerID &&\n iters.length === 1\n ) {\n return collection.constructor(iters[0]);\n }\n return collection.withMutations(function (collection) {\n var mergeIntoCollection = merger\n ? function (value, key) {\n update$1(collection, key, NOT_SET, function (oldVal) { return oldVal === NOT_SET ? value : merger(oldVal, value, key); }\n );\n }\n : function (value, key) {\n collection.set(key, value);\n };\n for (var ii = 0; ii < iters.length; ii++) {\n iters[ii].forEach(mergeIntoCollection);\n }\n });\n}\n\nfunction merge(collection) {\n var sources = [], len = arguments.length - 1;\n while ( len-- > 0 ) sources[ len ] = arguments[ len + 1 ];\n\n return mergeWithSources(collection, sources);\n}\n\nfunction mergeWith(merger, collection) {\n var sources = [], len = arguments.length - 2;\n while ( len-- > 0 ) sources[ len ] = arguments[ len + 2 ];\n\n return mergeWithSources(collection, sources, merger);\n}\n\nfunction mergeDeep$1(collection) {\n var sources = [], len = arguments.length - 1;\n while ( len-- > 0 ) sources[ len ] = arguments[ len + 1 ];\n\n return mergeDeepWithSources(collection, sources);\n}\n\nfunction mergeDeepWith$1(merger, collection) {\n var sources = [], len = arguments.length - 2;\n while ( len-- > 0 ) sources[ len ] = arguments[ len + 2 ];\n\n return mergeDeepWithSources(collection, sources, merger);\n}\n\nfunction mergeDeepWithSources(collection, sources, merger) {\n return mergeWithSources(collection, sources, deepMergerWith(merger));\n}\n\nfunction mergeWithSources(collection, sources, merger) {\n if (!isDataStructure(collection)) {\n throw new TypeError(\n 'Cannot merge into non-data-structure value: ' + collection\n );\n }\n if (isImmutable(collection)) {\n return typeof merger === 'function' && collection.mergeWith\n ? collection.mergeWith.apply(collection, [ merger ].concat( sources ))\n : collection.merge\n ? collection.merge.apply(collection, sources)\n : collection.concat.apply(collection, sources);\n }\n var isArray = Array.isArray(collection);\n var merged = collection;\n var Collection = isArray ? IndexedCollection : KeyedCollection;\n var mergeItem = isArray\n ? function (value) {\n // Copy on write\n if (merged === collection) {\n merged = shallowCopy(merged);\n }\n merged.push(value);\n }\n : function (value, key) {\n var hasVal = hasOwnProperty.call(merged, key);\n var nextVal =\n hasVal && merger ? merger(merged[key], value, key) : value;\n if (!hasVal || nextVal !== merged[key]) {\n // Copy on write\n if (merged === collection) {\n merged = shallowCopy(merged);\n }\n merged[key] = nextVal;\n }\n };\n for (var i = 0; i < sources.length; i++) {\n Collection(sources[i]).forEach(mergeItem);\n }\n return merged;\n}\n\nfunction deepMergerWith(merger) {\n function deepMerger(oldValue, newValue, key) {\n return isDataStructure(oldValue) &&\n isDataStructure(newValue) &&\n areMergeable(oldValue, newValue)\n ? mergeWithSources(oldValue, [newValue], deepMerger)\n : merger\n ? merger(oldValue, newValue, key)\n : newValue;\n }\n return deepMerger;\n}\n\n/**\n * It's unclear what the desired behavior is for merging two collections that\n * fall into separate categories between keyed, indexed, or set-like, so we only\n * consider them mergeable if they fall into the same category.\n */\nfunction areMergeable(oldDataStructure, newDataStructure) {\n var oldSeq = Seq(oldDataStructure);\n var newSeq = Seq(newDataStructure);\n // This logic assumes that a sequence can only fall into one of the three\n // categories mentioned above (since there's no `isSetLike()` method).\n return (\n isIndexed(oldSeq) === isIndexed(newSeq) &&\n isKeyed(oldSeq) === isKeyed(newSeq)\n );\n}\n\nfunction mergeDeep() {\n var iters = [], len = arguments.length;\n while ( len-- ) iters[ len ] = arguments[ len ];\n\n return mergeDeepWithSources(this, iters);\n}\n\nfunction mergeDeepWith(merger) {\n var iters = [], len = arguments.length - 1;\n while ( len-- > 0 ) iters[ len ] = arguments[ len + 1 ];\n\n return mergeDeepWithSources(this, iters, merger);\n}\n\nfunction mergeIn(keyPath) {\n var iters = [], len = arguments.length - 1;\n while ( len-- > 0 ) iters[ len ] = arguments[ len + 1 ];\n\n return updateIn$1(this, keyPath, emptyMap(), function (m) { return mergeWithSources(m, iters); });\n}\n\nfunction mergeDeepIn(keyPath) {\n var iters = [], len = arguments.length - 1;\n while ( len-- > 0 ) iters[ len ] = arguments[ len + 1 ];\n\n return updateIn$1(this, keyPath, emptyMap(), function (m) { return mergeDeepWithSources(m, iters); }\n );\n}\n\nfunction withMutations(fn) {\n var mutable = this.asMutable();\n fn(mutable);\n return mutable.wasAltered() ? mutable.__ensureOwner(this.__ownerID) : this;\n}\n\nfunction asMutable() {\n return this.__ownerID ? this : this.__ensureOwner(new OwnerID());\n}\n\nfunction asImmutable() {\n return this.__ensureOwner();\n}\n\nfunction wasAltered() {\n return this.__altered;\n}\n\nvar Map = /*@__PURE__*/(function (KeyedCollection) {\n function Map(value) {\n return value === undefined || value === null\n ? emptyMap()\n : isMap(value) && !isOrdered(value)\n ? value\n : emptyMap().withMutations(function (map) {\n var iter = KeyedCollection(value);\n assertNotInfinite(iter.size);\n iter.forEach(function (v, k) { return map.set(k, v); });\n });\n }\n\n if ( KeyedCollection ) Map.__proto__ = KeyedCollection;\n Map.prototype = Object.create( KeyedCollection && KeyedCollection.prototype );\n Map.prototype.constructor = Map;\n\n Map.of = function of () {\n var keyValues = [], len = arguments.length;\n while ( len-- ) keyValues[ len ] = arguments[ len ];\n\n return emptyMap().withMutations(function (map) {\n for (var i = 0; i < keyValues.length; i += 2) {\n if (i + 1 >= keyValues.length) {\n throw new Error('Missing value for key: ' + keyValues[i]);\n }\n map.set(keyValues[i], keyValues[i + 1]);\n }\n });\n };\n\n Map.prototype.toString = function toString () {\n return this.__toString('Map {', '}');\n };\n\n // @pragma Access\n\n Map.prototype.get = function get (k, notSetValue) {\n return this._root\n ? this._root.get(0, undefined, k, notSetValue)\n : notSetValue;\n };\n\n // @pragma Modification\n\n Map.prototype.set = function set (k, v) {\n return updateMap(this, k, v);\n };\n\n Map.prototype.remove = function remove (k) {\n return updateMap(this, k, NOT_SET);\n };\n\n Map.prototype.deleteAll = function deleteAll (keys) {\n var collection = Collection(keys);\n\n if (collection.size === 0) {\n return this;\n }\n\n return this.withMutations(function (map) {\n collection.forEach(function (key) { return map.remove(key); });\n });\n };\n\n Map.prototype.clear = function clear () {\n if (this.size === 0) {\n return this;\n }\n if (this.__ownerID) {\n this.size = 0;\n this._root = null;\n this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return emptyMap();\n };\n\n // @pragma Composition\n\n Map.prototype.sort = function sort (comparator) {\n // Late binding\n return OrderedMap(sortFactory(this, comparator));\n };\n\n Map.prototype.sortBy = function sortBy (mapper, comparator) {\n // Late binding\n return OrderedMap(sortFactory(this, comparator, mapper));\n };\n\n Map.prototype.map = function map (mapper, context) {\n var this$1$1 = this;\n\n return this.withMutations(function (map) {\n map.forEach(function (value, key) {\n map.set(key, mapper.call(context, value, key, this$1$1));\n });\n });\n };\n\n // @pragma Mutability\n\n Map.prototype.__iterator = function __iterator (type, reverse) {\n return new MapIterator(this, type, reverse);\n };\n\n Map.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n var iterations = 0;\n this._root &&\n this._root.iterate(function (entry) {\n iterations++;\n return fn(entry[1], entry[0], this$1$1);\n }, reverse);\n return iterations;\n };\n\n Map.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n if (!ownerID) {\n if (this.size === 0) {\n return emptyMap();\n }\n this.__ownerID = ownerID;\n this.__altered = false;\n return this;\n }\n return makeMap(this.size, this._root, ownerID, this.__hash);\n };\n\n return Map;\n}(KeyedCollection));\n\nMap.isMap = isMap;\n\nvar MapPrototype = Map.prototype;\nMapPrototype[IS_MAP_SYMBOL] = true;\nMapPrototype[DELETE] = MapPrototype.remove;\nMapPrototype.removeAll = MapPrototype.deleteAll;\nMapPrototype.setIn = setIn;\nMapPrototype.removeIn = MapPrototype.deleteIn = deleteIn;\nMapPrototype.update = update;\nMapPrototype.updateIn = updateIn;\nMapPrototype.merge = MapPrototype.concat = merge$1;\nMapPrototype.mergeWith = mergeWith$1;\nMapPrototype.mergeDeep = mergeDeep;\nMapPrototype.mergeDeepWith = mergeDeepWith;\nMapPrototype.mergeIn = mergeIn;\nMapPrototype.mergeDeepIn = mergeDeepIn;\nMapPrototype.withMutations = withMutations;\nMapPrototype.wasAltered = wasAltered;\nMapPrototype.asImmutable = asImmutable;\nMapPrototype['@@transducer/init'] = MapPrototype.asMutable = asMutable;\nMapPrototype['@@transducer/step'] = function (result, arr) {\n return result.set(arr[0], arr[1]);\n};\nMapPrototype['@@transducer/result'] = function (obj) {\n return obj.asImmutable();\n};\n\n// #pragma Trie Nodes\n\nvar ArrayMapNode = function ArrayMapNode(ownerID, entries) {\n this.ownerID = ownerID;\n this.entries = entries;\n};\n\nArrayMapNode.prototype.get = function get (shift, keyHash, key, notSetValue) {\n var entries = this.entries;\n for (var ii = 0, len = entries.length; ii < len; ii++) {\n if (is(key, entries[ii][0])) {\n return entries[ii][1];\n }\n }\n return notSetValue;\n};\n\nArrayMapNode.prototype.update = function update (ownerID, shift, keyHash, key, value, didChangeSize, didAlter) {\n var removed = value === NOT_SET;\n\n var entries = this.entries;\n var idx = 0;\n var len = entries.length;\n for (; idx < len; idx++) {\n if (is(key, entries[idx][0])) {\n break;\n }\n }\n var exists = idx < len;\n\n if (exists ? entries[idx][1] === value : removed) {\n return this;\n }\n\n SetRef(didAlter);\n (removed || !exists) && SetRef(didChangeSize);\n\n if (removed && entries.length === 1) {\n return; // undefined\n }\n\n if (!exists && !removed && entries.length >= MAX_ARRAY_MAP_SIZE) {\n return createNodes(ownerID, entries, key, value);\n }\n\n var isEditable = ownerID && ownerID === this.ownerID;\n var newEntries = isEditable ? entries : arrCopy(entries);\n\n if (exists) {\n if (removed) {\n idx === len - 1\n ? newEntries.pop()\n : (newEntries[idx] = newEntries.pop());\n } else {\n newEntries[idx] = [key, value];\n }\n } else {\n newEntries.push([key, value]);\n }\n\n if (isEditable) {\n this.entries = newEntries;\n return this;\n }\n\n return new ArrayMapNode(ownerID, newEntries);\n};\n\nvar BitmapIndexedNode = function BitmapIndexedNode(ownerID, bitmap, nodes) {\n this.ownerID = ownerID;\n this.bitmap = bitmap;\n this.nodes = nodes;\n};\n\nBitmapIndexedNode.prototype.get = function get (shift, keyHash, key, notSetValue) {\n if (keyHash === undefined) {\n keyHash = hash(key);\n }\n var bit = 1 << ((shift === 0 ? keyHash : keyHash >>> shift) & MASK);\n var bitmap = this.bitmap;\n return (bitmap & bit) === 0\n ? notSetValue\n : this.nodes[popCount(bitmap & (bit - 1))].get(\n shift + SHIFT,\n keyHash,\n key,\n notSetValue\n );\n};\n\nBitmapIndexedNode.prototype.update = function update (ownerID, shift, keyHash, key, value, didChangeSize, didAlter) {\n if (keyHash === undefined) {\n keyHash = hash(key);\n }\n var keyHashFrag = (shift === 0 ? keyHash : keyHash >>> shift) & MASK;\n var bit = 1 << keyHashFrag;\n var bitmap = this.bitmap;\n var exists = (bitmap & bit) !== 0;\n\n if (!exists && value === NOT_SET) {\n return this;\n }\n\n var idx = popCount(bitmap & (bit - 1));\n var nodes = this.nodes;\n var node = exists ? nodes[idx] : undefined;\n var newNode = updateNode(\n node,\n ownerID,\n shift + SHIFT,\n keyHash,\n key,\n value,\n didChangeSize,\n didAlter\n );\n\n if (newNode === node) {\n return this;\n }\n\n if (!exists && newNode && nodes.length >= MAX_BITMAP_INDEXED_SIZE) {\n return expandNodes(ownerID, nodes, bitmap, keyHashFrag, newNode);\n }\n\n if (\n exists &&\n !newNode &&\n nodes.length === 2 &&\n isLeafNode(nodes[idx ^ 1])\n ) {\n return nodes[idx ^ 1];\n }\n\n if (exists && newNode && nodes.length === 1 && isLeafNode(newNode)) {\n return newNode;\n }\n\n var isEditable = ownerID && ownerID === this.ownerID;\n var newBitmap = exists ? (newNode ? bitmap : bitmap ^ bit) : bitmap | bit;\n var newNodes = exists\n ? newNode\n ? setAt(nodes, idx, newNode, isEditable)\n : spliceOut(nodes, idx, isEditable)\n : spliceIn(nodes, idx, newNode, isEditable);\n\n if (isEditable) {\n this.bitmap = newBitmap;\n this.nodes = newNodes;\n return this;\n }\n\n return new BitmapIndexedNode(ownerID, newBitmap, newNodes);\n};\n\nvar HashArrayMapNode = function HashArrayMapNode(ownerID, count, nodes) {\n this.ownerID = ownerID;\n this.count = count;\n this.nodes = nodes;\n};\n\nHashArrayMapNode.prototype.get = function get (shift, keyHash, key, notSetValue) {\n if (keyHash === undefined) {\n keyHash = hash(key);\n }\n var idx = (shift === 0 ? keyHash : keyHash >>> shift) & MASK;\n var node = this.nodes[idx];\n return node\n ? node.get(shift + SHIFT, keyHash, key, notSetValue)\n : notSetValue;\n};\n\nHashArrayMapNode.prototype.update = function update (ownerID, shift, keyHash, key, value, didChangeSize, didAlter) {\n if (keyHash === undefined) {\n keyHash = hash(key);\n }\n var idx = (shift === 0 ? keyHash : keyHash >>> shift) & MASK;\n var removed = value === NOT_SET;\n var nodes = this.nodes;\n var node = nodes[idx];\n\n if (removed && !node) {\n return this;\n }\n\n var newNode = updateNode(\n node,\n ownerID,\n shift + SHIFT,\n keyHash,\n key,\n value,\n didChangeSize,\n didAlter\n );\n if (newNode === node) {\n return this;\n }\n\n var newCount = this.count;\n if (!node) {\n newCount++;\n } else if (!newNode) {\n newCount--;\n if (newCount < MIN_HASH_ARRAY_MAP_SIZE) {\n return packNodes(ownerID, nodes, newCount, idx);\n }\n }\n\n var isEditable = ownerID && ownerID === this.ownerID;\n var newNodes = setAt(nodes, idx, newNode, isEditable);\n\n if (isEditable) {\n this.count = newCount;\n this.nodes = newNodes;\n return this;\n }\n\n return new HashArrayMapNode(ownerID, newCount, newNodes);\n};\n\nvar HashCollisionNode = function HashCollisionNode(ownerID, keyHash, entries) {\n this.ownerID = ownerID;\n this.keyHash = keyHash;\n this.entries = entries;\n};\n\nHashCollisionNode.prototype.get = function get (shift, keyHash, key, notSetValue) {\n var entries = this.entries;\n for (var ii = 0, len = entries.length; ii < len; ii++) {\n if (is(key, entries[ii][0])) {\n return entries[ii][1];\n }\n }\n return notSetValue;\n};\n\nHashCollisionNode.prototype.update = function update (ownerID, shift, keyHash, key, value, didChangeSize, didAlter) {\n if (keyHash === undefined) {\n keyHash = hash(key);\n }\n\n var removed = value === NOT_SET;\n\n if (keyHash !== this.keyHash) {\n if (removed) {\n return this;\n }\n SetRef(didAlter);\n SetRef(didChangeSize);\n return mergeIntoNode(this, ownerID, shift, keyHash, [key, value]);\n }\n\n var entries = this.entries;\n var idx = 0;\n var len = entries.length;\n for (; idx < len; idx++) {\n if (is(key, entries[idx][0])) {\n break;\n }\n }\n var exists = idx < len;\n\n if (exists ? entries[idx][1] === value : removed) {\n return this;\n }\n\n SetRef(didAlter);\n (removed || !exists) && SetRef(didChangeSize);\n\n if (removed && len === 2) {\n return new ValueNode(ownerID, this.keyHash, entries[idx ^ 1]);\n }\n\n var isEditable = ownerID && ownerID === this.ownerID;\n var newEntries = isEditable ? entries : arrCopy(entries);\n\n if (exists) {\n if (removed) {\n idx === len - 1\n ? newEntries.pop()\n : (newEntries[idx] = newEntries.pop());\n } else {\n newEntries[idx] = [key, value];\n }\n } else {\n newEntries.push([key, value]);\n }\n\n if (isEditable) {\n this.entries = newEntries;\n return this;\n }\n\n return new HashCollisionNode(ownerID, this.keyHash, newEntries);\n};\n\nvar ValueNode = function ValueNode(ownerID, keyHash, entry) {\n this.ownerID = ownerID;\n this.keyHash = keyHash;\n this.entry = entry;\n};\n\nValueNode.prototype.get = function get (shift, keyHash, key, notSetValue) {\n return is(key, this.entry[0]) ? this.entry[1] : notSetValue;\n};\n\nValueNode.prototype.update = function update (ownerID, shift, keyHash, key, value, didChangeSize, didAlter) {\n var removed = value === NOT_SET;\n var keyMatch = is(key, this.entry[0]);\n if (keyMatch ? value === this.entry[1] : removed) {\n return this;\n }\n\n SetRef(didAlter);\n\n if (removed) {\n SetRef(didChangeSize);\n return; // undefined\n }\n\n if (keyMatch) {\n if (ownerID && ownerID === this.ownerID) {\n this.entry[1] = value;\n return this;\n }\n return new ValueNode(ownerID, this.keyHash, [key, value]);\n }\n\n SetRef(didChangeSize);\n return mergeIntoNode(this, ownerID, shift, hash(key), [key, value]);\n};\n\n// #pragma Iterators\n\nArrayMapNode.prototype.iterate = HashCollisionNode.prototype.iterate =\n function (fn, reverse) {\n var entries = this.entries;\n for (var ii = 0, maxIndex = entries.length - 1; ii <= maxIndex; ii++) {\n if (fn(entries[reverse ? maxIndex - ii : ii]) === false) {\n return false;\n }\n }\n };\n\nBitmapIndexedNode.prototype.iterate = HashArrayMapNode.prototype.iterate =\n function (fn, reverse) {\n var nodes = this.nodes;\n for (var ii = 0, maxIndex = nodes.length - 1; ii <= maxIndex; ii++) {\n var node = nodes[reverse ? maxIndex - ii : ii];\n if (node && node.iterate(fn, reverse) === false) {\n return false;\n }\n }\n };\n\n// eslint-disable-next-line no-unused-vars\nValueNode.prototype.iterate = function (fn, reverse) {\n return fn(this.entry);\n};\n\nvar MapIterator = /*@__PURE__*/(function (Iterator) {\n function MapIterator(map, type, reverse) {\n this._type = type;\n this._reverse = reverse;\n this._stack = map._root && mapIteratorFrame(map._root);\n }\n\n if ( Iterator ) MapIterator.__proto__ = Iterator;\n MapIterator.prototype = Object.create( Iterator && Iterator.prototype );\n MapIterator.prototype.constructor = MapIterator;\n\n MapIterator.prototype.next = function next () {\n var type = this._type;\n var stack = this._stack;\n while (stack) {\n var node = stack.node;\n var index = stack.index++;\n var maxIndex = (void 0);\n if (node.entry) {\n if (index === 0) {\n return mapIteratorValue(type, node.entry);\n }\n } else if (node.entries) {\n maxIndex = node.entries.length - 1;\n if (index <= maxIndex) {\n return mapIteratorValue(\n type,\n node.entries[this._reverse ? maxIndex - index : index]\n );\n }\n } else {\n maxIndex = node.nodes.length - 1;\n if (index <= maxIndex) {\n var subNode = node.nodes[this._reverse ? maxIndex - index : index];\n if (subNode) {\n if (subNode.entry) {\n return mapIteratorValue(type, subNode.entry);\n }\n stack = this._stack = mapIteratorFrame(subNode, stack);\n }\n continue;\n }\n }\n stack = this._stack = this._stack.__prev;\n }\n return iteratorDone();\n };\n\n return MapIterator;\n}(Iterator));\n\nfunction mapIteratorValue(type, entry) {\n return iteratorValue(type, entry[0], entry[1]);\n}\n\nfunction mapIteratorFrame(node, prev) {\n return {\n node: node,\n index: 0,\n __prev: prev,\n };\n}\n\nfunction makeMap(size, root, ownerID, hash) {\n var map = Object.create(MapPrototype);\n map.size = size;\n map._root = root;\n map.__ownerID = ownerID;\n map.__hash = hash;\n map.__altered = false;\n return map;\n}\n\nvar EMPTY_MAP;\nfunction emptyMap() {\n return EMPTY_MAP || (EMPTY_MAP = makeMap(0));\n}\n\nfunction updateMap(map, k, v) {\n var newRoot;\n var newSize;\n if (!map._root) {\n if (v === NOT_SET) {\n return map;\n }\n newSize = 1;\n newRoot = new ArrayMapNode(map.__ownerID, [[k, v]]);\n } else {\n var didChangeSize = MakeRef();\n var didAlter = MakeRef();\n newRoot = updateNode(\n map._root,\n map.__ownerID,\n 0,\n undefined,\n k,\n v,\n didChangeSize,\n didAlter\n );\n if (!didAlter.value) {\n return map;\n }\n newSize = map.size + (didChangeSize.value ? (v === NOT_SET ? -1 : 1) : 0);\n }\n if (map.__ownerID) {\n map.size = newSize;\n map._root = newRoot;\n map.__hash = undefined;\n map.__altered = true;\n return map;\n }\n return newRoot ? makeMap(newSize, newRoot) : emptyMap();\n}\n\nfunction updateNode(\n node,\n ownerID,\n shift,\n keyHash,\n key,\n value,\n didChangeSize,\n didAlter\n) {\n if (!node) {\n if (value === NOT_SET) {\n return node;\n }\n SetRef(didAlter);\n SetRef(didChangeSize);\n return new ValueNode(ownerID, keyHash, [key, value]);\n }\n return node.update(\n ownerID,\n shift,\n keyHash,\n key,\n value,\n didChangeSize,\n didAlter\n );\n}\n\nfunction isLeafNode(node) {\n return (\n node.constructor === ValueNode || node.constructor === HashCollisionNode\n );\n}\n\nfunction mergeIntoNode(node, ownerID, shift, keyHash, entry) {\n if (node.keyHash === keyHash) {\n return new HashCollisionNode(ownerID, keyHash, [node.entry, entry]);\n }\n\n var idx1 = (shift === 0 ? node.keyHash : node.keyHash >>> shift) & MASK;\n var idx2 = (shift === 0 ? keyHash : keyHash >>> shift) & MASK;\n\n var newNode;\n var nodes =\n idx1 === idx2\n ? [mergeIntoNode(node, ownerID, shift + SHIFT, keyHash, entry)]\n : ((newNode = new ValueNode(ownerID, keyHash, entry)),\n idx1 < idx2 ? [node, newNode] : [newNode, node]);\n\n return new BitmapIndexedNode(ownerID, (1 << idx1) | (1 << idx2), nodes);\n}\n\nfunction createNodes(ownerID, entries, key, value) {\n if (!ownerID) {\n ownerID = new OwnerID();\n }\n var node = new ValueNode(ownerID, hash(key), [key, value]);\n for (var ii = 0; ii < entries.length; ii++) {\n var entry = entries[ii];\n node = node.update(ownerID, 0, undefined, entry[0], entry[1]);\n }\n return node;\n}\n\nfunction packNodes(ownerID, nodes, count, excluding) {\n var bitmap = 0;\n var packedII = 0;\n var packedNodes = new Array(count);\n for (var ii = 0, bit = 1, len = nodes.length; ii < len; ii++, bit <<= 1) {\n var node = nodes[ii];\n if (node !== undefined && ii !== excluding) {\n bitmap |= bit;\n packedNodes[packedII++] = node;\n }\n }\n return new BitmapIndexedNode(ownerID, bitmap, packedNodes);\n}\n\nfunction expandNodes(ownerID, nodes, bitmap, including, node) {\n var count = 0;\n var expandedNodes = new Array(SIZE);\n for (var ii = 0; bitmap !== 0; ii++, bitmap >>>= 1) {\n expandedNodes[ii] = bitmap & 1 ? nodes[count++] : undefined;\n }\n expandedNodes[including] = node;\n return new HashArrayMapNode(ownerID, count + 1, expandedNodes);\n}\n\nfunction popCount(x) {\n x -= (x >> 1) & 0x55555555;\n x = (x & 0x33333333) + ((x >> 2) & 0x33333333);\n x = (x + (x >> 4)) & 0x0f0f0f0f;\n x += x >> 8;\n x += x >> 16;\n return x & 0x7f;\n}\n\nfunction setAt(array, idx, val, canEdit) {\n var newArray = canEdit ? array : arrCopy(array);\n newArray[idx] = val;\n return newArray;\n}\n\nfunction spliceIn(array, idx, val, canEdit) {\n var newLen = array.length + 1;\n if (canEdit && idx + 1 === newLen) {\n array[idx] = val;\n return array;\n }\n var newArray = new Array(newLen);\n var after = 0;\n for (var ii = 0; ii < newLen; ii++) {\n if (ii === idx) {\n newArray[ii] = val;\n after = -1;\n } else {\n newArray[ii] = array[ii + after];\n }\n }\n return newArray;\n}\n\nfunction spliceOut(array, idx, canEdit) {\n var newLen = array.length - 1;\n if (canEdit && idx === newLen) {\n array.pop();\n return array;\n }\n var newArray = new Array(newLen);\n var after = 0;\n for (var ii = 0; ii < newLen; ii++) {\n if (ii === idx) {\n after = 1;\n }\n newArray[ii] = array[ii + after];\n }\n return newArray;\n}\n\nvar MAX_ARRAY_MAP_SIZE = SIZE / 4;\nvar MAX_BITMAP_INDEXED_SIZE = SIZE / 2;\nvar MIN_HASH_ARRAY_MAP_SIZE = SIZE / 4;\n\nvar IS_LIST_SYMBOL = '@@__IMMUTABLE_LIST__@@';\n\nfunction isList(maybeList) {\n return Boolean(maybeList && maybeList[IS_LIST_SYMBOL]);\n}\n\nvar List = /*@__PURE__*/(function (IndexedCollection) {\n function List(value) {\n var empty = emptyList();\n if (value === undefined || value === null) {\n return empty;\n }\n if (isList(value)) {\n return value;\n }\n var iter = IndexedCollection(value);\n var size = iter.size;\n if (size === 0) {\n return empty;\n }\n assertNotInfinite(size);\n if (size > 0 && size < SIZE) {\n return makeList(0, size, SHIFT, null, new VNode(iter.toArray()));\n }\n return empty.withMutations(function (list) {\n list.setSize(size);\n iter.forEach(function (v, i) { return list.set(i, v); });\n });\n }\n\n if ( IndexedCollection ) List.__proto__ = IndexedCollection;\n List.prototype = Object.create( IndexedCollection && IndexedCollection.prototype );\n List.prototype.constructor = List;\n\n List.of = function of (/*...values*/) {\n return this(arguments);\n };\n\n List.prototype.toString = function toString () {\n return this.__toString('List [', ']');\n };\n\n // @pragma Access\n\n List.prototype.get = function get (index, notSetValue) {\n index = wrapIndex(this, index);\n if (index >= 0 && index < this.size) {\n index += this._origin;\n var node = listNodeFor(this, index);\n return node && node.array[index & MASK];\n }\n return notSetValue;\n };\n\n // @pragma Modification\n\n List.prototype.set = function set (index, value) {\n return updateList(this, index, value);\n };\n\n List.prototype.remove = function remove (index) {\n return !this.has(index)\n ? this\n : index === 0\n ? this.shift()\n : index === this.size - 1\n ? this.pop()\n : this.splice(index, 1);\n };\n\n List.prototype.insert = function insert (index, value) {\n return this.splice(index, 0, value);\n };\n\n List.prototype.clear = function clear () {\n if (this.size === 0) {\n return this;\n }\n if (this.__ownerID) {\n this.size = this._origin = this._capacity = 0;\n this._level = SHIFT;\n this._root = this._tail = this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return emptyList();\n };\n\n List.prototype.push = function push (/*...values*/) {\n var values = arguments;\n var oldSize = this.size;\n return this.withMutations(function (list) {\n setListBounds(list, 0, oldSize + values.length);\n for (var ii = 0; ii < values.length; ii++) {\n list.set(oldSize + ii, values[ii]);\n }\n });\n };\n\n List.prototype.pop = function pop () {\n return setListBounds(this, 0, -1);\n };\n\n List.prototype.unshift = function unshift (/*...values*/) {\n var values = arguments;\n return this.withMutations(function (list) {\n setListBounds(list, -values.length);\n for (var ii = 0; ii < values.length; ii++) {\n list.set(ii, values[ii]);\n }\n });\n };\n\n List.prototype.shift = function shift () {\n return setListBounds(this, 1);\n };\n\n // @pragma Composition\n\n List.prototype.concat = function concat (/*...collections*/) {\n var arguments$1 = arguments;\n\n var seqs = [];\n for (var i = 0; i < arguments.length; i++) {\n var argument = arguments$1[i];\n var seq = IndexedCollection(\n typeof argument !== 'string' && hasIterator(argument)\n ? argument\n : [argument]\n );\n if (seq.size !== 0) {\n seqs.push(seq);\n }\n }\n if (seqs.length === 0) {\n return this;\n }\n if (this.size === 0 && !this.__ownerID && seqs.length === 1) {\n return this.constructor(seqs[0]);\n }\n return this.withMutations(function (list) {\n seqs.forEach(function (seq) { return seq.forEach(function (value) { return list.push(value); }); });\n });\n };\n\n List.prototype.setSize = function setSize (size) {\n return setListBounds(this, 0, size);\n };\n\n List.prototype.map = function map (mapper, context) {\n var this$1$1 = this;\n\n return this.withMutations(function (list) {\n for (var i = 0; i < this$1$1.size; i++) {\n list.set(i, mapper.call(context, list.get(i), i, this$1$1));\n }\n });\n };\n\n // @pragma Iteration\n\n List.prototype.slice = function slice (begin, end) {\n var size = this.size;\n if (wholeSlice(begin, end, size)) {\n return this;\n }\n return setListBounds(\n this,\n resolveBegin(begin, size),\n resolveEnd(end, size)\n );\n };\n\n List.prototype.__iterator = function __iterator (type, reverse) {\n var index = reverse ? this.size : 0;\n var values = iterateList(this, reverse);\n return new Iterator(function () {\n var value = values();\n return value === DONE\n ? iteratorDone()\n : iteratorValue(type, reverse ? --index : index++, value);\n });\n };\n\n List.prototype.__iterate = function __iterate (fn, reverse) {\n var index = reverse ? this.size : 0;\n var values = iterateList(this, reverse);\n var value;\n while ((value = values()) !== DONE) {\n if (fn(value, reverse ? --index : index++, this) === false) {\n break;\n }\n }\n return index;\n };\n\n List.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n if (!ownerID) {\n if (this.size === 0) {\n return emptyList();\n }\n this.__ownerID = ownerID;\n this.__altered = false;\n return this;\n }\n return makeList(\n this._origin,\n this._capacity,\n this._level,\n this._root,\n this._tail,\n ownerID,\n this.__hash\n );\n };\n\n return List;\n}(IndexedCollection));\n\nList.isList = isList;\n\nvar ListPrototype = List.prototype;\nListPrototype[IS_LIST_SYMBOL] = true;\nListPrototype[DELETE] = ListPrototype.remove;\nListPrototype.merge = ListPrototype.concat;\nListPrototype.setIn = setIn;\nListPrototype.deleteIn = ListPrototype.removeIn = deleteIn;\nListPrototype.update = update;\nListPrototype.updateIn = updateIn;\nListPrototype.mergeIn = mergeIn;\nListPrototype.mergeDeepIn = mergeDeepIn;\nListPrototype.withMutations = withMutations;\nListPrototype.wasAltered = wasAltered;\nListPrototype.asImmutable = asImmutable;\nListPrototype['@@transducer/init'] = ListPrototype.asMutable = asMutable;\nListPrototype['@@transducer/step'] = function (result, arr) {\n return result.push(arr);\n};\nListPrototype['@@transducer/result'] = function (obj) {\n return obj.asImmutable();\n};\n\nvar VNode = function VNode(array, ownerID) {\n this.array = array;\n this.ownerID = ownerID;\n};\n\n// TODO: seems like these methods are very similar\n\nVNode.prototype.removeBefore = function removeBefore (ownerID, level, index) {\n if (index === level ? 1 << level : this.array.length === 0) {\n return this;\n }\n var originIndex = (index >>> level) & MASK;\n if (originIndex >= this.array.length) {\n return new VNode([], ownerID);\n }\n var removingFirst = originIndex === 0;\n var newChild;\n if (level > 0) {\n var oldChild = this.array[originIndex];\n newChild =\n oldChild && oldChild.removeBefore(ownerID, level - SHIFT, index);\n if (newChild === oldChild && removingFirst) {\n return this;\n }\n }\n if (removingFirst && !newChild) {\n return this;\n }\n var editable = editableVNode(this, ownerID);\n if (!removingFirst) {\n for (var ii = 0; ii < originIndex; ii++) {\n editable.array[ii] = undefined;\n }\n }\n if (newChild) {\n editable.array[originIndex] = newChild;\n }\n return editable;\n};\n\nVNode.prototype.removeAfter = function removeAfter (ownerID, level, index) {\n if (index === (level ? 1 << level : 0) || this.array.length === 0) {\n return this;\n }\n var sizeIndex = ((index - 1) >>> level) & MASK;\n if (sizeIndex >= this.array.length) {\n return this;\n }\n\n var newChild;\n if (level > 0) {\n var oldChild = this.array[sizeIndex];\n newChild =\n oldChild && oldChild.removeAfter(ownerID, level - SHIFT, index);\n if (newChild === oldChild && sizeIndex === this.array.length - 1) {\n return this;\n }\n }\n\n var editable = editableVNode(this, ownerID);\n editable.array.splice(sizeIndex + 1);\n if (newChild) {\n editable.array[sizeIndex] = newChild;\n }\n return editable;\n};\n\nvar DONE = {};\n\nfunction iterateList(list, reverse) {\n var left = list._origin;\n var right = list._capacity;\n var tailPos = getTailOffset(right);\n var tail = list._tail;\n\n return iterateNodeOrLeaf(list._root, list._level, 0);\n\n function iterateNodeOrLeaf(node, level, offset) {\n return level === 0\n ? iterateLeaf(node, offset)\n : iterateNode(node, level, offset);\n }\n\n function iterateLeaf(node, offset) {\n var array = offset === tailPos ? tail && tail.array : node && node.array;\n var from = offset > left ? 0 : left - offset;\n var to = right - offset;\n if (to > SIZE) {\n to = SIZE;\n }\n return function () {\n if (from === to) {\n return DONE;\n }\n var idx = reverse ? --to : from++;\n return array && array[idx];\n };\n }\n\n function iterateNode(node, level, offset) {\n var values;\n var array = node && node.array;\n var from = offset > left ? 0 : (left - offset) >> level;\n var to = ((right - offset) >> level) + 1;\n if (to > SIZE) {\n to = SIZE;\n }\n return function () {\n while (true) {\n if (values) {\n var value = values();\n if (value !== DONE) {\n return value;\n }\n values = null;\n }\n if (from === to) {\n return DONE;\n }\n var idx = reverse ? --to : from++;\n values = iterateNodeOrLeaf(\n array && array[idx],\n level - SHIFT,\n offset + (idx << level)\n );\n }\n };\n }\n}\n\nfunction makeList(origin, capacity, level, root, tail, ownerID, hash) {\n var list = Object.create(ListPrototype);\n list.size = capacity - origin;\n list._origin = origin;\n list._capacity = capacity;\n list._level = level;\n list._root = root;\n list._tail = tail;\n list.__ownerID = ownerID;\n list.__hash = hash;\n list.__altered = false;\n return list;\n}\n\nvar EMPTY_LIST;\nfunction emptyList() {\n return EMPTY_LIST || (EMPTY_LIST = makeList(0, 0, SHIFT));\n}\n\nfunction updateList(list, index, value) {\n index = wrapIndex(list, index);\n\n if (index !== index) {\n return list;\n }\n\n if (index >= list.size || index < 0) {\n return list.withMutations(function (list) {\n index < 0\n ? setListBounds(list, index).set(0, value)\n : setListBounds(list, 0, index + 1).set(index, value);\n });\n }\n\n index += list._origin;\n\n var newTail = list._tail;\n var newRoot = list._root;\n var didAlter = MakeRef();\n if (index >= getTailOffset(list._capacity)) {\n newTail = updateVNode(newTail, list.__ownerID, 0, index, value, didAlter);\n } else {\n newRoot = updateVNode(\n newRoot,\n list.__ownerID,\n list._level,\n index,\n value,\n didAlter\n );\n }\n\n if (!didAlter.value) {\n return list;\n }\n\n if (list.__ownerID) {\n list._root = newRoot;\n list._tail = newTail;\n list.__hash = undefined;\n list.__altered = true;\n return list;\n }\n return makeList(list._origin, list._capacity, list._level, newRoot, newTail);\n}\n\nfunction updateVNode(node, ownerID, level, index, value, didAlter) {\n var idx = (index >>> level) & MASK;\n var nodeHas = node && idx < node.array.length;\n if (!nodeHas && value === undefined) {\n return node;\n }\n\n var newNode;\n\n if (level > 0) {\n var lowerNode = node && node.array[idx];\n var newLowerNode = updateVNode(\n lowerNode,\n ownerID,\n level - SHIFT,\n index,\n value,\n didAlter\n );\n if (newLowerNode === lowerNode) {\n return node;\n }\n newNode = editableVNode(node, ownerID);\n newNode.array[idx] = newLowerNode;\n return newNode;\n }\n\n if (nodeHas && node.array[idx] === value) {\n return node;\n }\n\n if (didAlter) {\n SetRef(didAlter);\n }\n\n newNode = editableVNode(node, ownerID);\n if (value === undefined && idx === newNode.array.length - 1) {\n newNode.array.pop();\n } else {\n newNode.array[idx] = value;\n }\n return newNode;\n}\n\nfunction editableVNode(node, ownerID) {\n if (ownerID && node && ownerID === node.ownerID) {\n return node;\n }\n return new VNode(node ? node.array.slice() : [], ownerID);\n}\n\nfunction listNodeFor(list, rawIndex) {\n if (rawIndex >= getTailOffset(list._capacity)) {\n return list._tail;\n }\n if (rawIndex < 1 << (list._level + SHIFT)) {\n var node = list._root;\n var level = list._level;\n while (node && level > 0) {\n node = node.array[(rawIndex >>> level) & MASK];\n level -= SHIFT;\n }\n return node;\n }\n}\n\nfunction setListBounds(list, begin, end) {\n // Sanitize begin & end using this shorthand for ToInt32(argument)\n // http://www.ecma-international.org/ecma-262/6.0/#sec-toint32\n if (begin !== undefined) {\n begin |= 0;\n }\n if (end !== undefined) {\n end |= 0;\n }\n var owner = list.__ownerID || new OwnerID();\n var oldOrigin = list._origin;\n var oldCapacity = list._capacity;\n var newOrigin = oldOrigin + begin;\n var newCapacity =\n end === undefined\n ? oldCapacity\n : end < 0\n ? oldCapacity + end\n : oldOrigin + end;\n if (newOrigin === oldOrigin && newCapacity === oldCapacity) {\n return list;\n }\n\n // If it's going to end after it starts, it's empty.\n if (newOrigin >= newCapacity) {\n return list.clear();\n }\n\n var newLevel = list._level;\n var newRoot = list._root;\n\n // New origin might need creating a higher root.\n var offsetShift = 0;\n while (newOrigin + offsetShift < 0) {\n newRoot = new VNode(\n newRoot && newRoot.array.length ? [undefined, newRoot] : [],\n owner\n );\n newLevel += SHIFT;\n offsetShift += 1 << newLevel;\n }\n if (offsetShift) {\n newOrigin += offsetShift;\n oldOrigin += offsetShift;\n newCapacity += offsetShift;\n oldCapacity += offsetShift;\n }\n\n var oldTailOffset = getTailOffset(oldCapacity);\n var newTailOffset = getTailOffset(newCapacity);\n\n // New size might need creating a higher root.\n while (newTailOffset >= 1 << (newLevel + SHIFT)) {\n newRoot = new VNode(\n newRoot && newRoot.array.length ? [newRoot] : [],\n owner\n );\n newLevel += SHIFT;\n }\n\n // Locate or create the new tail.\n var oldTail = list._tail;\n var newTail =\n newTailOffset < oldTailOffset\n ? listNodeFor(list, newCapacity - 1)\n : newTailOffset > oldTailOffset\n ? new VNode([], owner)\n : oldTail;\n\n // Merge Tail into tree.\n if (\n oldTail &&\n newTailOffset > oldTailOffset &&\n newOrigin < oldCapacity &&\n oldTail.array.length\n ) {\n newRoot = editableVNode(newRoot, owner);\n var node = newRoot;\n for (var level = newLevel; level > SHIFT; level -= SHIFT) {\n var idx = (oldTailOffset >>> level) & MASK;\n node = node.array[idx] = editableVNode(node.array[idx], owner);\n }\n node.array[(oldTailOffset >>> SHIFT) & MASK] = oldTail;\n }\n\n // If the size has been reduced, there's a chance the tail needs to be trimmed.\n if (newCapacity < oldCapacity) {\n newTail = newTail && newTail.removeAfter(owner, 0, newCapacity);\n }\n\n // If the new origin is within the tail, then we do not need a root.\n if (newOrigin >= newTailOffset) {\n newOrigin -= newTailOffset;\n newCapacity -= newTailOffset;\n newLevel = SHIFT;\n newRoot = null;\n newTail = newTail && newTail.removeBefore(owner, 0, newOrigin);\n\n // Otherwise, if the root has been trimmed, garbage collect.\n } else if (newOrigin > oldOrigin || newTailOffset < oldTailOffset) {\n offsetShift = 0;\n\n // Identify the new top root node of the subtree of the old root.\n while (newRoot) {\n var beginIndex = (newOrigin >>> newLevel) & MASK;\n if ((beginIndex !== newTailOffset >>> newLevel) & MASK) {\n break;\n }\n if (beginIndex) {\n offsetShift += (1 << newLevel) * beginIndex;\n }\n newLevel -= SHIFT;\n newRoot = newRoot.array[beginIndex];\n }\n\n // Trim the new sides of the new root.\n if (newRoot && newOrigin > oldOrigin) {\n newRoot = newRoot.removeBefore(owner, newLevel, newOrigin - offsetShift);\n }\n if (newRoot && newTailOffset < oldTailOffset) {\n newRoot = newRoot.removeAfter(\n owner,\n newLevel,\n newTailOffset - offsetShift\n );\n }\n if (offsetShift) {\n newOrigin -= offsetShift;\n newCapacity -= offsetShift;\n }\n }\n\n if (list.__ownerID) {\n list.size = newCapacity - newOrigin;\n list._origin = newOrigin;\n list._capacity = newCapacity;\n list._level = newLevel;\n list._root = newRoot;\n list._tail = newTail;\n list.__hash = undefined;\n list.__altered = true;\n return list;\n }\n return makeList(newOrigin, newCapacity, newLevel, newRoot, newTail);\n}\n\nfunction getTailOffset(size) {\n return size < SIZE ? 0 : ((size - 1) >>> SHIFT) << SHIFT;\n}\n\nvar OrderedMap = /*@__PURE__*/(function (Map) {\n function OrderedMap(value) {\n return value === undefined || value === null\n ? emptyOrderedMap()\n : isOrderedMap(value)\n ? value\n : emptyOrderedMap().withMutations(function (map) {\n var iter = KeyedCollection(value);\n assertNotInfinite(iter.size);\n iter.forEach(function (v, k) { return map.set(k, v); });\n });\n }\n\n if ( Map ) OrderedMap.__proto__ = Map;\n OrderedMap.prototype = Object.create( Map && Map.prototype );\n OrderedMap.prototype.constructor = OrderedMap;\n\n OrderedMap.of = function of (/*...values*/) {\n return this(arguments);\n };\n\n OrderedMap.prototype.toString = function toString () {\n return this.__toString('OrderedMap {', '}');\n };\n\n // @pragma Access\n\n OrderedMap.prototype.get = function get (k, notSetValue) {\n var index = this._map.get(k);\n return index !== undefined ? this._list.get(index)[1] : notSetValue;\n };\n\n // @pragma Modification\n\n OrderedMap.prototype.clear = function clear () {\n if (this.size === 0) {\n return this;\n }\n if (this.__ownerID) {\n this.size = 0;\n this._map.clear();\n this._list.clear();\n this.__altered = true;\n return this;\n }\n return emptyOrderedMap();\n };\n\n OrderedMap.prototype.set = function set (k, v) {\n return updateOrderedMap(this, k, v);\n };\n\n OrderedMap.prototype.remove = function remove (k) {\n return updateOrderedMap(this, k, NOT_SET);\n };\n\n OrderedMap.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n return this._list.__iterate(\n function (entry) { return entry && fn(entry[1], entry[0], this$1$1); },\n reverse\n );\n };\n\n OrderedMap.prototype.__iterator = function __iterator (type, reverse) {\n return this._list.fromEntrySeq().__iterator(type, reverse);\n };\n\n OrderedMap.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n var newMap = this._map.__ensureOwner(ownerID);\n var newList = this._list.__ensureOwner(ownerID);\n if (!ownerID) {\n if (this.size === 0) {\n return emptyOrderedMap();\n }\n this.__ownerID = ownerID;\n this.__altered = false;\n this._map = newMap;\n this._list = newList;\n return this;\n }\n return makeOrderedMap(newMap, newList, ownerID, this.__hash);\n };\n\n return OrderedMap;\n}(Map));\n\nOrderedMap.isOrderedMap = isOrderedMap;\n\nOrderedMap.prototype[IS_ORDERED_SYMBOL] = true;\nOrderedMap.prototype[DELETE] = OrderedMap.prototype.remove;\n\nfunction makeOrderedMap(map, list, ownerID, hash) {\n var omap = Object.create(OrderedMap.prototype);\n omap.size = map ? map.size : 0;\n omap._map = map;\n omap._list = list;\n omap.__ownerID = ownerID;\n omap.__hash = hash;\n omap.__altered = false;\n return omap;\n}\n\nvar EMPTY_ORDERED_MAP;\nfunction emptyOrderedMap() {\n return (\n EMPTY_ORDERED_MAP ||\n (EMPTY_ORDERED_MAP = makeOrderedMap(emptyMap(), emptyList()))\n );\n}\n\nfunction updateOrderedMap(omap, k, v) {\n var map = omap._map;\n var list = omap._list;\n var i = map.get(k);\n var has = i !== undefined;\n var newMap;\n var newList;\n if (v === NOT_SET) {\n // removed\n if (!has) {\n return omap;\n }\n if (list.size >= SIZE && list.size >= map.size * 2) {\n newList = list.filter(function (entry, idx) { return entry !== undefined && i !== idx; });\n newMap = newList\n .toKeyedSeq()\n .map(function (entry) { return entry[0]; })\n .flip()\n .toMap();\n if (omap.__ownerID) {\n newMap.__ownerID = newList.__ownerID = omap.__ownerID;\n }\n } else {\n newMap = map.remove(k);\n newList = i === list.size - 1 ? list.pop() : list.set(i, undefined);\n }\n } else if (has) {\n if (v === list.get(i)[1]) {\n return omap;\n }\n newMap = map;\n newList = list.set(i, [k, v]);\n } else {\n newMap = map.set(k, list.size);\n newList = list.set(list.size, [k, v]);\n }\n if (omap.__ownerID) {\n omap.size = newMap.size;\n omap._map = newMap;\n omap._list = newList;\n omap.__hash = undefined;\n omap.__altered = true;\n return omap;\n }\n return makeOrderedMap(newMap, newList);\n}\n\nvar IS_STACK_SYMBOL = '@@__IMMUTABLE_STACK__@@';\n\nfunction isStack(maybeStack) {\n return Boolean(maybeStack && maybeStack[IS_STACK_SYMBOL]);\n}\n\nvar Stack = /*@__PURE__*/(function (IndexedCollection) {\n function Stack(value) {\n return value === undefined || value === null\n ? emptyStack()\n : isStack(value)\n ? value\n : emptyStack().pushAll(value);\n }\n\n if ( IndexedCollection ) Stack.__proto__ = IndexedCollection;\n Stack.prototype = Object.create( IndexedCollection && IndexedCollection.prototype );\n Stack.prototype.constructor = Stack;\n\n Stack.of = function of (/*...values*/) {\n return this(arguments);\n };\n\n Stack.prototype.toString = function toString () {\n return this.__toString('Stack [', ']');\n };\n\n // @pragma Access\n\n Stack.prototype.get = function get (index, notSetValue) {\n var head = this._head;\n index = wrapIndex(this, index);\n while (head && index--) {\n head = head.next;\n }\n return head ? head.value : notSetValue;\n };\n\n Stack.prototype.peek = function peek () {\n return this._head && this._head.value;\n };\n\n // @pragma Modification\n\n Stack.prototype.push = function push (/*...values*/) {\n var arguments$1 = arguments;\n\n if (arguments.length === 0) {\n return this;\n }\n var newSize = this.size + arguments.length;\n var head = this._head;\n for (var ii = arguments.length - 1; ii >= 0; ii--) {\n head = {\n value: arguments$1[ii],\n next: head,\n };\n }\n if (this.__ownerID) {\n this.size = newSize;\n this._head = head;\n this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return makeStack(newSize, head);\n };\n\n Stack.prototype.pushAll = function pushAll (iter) {\n iter = IndexedCollection(iter);\n if (iter.size === 0) {\n return this;\n }\n if (this.size === 0 && isStack(iter)) {\n return iter;\n }\n assertNotInfinite(iter.size);\n var newSize = this.size;\n var head = this._head;\n iter.__iterate(function (value) {\n newSize++;\n head = {\n value: value,\n next: head,\n };\n }, /* reverse */ true);\n if (this.__ownerID) {\n this.size = newSize;\n this._head = head;\n this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return makeStack(newSize, head);\n };\n\n Stack.prototype.pop = function pop () {\n return this.slice(1);\n };\n\n Stack.prototype.clear = function clear () {\n if (this.size === 0) {\n return this;\n }\n if (this.__ownerID) {\n this.size = 0;\n this._head = undefined;\n this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return emptyStack();\n };\n\n Stack.prototype.slice = function slice (begin, end) {\n if (wholeSlice(begin, end, this.size)) {\n return this;\n }\n var resolvedBegin = resolveBegin(begin, this.size);\n var resolvedEnd = resolveEnd(end, this.size);\n if (resolvedEnd !== this.size) {\n // super.slice(begin, end);\n return IndexedCollection.prototype.slice.call(this, begin, end);\n }\n var newSize = this.size - resolvedBegin;\n var head = this._head;\n while (resolvedBegin--) {\n head = head.next;\n }\n if (this.__ownerID) {\n this.size = newSize;\n this._head = head;\n this.__hash = undefined;\n this.__altered = true;\n return this;\n }\n return makeStack(newSize, head);\n };\n\n // @pragma Mutability\n\n Stack.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n if (!ownerID) {\n if (this.size === 0) {\n return emptyStack();\n }\n this.__ownerID = ownerID;\n this.__altered = false;\n return this;\n }\n return makeStack(this.size, this._head, ownerID, this.__hash);\n };\n\n // @pragma Iteration\n\n Stack.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n if (reverse) {\n return new ArraySeq(this.toArray()).__iterate(\n function (v, k) { return fn(v, k, this$1$1); },\n reverse\n );\n }\n var iterations = 0;\n var node = this._head;\n while (node) {\n if (fn(node.value, iterations++, this) === false) {\n break;\n }\n node = node.next;\n }\n return iterations;\n };\n\n Stack.prototype.__iterator = function __iterator (type, reverse) {\n if (reverse) {\n return new ArraySeq(this.toArray()).__iterator(type, reverse);\n }\n var iterations = 0;\n var node = this._head;\n return new Iterator(function () {\n if (node) {\n var value = node.value;\n node = node.next;\n return iteratorValue(type, iterations++, value);\n }\n return iteratorDone();\n });\n };\n\n return Stack;\n}(IndexedCollection));\n\nStack.isStack = isStack;\n\nvar StackPrototype = Stack.prototype;\nStackPrototype[IS_STACK_SYMBOL] = true;\nStackPrototype.shift = StackPrototype.pop;\nStackPrototype.unshift = StackPrototype.push;\nStackPrototype.unshiftAll = StackPrototype.pushAll;\nStackPrototype.withMutations = withMutations;\nStackPrototype.wasAltered = wasAltered;\nStackPrototype.asImmutable = asImmutable;\nStackPrototype['@@transducer/init'] = StackPrototype.asMutable = asMutable;\nStackPrototype['@@transducer/step'] = function (result, arr) {\n return result.unshift(arr);\n};\nStackPrototype['@@transducer/result'] = function (obj) {\n return obj.asImmutable();\n};\n\nfunction makeStack(size, head, ownerID, hash) {\n var map = Object.create(StackPrototype);\n map.size = size;\n map._head = head;\n map.__ownerID = ownerID;\n map.__hash = hash;\n map.__altered = false;\n return map;\n}\n\nvar EMPTY_STACK;\nfunction emptyStack() {\n return EMPTY_STACK || (EMPTY_STACK = makeStack(0));\n}\n\nvar IS_SET_SYMBOL = '@@__IMMUTABLE_SET__@@';\n\nfunction isSet(maybeSet) {\n return Boolean(maybeSet && maybeSet[IS_SET_SYMBOL]);\n}\n\nfunction isOrderedSet(maybeOrderedSet) {\n return isSet(maybeOrderedSet) && isOrdered(maybeOrderedSet);\n}\n\nfunction deepEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n if (\n !isCollection(b) ||\n (a.size !== undefined && b.size !== undefined && a.size !== b.size) ||\n (a.__hash !== undefined &&\n b.__hash !== undefined &&\n a.__hash !== b.__hash) ||\n isKeyed(a) !== isKeyed(b) ||\n isIndexed(a) !== isIndexed(b) ||\n isOrdered(a) !== isOrdered(b)\n ) {\n return false;\n }\n\n if (a.size === 0 && b.size === 0) {\n return true;\n }\n\n var notAssociative = !isAssociative(a);\n\n if (isOrdered(a)) {\n var entries = a.entries();\n return (\n b.every(function (v, k) {\n var entry = entries.next().value;\n return entry && is(entry[1], v) && (notAssociative || is(entry[0], k));\n }) && entries.next().done\n );\n }\n\n var flipped = false;\n\n if (a.size === undefined) {\n if (b.size === undefined) {\n if (typeof a.cacheResult === 'function') {\n a.cacheResult();\n }\n } else {\n flipped = true;\n var _ = a;\n a = b;\n b = _;\n }\n }\n\n var allEqual = true;\n var bSize = b.__iterate(function (v, k) {\n if (\n notAssociative\n ? !a.has(v)\n : flipped\n ? !is(v, a.get(k, NOT_SET))\n : !is(a.get(k, NOT_SET), v)\n ) {\n allEqual = false;\n return false;\n }\n });\n\n return allEqual && a.size === bSize;\n}\n\nfunction mixin(ctor, methods) {\n var keyCopier = function (key) {\n ctor.prototype[key] = methods[key];\n };\n Object.keys(methods).forEach(keyCopier);\n Object.getOwnPropertySymbols &&\n Object.getOwnPropertySymbols(methods).forEach(keyCopier);\n return ctor;\n}\n\nfunction toJS(value) {\n if (!value || typeof value !== 'object') {\n return value;\n }\n if (!isCollection(value)) {\n if (!isDataStructure(value)) {\n return value;\n }\n value = Seq(value);\n }\n if (isKeyed(value)) {\n var result$1 = {};\n value.__iterate(function (v, k) {\n result$1[k] = toJS(v);\n });\n return result$1;\n }\n var result = [];\n value.__iterate(function (v) {\n result.push(toJS(v));\n });\n return result;\n}\n\nvar Set = /*@__PURE__*/(function (SetCollection) {\n function Set(value) {\n return value === undefined || value === null\n ? emptySet()\n : isSet(value) && !isOrdered(value)\n ? value\n : emptySet().withMutations(function (set) {\n var iter = SetCollection(value);\n assertNotInfinite(iter.size);\n iter.forEach(function (v) { return set.add(v); });\n });\n }\n\n if ( SetCollection ) Set.__proto__ = SetCollection;\n Set.prototype = Object.create( SetCollection && SetCollection.prototype );\n Set.prototype.constructor = Set;\n\n Set.of = function of (/*...values*/) {\n return this(arguments);\n };\n\n Set.fromKeys = function fromKeys (value) {\n return this(KeyedCollection(value).keySeq());\n };\n\n Set.intersect = function intersect (sets) {\n sets = Collection(sets).toArray();\n return sets.length\n ? SetPrototype.intersect.apply(Set(sets.pop()), sets)\n : emptySet();\n };\n\n Set.union = function union (sets) {\n sets = Collection(sets).toArray();\n return sets.length\n ? SetPrototype.union.apply(Set(sets.pop()), sets)\n : emptySet();\n };\n\n Set.prototype.toString = function toString () {\n return this.__toString('Set {', '}');\n };\n\n // @pragma Access\n\n Set.prototype.has = function has (value) {\n return this._map.has(value);\n };\n\n // @pragma Modification\n\n Set.prototype.add = function add (value) {\n return updateSet(this, this._map.set(value, value));\n };\n\n Set.prototype.remove = function remove (value) {\n return updateSet(this, this._map.remove(value));\n };\n\n Set.prototype.clear = function clear () {\n return updateSet(this, this._map.clear());\n };\n\n // @pragma Composition\n\n Set.prototype.map = function map (mapper, context) {\n var this$1$1 = this;\n\n // keep track if the set is altered by the map function\n var didChanges = false;\n\n var newMap = updateSet(\n this,\n this._map.mapEntries(function (ref) {\n var v = ref[1];\n\n var mapped = mapper.call(context, v, v, this$1$1);\n\n if (mapped !== v) {\n didChanges = true;\n }\n\n return [mapped, mapped];\n }, context)\n );\n\n return didChanges ? newMap : this;\n };\n\n Set.prototype.union = function union () {\n var iters = [], len = arguments.length;\n while ( len-- ) iters[ len ] = arguments[ len ];\n\n iters = iters.filter(function (x) { return x.size !== 0; });\n if (iters.length === 0) {\n return this;\n }\n if (this.size === 0 && !this.__ownerID && iters.length === 1) {\n return this.constructor(iters[0]);\n }\n return this.withMutations(function (set) {\n for (var ii = 0; ii < iters.length; ii++) {\n if (typeof iters[ii] === 'string') {\n set.add(iters[ii]);\n } else {\n SetCollection(iters[ii]).forEach(function (value) { return set.add(value); });\n }\n }\n });\n };\n\n Set.prototype.intersect = function intersect () {\n var iters = [], len = arguments.length;\n while ( len-- ) iters[ len ] = arguments[ len ];\n\n if (iters.length === 0) {\n return this;\n }\n iters = iters.map(function (iter) { return SetCollection(iter); });\n var toRemove = [];\n this.forEach(function (value) {\n if (!iters.every(function (iter) { return iter.includes(value); })) {\n toRemove.push(value);\n }\n });\n return this.withMutations(function (set) {\n toRemove.forEach(function (value) {\n set.remove(value);\n });\n });\n };\n\n Set.prototype.subtract = function subtract () {\n var iters = [], len = arguments.length;\n while ( len-- ) iters[ len ] = arguments[ len ];\n\n if (iters.length === 0) {\n return this;\n }\n iters = iters.map(function (iter) { return SetCollection(iter); });\n var toRemove = [];\n this.forEach(function (value) {\n if (iters.some(function (iter) { return iter.includes(value); })) {\n toRemove.push(value);\n }\n });\n return this.withMutations(function (set) {\n toRemove.forEach(function (value) {\n set.remove(value);\n });\n });\n };\n\n Set.prototype.sort = function sort (comparator) {\n // Late binding\n return OrderedSet(sortFactory(this, comparator));\n };\n\n Set.prototype.sortBy = function sortBy (mapper, comparator) {\n // Late binding\n return OrderedSet(sortFactory(this, comparator, mapper));\n };\n\n Set.prototype.wasAltered = function wasAltered () {\n return this._map.wasAltered();\n };\n\n Set.prototype.__iterate = function __iterate (fn, reverse) {\n var this$1$1 = this;\n\n return this._map.__iterate(function (k) { return fn(k, k, this$1$1); }, reverse);\n };\n\n Set.prototype.__iterator = function __iterator (type, reverse) {\n return this._map.__iterator(type, reverse);\n };\n\n Set.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n var newMap = this._map.__ensureOwner(ownerID);\n if (!ownerID) {\n if (this.size === 0) {\n return this.__empty();\n }\n this.__ownerID = ownerID;\n this._map = newMap;\n return this;\n }\n return this.__make(newMap, ownerID);\n };\n\n return Set;\n}(SetCollection));\n\nSet.isSet = isSet;\n\nvar SetPrototype = Set.prototype;\nSetPrototype[IS_SET_SYMBOL] = true;\nSetPrototype[DELETE] = SetPrototype.remove;\nSetPrototype.merge = SetPrototype.concat = SetPrototype.union;\nSetPrototype.withMutations = withMutations;\nSetPrototype.asImmutable = asImmutable;\nSetPrototype['@@transducer/init'] = SetPrototype.asMutable = asMutable;\nSetPrototype['@@transducer/step'] = function (result, arr) {\n return result.add(arr);\n};\nSetPrototype['@@transducer/result'] = function (obj) {\n return obj.asImmutable();\n};\n\nSetPrototype.__empty = emptySet;\nSetPrototype.__make = makeSet;\n\nfunction updateSet(set, newMap) {\n if (set.__ownerID) {\n set.size = newMap.size;\n set._map = newMap;\n return set;\n }\n return newMap === set._map\n ? set\n : newMap.size === 0\n ? set.__empty()\n : set.__make(newMap);\n}\n\nfunction makeSet(map, ownerID) {\n var set = Object.create(SetPrototype);\n set.size = map ? map.size : 0;\n set._map = map;\n set.__ownerID = ownerID;\n return set;\n}\n\nvar EMPTY_SET;\nfunction emptySet() {\n return EMPTY_SET || (EMPTY_SET = makeSet(emptyMap()));\n}\n\n/**\n * Returns a lazy seq of nums from start (inclusive) to end\n * (exclusive), by step, where start defaults to 0, step to 1, and end to\n * infinity. When start is equal to end, returns empty list.\n */\nvar Range = /*@__PURE__*/(function (IndexedSeq) {\n function Range(start, end, step) {\n if (!(this instanceof Range)) {\n return new Range(start, end, step);\n }\n invariant(step !== 0, 'Cannot step a Range by 0');\n start = start || 0;\n if (end === undefined) {\n end = Infinity;\n }\n step = step === undefined ? 1 : Math.abs(step);\n if (end < start) {\n step = -step;\n }\n this._start = start;\n this._end = end;\n this._step = step;\n this.size = Math.max(0, Math.ceil((end - start) / step - 1) + 1);\n if (this.size === 0) {\n if (EMPTY_RANGE) {\n return EMPTY_RANGE;\n }\n EMPTY_RANGE = this;\n }\n }\n\n if ( IndexedSeq ) Range.__proto__ = IndexedSeq;\n Range.prototype = Object.create( IndexedSeq && IndexedSeq.prototype );\n Range.prototype.constructor = Range;\n\n Range.prototype.toString = function toString () {\n if (this.size === 0) {\n return 'Range []';\n }\n return (\n 'Range [ ' +\n this._start +\n '...' +\n this._end +\n (this._step !== 1 ? ' by ' + this._step : '') +\n ' ]'\n );\n };\n\n Range.prototype.get = function get (index, notSetValue) {\n return this.has(index)\n ? this._start + wrapIndex(this, index) * this._step\n : notSetValue;\n };\n\n Range.prototype.includes = function includes (searchValue) {\n var possibleIndex = (searchValue - this._start) / this._step;\n return (\n possibleIndex >= 0 &&\n possibleIndex < this.size &&\n possibleIndex === Math.floor(possibleIndex)\n );\n };\n\n Range.prototype.slice = function slice (begin, end) {\n if (wholeSlice(begin, end, this.size)) {\n return this;\n }\n begin = resolveBegin(begin, this.size);\n end = resolveEnd(end, this.size);\n if (end <= begin) {\n return new Range(0, 0);\n }\n return new Range(\n this.get(begin, this._end),\n this.get(end, this._end),\n this._step\n );\n };\n\n Range.prototype.indexOf = function indexOf (searchValue) {\n var offsetValue = searchValue - this._start;\n if (offsetValue % this._step === 0) {\n var index = offsetValue / this._step;\n if (index >= 0 && index < this.size) {\n return index;\n }\n }\n return -1;\n };\n\n Range.prototype.lastIndexOf = function lastIndexOf (searchValue) {\n return this.indexOf(searchValue);\n };\n\n Range.prototype.__iterate = function __iterate (fn, reverse) {\n var size = this.size;\n var step = this._step;\n var value = reverse ? this._start + (size - 1) * step : this._start;\n var i = 0;\n while (i !== size) {\n if (fn(value, reverse ? size - ++i : i++, this) === false) {\n break;\n }\n value += reverse ? -step : step;\n }\n return i;\n };\n\n Range.prototype.__iterator = function __iterator (type, reverse) {\n var size = this.size;\n var step = this._step;\n var value = reverse ? this._start + (size - 1) * step : this._start;\n var i = 0;\n return new Iterator(function () {\n if (i === size) {\n return iteratorDone();\n }\n var v = value;\n value += reverse ? -step : step;\n return iteratorValue(type, reverse ? size - ++i : i++, v);\n });\n };\n\n Range.prototype.equals = function equals (other) {\n return other instanceof Range\n ? this._start === other._start &&\n this._end === other._end &&\n this._step === other._step\n : deepEqual(this, other);\n };\n\n return Range;\n}(IndexedSeq));\n\nvar EMPTY_RANGE;\n\nfunction getIn$1(collection, searchKeyPath, notSetValue) {\n var keyPath = coerceKeyPath(searchKeyPath);\n var i = 0;\n while (i !== keyPath.length) {\n collection = get(collection, keyPath[i++], NOT_SET);\n if (collection === NOT_SET) {\n return notSetValue;\n }\n }\n return collection;\n}\n\nfunction getIn(searchKeyPath, notSetValue) {\n return getIn$1(this, searchKeyPath, notSetValue);\n}\n\nfunction hasIn$1(collection, keyPath) {\n return getIn$1(collection, keyPath, NOT_SET) !== NOT_SET;\n}\n\nfunction hasIn(searchKeyPath) {\n return hasIn$1(this, searchKeyPath);\n}\n\nfunction toObject() {\n assertNotInfinite(this.size);\n var object = {};\n this.__iterate(function (v, k) {\n object[k] = v;\n });\n return object;\n}\n\n// Note: all of these methods are deprecated.\nCollection.isIterable = isCollection;\nCollection.isKeyed = isKeyed;\nCollection.isIndexed = isIndexed;\nCollection.isAssociative = isAssociative;\nCollection.isOrdered = isOrdered;\n\nCollection.Iterator = Iterator;\n\nmixin(Collection, {\n // ### Conversion to other types\n\n toArray: function toArray() {\n assertNotInfinite(this.size);\n var array = new Array(this.size || 0);\n var useTuples = isKeyed(this);\n var i = 0;\n this.__iterate(function (v, k) {\n // Keyed collections produce an array of tuples.\n array[i++] = useTuples ? [k, v] : v;\n });\n return array;\n },\n\n toIndexedSeq: function toIndexedSeq() {\n return new ToIndexedSequence(this);\n },\n\n toJS: function toJS$1() {\n return toJS(this);\n },\n\n toKeyedSeq: function toKeyedSeq() {\n return new ToKeyedSequence(this, true);\n },\n\n toMap: function toMap() {\n // Use Late Binding here to solve the circular dependency.\n return Map(this.toKeyedSeq());\n },\n\n toObject: toObject,\n\n toOrderedMap: function toOrderedMap() {\n // Use Late Binding here to solve the circular dependency.\n return OrderedMap(this.toKeyedSeq());\n },\n\n toOrderedSet: function toOrderedSet() {\n // Use Late Binding here to solve the circular dependency.\n return OrderedSet(isKeyed(this) ? this.valueSeq() : this);\n },\n\n toSet: function toSet() {\n // Use Late Binding here to solve the circular dependency.\n return Set(isKeyed(this) ? this.valueSeq() : this);\n },\n\n toSetSeq: function toSetSeq() {\n return new ToSetSequence(this);\n },\n\n toSeq: function toSeq() {\n return isIndexed(this)\n ? this.toIndexedSeq()\n : isKeyed(this)\n ? this.toKeyedSeq()\n : this.toSetSeq();\n },\n\n toStack: function toStack() {\n // Use Late Binding here to solve the circular dependency.\n return Stack(isKeyed(this) ? this.valueSeq() : this);\n },\n\n toList: function toList() {\n // Use Late Binding here to solve the circular dependency.\n return List(isKeyed(this) ? this.valueSeq() : this);\n },\n\n // ### Common JavaScript methods and properties\n\n toString: function toString() {\n return '[Collection]';\n },\n\n __toString: function __toString(head, tail) {\n if (this.size === 0) {\n return head + tail;\n }\n return (\n head +\n ' ' +\n this.toSeq().map(this.__toStringMapper).join(', ') +\n ' ' +\n tail\n );\n },\n\n // ### ES6 Collection methods (ES6 Array and Map)\n\n concat: function concat() {\n var values = [], len = arguments.length;\n while ( len-- ) values[ len ] = arguments[ len ];\n\n return reify(this, concatFactory(this, values));\n },\n\n includes: function includes(searchValue) {\n return this.some(function (value) { return is(value, searchValue); });\n },\n\n entries: function entries() {\n return this.__iterator(ITERATE_ENTRIES);\n },\n\n every: function every(predicate, context) {\n assertNotInfinite(this.size);\n var returnValue = true;\n this.__iterate(function (v, k, c) {\n if (!predicate.call(context, v, k, c)) {\n returnValue = false;\n return false;\n }\n });\n return returnValue;\n },\n\n filter: function filter(predicate, context) {\n return reify(this, filterFactory(this, predicate, context, true));\n },\n\n partition: function partition(predicate, context) {\n return partitionFactory(this, predicate, context);\n },\n\n find: function find(predicate, context, notSetValue) {\n var entry = this.findEntry(predicate, context);\n return entry ? entry[1] : notSetValue;\n },\n\n forEach: function forEach(sideEffect, context) {\n assertNotInfinite(this.size);\n return this.__iterate(context ? sideEffect.bind(context) : sideEffect);\n },\n\n join: function join(separator) {\n assertNotInfinite(this.size);\n separator = separator !== undefined ? '' + separator : ',';\n var joined = '';\n var isFirst = true;\n this.__iterate(function (v) {\n isFirst ? (isFirst = false) : (joined += separator);\n joined += v !== null && v !== undefined ? v.toString() : '';\n });\n return joined;\n },\n\n keys: function keys() {\n return this.__iterator(ITERATE_KEYS);\n },\n\n map: function map(mapper, context) {\n return reify(this, mapFactory(this, mapper, context));\n },\n\n reduce: function reduce$1(reducer, initialReduction, context) {\n return reduce(\n this,\n reducer,\n initialReduction,\n context,\n arguments.length < 2,\n false\n );\n },\n\n reduceRight: function reduceRight(reducer, initialReduction, context) {\n return reduce(\n this,\n reducer,\n initialReduction,\n context,\n arguments.length < 2,\n true\n );\n },\n\n reverse: function reverse() {\n return reify(this, reverseFactory(this, true));\n },\n\n slice: function slice(begin, end) {\n return reify(this, sliceFactory(this, begin, end, true));\n },\n\n some: function some(predicate, context) {\n assertNotInfinite(this.size);\n var returnValue = false;\n this.__iterate(function (v, k, c) {\n if (predicate.call(context, v, k, c)) {\n returnValue = true;\n return false;\n }\n });\n return returnValue;\n },\n\n sort: function sort(comparator) {\n return reify(this, sortFactory(this, comparator));\n },\n\n values: function values() {\n return this.__iterator(ITERATE_VALUES);\n },\n\n // ### More sequential methods\n\n butLast: function butLast() {\n return this.slice(0, -1);\n },\n\n isEmpty: function isEmpty() {\n return this.size !== undefined ? this.size === 0 : !this.some(function () { return true; });\n },\n\n count: function count(predicate, context) {\n return ensureSize(\n predicate ? this.toSeq().filter(predicate, context) : this\n );\n },\n\n countBy: function countBy(grouper, context) {\n return countByFactory(this, grouper, context);\n },\n\n equals: function equals(other) {\n return deepEqual(this, other);\n },\n\n entrySeq: function entrySeq() {\n var collection = this;\n if (collection._cache) {\n // We cache as an entries array, so we can just return the cache!\n return new ArraySeq(collection._cache);\n }\n var entriesSequence = collection.toSeq().map(entryMapper).toIndexedSeq();\n entriesSequence.fromEntrySeq = function () { return collection.toSeq(); };\n return entriesSequence;\n },\n\n filterNot: function filterNot(predicate, context) {\n return this.filter(not(predicate), context);\n },\n\n findEntry: function findEntry(predicate, context, notSetValue) {\n var found = notSetValue;\n this.__iterate(function (v, k, c) {\n if (predicate.call(context, v, k, c)) {\n found = [k, v];\n return false;\n }\n });\n return found;\n },\n\n findKey: function findKey(predicate, context) {\n var entry = this.findEntry(predicate, context);\n return entry && entry[0];\n },\n\n findLast: function findLast(predicate, context, notSetValue) {\n return this.toKeyedSeq().reverse().find(predicate, context, notSetValue);\n },\n\n findLastEntry: function findLastEntry(predicate, context, notSetValue) {\n return this.toKeyedSeq()\n .reverse()\n .findEntry(predicate, context, notSetValue);\n },\n\n findLastKey: function findLastKey(predicate, context) {\n return this.toKeyedSeq().reverse().findKey(predicate, context);\n },\n\n first: function first(notSetValue) {\n return this.find(returnTrue, null, notSetValue);\n },\n\n flatMap: function flatMap(mapper, context) {\n return reify(this, flatMapFactory(this, mapper, context));\n },\n\n flatten: function flatten(depth) {\n return reify(this, flattenFactory(this, depth, true));\n },\n\n fromEntrySeq: function fromEntrySeq() {\n return new FromEntriesSequence(this);\n },\n\n get: function get(searchKey, notSetValue) {\n return this.find(function (_, key) { return is(key, searchKey); }, undefined, notSetValue);\n },\n\n getIn: getIn,\n\n groupBy: function groupBy(grouper, context) {\n return groupByFactory(this, grouper, context);\n },\n\n has: function has(searchKey) {\n return this.get(searchKey, NOT_SET) !== NOT_SET;\n },\n\n hasIn: hasIn,\n\n isSubset: function isSubset(iter) {\n iter = typeof iter.includes === 'function' ? iter : Collection(iter);\n return this.every(function (value) { return iter.includes(value); });\n },\n\n isSuperset: function isSuperset(iter) {\n iter = typeof iter.isSubset === 'function' ? iter : Collection(iter);\n return iter.isSubset(this);\n },\n\n keyOf: function keyOf(searchValue) {\n return this.findKey(function (value) { return is(value, searchValue); });\n },\n\n keySeq: function keySeq() {\n return this.toSeq().map(keyMapper).toIndexedSeq();\n },\n\n last: function last(notSetValue) {\n return this.toSeq().reverse().first(notSetValue);\n },\n\n lastKeyOf: function lastKeyOf(searchValue) {\n return this.toKeyedSeq().reverse().keyOf(searchValue);\n },\n\n max: function max(comparator) {\n return maxFactory(this, comparator);\n },\n\n maxBy: function maxBy(mapper, comparator) {\n return maxFactory(this, comparator, mapper);\n },\n\n min: function min(comparator) {\n return maxFactory(\n this,\n comparator ? neg(comparator) : defaultNegComparator\n );\n },\n\n minBy: function minBy(mapper, comparator) {\n return maxFactory(\n this,\n comparator ? neg(comparator) : defaultNegComparator,\n mapper\n );\n },\n\n rest: function rest() {\n return this.slice(1);\n },\n\n skip: function skip(amount) {\n return amount === 0 ? this : this.slice(Math.max(0, amount));\n },\n\n skipLast: function skipLast(amount) {\n return amount === 0 ? this : this.slice(0, -Math.max(0, amount));\n },\n\n skipWhile: function skipWhile(predicate, context) {\n return reify(this, skipWhileFactory(this, predicate, context, true));\n },\n\n skipUntil: function skipUntil(predicate, context) {\n return this.skipWhile(not(predicate), context);\n },\n\n sortBy: function sortBy(mapper, comparator) {\n return reify(this, sortFactory(this, comparator, mapper));\n },\n\n take: function take(amount) {\n return this.slice(0, Math.max(0, amount));\n },\n\n takeLast: function takeLast(amount) {\n return this.slice(-Math.max(0, amount));\n },\n\n takeWhile: function takeWhile(predicate, context) {\n return reify(this, takeWhileFactory(this, predicate, context));\n },\n\n takeUntil: function takeUntil(predicate, context) {\n return this.takeWhile(not(predicate), context);\n },\n\n update: function update(fn) {\n return fn(this);\n },\n\n valueSeq: function valueSeq() {\n return this.toIndexedSeq();\n },\n\n // ### Hashable Object\n\n hashCode: function hashCode() {\n return this.__hash || (this.__hash = hashCollection(this));\n },\n\n // ### Internal\n\n // abstract __iterate(fn, reverse)\n\n // abstract __iterator(type, reverse)\n});\n\nvar CollectionPrototype = Collection.prototype;\nCollectionPrototype[IS_COLLECTION_SYMBOL] = true;\nCollectionPrototype[ITERATOR_SYMBOL] = CollectionPrototype.values;\nCollectionPrototype.toJSON = CollectionPrototype.toArray;\nCollectionPrototype.__toStringMapper = quoteString;\nCollectionPrototype.inspect = CollectionPrototype.toSource = function () {\n return this.toString();\n};\nCollectionPrototype.chain = CollectionPrototype.flatMap;\nCollectionPrototype.contains = CollectionPrototype.includes;\n\nmixin(KeyedCollection, {\n // ### More sequential methods\n\n flip: function flip() {\n return reify(this, flipFactory(this));\n },\n\n mapEntries: function mapEntries(mapper, context) {\n var this$1$1 = this;\n\n var iterations = 0;\n return reify(\n this,\n this.toSeq()\n .map(function (v, k) { return mapper.call(context, [k, v], iterations++, this$1$1); })\n .fromEntrySeq()\n );\n },\n\n mapKeys: function mapKeys(mapper, context) {\n var this$1$1 = this;\n\n return reify(\n this,\n this.toSeq()\n .flip()\n .map(function (k, v) { return mapper.call(context, k, v, this$1$1); })\n .flip()\n );\n },\n});\n\nvar KeyedCollectionPrototype = KeyedCollection.prototype;\nKeyedCollectionPrototype[IS_KEYED_SYMBOL] = true;\nKeyedCollectionPrototype[ITERATOR_SYMBOL] = CollectionPrototype.entries;\nKeyedCollectionPrototype.toJSON = toObject;\nKeyedCollectionPrototype.__toStringMapper = function (v, k) { return quoteString(k) + ': ' + quoteString(v); };\n\nmixin(IndexedCollection, {\n // ### Conversion to other types\n\n toKeyedSeq: function toKeyedSeq() {\n return new ToKeyedSequence(this, false);\n },\n\n // ### ES6 Collection methods (ES6 Array and Map)\n\n filter: function filter(predicate, context) {\n return reify(this, filterFactory(this, predicate, context, false));\n },\n\n findIndex: function findIndex(predicate, context) {\n var entry = this.findEntry(predicate, context);\n return entry ? entry[0] : -1;\n },\n\n indexOf: function indexOf(searchValue) {\n var key = this.keyOf(searchValue);\n return key === undefined ? -1 : key;\n },\n\n lastIndexOf: function lastIndexOf(searchValue) {\n var key = this.lastKeyOf(searchValue);\n return key === undefined ? -1 : key;\n },\n\n reverse: function reverse() {\n return reify(this, reverseFactory(this, false));\n },\n\n slice: function slice(begin, end) {\n return reify(this, sliceFactory(this, begin, end, false));\n },\n\n splice: function splice(index, removeNum /*, ...values*/) {\n var numArgs = arguments.length;\n removeNum = Math.max(removeNum || 0, 0);\n if (numArgs === 0 || (numArgs === 2 && !removeNum)) {\n return this;\n }\n // If index is negative, it should resolve relative to the size of the\n // collection. However size may be expensive to compute if not cached, so\n // only call count() if the number is in fact negative.\n index = resolveBegin(index, index < 0 ? this.count() : this.size);\n var spliced = this.slice(0, index);\n return reify(\n this,\n numArgs === 1\n ? spliced\n : spliced.concat(arrCopy(arguments, 2), this.slice(index + removeNum))\n );\n },\n\n // ### More collection methods\n\n findLastIndex: function findLastIndex(predicate, context) {\n var entry = this.findLastEntry(predicate, context);\n return entry ? entry[0] : -1;\n },\n\n first: function first(notSetValue) {\n return this.get(0, notSetValue);\n },\n\n flatten: function flatten(depth) {\n return reify(this, flattenFactory(this, depth, false));\n },\n\n get: function get(index, notSetValue) {\n index = wrapIndex(this, index);\n return index < 0 ||\n this.size === Infinity ||\n (this.size !== undefined && index > this.size)\n ? notSetValue\n : this.find(function (_, key) { return key === index; }, undefined, notSetValue);\n },\n\n has: function has(index) {\n index = wrapIndex(this, index);\n return (\n index >= 0 &&\n (this.size !== undefined\n ? this.size === Infinity || index < this.size\n : this.indexOf(index) !== -1)\n );\n },\n\n interpose: function interpose(separator) {\n return reify(this, interposeFactory(this, separator));\n },\n\n interleave: function interleave(/*...collections*/) {\n var collections = [this].concat(arrCopy(arguments));\n var zipped = zipWithFactory(this.toSeq(), IndexedSeq.of, collections);\n var interleaved = zipped.flatten(true);\n if (zipped.size) {\n interleaved.size = zipped.size * collections.length;\n }\n return reify(this, interleaved);\n },\n\n keySeq: function keySeq() {\n return Range(0, this.size);\n },\n\n last: function last(notSetValue) {\n return this.get(-1, notSetValue);\n },\n\n skipWhile: function skipWhile(predicate, context) {\n return reify(this, skipWhileFactory(this, predicate, context, false));\n },\n\n zip: function zip(/*, ...collections */) {\n var collections = [this].concat(arrCopy(arguments));\n return reify(this, zipWithFactory(this, defaultZipper, collections));\n },\n\n zipAll: function zipAll(/*, ...collections */) {\n var collections = [this].concat(arrCopy(arguments));\n return reify(this, zipWithFactory(this, defaultZipper, collections, true));\n },\n\n zipWith: function zipWith(zipper /*, ...collections */) {\n var collections = arrCopy(arguments);\n collections[0] = this;\n return reify(this, zipWithFactory(this, zipper, collections));\n },\n});\n\nvar IndexedCollectionPrototype = IndexedCollection.prototype;\nIndexedCollectionPrototype[IS_INDEXED_SYMBOL] = true;\nIndexedCollectionPrototype[IS_ORDERED_SYMBOL] = true;\n\nmixin(SetCollection, {\n // ### ES6 Collection methods (ES6 Array and Map)\n\n get: function get(value, notSetValue) {\n return this.has(value) ? value : notSetValue;\n },\n\n includes: function includes(value) {\n return this.has(value);\n },\n\n // ### More sequential methods\n\n keySeq: function keySeq() {\n return this.valueSeq();\n },\n});\n\nvar SetCollectionPrototype = SetCollection.prototype;\nSetCollectionPrototype.has = CollectionPrototype.includes;\nSetCollectionPrototype.contains = SetCollectionPrototype.includes;\nSetCollectionPrototype.keys = SetCollectionPrototype.values;\n\n// Mixin subclasses\n\nmixin(KeyedSeq, KeyedCollectionPrototype);\nmixin(IndexedSeq, IndexedCollectionPrototype);\nmixin(SetSeq, SetCollectionPrototype);\n\n// #pragma Helper functions\n\nfunction reduce(collection, reducer, reduction, context, useFirst, reverse) {\n assertNotInfinite(collection.size);\n collection.__iterate(function (v, k, c) {\n if (useFirst) {\n useFirst = false;\n reduction = v;\n } else {\n reduction = reducer.call(context, reduction, v, k, c);\n }\n }, reverse);\n return reduction;\n}\n\nfunction keyMapper(v, k) {\n return k;\n}\n\nfunction entryMapper(v, k) {\n return [k, v];\n}\n\nfunction not(predicate) {\n return function () {\n return !predicate.apply(this, arguments);\n };\n}\n\nfunction neg(predicate) {\n return function () {\n return -predicate.apply(this, arguments);\n };\n}\n\nfunction defaultZipper() {\n return arrCopy(arguments);\n}\n\nfunction defaultNegComparator(a, b) {\n return a < b ? 1 : a > b ? -1 : 0;\n}\n\nfunction hashCollection(collection) {\n if (collection.size === Infinity) {\n return 0;\n }\n var ordered = isOrdered(collection);\n var keyed = isKeyed(collection);\n var h = ordered ? 1 : 0;\n var size = collection.__iterate(\n keyed\n ? ordered\n ? function (v, k) {\n h = (31 * h + hashMerge(hash(v), hash(k))) | 0;\n }\n : function (v, k) {\n h = (h + hashMerge(hash(v), hash(k))) | 0;\n }\n : ordered\n ? function (v) {\n h = (31 * h + hash(v)) | 0;\n }\n : function (v) {\n h = (h + hash(v)) | 0;\n }\n );\n return murmurHashOfSize(size, h);\n}\n\nfunction murmurHashOfSize(size, h) {\n h = imul(h, 0xcc9e2d51);\n h = imul((h << 15) | (h >>> -15), 0x1b873593);\n h = imul((h << 13) | (h >>> -13), 5);\n h = ((h + 0xe6546b64) | 0) ^ size;\n h = imul(h ^ (h >>> 16), 0x85ebca6b);\n h = imul(h ^ (h >>> 13), 0xc2b2ae35);\n h = smi(h ^ (h >>> 16));\n return h;\n}\n\nfunction hashMerge(a, b) {\n return (a ^ (b + 0x9e3779b9 + (a << 6) + (a >> 2))) | 0; // int\n}\n\nvar OrderedSet = /*@__PURE__*/(function (Set) {\n function OrderedSet(value) {\n return value === undefined || value === null\n ? emptyOrderedSet()\n : isOrderedSet(value)\n ? value\n : emptyOrderedSet().withMutations(function (set) {\n var iter = SetCollection(value);\n assertNotInfinite(iter.size);\n iter.forEach(function (v) { return set.add(v); });\n });\n }\n\n if ( Set ) OrderedSet.__proto__ = Set;\n OrderedSet.prototype = Object.create( Set && Set.prototype );\n OrderedSet.prototype.constructor = OrderedSet;\n\n OrderedSet.of = function of (/*...values*/) {\n return this(arguments);\n };\n\n OrderedSet.fromKeys = function fromKeys (value) {\n return this(KeyedCollection(value).keySeq());\n };\n\n OrderedSet.prototype.toString = function toString () {\n return this.__toString('OrderedSet {', '}');\n };\n\n return OrderedSet;\n}(Set));\n\nOrderedSet.isOrderedSet = isOrderedSet;\n\nvar OrderedSetPrototype = OrderedSet.prototype;\nOrderedSetPrototype[IS_ORDERED_SYMBOL] = true;\nOrderedSetPrototype.zip = IndexedCollectionPrototype.zip;\nOrderedSetPrototype.zipWith = IndexedCollectionPrototype.zipWith;\nOrderedSetPrototype.zipAll = IndexedCollectionPrototype.zipAll;\n\nOrderedSetPrototype.__empty = emptyOrderedSet;\nOrderedSetPrototype.__make = makeOrderedSet;\n\nfunction makeOrderedSet(map, ownerID) {\n var set = Object.create(OrderedSetPrototype);\n set.size = map ? map.size : 0;\n set._map = map;\n set.__ownerID = ownerID;\n return set;\n}\n\nvar EMPTY_ORDERED_SET;\nfunction emptyOrderedSet() {\n return (\n EMPTY_ORDERED_SET || (EMPTY_ORDERED_SET = makeOrderedSet(emptyOrderedMap()))\n );\n}\n\nvar PairSorting = {\n LeftThenRight: -1,\n RightThenLeft: +1,\n};\n\nfunction throwOnInvalidDefaultValues(defaultValues) {\n if (isRecord(defaultValues)) {\n throw new Error(\n 'Can not call `Record` with an immutable Record as default values. Use a plain javascript object instead.'\n );\n }\n\n if (isImmutable(defaultValues)) {\n throw new Error(\n 'Can not call `Record` with an immutable Collection as default values. Use a plain javascript object instead.'\n );\n }\n\n if (defaultValues === null || typeof defaultValues !== 'object') {\n throw new Error(\n 'Can not call `Record` with a non-object as default values. Use a plain javascript object instead.'\n );\n }\n}\n\nvar Record = function Record(defaultValues, name) {\n var hasInitialized;\n\n throwOnInvalidDefaultValues(defaultValues);\n\n var RecordType = function Record(values) {\n var this$1$1 = this;\n\n if (values instanceof RecordType) {\n return values;\n }\n if (!(this instanceof RecordType)) {\n return new RecordType(values);\n }\n if (!hasInitialized) {\n hasInitialized = true;\n var keys = Object.keys(defaultValues);\n var indices = (RecordTypePrototype._indices = {});\n // Deprecated: left to attempt not to break any external code which\n // relies on a ._name property existing on record instances.\n // Use Record.getDescriptiveName() instead\n RecordTypePrototype._name = name;\n RecordTypePrototype._keys = keys;\n RecordTypePrototype._defaultValues = defaultValues;\n for (var i = 0; i < keys.length; i++) {\n var propName = keys[i];\n indices[propName] = i;\n if (RecordTypePrototype[propName]) {\n /* eslint-disable no-console */\n typeof console === 'object' &&\n console.warn &&\n console.warn(\n 'Cannot define ' +\n recordName(this) +\n ' with property \"' +\n propName +\n '\" since that property name is part of the Record API.'\n );\n /* eslint-enable no-console */\n } else {\n setProp(RecordTypePrototype, propName);\n }\n }\n }\n this.__ownerID = undefined;\n this._values = List().withMutations(function (l) {\n l.setSize(this$1$1._keys.length);\n KeyedCollection(values).forEach(function (v, k) {\n l.set(this$1$1._indices[k], v === this$1$1._defaultValues[k] ? undefined : v);\n });\n });\n return this;\n };\n\n var RecordTypePrototype = (RecordType.prototype =\n Object.create(RecordPrototype));\n RecordTypePrototype.constructor = RecordType;\n\n if (name) {\n RecordType.displayName = name;\n }\n\n return RecordType;\n};\n\nRecord.prototype.toString = function toString () {\n var str = recordName(this) + ' { ';\n var keys = this._keys;\n var k;\n for (var i = 0, l = keys.length; i !== l; i++) {\n k = keys[i];\n str += (i ? ', ' : '') + k + ': ' + quoteString(this.get(k));\n }\n return str + ' }';\n};\n\nRecord.prototype.equals = function equals (other) {\n return (\n this === other ||\n (isRecord(other) && recordSeq(this).equals(recordSeq(other)))\n );\n};\n\nRecord.prototype.hashCode = function hashCode () {\n return recordSeq(this).hashCode();\n};\n\n// @pragma Access\n\nRecord.prototype.has = function has (k) {\n return this._indices.hasOwnProperty(k);\n};\n\nRecord.prototype.get = function get (k, notSetValue) {\n if (!this.has(k)) {\n return notSetValue;\n }\n var index = this._indices[k];\n var value = this._values.get(index);\n return value === undefined ? this._defaultValues[k] : value;\n};\n\n// @pragma Modification\n\nRecord.prototype.set = function set (k, v) {\n if (this.has(k)) {\n var newValues = this._values.set(\n this._indices[k],\n v === this._defaultValues[k] ? undefined : v\n );\n if (newValues !== this._values && !this.__ownerID) {\n return makeRecord(this, newValues);\n }\n }\n return this;\n};\n\nRecord.prototype.remove = function remove (k) {\n return this.set(k);\n};\n\nRecord.prototype.clear = function clear () {\n var newValues = this._values.clear().setSize(this._keys.length);\n\n return this.__ownerID ? this : makeRecord(this, newValues);\n};\n\nRecord.prototype.wasAltered = function wasAltered () {\n return this._values.wasAltered();\n};\n\nRecord.prototype.toSeq = function toSeq () {\n return recordSeq(this);\n};\n\nRecord.prototype.toJS = function toJS$1 () {\n return toJS(this);\n};\n\nRecord.prototype.entries = function entries () {\n return this.__iterator(ITERATE_ENTRIES);\n};\n\nRecord.prototype.__iterator = function __iterator (type, reverse) {\n return recordSeq(this).__iterator(type, reverse);\n};\n\nRecord.prototype.__iterate = function __iterate (fn, reverse) {\n return recordSeq(this).__iterate(fn, reverse);\n};\n\nRecord.prototype.__ensureOwner = function __ensureOwner (ownerID) {\n if (ownerID === this.__ownerID) {\n return this;\n }\n var newValues = this._values.__ensureOwner(ownerID);\n if (!ownerID) {\n this.__ownerID = ownerID;\n this._values = newValues;\n return this;\n }\n return makeRecord(this, newValues, ownerID);\n};\n\nRecord.isRecord = isRecord;\nRecord.getDescriptiveName = recordName;\nvar RecordPrototype = Record.prototype;\nRecordPrototype[IS_RECORD_SYMBOL] = true;\nRecordPrototype[DELETE] = RecordPrototype.remove;\nRecordPrototype.deleteIn = RecordPrototype.removeIn = deleteIn;\nRecordPrototype.getIn = getIn;\nRecordPrototype.hasIn = CollectionPrototype.hasIn;\nRecordPrototype.merge = merge$1;\nRecordPrototype.mergeWith = mergeWith$1;\nRecordPrototype.mergeIn = mergeIn;\nRecordPrototype.mergeDeep = mergeDeep;\nRecordPrototype.mergeDeepWith = mergeDeepWith;\nRecordPrototype.mergeDeepIn = mergeDeepIn;\nRecordPrototype.setIn = setIn;\nRecordPrototype.update = update;\nRecordPrototype.updateIn = updateIn;\nRecordPrototype.withMutations = withMutations;\nRecordPrototype.asMutable = asMutable;\nRecordPrototype.asImmutable = asImmutable;\nRecordPrototype[ITERATOR_SYMBOL] = RecordPrototype.entries;\nRecordPrototype.toJSON = RecordPrototype.toObject =\n CollectionPrototype.toObject;\nRecordPrototype.inspect = RecordPrototype.toSource = function () {\n return this.toString();\n};\n\nfunction makeRecord(likeRecord, values, ownerID) {\n var record = Object.create(Object.getPrototypeOf(likeRecord));\n record._values = values;\n record.__ownerID = ownerID;\n return record;\n}\n\nfunction recordName(record) {\n return record.constructor.displayName || record.constructor.name || 'Record';\n}\n\nfunction recordSeq(record) {\n return keyedSeqFromValue(record._keys.map(function (k) { return [k, record.get(k)]; }));\n}\n\nfunction setProp(prototype, name) {\n try {\n Object.defineProperty(prototype, name, {\n get: function () {\n return this.get(name);\n },\n set: function (value) {\n invariant(this.__ownerID, 'Cannot set on an immutable record.');\n this.set(name, value);\n },\n });\n } catch (error) {\n // Object.defineProperty failed. Probably IE8.\n }\n}\n\n/**\n * Returns a lazy Seq of `value` repeated `times` times. When `times` is\n * undefined, returns an infinite sequence of `value`.\n */\nvar Repeat = /*@__PURE__*/(function (IndexedSeq) {\n function Repeat(value, times) {\n if (!(this instanceof Repeat)) {\n return new Repeat(value, times);\n }\n this._value = value;\n this.size = times === undefined ? Infinity : Math.max(0, times);\n if (this.size === 0) {\n if (EMPTY_REPEAT) {\n return EMPTY_REPEAT;\n }\n EMPTY_REPEAT = this;\n }\n }\n\n if ( IndexedSeq ) Repeat.__proto__ = IndexedSeq;\n Repeat.prototype = Object.create( IndexedSeq && IndexedSeq.prototype );\n Repeat.prototype.constructor = Repeat;\n\n Repeat.prototype.toString = function toString () {\n if (this.size === 0) {\n return 'Repeat []';\n }\n return 'Repeat [ ' + this._value + ' ' + this.size + ' times ]';\n };\n\n Repeat.prototype.get = function get (index, notSetValue) {\n return this.has(index) ? this._value : notSetValue;\n };\n\n Repeat.prototype.includes = function includes (searchValue) {\n return is(this._value, searchValue);\n };\n\n Repeat.prototype.slice = function slice (begin, end) {\n var size = this.size;\n return wholeSlice(begin, end, size)\n ? this\n : new Repeat(\n this._value,\n resolveEnd(end, size) - resolveBegin(begin, size)\n );\n };\n\n Repeat.prototype.reverse = function reverse () {\n return this;\n };\n\n Repeat.prototype.indexOf = function indexOf (searchValue) {\n if (is(this._value, searchValue)) {\n return 0;\n }\n return -1;\n };\n\n Repeat.prototype.lastIndexOf = function lastIndexOf (searchValue) {\n if (is(this._value, searchValue)) {\n return this.size;\n }\n return -1;\n };\n\n Repeat.prototype.__iterate = function __iterate (fn, reverse) {\n var size = this.size;\n var i = 0;\n while (i !== size) {\n if (fn(this._value, reverse ? size - ++i : i++, this) === false) {\n break;\n }\n }\n return i;\n };\n\n Repeat.prototype.__iterator = function __iterator (type, reverse) {\n var this$1$1 = this;\n\n var size = this.size;\n var i = 0;\n return new Iterator(function () { return i === size\n ? iteratorDone()\n : iteratorValue(type, reverse ? size - ++i : i++, this$1$1._value); }\n );\n };\n\n Repeat.prototype.equals = function equals (other) {\n return other instanceof Repeat\n ? is(this._value, other._value)\n : deepEqual(other);\n };\n\n return Repeat;\n}(IndexedSeq));\n\nvar EMPTY_REPEAT;\n\nfunction fromJS(value, converter) {\n return fromJSWith(\n [],\n converter || defaultConverter,\n value,\n '',\n converter && converter.length > 2 ? [] : undefined,\n { '': value }\n );\n}\n\nfunction fromJSWith(stack, converter, value, key, keyPath, parentValue) {\n if (\n typeof value !== 'string' &&\n !isImmutable(value) &&\n (isArrayLike(value) || hasIterator(value) || isPlainObject(value))\n ) {\n if (~stack.indexOf(value)) {\n throw new TypeError('Cannot convert circular structure to Immutable');\n }\n stack.push(value);\n keyPath && key !== '' && keyPath.push(key);\n var converted = converter.call(\n parentValue,\n key,\n Seq(value).map(function (v, k) { return fromJSWith(stack, converter, v, k, keyPath, value); }\n ),\n keyPath && keyPath.slice()\n );\n stack.pop();\n keyPath && keyPath.pop();\n return converted;\n }\n return value;\n}\n\nfunction defaultConverter(k, v) {\n // Effectively the opposite of \"Collection.toSeq()\"\n return isIndexed(v) ? v.toList() : isKeyed(v) ? v.toMap() : v.toSet();\n}\n\nvar version = \"4.3.4\";\n\nvar Immutable = {\n version: version,\n\n Collection: Collection,\n // Note: Iterable is deprecated\n Iterable: Collection,\n\n Seq: Seq,\n Map: Map,\n OrderedMap: OrderedMap,\n List: List,\n Stack: Stack,\n Set: Set,\n OrderedSet: OrderedSet,\n PairSorting: PairSorting,\n\n Record: Record,\n Range: Range,\n Repeat: Repeat,\n\n is: is,\n fromJS: fromJS,\n hash: hash,\n\n isImmutable: isImmutable,\n isCollection: isCollection,\n isKeyed: isKeyed,\n isIndexed: isIndexed,\n isAssociative: isAssociative,\n isOrdered: isOrdered,\n isValueObject: isValueObject,\n isPlainObject: isPlainObject,\n isSeq: isSeq,\n isList: isList,\n isMap: isMap,\n isOrderedMap: isOrderedMap,\n isStack: isStack,\n isSet: isSet,\n isOrderedSet: isOrderedSet,\n isRecord: isRecord,\n\n get: get,\n getIn: getIn$1,\n has: has,\n hasIn: hasIn$1,\n merge: merge,\n mergeDeep: mergeDeep$1,\n mergeWith: mergeWith,\n mergeDeepWith: mergeDeepWith$1,\n remove: remove,\n removeIn: removeIn,\n set: set,\n setIn: setIn$1,\n update: update$1,\n updateIn: updateIn$1,\n};\n\n// Note: Iterable is deprecated\nvar Iterable = Collection;\n\nexport default Immutable;\nexport { Collection, Iterable, List, Map, OrderedMap, OrderedSet, PairSorting, Range, Record, Repeat, Seq, Set, Stack, fromJS, get, getIn$1 as getIn, has, hasIn$1 as hasIn, hash, is, isAssociative, isCollection, isImmutable, isIndexed, isKeyed, isList, isMap, isOrdered, isOrderedMap, isOrderedSet, isPlainObject, isRecord, isSeq, isSet, isStack, isValueObject, merge, mergeDeep$1 as mergeDeep, mergeDeepWith$1 as mergeDeepWith, mergeWith, remove, removeIn, set, setIn$1 as setIn, update$1 as update, updateIn$1 as updateIn, version };\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","'use strict';\n\nconst isStream = stream =>\n\tstream !== null &&\n\ttypeof stream === 'object' &&\n\ttypeof stream.pipe === 'function';\n\nisStream.writable = stream =>\n\tisStream(stream) &&\n\tstream.writable !== false &&\n\ttypeof stream._write === 'function' &&\n\ttypeof stream._writableState === 'object';\n\nisStream.readable = stream =>\n\tisStream(stream) &&\n\tstream.readable !== false &&\n\ttypeof stream._read === 'function' &&\n\ttypeof stream._readableState === 'object';\n\nisStream.duplex = stream =>\n\tisStream.writable(stream) &&\n\tisStream.readable(stream);\n\nisStream.transform = stream =>\n\tisStream.duplex(stream) &&\n\ttypeof stream._transform === 'function';\n\nmodule.exports = isStream;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/ContextParser\"), exports);\n__exportStar(require(\"./lib/ErrorCoded\"), exports);\n__exportStar(require(\"./lib/FetchDocumentLoader\"), exports);\n__exportStar(require(\"./lib/IDocumentLoader\"), exports);\n__exportStar(require(\"./lib/JsonLdContext\"), exports);\n__exportStar(require(\"./lib/JsonLdContextNormalized\"), exports);\n__exportStar(require(\"./lib/Util\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.defaultExpandOptions = exports.ContextParser = void 0;\nrequire(\"cross-fetch/polyfill\");\nconst relative_to_absolute_iri_1 = require(\"relative-to-absolute-iri\");\nconst ErrorCoded_1 = require(\"./ErrorCoded\");\nconst FetchDocumentLoader_1 = require(\"./FetchDocumentLoader\");\nconst JsonLdContextNormalized_1 = require(\"./JsonLdContextNormalized\");\nconst Util_1 = require(\"./Util\");\n// tslint:disable-next-line:no-var-requires\nconst canonicalizeJson = require('canonicalize');\n/**\n * Parses JSON-LD contexts.\n */\nclass ContextParser {\n constructor(options) {\n options = options || {};\n this.documentLoader = options.documentLoader || new FetchDocumentLoader_1.FetchDocumentLoader();\n this.documentCache = {};\n this.validateContext = !options.skipValidation;\n this.expandContentTypeToBase = !!options.expandContentTypeToBase;\n this.remoteContextsDepthLimit = options.remoteContextsDepthLimit || 32;\n this.redirectSchemaOrgHttps = 'redirectSchemaOrgHttps' in options ? !!options.redirectSchemaOrgHttps : true;\n }\n /**\n * Validate the given @language value.\n * An error will be thrown if it is invalid.\n * @param value An @language value.\n * @param {boolean} strictRange If the string value should be strictly checked against a regex.\n * @param {string} errorCode The error code to emit on errors.\n * @return {boolean} If validation passed.\n * Can only be false if strictRange is false and the string value did not pass the regex.\n */\n static validateLanguage(value, strictRange, errorCode) {\n if (typeof value !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`The value of an '@language' must be a string, got '${JSON.stringify(value)}'`, errorCode);\n }\n if (!Util_1.Util.REGEX_LANGUAGE_TAG.test(value)) {\n if (strictRange) {\n throw new ErrorCoded_1.ErrorCoded(`The value of an '@language' must be a valid language tag, got '${JSON.stringify(value)}'`, errorCode);\n }\n else {\n return false;\n }\n }\n return true;\n }\n /**\n * Validate the given @direction value.\n * An error will be thrown if it is invalid.\n * @param value An @direction value.\n * @param {boolean} strictValues If the string value should be strictly checked against a regex.\n * @return {boolean} If validation passed.\n * Can only be false if strictRange is false and the string value did not pass the regex.\n */\n static validateDirection(value, strictValues) {\n if (typeof value !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`The value of an '@direction' must be a string, got '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_BASE_DIRECTION);\n }\n if (!Util_1.Util.REGEX_DIRECTION_TAG.test(value)) {\n if (strictValues) {\n throw new ErrorCoded_1.ErrorCoded(`The value of an '@direction' must be 'ltr' or 'rtl', got '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_BASE_DIRECTION);\n }\n else {\n return false;\n }\n }\n return true;\n }\n /**\n * Add an @id term for all @reverse terms.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @return {IJsonLdContextNormalizedRaw} The mutated input context.\n */\n idifyReverseTerms(context) {\n for (const key of Object.keys(context)) {\n const value = context[key];\n if (value && typeof value === 'object') {\n if (value['@reverse'] && !value['@id']) {\n if (typeof value['@reverse'] !== 'string' || Util_1.Util.isValidKeyword(value['@reverse'])) {\n throw new ErrorCoded_1.ErrorCoded(`Invalid @reverse value, must be absolute IRI or blank node: '${value['@reverse']}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n value['@id'] = value['@reverse'];\n if (Util_1.Util.isPotentialKeyword(value['@reverse'])) {\n delete value['@reverse'];\n }\n else {\n value['@reverse'] = true;\n }\n }\n }\n }\n return context;\n }\n /**\n * Expand all prefixed terms in the given context.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {boolean} expandContentTypeToBase If @type inside the context may be expanded\n * via @base if @vocab is set to null.\n */\n expandPrefixedTerms(context, expandContentTypeToBase) {\n const contextRaw = context.getContextRaw();\n for (const key of Object.keys(contextRaw)) {\n // Only expand allowed keys\n if (Util_1.Util.EXPAND_KEYS_BLACKLIST.indexOf(key) < 0 && !Util_1.Util.isReservedInternalKeyword(key)) {\n // Error if we try to alias a keyword to something else.\n const keyValue = contextRaw[key];\n if (Util_1.Util.isPotentialKeyword(key) && Util_1.Util.ALIAS_DOMAIN_BLACKLIST.indexOf(key) >= 0) {\n if (key !== '@type' || typeof contextRaw[key] === 'object'\n && !(contextRaw[key]['@protected'] || contextRaw[key]['@container'] === '@set')) {\n throw new ErrorCoded_1.ErrorCoded(`Keywords can not be aliased to something else.\nTried mapping ${key} to ${JSON.stringify(keyValue)}`, ErrorCoded_1.ERROR_CODES.KEYWORD_REDEFINITION);\n }\n }\n // Error if we try to alias to an illegal keyword\n if (Util_1.Util.ALIAS_RANGE_BLACKLIST.indexOf(Util_1.Util.getContextValueId(keyValue)) >= 0) {\n throw new ErrorCoded_1.ErrorCoded(`Aliasing to certain keywords is not allowed.\nTried mapping ${key} to ${JSON.stringify(keyValue)}`, ErrorCoded_1.ERROR_CODES.INVALID_KEYWORD_ALIAS);\n }\n // Error if this term was marked as prefix as well\n if (keyValue && Util_1.Util.isPotentialKeyword(Util_1.Util.getContextValueId(keyValue))\n && keyValue['@prefix'] === true) {\n throw new ErrorCoded_1.ErrorCoded(`Tried to use keyword aliases as prefix: '${key}': '${JSON.stringify(keyValue)}'`, ErrorCoded_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n // Loop because prefixes might be nested\n while (Util_1.Util.isPrefixValue(contextRaw[key])) {\n const value = contextRaw[key];\n let changed = false;\n if (typeof value === 'string') {\n contextRaw[key] = context.expandTerm(value, true);\n changed = changed || value !== contextRaw[key];\n }\n else {\n const id = value['@id'];\n const type = value['@type'];\n // If @id is missing, don't allow @id to be added if @prefix: true and key not being a valid IRI.\n const canAddIdEntry = !('@prefix' in value) || Util_1.Util.isValidIri(key);\n if ('@id' in value) {\n // Use @id value for expansion\n if (id !== undefined && id !== null && typeof id === 'string') {\n contextRaw[key]['@id'] = context.expandTerm(id, true);\n changed = changed || id !== contextRaw[key]['@id'];\n }\n }\n else if (!Util_1.Util.isPotentialKeyword(key) && canAddIdEntry) {\n // Add an explicit @id value based on the expanded key value\n const newId = context.expandTerm(key, true);\n if (newId !== key) {\n // Don't set @id if expansion failed\n contextRaw[key]['@id'] = newId;\n changed = true;\n }\n }\n if (type && typeof type === 'string' && type !== '@vocab'\n && (!value['@container'] || !value['@container']['@type'])\n && canAddIdEntry) {\n // First check @vocab, then fallback to @base\n contextRaw[key]['@type'] = context.expandTerm(type, true);\n if (expandContentTypeToBase && type === contextRaw[key]['@type']) {\n contextRaw[key]['@type'] = context.expandTerm(type, false);\n }\n changed = changed || type !== contextRaw[key]['@type'];\n }\n }\n if (!changed) {\n break;\n }\n }\n }\n }\n }\n /**\n * Normalize the @language entries in the given context to lowercase.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {IParseOptions} parseOptions The parsing options.\n */\n normalize(context, { processingMode, normalizeLanguageTags }) {\n // Lowercase language keys in 1.0\n if (normalizeLanguageTags || processingMode === 1.0) {\n for (const key of Object.keys(context)) {\n if (key === '@language' && typeof context[key] === 'string') {\n context[key] = context[key].toLowerCase();\n }\n else {\n const value = context[key];\n if (value && typeof value === 'object') {\n if (typeof value['@language'] === 'string') {\n value['@language'] = value['@language'].toLowerCase();\n }\n }\n }\n }\n }\n }\n /**\n * Convert all @container strings and array values to hash-based values.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n */\n containersToHash(context) {\n for (const key of Object.keys(context)) {\n const value = context[key];\n if (value && typeof value === 'object') {\n if (typeof value['@container'] === 'string') {\n value['@container'] = { [value['@container']]: true };\n }\n else if (Array.isArray(value['@container'])) {\n const newValue = {};\n for (const containerValue of value['@container']) {\n newValue[containerValue] = true;\n }\n value['@container'] = newValue;\n }\n }\n }\n }\n /**\n * Normalize and apply context-levevl @protected terms onto each term separately.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {number} processingMode The processing mode.\n */\n applyScopedProtected(context, { processingMode }) {\n if (processingMode && processingMode >= 1.1) {\n if (context['@protected']) {\n for (const key of Object.keys(context)) {\n if (Util_1.Util.isReservedInternalKeyword(key)) {\n continue;\n }\n if (!Util_1.Util.isPotentialKeyword(key) && !Util_1.Util.isTermProtected(context, key)) {\n const value = context[key];\n if (value && typeof value === 'object') {\n if (!('@protected' in context[key])) {\n // Mark terms with object values as protected if they don't have an @protected: false annotation\n context[key]['@protected'] = true;\n }\n }\n else {\n // Convert string-based term values to object-based values with @protected: true\n context[key] = {\n '@id': value,\n '@protected': true,\n };\n }\n }\n }\n delete context['@protected'];\n }\n }\n }\n /**\n * Check if the given context inheritance does not contain any overrides of protected terms.\n * @param {IJsonLdContextNormalizedRaw} contextBefore The context that may contain some protected terms.\n * @param {IJsonLdContextNormalizedRaw} contextAfter A new context that is being applied on the first one.\n * @param {IExpandOptions} expandOptions Options that are needed for any expansions during this validation.\n */\n validateKeywordRedefinitions(contextBefore, contextAfter, expandOptions) {\n for (const key of Object.keys(contextAfter)) {\n if (Util_1.Util.isTermProtected(contextBefore, key)) {\n // The entry in the context before will always be in object-mode\n // If the new entry is in string-mode, convert it to object-mode\n // before checking if it is identical.\n if (typeof contextAfter[key] === 'string') {\n const isPrefix = Util_1.Util.isSimpleTermDefinitionPrefix(contextAfter[key], expandOptions);\n contextAfter[key] = { '@id': contextAfter[key] };\n // If the simple term def was a prefix, explicitly mark the term as a prefix in the expanded term definition,\n // because otherwise we loose this information due to JSON-LD interpreting prefixes differently\n // in simple vs expanded term definitions.\n if (isPrefix) {\n contextAfter[key]['@prefix'] = true;\n contextBefore[key]['@prefix'] = true; // Also on before, to make sure the next step still considers them ==\n }\n }\n // Convert term values to strings for each comparison\n const valueBefore = canonicalizeJson(contextBefore[key]);\n // We modify this deliberately,\n // as we need it for the value comparison (they must be identical modulo '@protected')),\n // and for the fact that this new value will override the first one.\n contextAfter[key]['@protected'] = true;\n const valueAfter = canonicalizeJson(contextAfter[key]);\n // Error if they are not identical\n if (valueBefore !== valueAfter) {\n throw new ErrorCoded_1.ErrorCoded(`Attempted to override the protected keyword ${key} from ${JSON.stringify(Util_1.Util.getContextValueId(contextBefore[key]))} to ${JSON.stringify(Util_1.Util.getContextValueId(contextAfter[key]))}`, ErrorCoded_1.ERROR_CODES.PROTECTED_TERM_REDEFINITION);\n }\n }\n }\n }\n /**\n * Validate the entries of the given context.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {IParseOptions} options The parse options.\n */\n validate(context, { processingMode }) {\n for (const key of Object.keys(context)) {\n // Ignore reserved internal keywords.\n if (Util_1.Util.isReservedInternalKeyword(key)) {\n continue;\n }\n // Do not allow empty term\n if (key === '') {\n throw new ErrorCoded_1.ErrorCoded(`The empty term is not allowed, got: '${key}': '${JSON.stringify(context[key])}'`, ErrorCoded_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n const value = context[key];\n const valueType = typeof value;\n // First check if the key is a keyword\n if (Util_1.Util.isPotentialKeyword(key)) {\n switch (key.substr(1)) {\n case 'vocab':\n if (value !== null && valueType !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid @vocab IRI: ${value}`, ErrorCoded_1.ERROR_CODES.INVALID_VOCAB_MAPPING);\n }\n break;\n case 'base':\n if (value !== null && valueType !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid @base IRI: ${context[key]}`, ErrorCoded_1.ERROR_CODES.INVALID_BASE_IRI);\n }\n break;\n case 'language':\n if (value !== null) {\n ContextParser.validateLanguage(value, true, ErrorCoded_1.ERROR_CODES.INVALID_DEFAULT_LANGUAGE);\n }\n break;\n case 'version':\n if (value !== null && valueType !== 'number') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid @version number: ${value}`, ErrorCoded_1.ERROR_CODES.INVALID_VERSION_VALUE);\n }\n break;\n case 'direction':\n if (value !== null) {\n ContextParser.validateDirection(value, true);\n }\n break;\n case 'propagate':\n if (processingMode === 1.0) {\n throw new ErrorCoded_1.ErrorCoded(`Found an illegal @propagate keyword: ${value}`, ErrorCoded_1.ERROR_CODES.INVALID_CONTEXT_ENTRY);\n }\n if (value !== null && valueType !== 'boolean') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid @propagate value: ${value}`, ErrorCoded_1.ERROR_CODES.INVALID_PROPAGATE_VALUE);\n }\n break;\n }\n // Don't allow keywords to be overridden\n if (Util_1.Util.isValidKeyword(key) && Util_1.Util.isValidKeyword(Util_1.Util.getContextValueId(value))) {\n throw new ErrorCoded_1.ErrorCoded(`Illegal keyword alias in term value, found: '${key}': '${Util_1.Util\n .getContextValueId(value)}'`, ErrorCoded_1.ERROR_CODES.KEYWORD_REDEFINITION);\n }\n continue;\n }\n // Otherwise, consider the key a term\n if (value !== null) {\n switch (valueType) {\n case 'string':\n if (Util_1.Util.getPrefix(value, context) === key) {\n throw new ErrorCoded_1.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${key}': '${JSON\n .stringify(value)}'`, ErrorCoded_1.ERROR_CODES.CYCLIC_IRI_MAPPING);\n }\n if (Util_1.Util.isValidIriWeak(key)) {\n if (value === '@type') {\n throw new ErrorCoded_1.ErrorCoded(`IRIs can not be mapped to @type, found: '${key}': '${value}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n else if (Util_1.Util.isValidIri(value) && value !== new JsonLdContextNormalized_1.JsonLdContextNormalized(context).expandTerm(key)) {\n throw new ErrorCoded_1.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${key}': '${value}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n }\n break;\n case 'object':\n if (!Util_1.Util.isCompactIri(key) && !('@id' in value)\n && (value['@type'] === '@id' ? !context['@base'] : !context['@vocab'])) {\n throw new ErrorCoded_1.ErrorCoded(`Missing @id in context entry: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n for (const objectKey of Object.keys(value)) {\n const objectValue = value[objectKey];\n if (!objectValue) {\n continue;\n }\n switch (objectKey) {\n case '@id':\n if (Util_1.Util.isValidKeyword(objectValue)\n && objectValue !== '@type' && objectValue !== '@id' && objectValue !== '@graph' && objectValue !== '@nest') {\n throw new ErrorCoded_1.ErrorCoded(`Illegal keyword alias in term value, found: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n if (Util_1.Util.isValidIriWeak(key)) {\n if (objectValue === '@type') {\n throw new ErrorCoded_1.ErrorCoded(`IRIs can not be mapped to @type, found: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n else if (Util_1.Util.isValidIri(objectValue)\n && objectValue !== new JsonLdContextNormalized_1.JsonLdContextNormalized(context).expandTerm(key)) {\n throw new ErrorCoded_1.ErrorCoded(`IRIs can not be mapped to other IRIs, found: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n }\n if (typeof objectValue !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`Detected non-string @id in context entry: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n if (Util_1.Util.getPrefix(objectValue, context) === key) {\n throw new ErrorCoded_1.ErrorCoded(`Detected cyclical IRI mapping in context entry: '${key}': '${JSON\n .stringify(value)}'`, ErrorCoded_1.ERROR_CODES.CYCLIC_IRI_MAPPING);\n }\n break;\n case '@type':\n if (value['@container'] === '@type' && objectValue !== '@id' && objectValue !== '@vocab') {\n throw new ErrorCoded_1.ErrorCoded(`@container: @type only allows @type: @id or @vocab, but got: '${key}': '${objectValue}'`, ErrorCoded_1.ERROR_CODES.INVALID_TYPE_MAPPING);\n }\n if (typeof objectValue !== 'string') {\n throw new ErrorCoded_1.ErrorCoded(`The value of an '@type' must be a string, got '${JSON.stringify(valueType)}'`, ErrorCoded_1.ERROR_CODES.INVALID_TYPE_MAPPING);\n }\n if (objectValue !== '@id' && objectValue !== '@vocab'\n && (processingMode === 1.0 || objectValue !== '@json')\n && (processingMode === 1.0 || objectValue !== '@none')\n && (objectValue[0] === '_' || !Util_1.Util.isValidIri(objectValue))) {\n throw new ErrorCoded_1.ErrorCoded(`A context @type must be an absolute IRI, found: '${key}': '${objectValue}'`, ErrorCoded_1.ERROR_CODES.INVALID_TYPE_MAPPING);\n }\n break;\n case '@reverse':\n if (typeof objectValue === 'string' && value['@id'] && value['@id'] !== objectValue) {\n throw new ErrorCoded_1.ErrorCoded(`Found non-matching @id and @reverse term values in '${key}':\\\n'${objectValue}' and '${value['@id']}'`, ErrorCoded_1.ERROR_CODES.INVALID_REVERSE_PROPERTY);\n }\n if ('@nest' in value) {\n throw new ErrorCoded_1.ErrorCoded(`@nest is not allowed in the reverse property '${key}'`, ErrorCoded_1.ERROR_CODES.INVALID_REVERSE_PROPERTY);\n }\n break;\n case '@container':\n if (processingMode === 1.0) {\n if (Object.keys(objectValue).length > 1\n || Util_1.Util.CONTAINERS_1_0.indexOf(Object.keys(objectValue)[0]) < 0) {\n throw new ErrorCoded_1.ErrorCoded(`Invalid term @container for '${key}' ('${Object.keys(objectValue)}') in 1.0, \\\nmust be only one of ${Util_1.Util.CONTAINERS_1_0.join(', ')}`, ErrorCoded_1.ERROR_CODES.INVALID_CONTAINER_MAPPING);\n }\n }\n for (const containerValue of Object.keys(objectValue)) {\n if (containerValue === '@list' && value['@reverse']) {\n throw new ErrorCoded_1.ErrorCoded(`Term value can not be @container: @list and @reverse at the same time on '${key}'`, ErrorCoded_1.ERROR_CODES.INVALID_REVERSE_PROPERTY);\n }\n if (Util_1.Util.CONTAINERS.indexOf(containerValue) < 0) {\n throw new ErrorCoded_1.ErrorCoded(`Invalid term @container for '${key}' ('${containerValue}'), \\\nmust be one of ${Util_1.Util.CONTAINERS.join(', ')}`, ErrorCoded_1.ERROR_CODES.INVALID_CONTAINER_MAPPING);\n }\n }\n break;\n case '@language':\n ContextParser.validateLanguage(objectValue, true, ErrorCoded_1.ERROR_CODES.INVALID_LANGUAGE_MAPPING);\n break;\n case '@direction':\n ContextParser.validateDirection(objectValue, true);\n break;\n case '@prefix':\n if (objectValue !== null && typeof objectValue !== 'boolean') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid term @prefix boolean in: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_PREFIX_VALUE);\n }\n if (!('@id' in value) && !Util_1.Util.isValidIri(key)) {\n throw new ErrorCoded_1.ErrorCoded(`Invalid @prefix definition for '${key}' ('${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n break;\n case '@index':\n if (processingMode === 1.0 || !value['@container'] || !value['@container']['@index']) {\n throw new ErrorCoded_1.ErrorCoded(`Attempt to add illegal key to value object: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n break;\n case '@nest':\n if (Util_1.Util.isPotentialKeyword(objectValue) && objectValue !== '@nest') {\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid term @nest value in: '${key}': '${JSON.stringify(value)}'`, ErrorCoded_1.ERROR_CODES.INVALID_NEST_VALUE);\n }\n }\n }\n break;\n default:\n throw new ErrorCoded_1.ErrorCoded(`Found an invalid term value: '${key}': '${value}'`, ErrorCoded_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n }\n }\n }\n /**\n * Apply the @base context entry to the given context under certain circumstances.\n * @param context A context.\n * @param options Parsing options.\n * @param inheritFromParent If the @base value from the parent context can be inherited.\n * @return The given context.\n */\n applyBaseEntry(context, options, inheritFromParent) {\n // In some special cases, this can be a string, so ignore those.\n if (typeof context === 'string') {\n return context;\n }\n // Give priority to @base in the parent context\n if (inheritFromParent && !('@base' in context) && options.parentContext\n && typeof options.parentContext === 'object' && '@base' in options.parentContext) {\n context['@base'] = options.parentContext['@base'];\n if (options.parentContext['@__baseDocument']) {\n context['@__baseDocument'] = true;\n }\n }\n // Override the base IRI if provided.\n if (options.baseIRI && !options.external) {\n if (!('@base' in context)) {\n // The context base is the document base\n context['@base'] = options.baseIRI;\n context['@__baseDocument'] = true;\n }\n else if (context['@base'] !== null && typeof context['@base'] === 'string'\n && !Util_1.Util.isValidIri(context['@base'])) {\n // The context base is relative to the document base\n context['@base'] = (0, relative_to_absolute_iri_1.resolve)(context['@base'], options.parentContext && options.parentContext['@base'] || options.baseIRI);\n }\n }\n return context;\n }\n /**\n * Resolve relative context IRIs, or return full IRIs as-is.\n * @param {string} contextIri A context IRI.\n * @param {string} baseIRI A base IRI.\n * @return {string} The normalized context IRI.\n */\n normalizeContextIri(contextIri, baseIRI) {\n if (!Util_1.Util.isValidIri(contextIri)) {\n try {\n contextIri = (0, relative_to_absolute_iri_1.resolve)(contextIri, baseIRI);\n }\n catch (_a) {\n throw new Error(`Invalid context IRI: ${contextIri}`);\n }\n }\n // TODO: Temporary workaround for fixing schema.org CORS issues (https://github.com/schemaorg/schemaorg/issues/2578#issuecomment-652324465)\n if (this.redirectSchemaOrgHttps && contextIri.startsWith('http://schema.org')) {\n contextIri = 'https://schema.org/';\n }\n return contextIri;\n }\n /**\n * Parse scoped contexts in the given context.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {IParseOptions} options Parsing options.\n * @return {IJsonLdContextNormalizedRaw} The mutated input context.\n */\n async parseInnerContexts(context, options) {\n for (const key of Object.keys(context)) {\n const value = context[key];\n if (value && typeof value === 'object') {\n if ('@context' in value && value['@context'] !== null && !options.ignoreScopedContexts) {\n // Simulate a processing based on the parent context to check if there are any (potential errors).\n // Honestly, I find it a bit weird to do this here, as the context may be unused,\n // and the final effective context may differ based on any other embedded/scoped contexts.\n // But hey, it's part of the spec, so we have no choice...\n // https://w3c.github.io/json-ld-api/#h-note-10\n if (this.validateContext) {\n try {\n const parentContext = Object.assign({}, context);\n parentContext[key] = Object.assign({}, parentContext[key]);\n delete parentContext[key]['@context'];\n await this.parse(value['@context'], Object.assign(Object.assign({}, options), { external: false, parentContext, ignoreProtection: true, ignoreRemoteScopedContexts: true, ignoreScopedContexts: true }));\n }\n catch (e) {\n throw new ErrorCoded_1.ErrorCoded(e.message, ErrorCoded_1.ERROR_CODES.INVALID_SCOPED_CONTEXT);\n }\n }\n value['@context'] = (await this.parse(value['@context'], Object.assign(Object.assign({}, options), { external: false, minimalProcessing: true, ignoreRemoteScopedContexts: true, parentContext: context })))\n .getContextRaw();\n }\n }\n }\n return context;\n }\n /**\n * Parse a JSON-LD context in any form.\n * @param {JsonLdContext} context A context, URL to a context, or an array of contexts/URLs.\n * @param {IParseOptions} options Optional parsing options.\n * @return {Promise} A promise resolving to the context.\n */\n async parse(context, options = {}) {\n const { baseIRI, parentContext: parentContextInitial, external, processingMode = ContextParser.DEFAULT_PROCESSING_MODE, normalizeLanguageTags, ignoreProtection, minimalProcessing, } = options;\n let parentContext = parentContextInitial;\n const remoteContexts = options.remoteContexts || {};\n // Avoid remote context overflows\n if (Object.keys(remoteContexts).length >= this.remoteContextsDepthLimit) {\n throw new ErrorCoded_1.ErrorCoded('Detected an overflow in remote context inclusions: ' + Object.keys(remoteContexts), ErrorCoded_1.ERROR_CODES.CONTEXT_OVERFLOW);\n }\n if (context === null || context === undefined) {\n // Don't allow context nullification and there are protected terms\n if (!ignoreProtection && parentContext && Util_1.Util.hasProtectedTerms(parentContext)) {\n throw new ErrorCoded_1.ErrorCoded('Illegal context nullification when terms are protected', ErrorCoded_1.ERROR_CODES.INVALID_CONTEXT_NULLIFICATION);\n }\n // Context that are explicitly set to null are empty.\n return new JsonLdContextNormalized_1.JsonLdContextNormalized(this.applyBaseEntry({}, options, false));\n }\n else if (typeof context === 'string') {\n const contextIri = this.normalizeContextIri(context, baseIRI);\n const overriddenLoad = this.getOverriddenLoad(contextIri, options);\n if (overriddenLoad) {\n return new JsonLdContextNormalized_1.JsonLdContextNormalized(overriddenLoad);\n }\n const parsedStringContext = await this.parse(await this.load(contextIri), Object.assign(Object.assign({}, options), { baseIRI: contextIri, external: true, remoteContexts: Object.assign(Object.assign({}, remoteContexts), { [contextIri]: true }) }));\n this.applyBaseEntry(parsedStringContext.getContextRaw(), options, true);\n return parsedStringContext;\n }\n else if (Array.isArray(context)) {\n // As a performance consideration, first load all external contexts in parallel.\n const contextIris = [];\n const contexts = await Promise.all(context.map((subContext, i) => {\n if (typeof subContext === 'string') {\n const contextIri = this.normalizeContextIri(subContext, baseIRI);\n contextIris[i] = contextIri;\n const overriddenLoad = this.getOverriddenLoad(contextIri, options);\n if (overriddenLoad) {\n return overriddenLoad;\n }\n return this.load(contextIri);\n }\n else {\n return subContext;\n }\n }));\n // Don't apply inheritance logic on minimal processing\n if (minimalProcessing) {\n return new JsonLdContextNormalized_1.JsonLdContextNormalized(contexts);\n }\n const reducedContexts = await contexts.reduce((accContextPromise, contextEntry, i) => accContextPromise\n .then((accContext) => this.parse(contextEntry, Object.assign(Object.assign({}, options), { baseIRI: contextIris[i] || options.baseIRI, external: !!contextIris[i] || options.external, parentContext: accContext.getContextRaw(), remoteContexts: contextIris[i] ? Object.assign(Object.assign({}, remoteContexts), { [contextIris[i]]: true }) : remoteContexts }))), Promise.resolve(new JsonLdContextNormalized_1.JsonLdContextNormalized(parentContext || {})));\n // Override the base IRI if provided.\n this.applyBaseEntry(reducedContexts.getContextRaw(), options, true);\n return reducedContexts;\n }\n else if (typeof context === 'object') {\n if ('@context' in context) {\n return await this.parse(context['@context'], options);\n }\n // Make a deep clone of the given context, to avoid modifying it.\n context = JSON.parse(JSON.stringify(context)); // No better way in JS at the moment.\n if (parentContext && !minimalProcessing) {\n parentContext = JSON.parse(JSON.stringify(parentContext));\n }\n // We have an actual context object.\n let newContext = {};\n // According to the JSON-LD spec, @base must be ignored from external contexts.\n if (external) {\n delete context['@base'];\n }\n // Override the base IRI if provided.\n this.applyBaseEntry(context, options, true);\n // Hashify container entries\n // Do this before protected term validation as that influences term format\n this.containersToHash(context);\n // Don't perform any other modifications if only minimal processing is needed.\n if (minimalProcessing) {\n return new JsonLdContextNormalized_1.JsonLdContextNormalized(context);\n }\n // In JSON-LD 1.1, load @import'ed context prior to processing.\n let importContext = {};\n if ('@import' in context) {\n if (processingMode >= 1.1) {\n // Only accept string values\n if (typeof context['@import'] !== 'string') {\n throw new ErrorCoded_1.ErrorCoded('An @import value must be a string, but got ' + typeof context['@import'], ErrorCoded_1.ERROR_CODES.INVALID_IMPORT_VALUE);\n }\n // Load context\n importContext = await this.loadImportContext(this.normalizeContextIri(context['@import'], baseIRI));\n delete context['@import'];\n }\n else {\n throw new ErrorCoded_1.ErrorCoded('Context importing is not supported in JSON-LD 1.0', ErrorCoded_1.ERROR_CODES.INVALID_CONTEXT_ENTRY);\n }\n }\n // Merge different parts of the final context in order\n newContext = Object.assign(Object.assign(Object.assign(Object.assign({}, newContext), (typeof parentContext === 'object' ? parentContext : {})), importContext), context);\n const newContextWrapped = new JsonLdContextNormalized_1.JsonLdContextNormalized(newContext);\n // Parse inner contexts with minimal processing\n await this.parseInnerContexts(newContext, options);\n // In JSON-LD 1.1, @vocab can be relative to @vocab in the parent context, or a compact IRI.\n if ((newContext && newContext['@version'] || ContextParser.DEFAULT_PROCESSING_MODE) >= 1.1\n && ((context['@vocab'] && typeof context['@vocab'] === 'string') || context['@vocab'] === '')) {\n if (parentContext && '@vocab' in parentContext && context['@vocab'].indexOf(':') < 0) {\n newContext['@vocab'] = parentContext['@vocab'] + context['@vocab'];\n }\n else {\n if (Util_1.Util.isCompactIri(context['@vocab']) || context['@vocab'] in newContextWrapped.getContextRaw()) {\n // @vocab is a compact IRI or refers exactly to a prefix\n newContext['@vocab'] = newContextWrapped.expandTerm(context['@vocab'], true);\n }\n }\n }\n // Handle terms (before protection checks)\n this.idifyReverseTerms(newContext);\n this.expandPrefixedTerms(newContextWrapped, this.expandContentTypeToBase);\n // In JSON-LD 1.1, check if we are not redefining any protected keywords\n if (!ignoreProtection && parentContext && processingMode >= 1.1) {\n this.validateKeywordRedefinitions(parentContext, newContext, exports.defaultExpandOptions);\n }\n this.normalize(newContext, { processingMode, normalizeLanguageTags });\n this.applyScopedProtected(newContext, { processingMode });\n if (this.validateContext) {\n this.validate(newContext, { processingMode });\n }\n return newContextWrapped;\n }\n else {\n throw new ErrorCoded_1.ErrorCoded(`Tried parsing a context that is not a string, array or object, but got ${context}`, ErrorCoded_1.ERROR_CODES.INVALID_LOCAL_CONTEXT);\n }\n }\n /**\n * Fetch the given URL as a raw JSON-LD context.\n * @param url An URL.\n * @return A promise resolving to a raw JSON-LD context.\n */\n async load(url) {\n // First try to retrieve the context from cache\n const cached = this.documentCache[url];\n if (cached) {\n return typeof cached === 'string' ? cached : Array.isArray(cached) ? cached.slice() : Object.assign({}, cached);\n }\n // If not in cache, load it\n let document;\n try {\n document = await this.documentLoader.load(url);\n }\n catch (e) {\n throw new ErrorCoded_1.ErrorCoded(`Failed to load remote context ${url}: ${e.message}`, ErrorCoded_1.ERROR_CODES.LOADING_REMOTE_CONTEXT_FAILED);\n }\n // Validate the context\n if (!('@context' in document)) {\n throw new ErrorCoded_1.ErrorCoded(`Missing @context in remote context at ${url}`, ErrorCoded_1.ERROR_CODES.INVALID_REMOTE_CONTEXT);\n }\n return this.documentCache[url] = document['@context'];\n }\n /**\n * Override the given context that may be loaded.\n *\n * This will check whether or not the url is recursively being loaded.\n * @param url An URL.\n * @param options Parsing options.\n * @return An overridden context, or null.\n * Optionally an error can be thrown if a cyclic context is detected.\n */\n getOverriddenLoad(url, options) {\n if (url in (options.remoteContexts || {})) {\n if (options.ignoreRemoteScopedContexts) {\n return url;\n }\n else {\n throw new ErrorCoded_1.ErrorCoded('Detected a cyclic context inclusion of ' + url, ErrorCoded_1.ERROR_CODES.RECURSIVE_CONTEXT_INCLUSION);\n }\n }\n return null;\n }\n /**\n * Load an @import'ed context.\n * @param importContextIri The full URI of an @import value.\n */\n async loadImportContext(importContextIri) {\n // Load the context\n const importContext = await this.load(importContextIri);\n // Require the context to be a non-array object\n if (typeof importContext !== 'object' || Array.isArray(importContext)) {\n throw new ErrorCoded_1.ErrorCoded('An imported context must be a single object: ' + importContextIri, ErrorCoded_1.ERROR_CODES.INVALID_REMOTE_CONTEXT);\n }\n // Error if the context contains another @import\n if ('@import' in importContext) {\n throw new ErrorCoded_1.ErrorCoded('An imported context can not import another context: ' + importContextIri, ErrorCoded_1.ERROR_CODES.INVALID_CONTEXT_ENTRY);\n }\n // Containers have to be converted into hash values the same way as for the importing context\n // Otherwise context validation will fail for container values\n this.containersToHash(importContext);\n return importContext;\n }\n}\nexports.ContextParser = ContextParser;\nContextParser.DEFAULT_PROCESSING_MODE = 1.1;\nexports.defaultExpandOptions = {\n allowPrefixForcing: true,\n allowPrefixNonGenDelims: false,\n allowVocabRelativeToBase: true,\n};\n//# sourceMappingURL=ContextParser.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ERROR_CODES = exports.ErrorCoded = void 0;\n/**\n * An error that has a certain error code.\n *\n * The error code can be any string.\n * All standardized error codes are listed in {@link ERROR_CODES}.\n */\nclass ErrorCoded extends Error {\n /* istanbul ignore next */\n constructor(message, code) {\n super(message);\n this.code = code;\n }\n}\nexports.ErrorCoded = ErrorCoded;\n/**\n * All standardized JSON-LD error codes.\n * @see https://w3c.github.io/json-ld-api/#dom-jsonlderrorcode\n */\n// tslint:disable:object-literal-sort-keys\nvar ERROR_CODES;\n(function (ERROR_CODES) {\n ERROR_CODES[\"COLLIDING_KEYWORDS\"] = \"colliding keywords\";\n ERROR_CODES[\"CONFLICTING_INDEXES\"] = \"conflicting indexes\";\n ERROR_CODES[\"CYCLIC_IRI_MAPPING\"] = \"cyclic IRI mapping\";\n ERROR_CODES[\"INVALID_ID_VALUE\"] = \"invalid @id value\";\n ERROR_CODES[\"INVALID_INDEX_VALUE\"] = \"invalid @index value\";\n ERROR_CODES[\"INVALID_NEST_VALUE\"] = \"invalid @nest value\";\n ERROR_CODES[\"INVALID_PREFIX_VALUE\"] = \"invalid @prefix value\";\n ERROR_CODES[\"INVALID_PROPAGATE_VALUE\"] = \"invalid @propagate value\";\n ERROR_CODES[\"INVALID_REVERSE_VALUE\"] = \"invalid @reverse value\";\n ERROR_CODES[\"INVALID_IMPORT_VALUE\"] = \"invalid @import value\";\n ERROR_CODES[\"INVALID_VERSION_VALUE\"] = \"invalid @version value\";\n ERROR_CODES[\"INVALID_BASE_IRI\"] = \"invalid base IRI\";\n ERROR_CODES[\"INVALID_CONTAINER_MAPPING\"] = \"invalid container mapping\";\n ERROR_CODES[\"INVALID_CONTEXT_ENTRY\"] = \"invalid context entry\";\n ERROR_CODES[\"INVALID_CONTEXT_NULLIFICATION\"] = \"invalid context nullification\";\n ERROR_CODES[\"INVALID_DEFAULT_LANGUAGE\"] = \"invalid default language\";\n ERROR_CODES[\"INVALID_INCLUDED_VALUE\"] = \"invalid @included value\";\n ERROR_CODES[\"INVALID_IRI_MAPPING\"] = \"invalid IRI mapping\";\n ERROR_CODES[\"INVALID_JSON_LITERAL\"] = \"invalid JSON literal\";\n ERROR_CODES[\"INVALID_KEYWORD_ALIAS\"] = \"invalid keyword alias\";\n ERROR_CODES[\"INVALID_LANGUAGE_MAP_VALUE\"] = \"invalid language map value\";\n ERROR_CODES[\"INVALID_LANGUAGE_MAPPING\"] = \"invalid language mapping\";\n ERROR_CODES[\"INVALID_LANGUAGE_TAGGED_STRING\"] = \"invalid language-tagged string\";\n ERROR_CODES[\"INVALID_LANGUAGE_TAGGED_VALUE\"] = \"invalid language-tagged value\";\n ERROR_CODES[\"INVALID_LOCAL_CONTEXT\"] = \"invalid local context\";\n ERROR_CODES[\"INVALID_REMOTE_CONTEXT\"] = \"invalid remote context\";\n ERROR_CODES[\"INVALID_REVERSE_PROPERTY\"] = \"invalid reverse property\";\n ERROR_CODES[\"INVALID_REVERSE_PROPERTY_MAP\"] = \"invalid reverse property map\";\n ERROR_CODES[\"INVALID_REVERSE_PROPERTY_VALUE\"] = \"invalid reverse property value\";\n ERROR_CODES[\"INVALID_SCOPED_CONTEXT\"] = \"invalid scoped context\";\n ERROR_CODES[\"INVALID_SCRIPT_ELEMENT\"] = \"invalid script element\";\n ERROR_CODES[\"INVALID_SET_OR_LIST_OBJECT\"] = \"invalid set or list object\";\n ERROR_CODES[\"INVALID_TERM_DEFINITION\"] = \"invalid term definition\";\n ERROR_CODES[\"INVALID_TYPE_MAPPING\"] = \"invalid type mapping\";\n ERROR_CODES[\"INVALID_TYPE_VALUE\"] = \"invalid type value\";\n ERROR_CODES[\"INVALID_TYPED_VALUE\"] = \"invalid typed value\";\n ERROR_CODES[\"INVALID_VALUE_OBJECT\"] = \"invalid value object\";\n ERROR_CODES[\"INVALID_VALUE_OBJECT_VALUE\"] = \"invalid value object value\";\n ERROR_CODES[\"INVALID_VOCAB_MAPPING\"] = \"invalid vocab mapping\";\n ERROR_CODES[\"IRI_CONFUSED_WITH_PREFIX\"] = \"IRI confused with prefix\";\n ERROR_CODES[\"KEYWORD_REDEFINITION\"] = \"keyword redefinition\";\n ERROR_CODES[\"LOADING_DOCUMENT_FAILED\"] = \"loading document failed\";\n ERROR_CODES[\"LOADING_REMOTE_CONTEXT_FAILED\"] = \"loading remote context failed\";\n ERROR_CODES[\"MULTIPLE_CONTEXT_LINK_HEADERS\"] = \"multiple context link headers\";\n ERROR_CODES[\"PROCESSING_MODE_CONFLICT\"] = \"processing mode conflict\";\n ERROR_CODES[\"PROTECTED_TERM_REDEFINITION\"] = \"protected term redefinition\";\n ERROR_CODES[\"CONTEXT_OVERFLOW\"] = \"context overflow\";\n ERROR_CODES[\"INVALID_BASE_DIRECTION\"] = \"invalid base direction\";\n ERROR_CODES[\"RECURSIVE_CONTEXT_INCLUSION\"] = \"recursive context inclusion\";\n ERROR_CODES[\"INVALID_STREAMING_KEY_ORDER\"] = \"invalid streaming key order\";\n /**\n * JSON-LD-star\n */\n ERROR_CODES[\"INVALID_EMBEDDED_NODE\"] = \"invalid embedded node\";\n ERROR_CODES[\"INVALID_ANNOTATION\"] = \"invalid annotation\";\n})(ERROR_CODES = exports.ERROR_CODES || (exports.ERROR_CODES = {}));\n//# sourceMappingURL=ErrorCoded.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.FetchDocumentLoader = void 0;\nrequire(\"cross-fetch/polyfill\");\nconst ErrorCoded_1 = require(\"./ErrorCoded\");\nconst http_link_header_1 = require(\"http-link-header\");\nconst relative_to_absolute_iri_1 = require(\"relative-to-absolute-iri\");\n/**\n * Loads documents via the fetch API.\n */\nclass FetchDocumentLoader {\n constructor(fetcher) {\n this.fetcher = fetcher;\n }\n async load(url) {\n const response = await (this.fetcher || fetch)(url, { headers: new Headers({ accept: 'application/ld+json' }) });\n if (response.ok && response.headers) {\n let mediaType = response.headers.get('Content-Type');\n if (mediaType) {\n const colonPos = mediaType.indexOf(';');\n if (colonPos > 0) {\n mediaType = mediaType.substr(0, colonPos);\n }\n }\n if (mediaType === 'application/ld+json') {\n // Return JSON-LD if proper content type was returned\n return (await response.json());\n }\n else {\n // Check for alternate link for a non-JSON-LD response\n if (response.headers.has('Link')) {\n let alternateUrl;\n response.headers.forEach((value, key) => {\n if (key === 'link') {\n const linkHeader = (0, http_link_header_1.parse)(value);\n for (const link of linkHeader.get('type', 'application/ld+json')) {\n if (link.rel === 'alternate') {\n if (alternateUrl) {\n throw new Error('Multiple JSON-LD alternate links were found on ' + url);\n }\n alternateUrl = (0, relative_to_absolute_iri_1.resolve)(link.uri, url);\n }\n }\n }\n });\n if (alternateUrl) {\n return this.load(alternateUrl);\n }\n }\n throw new ErrorCoded_1.ErrorCoded(`Unsupported JSON-LD media type ${mediaType}`, ErrorCoded_1.ERROR_CODES.LOADING_DOCUMENT_FAILED);\n }\n }\n else {\n throw new Error(response.statusText || `Status code: ${response.status}`);\n }\n }\n}\nexports.FetchDocumentLoader = FetchDocumentLoader;\n//# sourceMappingURL=FetchDocumentLoader.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IDocumentLoader.js.map","\"use strict\";\n// tslint:disable:max-line-length\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=JsonLdContext.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JsonLdContextNormalized = void 0;\nconst relative_to_absolute_iri_1 = require(\"relative-to-absolute-iri\");\nconst ContextParser_1 = require(\"./ContextParser\");\nconst ErrorCoded_1 = require(\"./ErrorCoded\");\nconst Util_1 = require(\"./Util\");\n/**\n * A class exposing operations over a normalized JSON-LD context.\n */\nclass JsonLdContextNormalized {\n constructor(contextRaw) {\n this.contextRaw = contextRaw;\n }\n /**\n * @return The raw inner context.\n */\n getContextRaw() {\n return this.contextRaw;\n }\n /**\n * Expand the term or prefix of the given term if it has one,\n * otherwise return the term as-is.\n *\n * This will try to expand the IRI as much as possible.\n *\n * Iff in vocab-mode, then other references to other terms in the context can be used,\n * such as to `myTerm`:\n * ```\n * {\n * \"myTerm\": \"http://example.org/myLongTerm\"\n * }\n * ```\n *\n * @param {string} term A term that is an URL or a prefixed URL.\n * @param {boolean} expandVocab If the term is a predicate or type and should be expanded based on @vocab,\n * otherwise it is considered a regular term that is expanded based on @base.\n * @param {IExpandOptions} options Options that define the way how expansion must be done.\n * @return {string} The expanded term, the term as-is, or null if it was explicitly disabled in the context.\n * @throws If the term is aliased to an invalid value (not a string, IRI or keyword).\n */\n expandTerm(term, expandVocab, options = ContextParser_1.defaultExpandOptions) {\n const contextValue = this.contextRaw[term];\n // Immediately return if the term was disabled in the context\n if (contextValue === null || (contextValue && contextValue['@id'] === null)) {\n return null;\n }\n // Check the @id\n let validIriMapping = true;\n if (contextValue && expandVocab) {\n const value = Util_1.Util.getContextValueId(contextValue);\n if (value && value !== term) {\n if (typeof value !== 'string' || (!Util_1.Util.isValidIri(value) && !Util_1.Util.isValidKeyword(value))) {\n // Don't mark this mapping as invalid if we have an unknown keyword, but of the correct form.\n if (!Util_1.Util.isPotentialKeyword(value)) {\n validIriMapping = false;\n }\n }\n else {\n return value;\n }\n }\n }\n // Check if the term is prefixed\n const prefix = Util_1.Util.getPrefix(term, this.contextRaw);\n const vocab = this.contextRaw['@vocab'];\n const vocabRelative = (!!vocab || vocab === '') && vocab.indexOf(':') < 0;\n const base = this.contextRaw['@base'];\n const potentialKeyword = Util_1.Util.isPotentialKeyword(term);\n if (prefix) {\n const contextPrefixValue = this.contextRaw[prefix];\n const value = Util_1.Util.getContextValueId(contextPrefixValue);\n if (value) {\n if (typeof contextPrefixValue === 'string' || !options.allowPrefixForcing) {\n // If we have a simple term definition,\n // check the last character of the prefix to determine whether or not it is a prefix.\n // Validate that prefix ends with gen-delim character, unless @prefix is true\n if (!Util_1.Util.isSimpleTermDefinitionPrefix(value, options)) {\n // Treat the term as an absolute IRI\n return term;\n }\n }\n else {\n // If we have an expanded term definition, default to @prefix: false\n if (value[0] !== '_' && !potentialKeyword && !contextPrefixValue['@prefix'] && !(term in this.contextRaw)) {\n // Treat the term as an absolute IRI\n return term;\n }\n }\n return value + term.substr(prefix.length + 1);\n }\n }\n else if (expandVocab && ((vocab || vocab === '') || (options.allowVocabRelativeToBase && (base && vocabRelative)))\n && !potentialKeyword && !Util_1.Util.isCompactIri(term)) {\n if (vocabRelative) {\n if (options.allowVocabRelativeToBase) {\n return ((vocab || base) ? (0, relative_to_absolute_iri_1.resolve)(vocab, base) : '') + term;\n }\n else {\n throw new ErrorCoded_1.ErrorCoded(`Relative vocab expansion for term '${term}' with vocab '${vocab}' is not allowed.`, ErrorCoded_1.ERROR_CODES.INVALID_VOCAB_MAPPING);\n }\n }\n else {\n return vocab + term;\n }\n }\n else if (!expandVocab && base && !potentialKeyword && !Util_1.Util.isCompactIri(term)) {\n return (0, relative_to_absolute_iri_1.resolve)(term, base);\n }\n // Return the term as-is, unless we discovered an invalid IRI mapping for this term in the context earlier.\n if (validIriMapping) {\n return term;\n }\n else {\n throw new ErrorCoded_1.ErrorCoded(`Invalid IRI mapping found for context entry '${term}': '${JSON.stringify(contextValue)}'`, ErrorCoded_1.ERROR_CODES.INVALID_IRI_MAPPING);\n }\n }\n /**\n * Compact the given term using @base, @vocab, an aliased term, or a prefixed term.\n *\n * This will try to compact the IRI as much as possible.\n *\n * @param {string} iri An IRI to compact.\n * @param {boolean} vocab If the term is a predicate or type and should be compacted based on @vocab,\n * otherwise it is considered a regular term that is compacted based on @base.\n * @return {string} The compacted term or the IRI as-is.\n */\n compactIri(iri, vocab) {\n // Try @vocab compacting\n if (vocab && this.contextRaw['@vocab'] && iri.startsWith(this.contextRaw['@vocab'])) {\n return iri.substr(this.contextRaw['@vocab'].length);\n }\n // Try @base compacting\n if (!vocab && this.contextRaw['@base'] && iri.startsWith(this.contextRaw['@base'])) {\n return iri.substr(this.contextRaw['@base'].length);\n }\n // Loop over all terms in the context\n // This will try to prefix as short as possible.\n // Once a fully compacted alias is found, return immediately, as we can not go any shorter.\n const shortestPrefixing = { prefix: '', suffix: iri };\n for (const key in this.contextRaw) {\n const value = this.contextRaw[key];\n if (value && !Util_1.Util.isPotentialKeyword(key)) {\n const contextIri = Util_1.Util.getContextValueId(value);\n if (iri.startsWith(contextIri)) {\n const suffix = iri.substr(contextIri.length);\n if (!suffix) {\n if (vocab) {\n // Immediately return on compacted alias\n return key;\n }\n }\n else if (suffix.length < shortestPrefixing.suffix.length) {\n // Overwrite the shortest prefix\n shortestPrefixing.prefix = key;\n shortestPrefixing.suffix = suffix;\n }\n }\n }\n }\n // Return the shortest prefix\n if (shortestPrefixing.prefix) {\n return shortestPrefixing.prefix + ':' + shortestPrefixing.suffix;\n }\n return iri;\n }\n}\nexports.JsonLdContextNormalized = JsonLdContextNormalized;\n//# sourceMappingURL=JsonLdContextNormalized.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Util = void 0;\nclass Util {\n /**\n * Check if the given term is a valid compact IRI.\n * Otherwise, it may be an IRI.\n * @param {string} term A term.\n * @return {boolean} If it is a compact IRI.\n */\n static isCompactIri(term) {\n return term.indexOf(':') > 0 && !(term && term[0] === '#');\n }\n /**\n * Get the prefix from the given term.\n * @see https://json-ld.org/spec/latest/json-ld/#compact-iris\n * @param {string} term A term that is an URL or a prefixed URL.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @return {string} The prefix or null.\n */\n static getPrefix(term, context) {\n // Do not consider relative IRIs starting with a hash as compact IRIs\n if (term && term[0] === '#') {\n return null;\n }\n const separatorPos = term.indexOf(':');\n if (separatorPos >= 0) {\n // Suffix can not begin with two slashes\n if (term.length > separatorPos + 1\n && term.charAt(separatorPos + 1) === '/'\n && term.charAt(separatorPos + 2) === '/') {\n return null;\n }\n const prefix = term.substr(0, separatorPos);\n // Prefix can not be an underscore (this is a blank node)\n if (prefix === '_') {\n return null;\n }\n // Prefix must match a term in the active context\n if (context[prefix]) {\n return prefix;\n }\n }\n return null;\n }\n /**\n * From a given context entry value, get the string value, or the @id field.\n * @param contextValue A value for a term in a context.\n * @return {string} The id value, or null.\n */\n static getContextValueId(contextValue) {\n if (contextValue === null || typeof contextValue === 'string') {\n return contextValue;\n }\n const id = contextValue['@id'];\n return id ? id : null;\n }\n /**\n * Check if the given simple term definition (string-based value of a context term)\n * should be considered a prefix.\n * @param value A simple term definition value.\n * @param options Options that define the way how expansion must be done.\n */\n static isSimpleTermDefinitionPrefix(value, options) {\n return !Util.isPotentialKeyword(value)\n && (value[0] === '_' || options.allowPrefixNonGenDelims || Util.isPrefixIriEndingWithGenDelim(value));\n }\n /**\n * Check if the given keyword is of the keyword format \"@\"1*ALPHA.\n * @param {string} keyword A potential keyword.\n * @return {boolean} If the given keyword is of the keyword format.\n */\n static isPotentialKeyword(keyword) {\n return typeof keyword === 'string' && Util.KEYWORD_REGEX.test(keyword);\n }\n /**\n * Check if the given prefix ends with a gen-delim character.\n * @param {string} prefixIri A prefix IRI.\n * @return {boolean} If the given prefix IRI is valid.\n */\n static isPrefixIriEndingWithGenDelim(prefixIri) {\n return Util.ENDS_WITH_GEN_DELIM.test(prefixIri);\n }\n /**\n * Check if the given context value can be a prefix value.\n * @param value A context value.\n * @return {boolean} If it can be a prefix value.\n */\n static isPrefixValue(value) {\n return value && (typeof value === 'string' || (value && typeof value === 'object'));\n }\n /**\n * Check if the given IRI is valid.\n * @param {string} iri A potential IRI.\n * @return {boolean} If the given IRI is valid.\n */\n static isValidIri(iri) {\n return Boolean(iri && Util.IRI_REGEX.test(iri));\n }\n /**\n * Check if the given IRI is valid, this includes the possibility of being a relative IRI.\n * @param {string} iri A potential IRI.\n * @return {boolean} If the given IRI is valid.\n */\n static isValidIriWeak(iri) {\n return !!iri && iri[0] !== ':' && Util.IRI_REGEX_WEAK.test(iri);\n }\n /**\n * Check if the given keyword is a defined according to the JSON-LD specification.\n * @param {string} keyword A potential keyword.\n * @return {boolean} If the given keyword is valid.\n */\n static isValidKeyword(keyword) {\n return Util.VALID_KEYWORDS[keyword];\n }\n /**\n * Check if the given term is protected in the context.\n * @param {IJsonLdContextNormalizedRaw} context A context.\n * @param {string} key A context term.\n * @return {boolean} If the given term has an @protected flag.\n */\n static isTermProtected(context, key) {\n const value = context[key];\n return !(typeof value === 'string') && value && value['@protected'];\n }\n /**\n * Check if the given context has at least one protected term.\n * @param context A context.\n * @return If the context has a protected term.\n */\n static hasProtectedTerms(context) {\n for (const key of Object.keys(context)) {\n if (Util.isTermProtected(context, key)) {\n return true;\n }\n }\n return false;\n }\n /**\n * Check if the given key is an internal reserved keyword.\n * @param key A context key.\n */\n static isReservedInternalKeyword(key) {\n return key.startsWith('@__');\n }\n}\nexports.Util = Util;\n// Regex for valid IRIs\nUtil.IRI_REGEX = /^([A-Za-z][A-Za-z0-9+-.]*|_):[^ \"<>{}|\\\\\\[\\]`#]*(#[^#]*)?$/;\n// Weaker regex for valid IRIs, this includes relative IRIs\nUtil.IRI_REGEX_WEAK = /(?::[^:])|\\//;\n// Regex for keyword form\nUtil.KEYWORD_REGEX = /^@[a-z]+$/i;\n// Regex to see if an IRI ends with a gen-delim character (see RFC 3986)\nUtil.ENDS_WITH_GEN_DELIM = /[:/?#\\[\\]@]$/;\n// Regex for language tags\nUtil.REGEX_LANGUAGE_TAG = /^[a-zA-Z]+(-[a-zA-Z0-9]+)*$/;\n// Regex for base directions\nUtil.REGEX_DIRECTION_TAG = /^(ltr)|(rtl)$/;\n// All known valid JSON-LD keywords\n// @see https://www.w3.org/TR/json-ld11/#keywords\nUtil.VALID_KEYWORDS = {\n '@annotation': true,\n '@base': true,\n '@container': true,\n '@context': true,\n '@direction': true,\n '@graph': true,\n '@id': true,\n '@import': true,\n '@included': true,\n '@index': true,\n '@json': true,\n '@language': true,\n '@list': true,\n '@nest': true,\n '@none': true,\n '@prefix': true,\n '@propagate': true,\n '@protected': true,\n '@reverse': true,\n '@set': true,\n '@type': true,\n '@value': true,\n '@version': true,\n '@vocab': true,\n};\n// Keys in the contexts that will not be expanded based on the base IRI\nUtil.EXPAND_KEYS_BLACKLIST = [\n '@base',\n '@vocab',\n '@language',\n '@version',\n '@direction',\n];\n// Keys in the contexts that may not be aliased from\nUtil.ALIAS_DOMAIN_BLACKLIST = [\n '@container',\n '@graph',\n '@id',\n '@index',\n '@list',\n '@nest',\n '@none',\n '@prefix',\n '@reverse',\n '@set',\n '@type',\n '@value',\n '@version',\n];\n// Keys in the contexts that may not be aliased to\nUtil.ALIAS_RANGE_BLACKLIST = [\n '@context',\n '@preserve',\n];\n// All valid @container values\nUtil.CONTAINERS = [\n '@list',\n '@set',\n '@index',\n '@language',\n '@graph',\n '@id',\n '@type',\n];\n// All valid @container values under processing mode 1.0\nUtil.CONTAINERS_1_0 = [\n '@list',\n '@set',\n '@index',\n];\n//# sourceMappingURL=Util.js.map","(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(typeof self !== 'undefined' ? self : this);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/JsonLdParser\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ContextTree = void 0;\n/**\n * A tree structure that holds all contexts,\n * based on their position in the JSON object.\n *\n * Positions are identified by a path of keys.\n */\nclass ContextTree {\n constructor() {\n this.subTrees = {};\n }\n getContext(keys) {\n if (keys.length > 0) {\n const [head, ...tail] = keys;\n const subTree = this.subTrees[head];\n if (subTree) {\n const subContext = subTree.getContext(tail);\n if (subContext) {\n return subContext.then(({ context, depth }) => ({ context, depth: depth + 1 }));\n }\n }\n }\n return this.context ? this.context.then((context) => ({ context, depth: 0 })) : null;\n }\n setContext(keys, context) {\n if (keys.length === 0) {\n this.context = context;\n }\n else {\n const [head, ...tail] = keys;\n let subTree = this.subTrees[head];\n if (!subTree) {\n subTree = this.subTrees[head] = new ContextTree();\n }\n subTree.setContext(tail, context);\n }\n }\n removeContext(path) {\n this.setContext(path, null);\n }\n}\nexports.ContextTree = ContextTree;\n//# sourceMappingURL=ContextTree.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JsonLdParser = void 0;\n// tslint:disable-next-line:no-var-requires\nconst Parser = require('@bergos/jsonparse');\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst readable_stream_1 = require(\"readable-stream\");\nconst EntryHandlerArrayValue_1 = require(\"./entryhandler/EntryHandlerArrayValue\");\nconst EntryHandlerContainer_1 = require(\"./entryhandler/EntryHandlerContainer\");\nconst EntryHandlerInvalidFallback_1 = require(\"./entryhandler/EntryHandlerInvalidFallback\");\nconst EntryHandlerPredicate_1 = require(\"./entryhandler/EntryHandlerPredicate\");\nconst EntryHandlerKeywordContext_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordContext\");\nconst EntryHandlerKeywordGraph_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordGraph\");\nconst EntryHandlerKeywordId_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordId\");\nconst EntryHandlerKeywordIncluded_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordIncluded\");\nconst EntryHandlerKeywordNest_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordNest\");\nconst EntryHandlerKeywordType_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordType\");\nconst EntryHandlerKeywordUnknownFallback_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordUnknownFallback\");\nconst EntryHandlerKeywordValue_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordValue\");\nconst ParsingContext_1 = require(\"./ParsingContext\");\nconst Util_1 = require(\"./Util\");\nconst http_link_header_1 = require(\"http-link-header\");\nconst EntryHandlerKeywordAnnotation_1 = require(\"./entryhandler/keyword/EntryHandlerKeywordAnnotation\");\n/**\n * A stream transformer that parses JSON-LD (text) streams to an {@link RDF.Stream}.\n */\nclass JsonLdParser extends readable_stream_1.Transform {\n constructor(options) {\n super({ readableObjectMode: true });\n options = options || {};\n this.options = options;\n this.parsingContext = new ParsingContext_1.ParsingContext(Object.assign({ parser: this }, options));\n this.util = new Util_1.Util({ dataFactory: options.dataFactory, parsingContext: this.parsingContext });\n this.jsonParser = new Parser();\n this.contextJobs = [];\n this.typeJobs = [];\n this.contextAwaitingJobs = [];\n this.lastDepth = 0;\n this.lastKeys = [];\n this.lastOnValueJob = Promise.resolve();\n this.attachJsonParserListeners();\n this.on('end', () => {\n if (typeof this.jsonParser.mode !== 'undefined') {\n this.emit('error', new Error('Unclosed document'));\n }\n });\n }\n /**\n * Construct a JsonLdParser from the given HTTP response.\n *\n * This will throw an error if no valid JSON response is received\n * (application/ld+json, application/json, or something+json).\n *\n * For raw JSON responses, exactly one link header pointing to a JSON-LD context is required.\n *\n * This method is not responsible for handling redirects.\n *\n * @param baseIRI The URI of the received response.\n * @param mediaType The received content type.\n * @param headers Optional HTTP headers.\n * @param options Optional parser options.\n */\n static fromHttpResponse(baseIRI, mediaType, headers, options) {\n let context;\n // Special cases when receiving something else than the JSON-LD media type\n if (mediaType !== 'application/ld+json') {\n // Only accept JSON or JSON extension types\n if (mediaType !== 'application/json' && !mediaType.endsWith('+json')) {\n throw new jsonld_context_parser_1.ErrorCoded(`Unsupported JSON-LD media type ${mediaType}`, jsonld_context_parser_1.ERROR_CODES.LOADING_DOCUMENT_FAILED);\n }\n // We need exactly one JSON-LD context in the link header\n if (headers && headers.has('Link')) {\n headers.forEach((value, key) => {\n if (key === 'link') {\n const linkHeader = (0, http_link_header_1.parse)(value);\n for (const link of linkHeader.get('rel', 'http://www.w3.org/ns/json-ld#context')) {\n if (context) {\n throw new jsonld_context_parser_1.ErrorCoded('Multiple JSON-LD context link headers were found on ' + baseIRI, jsonld_context_parser_1.ERROR_CODES.MULTIPLE_CONTEXT_LINK_HEADERS);\n }\n context = link.uri;\n }\n }\n });\n }\n if (!context && !(options === null || options === void 0 ? void 0 : options.ignoreMissingContextLinkHeader)) {\n throw new jsonld_context_parser_1.ErrorCoded(`Missing context link header for media type ${mediaType} on ${baseIRI}`, jsonld_context_parser_1.ERROR_CODES.LOADING_DOCUMENT_FAILED);\n }\n }\n // Check if the streaming profile is present\n let streamingProfile;\n if (headers && headers.has('Content-Type')) {\n const contentType = headers.get('Content-Type');\n const match = /; *profile=([^\"]*)/.exec(contentType);\n if (match && match[1] === 'http://www.w3.org/ns/json-ld#streaming') {\n streamingProfile = true;\n }\n }\n return new JsonLdParser(Object.assign({ baseIRI,\n context,\n streamingProfile }, options ? options : {}));\n }\n /**\n * Parses the given text stream into a quad stream.\n * @param {NodeJS.EventEmitter} stream A text stream.\n * @return {RDF.Stream} A quad stream.\n */\n import(stream) {\n if ('pipe' in stream) {\n stream.on('error', (error) => parsed.emit('error', error));\n const parsed = stream.pipe(new JsonLdParser(this.options));\n return parsed;\n }\n else {\n const output = new readable_stream_1.PassThrough({ readableObjectMode: true });\n stream.on('error', (error) => parsed.emit('error', error));\n stream.on('data', (data) => output.push(data));\n stream.on('end', () => output.push(null));\n const parsed = output.pipe(new JsonLdParser(this.options));\n return parsed;\n }\n }\n _transform(chunk, encoding, callback) {\n this.jsonParser.write(chunk);\n this.lastOnValueJob\n .then(() => callback(), (error) => callback(error));\n }\n /**\n * Start a new job for parsing the given value.\n *\n * This will let the first valid {@link IEntryHandler} handle the entry.\n *\n * @param {any[]} keys The stack of keys.\n * @param value The value to parse.\n * @param {number} depth The depth to parse at.\n * @param {boolean} lastDepthCheck If the lastDepth check should be done for buffer draining.\n * @return {Promise} A promise resolving when the job is done.\n */\n async newOnValueJob(keys, value, depth, lastDepthCheck) {\n let flushStacks = true;\n // When we go up the stack, emit all unidentified values\n // We need to do this before the new job, because the new job may require determined values from the flushed jobs.\n if (lastDepthCheck && depth < this.lastDepth) {\n // Check if we had any RDF lists that need to be terminated with an rdf:nil\n const listPointer = this.parsingContext.listPointerStack[this.lastDepth];\n if (listPointer) {\n // Terminate the list if the had at least one value\n if (listPointer.value) {\n this.push(this.util.dataFactory.quad(listPointer.value, this.util.rdfRest, this.util.rdfNil, this.util.getDefaultGraph()));\n }\n // Add the list id to the id stack, so it can be used higher up in the stack\n listPointer.listId.listHead = true;\n this.parsingContext.idStack[listPointer.listRootDepth + 1] = [listPointer.listId];\n this.parsingContext.listPointerStack.splice(this.lastDepth, 1);\n }\n // Flush the buffer for lastDepth\n // If the parent key is a special type of container, postpone flushing until that parent is handled.\n if (await EntryHandlerContainer_1.EntryHandlerContainer.isBufferableContainerHandler(this.parsingContext, this.lastKeys, this.lastDepth)) {\n this.parsingContext.pendingContainerFlushBuffers\n .push({ depth: this.lastDepth, keys: this.lastKeys.slice(0, this.lastKeys.length) });\n flushStacks = false;\n }\n else {\n await this.flushBuffer(this.lastDepth, this.lastKeys);\n }\n }\n const key = await this.util.unaliasKeyword(keys[depth], keys, depth);\n const parentKey = await this.util.unaliasKeywordParent(keys, depth);\n this.parsingContext.emittedStack[depth] = true;\n let handleKey = true;\n // Keywords inside @reverse is not allowed apart from @context\n if (jsonld_context_parser_1.Util.isValidKeyword(key) && parentKey === '@reverse' && key !== '@context') {\n this.emit('error', new jsonld_context_parser_1.ErrorCoded(`Found the @id '${value}' inside an @reverse property`, jsonld_context_parser_1.ERROR_CODES.INVALID_REVERSE_PROPERTY_MAP));\n }\n // Skip further processing if one of the parent nodes are invalid.\n // We use the validationStack to reuse validation results that were produced before with common key stacks.\n let inProperty = false;\n if (this.parsingContext.validationStack.length > 1) {\n inProperty = this.parsingContext.validationStack[this.parsingContext.validationStack.length - 1].property;\n }\n for (let i = Math.max(1, this.parsingContext.validationStack.length - 1); i < keys.length - 1; i++) {\n const validationResult = this.parsingContext.validationStack[i]\n || (this.parsingContext.validationStack[i] = await this.validateKey(keys.slice(0, i + 1), i, inProperty));\n if (!validationResult.valid) {\n this.parsingContext.emittedStack[depth] = false;\n handleKey = false;\n break;\n }\n else if (!inProperty && validationResult.property) {\n inProperty = true;\n }\n }\n // Skip further processing if this node is part of a literal\n if (await this.util.isLiteral(keys, depth)) {\n handleKey = false;\n }\n // Get handler\n if (handleKey) {\n for (const entryHandler of JsonLdParser.ENTRY_HANDLERS) {\n const testResult = await entryHandler.test(this.parsingContext, this.util, key, keys, depth);\n if (testResult) {\n // Pass processing over to the handler\n await entryHandler.handle(this.parsingContext, this.util, key, keys, value, depth, testResult);\n // Flag that this depth is processed\n if (entryHandler.isStackProcessor()) {\n this.parsingContext.processingStack[depth] = true;\n }\n break;\n }\n }\n }\n // Validate value indexes on the root.\n if (depth === 0 && Array.isArray(value)) {\n await this.util.validateValueIndexes(value);\n }\n // When we go up the stack, flush the old stack\n if (flushStacks && depth < this.lastDepth) {\n // Reset our stacks\n this.flushStacks(this.lastDepth);\n }\n this.lastDepth = depth;\n this.lastKeys = keys;\n // Clear the keyword cache at this depth, and everything underneath.\n this.parsingContext.unaliasedKeywordCacheStack.splice(depth - 1);\n }\n /**\n * Flush the processing stacks at the given depth.\n * @param {number} depth A depth.\n */\n flushStacks(depth) {\n this.parsingContext.processingStack.splice(depth, 1);\n this.parsingContext.processingType.splice(depth, 1);\n this.parsingContext.emittedStack.splice(depth, 1);\n this.parsingContext.idStack.splice(depth, 1);\n this.parsingContext.graphStack.splice(depth + 1, 1);\n this.parsingContext.graphContainerTermStack.splice(depth, 1);\n this.parsingContext.jsonLiteralStack.splice(depth, 1);\n this.parsingContext.validationStack.splice(depth - 1, 2);\n this.parsingContext.literalStack.splice(depth, this.parsingContext.literalStack.length - depth);\n this.parsingContext.annotationsBuffer.splice(depth, 1);\n // TODO: just like the literal stack, splice all other stack until the end as well?\n }\n /**\n * Flush buffers for the given depth.\n *\n * This should be called after the last entry at a given depth was processed.\n *\n * @param {number} depth A depth.\n * @param {any[]} keys A stack of keys.\n * @return {Promise} A promise resolving if flushing is done.\n */\n async flushBuffer(depth, keys) {\n let subjects = this.parsingContext.idStack[depth];\n const subjectsWasDefined = !!subjects;\n if (!subjectsWasDefined) {\n subjects = this.parsingContext.idStack[depth] = [this.util.dataFactory.blankNode()];\n }\n // Flush values at this level\n const valueBuffer = this.parsingContext.unidentifiedValuesBuffer[depth];\n if (valueBuffer) {\n for (const subject of subjects) {\n const depthOffsetGraph = await this.util.getDepthOffsetGraph(depth, keys);\n const graphs = (this.parsingContext.graphStack[depth] || depthOffsetGraph >= 0)\n ? this.parsingContext.idStack[depth - depthOffsetGraph - 1]\n : [await this.util.getGraphContainerValue(keys, depth)];\n if (graphs) {\n for (const graph of graphs) {\n // Flush values to stream if the graph @id is known\n this.parsingContext.emittedStack[depth] = true;\n for (const bufferedValue of valueBuffer) {\n this.util.emitQuadChecked(depth, subject, bufferedValue.predicate, bufferedValue.object, graph, bufferedValue.reverse, bufferedValue.isEmbedded);\n }\n }\n }\n else {\n // Place the values in the graphs buffer if the graph @id is not yet known\n const subGraphBuffer = this.parsingContext.getUnidentifiedGraphBufferSafe(depth - await this.util.getDepthOffsetGraph(depth, keys) - 1);\n for (const bufferedValue of valueBuffer) {\n if (bufferedValue.reverse) {\n subGraphBuffer.push({\n object: subject,\n predicate: bufferedValue.predicate,\n subject: bufferedValue.object,\n isEmbedded: bufferedValue.isEmbedded,\n });\n }\n else {\n subGraphBuffer.push({\n object: bufferedValue.object,\n predicate: bufferedValue.predicate,\n subject,\n isEmbedded: bufferedValue.isEmbedded,\n });\n }\n }\n }\n }\n this.parsingContext.unidentifiedValuesBuffer.splice(depth, 1);\n this.parsingContext.literalStack.splice(depth, 1);\n this.parsingContext.jsonLiteralStack.splice(depth, 1);\n }\n // Flush graphs at this level\n const graphBuffer = this.parsingContext.unidentifiedGraphsBuffer[depth];\n if (graphBuffer) {\n for (const subject of subjects) {\n // A @graph statement at the root without @id relates to the default graph,\n // unless there are top-level properties,\n // others relate to blank nodes.\n const graph = depth === 1 && subject.termType === 'BlankNode'\n && !this.parsingContext.topLevelProperties ? this.util.getDefaultGraph() : subject;\n this.parsingContext.emittedStack[depth] = true;\n for (const bufferedValue of graphBuffer) {\n this.parsingContext.emitQuad(depth, this.util.dataFactory.quad(bufferedValue.subject, bufferedValue.predicate, bufferedValue.object, graph));\n }\n }\n this.parsingContext.unidentifiedGraphsBuffer.splice(depth, 1);\n }\n // Push unhandled annotations up the stack as nested annotations\n const annotationsBuffer = this.parsingContext.annotationsBuffer[depth];\n if (annotationsBuffer) {\n // Throw an error if we reach the top, and still have annotations\n if (annotationsBuffer.length > 0 && depth === 1) {\n this.parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Annotations can not be made on top-level nodes`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n // Pass the annotations buffer up one level in the stack\n const annotationsBufferParent = this.parsingContext.getAnnotationsBufferSafe(depth - 1);\n for (const annotation of annotationsBuffer) {\n annotationsBufferParent.push(annotation);\n }\n delete this.parsingContext.annotationsBuffer[depth];\n }\n }\n /**\n * Check if at least one {@link IEntryHandler} validates the entry to true.\n * @param {any[]} keys A stack of keys.\n * @param {number} depth A depth.\n * @param {boolean} inProperty If the current depth is part of a valid property node.\n * @return {Promise<{ valid: boolean, property: boolean }>} A promise resolving to true or false.\n */\n async validateKey(keys, depth, inProperty) {\n for (const entryHandler of JsonLdParser.ENTRY_HANDLERS) {\n if (await entryHandler.validate(this.parsingContext, this.util, keys, depth, inProperty)) {\n return { valid: true, property: inProperty || entryHandler.isPropertyHandler() };\n }\n }\n return { valid: false, property: false };\n }\n /**\n * Attach all required listeners to the JSON parser.\n *\n * This should only be called once.\n */\n attachJsonParserListeners() {\n // Listen to json parser events\n this.jsonParser.onValue = (value) => {\n const depth = this.jsonParser.stack.length;\n const keys = (new Array(depth + 1).fill(0)).map((v, i) => {\n return i === depth ? this.jsonParser.key : this.jsonParser.stack[i].key;\n });\n if (!this.isParsingContextInner(depth)) { // Don't parse inner nodes inside @context\n const valueJobCb = () => this.newOnValueJob(keys, value, depth, true);\n if (!this.parsingContext.streamingProfile\n && !this.parsingContext.contextTree.getContext(keys.slice(0, -1))) {\n // If an out-of-order context is allowed,\n // we have to buffer everything.\n // We store jobs for @context's and @type's separately,\n // because at the end, we have to process them first.\n // We also handle @type because these *could* introduce a type-scoped context.\n if (keys[depth] === '@context') {\n let jobs = this.contextJobs[depth];\n if (!jobs) {\n jobs = this.contextJobs[depth] = [];\n }\n jobs.push(valueJobCb);\n }\n else if (keys[depth] === '@type'\n || typeof keys[depth] === 'number' && keys[depth - 1] === '@type') { // Also capture @type with array values\n // Remove @type from keys, because we want it to apply to parent later on\n this.typeJobs.push({ job: valueJobCb, keys: keys.slice(0, keys.length - 1) });\n }\n else {\n this.contextAwaitingJobs.push({ job: valueJobCb, keys });\n }\n }\n else {\n // Make sure that our value jobs are chained synchronously\n this.lastOnValueJob = this.lastOnValueJob.then(valueJobCb);\n }\n // Execute all buffered jobs on deeper levels\n if (!this.parsingContext.streamingProfile && depth === 0) {\n this.lastOnValueJob = this.lastOnValueJob\n .then(() => this.executeBufferedJobs());\n }\n }\n };\n this.jsonParser.onError = (error) => {\n this.emit('error', error);\n };\n }\n /**\n * Check if the parser is currently parsing an element that is part of an @context entry.\n * @param {number} depth A depth.\n * @return {boolean} A boolean.\n */\n isParsingContextInner(depth) {\n for (let i = depth; i > 0; i--) {\n if (this.jsonParser.stack[i - 1].key === '@context') {\n return true;\n }\n }\n return false;\n }\n /**\n * Execute all buffered jobs.\n * @return {Promise} A promise resolving if all jobs are finished.\n */\n async executeBufferedJobs() {\n // Handle context jobs\n for (const jobs of this.contextJobs) {\n if (jobs) {\n for (const job of jobs) {\n await job();\n }\n }\n }\n // Clear the keyword cache.\n this.parsingContext.unaliasedKeywordCacheStack.splice(0);\n // Handle non-context jobs\n for (const job of this.contextAwaitingJobs) {\n // Check if we have a type (with possible type-scoped context) that should be handled before.\n // We check all possible parent nodes for the current job, from root to leaves.\n if (this.typeJobs.length > 0) {\n // First collect all applicable type jobs\n const applicableTypeJobs = [];\n const applicableTypeJobIds = [];\n for (let i = 0; i < this.typeJobs.length; i++) {\n const typeJob = this.typeJobs[i];\n if (Util_1.Util.isPrefixArray(typeJob.keys, job.keys)) {\n applicableTypeJobs.push(typeJob);\n applicableTypeJobIds.push(i);\n }\n }\n // Next, sort the jobs from short to long key length (to ensure types higher up in the tree to be handled first)\n const sortedTypeJobs = applicableTypeJobs.sort((job1, job2) => job1.keys.length - job2.keys.length);\n // Finally, execute the jobs in order\n for (const typeJob of sortedTypeJobs) {\n await typeJob.job();\n }\n // Remove the executed type jobs\n // Sort first, so we can efficiently splice\n const sortedApplicableTypeJobIds = applicableTypeJobIds.sort().reverse();\n for (const jobId of sortedApplicableTypeJobIds) {\n this.typeJobs.splice(jobId, 1);\n }\n }\n await job.job();\n }\n }\n}\nexports.JsonLdParser = JsonLdParser;\nJsonLdParser.DEFAULT_PROCESSING_MODE = '1.1';\nJsonLdParser.ENTRY_HANDLERS = [\n new EntryHandlerArrayValue_1.EntryHandlerArrayValue(),\n new EntryHandlerKeywordContext_1.EntryHandlerKeywordContext(),\n new EntryHandlerKeywordId_1.EntryHandlerKeywordId(),\n new EntryHandlerKeywordIncluded_1.EntryHandlerKeywordIncluded(),\n new EntryHandlerKeywordGraph_1.EntryHandlerKeywordGraph(),\n new EntryHandlerKeywordNest_1.EntryHandlerKeywordNest(),\n new EntryHandlerKeywordType_1.EntryHandlerKeywordType(),\n new EntryHandlerKeywordValue_1.EntryHandlerKeywordValue(),\n new EntryHandlerKeywordAnnotation_1.EntryHandlerKeywordAnnotation(),\n new EntryHandlerContainer_1.EntryHandlerContainer(),\n new EntryHandlerKeywordUnknownFallback_1.EntryHandlerKeywordUnknownFallback(),\n new EntryHandlerPredicate_1.EntryHandlerPredicate(),\n new EntryHandlerInvalidFallback_1.EntryHandlerInvalidFallback(),\n];\n//# sourceMappingURL=JsonLdParser.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ParsingContext = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst ErrorCoded_1 = require(\"jsonld-context-parser/lib/ErrorCoded\");\nconst ContextTree_1 = require(\"./ContextTree\");\nconst JsonLdParser_1 = require(\"./JsonLdParser\");\n/**\n * Data holder for parsing information.\n */\nclass ParsingContext {\n constructor(options) {\n // Initialize settings\n this.contextParser = new jsonld_context_parser_1.ContextParser({ documentLoader: options.documentLoader, skipValidation: options.skipContextValidation });\n this.streamingProfile = !!options.streamingProfile;\n this.baseIRI = options.baseIRI;\n this.produceGeneralizedRdf = !!options.produceGeneralizedRdf;\n this.allowSubjectList = !!options.allowSubjectList;\n this.processingMode = options.processingMode || JsonLdParser_1.JsonLdParser.DEFAULT_PROCESSING_MODE;\n this.strictValues = !!options.strictValues;\n this.validateValueIndexes = !!options.validateValueIndexes;\n this.defaultGraph = options.defaultGraph;\n this.rdfDirection = options.rdfDirection;\n this.normalizeLanguageTags = options.normalizeLanguageTags;\n this.streamingProfileAllowOutOfOrderPlainType = options.streamingProfileAllowOutOfOrderPlainType;\n this.rdfstar = options.rdfstar !== false;\n this.rdfstarReverseInEmbedded = options.rdfstarReverseInEmbedded;\n this.topLevelProperties = false;\n this.activeProcessingMode = parseFloat(this.processingMode);\n // Initialize stacks\n this.processingStack = [];\n this.processingType = [];\n this.emittedStack = [];\n this.idStack = [];\n this.graphStack = [];\n this.graphContainerTermStack = [];\n this.listPointerStack = [];\n this.contextTree = new ContextTree_1.ContextTree();\n this.literalStack = [];\n this.validationStack = [];\n this.unaliasedKeywordCacheStack = [];\n this.jsonLiteralStack = [];\n this.unidentifiedValuesBuffer = [];\n this.unidentifiedGraphsBuffer = [];\n this.annotationsBuffer = [];\n this.pendingContainerFlushBuffers = [];\n this.parser = options.parser;\n if (options.context) {\n this.rootContext = this.parseContext(options.context);\n this.rootContext.then((context) => this.validateContext(context));\n }\n else {\n this.rootContext = Promise.resolve(new jsonld_context_parser_1.JsonLdContextNormalized(this.baseIRI ? { '@base': this.baseIRI, '@__baseDocument': true } : {}));\n }\n }\n /**\n * Parse the given context with the configured options.\n * @param {JsonLdContext} context A context to parse.\n * @param {JsonLdContextNormalized} parentContext An optional parent context.\n * @param {boolean} ignoreProtection If @protected term checks should be ignored.\n * @return {Promise} A promise resolving to the parsed context.\n */\n async parseContext(context, parentContext, ignoreProtection) {\n return this.contextParser.parse(context, {\n baseIRI: this.baseIRI,\n ignoreProtection,\n normalizeLanguageTags: this.normalizeLanguageTags,\n parentContext,\n processingMode: this.activeProcessingMode,\n });\n }\n /**\n * Check if the given context is valid.\n * If not, an error will be thrown.\n * @param {JsonLdContextNormalized} context A context.\n */\n validateContext(context) {\n const activeVersion = context.getContextRaw()['@version'];\n if (activeVersion) {\n if (this.activeProcessingMode && activeVersion > this.activeProcessingMode) {\n throw new ErrorCoded_1.ErrorCoded(`Unsupported JSON-LD version '${activeVersion}' under active processing mode ${this.activeProcessingMode}.`, ErrorCoded_1.ERROR_CODES.PROCESSING_MODE_CONFLICT);\n }\n else {\n if (this.activeProcessingMode && activeVersion < this.activeProcessingMode) {\n throw new ErrorCoded_1.ErrorCoded(`Invalid JSON-LD version ${activeVersion} under active processing mode ${this.activeProcessingMode}.`, ErrorCoded_1.ERROR_CODES.INVALID_VERSION_VALUE);\n }\n this.activeProcessingMode = activeVersion;\n }\n }\n }\n /**\n * Get the context at the given path.\n * @param {keys} keys The path of keys to get the context at.\n * @param {number} offset The path offset, defaults to 1.\n * @return {Promise} A promise resolving to a context.\n */\n async getContext(keys, offset = 1) {\n const keysOriginal = keys;\n // Ignore array keys at the end\n while (typeof keys[keys.length - 1] === 'number') {\n keys = keys.slice(0, keys.length - 1);\n }\n // Handle offset on keys\n if (offset) {\n keys = keys.slice(0, -offset);\n }\n // Determine the closest context\n const contextData = await this.getContextPropagationAware(keys);\n const context = contextData.context;\n // Process property-scoped contexts (high-to-low)\n let contextRaw = context.getContextRaw();\n for (let i = contextData.depth; i < keysOriginal.length - offset; i++) {\n const key = keysOriginal[i];\n const contextKeyEntry = contextRaw[key];\n if (contextKeyEntry && typeof contextKeyEntry === 'object' && '@context' in contextKeyEntry) {\n const scopedContext = (await this.parseContext(contextKeyEntry, contextRaw, true)).getContextRaw();\n const propagate = !(key in scopedContext)\n || scopedContext[key]['@context']['@propagate']; // Propagation is true by default\n if (propagate !== false || i === keysOriginal.length - 1 - offset) {\n contextRaw = scopedContext;\n // Clean up final context\n delete contextRaw['@propagate'];\n contextRaw[key] = Object.assign({}, contextRaw[key]);\n if ('@id' in contextKeyEntry) {\n contextRaw[key]['@id'] = contextKeyEntry['@id'];\n }\n delete contextRaw[key]['@context'];\n if (propagate !== false) {\n this.contextTree.setContext(keysOriginal.slice(0, i + offset), Promise.resolve(new jsonld_context_parser_1.JsonLdContextNormalized(contextRaw)));\n }\n }\n }\n }\n return new jsonld_context_parser_1.JsonLdContextNormalized(contextRaw);\n }\n /**\n * Get the context at the given path.\n * Non-propagating contexts will be skipped,\n * unless the context at that exact depth is retrieved.\n *\n * This ONLY takes into account context propagation logic,\n * so this should usually not be called directly,\n * call {@link #getContext} instead.\n *\n * @param keys The path of keys to get the context at.\n * @return {Promise<{ context: JsonLdContextNormalized, depth: number }>} A context and its depth.\n */\n async getContextPropagationAware(keys) {\n const originalDepth = keys.length;\n let contextData = null;\n let hasApplicablePropertyScopedContext;\n do {\n hasApplicablePropertyScopedContext = false;\n if (contextData && '@__propagateFallback' in contextData.context.getContextRaw()) {\n // If a propagation fallback context has been set,\n // fallback to that context and retry for the same depth.\n contextData.context = new jsonld_context_parser_1.JsonLdContextNormalized(contextData.context.getContextRaw()['@__propagateFallback']);\n }\n else {\n if (contextData) {\n // If we had a previous iteration, jump to the parent of context depth.\n // We must do this because once we get here, last context had propagation disabled,\n // so we check its first parent instead.\n keys = keys.slice(0, contextData.depth - 1);\n }\n contextData = await this.contextTree.getContext(keys) || { context: await this.rootContext, depth: 0 };\n }\n // Allow non-propagating contexts to propagate one level deeper\n // if it defines a property-scoped context that is applicable for the current key.\n // @see https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tc012\n const lastKey = keys[keys.length - 1];\n if (lastKey in contextData.context.getContextRaw()) {\n const lastKeyValue = contextData.context.getContextRaw()[lastKey];\n if (lastKeyValue && typeof lastKeyValue === 'object' && '@context' in lastKeyValue) {\n hasApplicablePropertyScopedContext = true;\n }\n }\n } while (contextData.depth > 0 // Root context has a special case\n && contextData.context.getContextRaw()['@propagate'] === false // Stop loop if propagation is true\n && contextData.depth !== originalDepth // Stop loop if requesting exact depth of non-propagating\n && !hasApplicablePropertyScopedContext);\n // Special case for root context that does not allow propagation.\n // Fallback to empty context in that case.\n if (contextData.depth === 0\n && contextData.context.getContextRaw()['@propagate'] === false\n && contextData.depth !== originalDepth) {\n contextData.context = new jsonld_context_parser_1.JsonLdContextNormalized({});\n }\n return contextData;\n }\n /**\n * Start a new job for parsing the given value.\n * @param {any[]} keys The stack of keys.\n * @param value The value to parse.\n * @param {number} depth The depth to parse at.\n * @param {boolean} lastDepthCheck If the lastDepth check should be done for buffer draining.\n * @return {Promise} A promise resolving when the job is done.\n */\n async newOnValueJob(keys, value, depth, lastDepthCheck) {\n await this.parser.newOnValueJob(keys, value, depth, lastDepthCheck);\n }\n /**\n * Flush the pending container flush buffers\n * @return {boolean} If any pending buffers were flushed.\n */\n async handlePendingContainerFlushBuffers() {\n if (this.pendingContainerFlushBuffers.length > 0) {\n for (const pendingFlushBuffer of this.pendingContainerFlushBuffers) {\n await this.parser.flushBuffer(pendingFlushBuffer.depth, pendingFlushBuffer.keys);\n this.parser.flushStacks(pendingFlushBuffer.depth);\n }\n this.pendingContainerFlushBuffers.splice(0, this.pendingContainerFlushBuffers.length);\n return true;\n }\n else {\n return false;\n }\n }\n /**\n * Emit the given quad into the output stream.\n * @param {number} depth The depth the quad was generated at.\n * @param {Quad} quad A quad to emit.\n */\n emitQuad(depth, quad) {\n if (depth === 1) {\n this.topLevelProperties = true;\n }\n this.parser.push(quad);\n }\n /**\n * Emit the given error into the output stream.\n * @param {Error} error An error to emit.\n */\n emitError(error) {\n this.parser.emit('error', error);\n }\n /**\n * Emit the given context into the output stream under the 'context' event.\n * @param {JsonLdContext} context A context to emit.\n */\n emitContext(context) {\n this.parser.emit('context', context);\n }\n /**\n * Safely get or create the depth value of {@link ParsingContext.unidentifiedValuesBuffer}.\n * @param {number} depth A depth.\n * @return {{predicate: Term; object: Term; reverse: boolean}[]} An element of\n * {@link ParsingContext.unidentifiedValuesBuffer}.\n */\n getUnidentifiedValueBufferSafe(depth) {\n let buffer = this.unidentifiedValuesBuffer[depth];\n if (!buffer) {\n buffer = [];\n this.unidentifiedValuesBuffer[depth] = buffer;\n }\n return buffer;\n }\n /**\n * Safely get or create the depth value of {@link ParsingContext.unidentifiedGraphsBuffer}.\n * @param {number} depth A depth.\n * @return {{predicate: Term; object: Term; reverse: boolean}[]} An element of\n * {@link ParsingContext.unidentifiedGraphsBuffer}.\n */\n getUnidentifiedGraphBufferSafe(depth) {\n let buffer = this.unidentifiedGraphsBuffer[depth];\n if (!buffer) {\n buffer = [];\n this.unidentifiedGraphsBuffer[depth] = buffer;\n }\n return buffer;\n }\n /**\n * Safely get or create the depth value of {@link ParsingContext.annotationsBuffer}.\n * @param {number} depth A depth.\n * @return {} An element of {@link ParsingContext.annotationsBuffer}.\n */\n getAnnotationsBufferSafe(depth) {\n let buffer = this.annotationsBuffer[depth];\n if (!buffer) {\n buffer = [];\n this.annotationsBuffer[depth] = buffer;\n }\n return buffer;\n }\n /**\n * @return IExpandOptions The expand options for the active processing mode.\n */\n getExpandOptions() {\n return ParsingContext.EXPAND_OPTIONS[this.activeProcessingMode];\n }\n /**\n * Shift the stack at the given offset to the given depth.\n *\n * This will override anything in the stack at `depth`,\n * and this will remove anything at `depth + depthOffset`\n *\n * @param depth The target depth.\n * @param depthOffset The origin depth, relative to `depth`.\n */\n shiftStack(depth, depthOffset) {\n // Copy the id stack value up one level so that the next job can access the id.\n const deeperIdStack = this.idStack[depth + depthOffset];\n if (deeperIdStack) {\n this.idStack[depth] = deeperIdStack;\n this.emittedStack[depth] = true;\n delete this.idStack[depth + depthOffset];\n }\n // Shorten key stack\n if (this.pendingContainerFlushBuffers.length) {\n for (const buffer of this.pendingContainerFlushBuffers) {\n if (buffer.depth >= depth + depthOffset) {\n buffer.depth -= depthOffset;\n buffer.keys.splice(depth, depthOffset);\n }\n }\n }\n // Splice stacks\n if (this.unidentifiedValuesBuffer[depth + depthOffset]) {\n this.unidentifiedValuesBuffer[depth] = this.unidentifiedValuesBuffer[depth + depthOffset];\n delete this.unidentifiedValuesBuffer[depth + depthOffset];\n }\n if (this.annotationsBuffer[depth + depthOffset - 1]) {\n if (!this.annotationsBuffer[depth - 1]) {\n this.annotationsBuffer[depth - 1] = [];\n }\n this.annotationsBuffer[depth - 1] = [\n ...this.annotationsBuffer[depth - 1],\n ...this.annotationsBuffer[depth + depthOffset - 1],\n ];\n delete this.annotationsBuffer[depth + depthOffset - 1];\n }\n // TODO: also do the same for other stacks\n }\n}\nexports.ParsingContext = ParsingContext;\nParsingContext.EXPAND_OPTIONS = {\n 1.0: {\n allowPrefixForcing: false,\n allowPrefixNonGenDelims: false,\n allowVocabRelativeToBase: false,\n },\n 1.1: {\n allowPrefixForcing: true,\n allowPrefixNonGenDelims: false,\n allowVocabRelativeToBase: true,\n },\n};\n//# sourceMappingURL=ParsingContext.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Util = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst EntryHandlerContainer_1 = require(\"./entryhandler/EntryHandlerContainer\");\n// tslint:disable-next-line:no-var-requires\nconst canonicalizeJson = require('canonicalize');\n/**\n * Utility functions and methods.\n */\nclass Util {\n constructor(options) {\n this.parsingContext = options.parsingContext;\n this.dataFactory = options.dataFactory || new rdf_data_factory_1.DataFactory();\n this.rdfFirst = this.dataFactory.namedNode(Util.RDF + 'first');\n this.rdfRest = this.dataFactory.namedNode(Util.RDF + 'rest');\n this.rdfNil = this.dataFactory.namedNode(Util.RDF + 'nil');\n this.rdfType = this.dataFactory.namedNode(Util.RDF + 'type');\n this.rdfJson = this.dataFactory.namedNode(Util.RDF + 'JSON');\n }\n /**\n * Helper function to get the value of a context entry,\n * or fallback to a certain value.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} contextKey A pre-defined JSON-LD key in context entries.\n * @param {string} key A context entry key.\n * @param {string} fallback A fallback value for when the given contextKey\n * could not be found in the value with the given key.\n * @return {string} The value of the given contextKey in the entry behind key in the given context,\n * or the given fallback value.\n */\n static getContextValue(context, contextKey, key, fallback) {\n const entry = context.getContextRaw()[key];\n if (!entry) {\n return fallback;\n }\n const type = entry[contextKey];\n return type === undefined ? fallback : type;\n }\n /**\n * Get the container type of the given key in the context.\n *\n * Should any context-scoping bugs should occur related to this in the future,\n * it may be required to increase the offset from the depth at which the context is retrieved by one (to 2).\n * This is because containers act 2 levels deep.\n *\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {string} The container type.\n */\n static getContextValueContainer(context, key) {\n return Util.getContextValue(context, '@container', key, { '@set': true });\n }\n /**\n * Get the value type of the given key in the context.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {string} The node type.\n */\n static getContextValueType(context, key) {\n const valueType = Util.getContextValue(context, '@type', key, null);\n if (valueType === '@none') {\n return null;\n }\n return valueType;\n }\n /**\n * Get the language of the given key in the context.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {string} The node type.\n */\n static getContextValueLanguage(context, key) {\n return Util.getContextValue(context, '@language', key, context.getContextRaw()['@language'] || null);\n }\n /**\n * Get the direction of the given key in the context.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {string} The node type.\n */\n static getContextValueDirection(context, key) {\n return Util.getContextValue(context, '@direction', key, context.getContextRaw()['@direction'] || null);\n }\n /**\n * Check if the given key in the context is a reversed property.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {boolean} If the context value has a @reverse key.\n */\n static isContextValueReverse(context, key) {\n return !!Util.getContextValue(context, '@reverse', key, null);\n }\n /**\n * Get the @index of the given key in the context.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key A context entry key.\n * @return {string} The index.\n */\n static getContextValueIndex(context, key) {\n return Util.getContextValue(context, '@index', key, context.getContextRaw()['@index'] || null);\n }\n /**\n * Check if the given key refers to a reversed property.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key The property key.\n * @param {string} parentKey The parent key.\n * @return {boolean} If the property must be reversed.\n */\n static isPropertyReverse(context, key, parentKey) {\n // '!==' is needed because reversed properties in a @reverse container should cancel each other out.\n return parentKey === '@reverse' !== Util.isContextValueReverse(context, key);\n }\n /**\n * Check if the given key exists inside an embedded node as direct child.\n * @param {string} parentKey The parent key.\n * @return {boolean} If the property is embedded.\n */\n static isPropertyInEmbeddedNode(parentKey) {\n return parentKey === '@id';\n }\n /**\n * Check if the given key exists inside an annotation object as direct child.\n * @param {string} parentKey The parent key.\n * @return {boolean} If the property is an annotation.\n */\n static isPropertyInAnnotationObject(parentKey) {\n return parentKey === '@annotation';\n }\n /**\n * Check if the given IRI is valid.\n * @param {string} iri A potential IRI.\n * @return {boolean} If the given IRI is valid.\n */\n static isValidIri(iri) {\n return iri !== null && jsonld_context_parser_1.Util.isValidIri(iri);\n }\n /**\n * Check if the given first array (needle) is a prefix of the given second array (haystack).\n * @param needle An array to check if it is a prefix.\n * @param haystack An array to look in.\n */\n static isPrefixArray(needle, haystack) {\n if (needle.length > haystack.length) {\n return false;\n }\n for (let i = 0; i < needle.length; i++) {\n if (needle[i] !== haystack[i]) {\n return false;\n }\n }\n return true;\n }\n /**\n * Make sure that @id-@index pairs are equal over all array values.\n * Reject otherwise.\n * @param {any[]} value An array value.\n * @return {Promise} A promise rejecting if conflicts are present.\n */\n async validateValueIndexes(value) {\n if (this.parsingContext.validateValueIndexes) {\n const indexHashes = {};\n for (const entry of value) {\n if (entry && typeof entry === 'object') {\n const id = entry['@id'];\n const index = entry['@index'];\n if (id && index) {\n const existingIndexValue = indexHashes[id];\n if (existingIndexValue && existingIndexValue !== index) {\n throw new jsonld_context_parser_1.ErrorCoded(`Conflicting @index value for ${id}`, jsonld_context_parser_1.ERROR_CODES.CONFLICTING_INDEXES);\n }\n indexHashes[id] = index;\n }\n }\n }\n }\n }\n /**\n * Convert a given JSON value to an RDF term.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key The current JSON key.\n * @param value A JSON value.\n * @param {number} depth The depth the value is at.\n * @param {string[]} keys The path of keys.\n * @return {Promise} An RDF term array.\n */\n async valueToTerm(context, key, value, depth, keys) {\n // Skip further processing if we have an @type: @json\n if (Util.getContextValueType(context, key) === '@json') {\n return [this.dataFactory.literal(this.valueToJsonString(value), this.rdfJson)];\n }\n const type = typeof value;\n switch (type) {\n case 'object':\n // Skip if we have a null or undefined object\n if (value === null || value === undefined) {\n return [];\n }\n // Special case for arrays\n if (Array.isArray(value)) {\n // We handle arrays at value level so we can emit earlier, so this is handled already when we get here.\n // Empty context-based lists are emitted at this place, because our streaming algorithm doesn't detect those.\n if ('@list' in Util.getContextValueContainer(context, key)) {\n if (value.length === 0) {\n return [this.rdfNil];\n }\n else {\n return this.parsingContext.idStack[depth + 1] || [];\n }\n }\n await this.validateValueIndexes(value);\n return [];\n }\n // Handle property-scoped contexts\n context = await this.getContextSelfOrPropertyScoped(context, key);\n // Handle local context in the value\n if ('@context' in value) {\n context = await this.parsingContext.parseContext(value['@context'], (await this.parsingContext.getContext(keys, 0)).getContextRaw());\n }\n // In all other cases, we have a hash\n value = await this.unaliasKeywords(value, keys, depth, context); // Un-alias potential keywords in this hash\n if ('@value' in value) {\n let val;\n let valueLanguage;\n let valueDirection;\n let valueType;\n let valueIndex; // We don't use the index, but we need to check its type for spec-compliance\n for (key in value) {\n const subValue = value[key];\n switch (key) {\n case '@value':\n val = subValue;\n break;\n case '@language':\n valueLanguage = subValue;\n break;\n case '@direction':\n valueDirection = subValue;\n break;\n case '@type':\n valueType = subValue;\n break;\n case '@index':\n valueIndex = subValue;\n break;\n case '@annotation':\n // This keyword is allowed, but is processed like normal nodes\n break;\n default:\n throw new jsonld_context_parser_1.ErrorCoded(`Unknown value entry '${key}' in @value: ${JSON.stringify(value)}`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT);\n }\n }\n // Skip further processing if we have an @type: @json\n if (await this.unaliasKeyword(valueType, keys, depth, true, context) === '@json') {\n return [this.dataFactory.literal(this.valueToJsonString(val), this.rdfJson)];\n }\n // Validate @value\n if (val === null) {\n return [];\n }\n if (typeof val === 'object') {\n throw new jsonld_context_parser_1.ErrorCoded(`The value of an '@value' can not be an object, got '${JSON.stringify(val)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT_VALUE);\n }\n // Validate @index\n if (this.parsingContext.validateValueIndexes && valueIndex && typeof valueIndex !== 'string') {\n throw new jsonld_context_parser_1.ErrorCoded(`The value of an '@index' must be a string, got '${JSON.stringify(valueIndex)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_INDEX_VALUE);\n }\n // Validate @language and @direction\n if (valueLanguage) {\n if (typeof val !== 'string') {\n throw new jsonld_context_parser_1.ErrorCoded(`When an '@language' is set, the value of '@value' must be a string, got '${JSON.stringify(val)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_LANGUAGE_TAGGED_VALUE);\n }\n if (!jsonld_context_parser_1.ContextParser.validateLanguage(valueLanguage, this.parsingContext.strictValues, jsonld_context_parser_1.ERROR_CODES.INVALID_LANGUAGE_TAGGED_STRING)) {\n return [];\n }\n // Language tags are always normalized to lowercase in 1.0.\n if (this.parsingContext.normalizeLanguageTags || this.parsingContext.activeProcessingMode === 1.0) {\n valueLanguage = valueLanguage.toLowerCase();\n }\n }\n if (valueDirection) {\n if (typeof val !== 'string') {\n throw new Error(`When an '@direction' is set, the value of '@value' must be a string, got '${JSON.stringify(val)}'`);\n }\n if (!jsonld_context_parser_1.ContextParser.validateDirection(valueDirection, this.parsingContext.strictValues)) {\n return [];\n }\n }\n // Check @language and @direction\n if (valueLanguage && valueDirection && this.parsingContext.rdfDirection) {\n if (valueType) {\n throw new jsonld_context_parser_1.ErrorCoded(`Can not have '@language', '@direction' and '@type' in a value: '${JSON\n .stringify(value)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT);\n }\n return this.nullableTermToArray(this\n .createLanguageDirectionLiteral(depth, val, valueLanguage, valueDirection));\n }\n else if (valueLanguage) { // Check @language\n if (valueType) {\n throw new jsonld_context_parser_1.ErrorCoded(`Can not have both '@language' and '@type' in a value: '${JSON.stringify(value)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT);\n }\n return [this.dataFactory.literal(val, valueLanguage)];\n }\n else if (valueDirection && this.parsingContext.rdfDirection) { // Check @direction\n if (valueType) {\n throw new jsonld_context_parser_1.ErrorCoded(`Can not have both '@direction' and '@type' in a value: '${JSON.stringify(value)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT);\n }\n return this.nullableTermToArray(this\n .createLanguageDirectionLiteral(depth, val, valueLanguage, valueDirection));\n }\n else if (valueType) { // Validate @type\n if (typeof valueType !== 'string') {\n throw new jsonld_context_parser_1.ErrorCoded(`The value of an '@type' must be a string, got '${JSON.stringify(valueType)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_TYPED_VALUE);\n }\n const typeTerm = this.createVocabOrBaseTerm(context, valueType);\n if (!typeTerm) {\n throw new jsonld_context_parser_1.ErrorCoded(`Invalid '@type' value, got '${JSON.stringify(valueType)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_TYPED_VALUE);\n }\n if (typeTerm.termType !== 'NamedNode') {\n throw new jsonld_context_parser_1.ErrorCoded(`Illegal value type (${typeTerm.termType}): ${valueType}`, jsonld_context_parser_1.ERROR_CODES.INVALID_TYPED_VALUE);\n }\n return [this.dataFactory.literal(val, typeTerm)];\n }\n // We don't pass the context, because context-based things like @language should be ignored\n return await this.valueToTerm(new jsonld_context_parser_1.JsonLdContextNormalized({}), key, val, depth, keys);\n }\n else if ('@set' in value) {\n // No other entries are allow in this value\n if (Object.keys(value).length > 1) {\n throw new jsonld_context_parser_1.ErrorCoded(`Found illegal neighbouring entries next to @set for key: '${key}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);\n }\n // No need to do anything here, this is handled at the deeper level.\n return [];\n }\n else if ('@list' in value) {\n // No other entries are allowed in this value\n if (Object.keys(value).length > 1) {\n throw new jsonld_context_parser_1.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${key}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT);\n }\n const listValue = value[\"@list\"];\n // We handle lists at value level so we can emit earlier, so this is handled already when we get here.\n // Empty anonymous lists are emitted at this place, because our streaming algorithm doesn't detect those.\n if (Array.isArray(listValue)) {\n if (listValue.length === 0) {\n return [this.rdfNil];\n }\n else {\n return this.parsingContext.idStack[depth + 1] || [];\n }\n }\n else {\n // We only have a single list element here, so emit this directly as single element\n return await this.valueToTerm(await this.parsingContext.getContext(keys), key, listValue, depth - 1, keys.slice(0, -1));\n }\n }\n else if ('@reverse' in value && typeof value['@reverse'] === 'boolean') {\n // We handle reverse properties at value level so we can emit earlier,\n // so this is handled already when we get here.\n return [];\n }\n else if ('@graph' in Util.getContextValueContainer(await this.parsingContext.getContext(keys), key)) {\n // We are processing a graph container\n const graphContainerEntries = this.parsingContext.graphContainerTermStack[depth + 1];\n return graphContainerEntries ? Object.values(graphContainerEntries) : [this.dataFactory.blankNode()];\n }\n else if (\"@id\" in value) {\n // Use deeper context if the value node contains other properties next to @id.\n if (Object.keys(value).length > 1) {\n context = await this.parsingContext.getContext(keys, 0);\n }\n // Handle local context in the value\n if ('@context' in value) {\n context = await this.parsingContext.parseContext(value['@context'], context.getContextRaw());\n }\n if (value[\"@type\"] === '@vocab') {\n return this.nullableTermToArray(this.createVocabOrBaseTerm(context, value[\"@id\"]));\n }\n else {\n const valueId = value[\"@id\"];\n let valueTerm;\n if (typeof valueId === 'object') {\n if (this.parsingContext.rdfstar) {\n valueTerm = this.parsingContext.idStack[depth + 1][0];\n }\n else {\n throw new jsonld_context_parser_1.ErrorCoded(`Found illegal @id '${value}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_ID_VALUE);\n }\n }\n else {\n valueTerm = this.resourceToTerm(context, valueId);\n }\n return this.nullableTermToArray(valueTerm);\n }\n }\n else {\n // Only make a blank node if at least one triple was emitted at the value's level.\n if (this.parsingContext.emittedStack[depth + 1]\n || (value && typeof value === 'object' && Object.keys(value).length === 0)) {\n return (this.parsingContext.idStack[depth + 1]\n || (this.parsingContext.idStack[depth + 1] = [this.dataFactory.blankNode()]));\n }\n else {\n return [];\n }\n }\n case 'string':\n return this.nullableTermToArray(this.stringValueToTerm(depth, await this.getContextSelfOrPropertyScoped(context, key), key, value, null));\n case 'boolean':\n return this.nullableTermToArray(this.stringValueToTerm(depth, await this.getContextSelfOrPropertyScoped(context, key), key, Boolean(value).toString(), this.dataFactory.namedNode(Util.XSD_BOOLEAN)));\n case 'number':\n return this.nullableTermToArray(this.stringValueToTerm(depth, await this.getContextSelfOrPropertyScoped(context, key), key, value, this.dataFactory.namedNode(value % 1 === 0 && value < 1e21 ? Util.XSD_INTEGER : Util.XSD_DOUBLE)));\n default:\n this.parsingContext.emitError(new Error(`Could not determine the RDF type of a ${type}`));\n return [];\n }\n }\n /**\n * If the context defines a property-scoped context for the given key,\n * that context will be returned.\n * Otherwise, the given context will be returned as-is.\n *\n * This should be used for valueToTerm cases that are not objects.\n * @param context A context.\n * @param key A JSON key.\n */\n async getContextSelfOrPropertyScoped(context, key) {\n const contextKeyEntry = context.getContextRaw()[key];\n if (contextKeyEntry && typeof contextKeyEntry === 'object' && '@context' in contextKeyEntry) {\n context = await this.parsingContext.parseContext(contextKeyEntry, context.getContextRaw(), true);\n }\n return context;\n }\n /**\n * If the given term is null, return an empty array, otherwise return an array with the single given term.\n * @param term A term.\n */\n nullableTermToArray(term) {\n return term ? [term] : [];\n }\n /**\n * Convert a given JSON key to an RDF predicate term,\n * based on @vocab.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param key A JSON key.\n * @return {RDF.NamedNode} An RDF named node.\n */\n predicateToTerm(context, key) {\n const expanded = context.expandTerm(key, true, this.parsingContext.getExpandOptions());\n // Immediately return if the predicate was disabled in the context\n if (!expanded) {\n return null;\n }\n // Check if the predicate is a blank node\n if (expanded[0] === '_' && expanded[1] === ':') {\n if (this.parsingContext.produceGeneralizedRdf) {\n return this.dataFactory.blankNode(expanded.substr(2));\n }\n else {\n return null;\n }\n }\n // Check if the predicate is a valid IRI\n if (Util.isValidIri(expanded)) {\n return this.dataFactory.namedNode(expanded);\n }\n else {\n if (expanded && this.parsingContext.strictValues) {\n this.parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Invalid predicate IRI: ${expanded}`, jsonld_context_parser_1.ERROR_CODES.INVALID_IRI_MAPPING));\n }\n else {\n return null;\n }\n }\n return null;\n }\n /**\n * Convert a given JSON key to an RDF resource term or blank node,\n * based on @base.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param key A JSON key.\n * @return {RDF.NamedNode} An RDF named node or null.\n */\n resourceToTerm(context, key) {\n if (key.startsWith('_:')) {\n return this.dataFactory.blankNode(key.substr(2));\n }\n const iri = context.expandTerm(key, false, this.parsingContext.getExpandOptions());\n if (!Util.isValidIri(iri)) {\n if (iri && this.parsingContext.strictValues) {\n this.parsingContext.emitError(new Error(`Invalid resource IRI: ${iri}`));\n }\n else {\n return null;\n }\n }\n return this.dataFactory.namedNode(iri);\n }\n /**\n * Convert a given JSON key to an RDF resource term.\n * It will do this based on the @vocab,\n * and fallback to @base.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param key A JSON key.\n * @return {RDF.NamedNode} An RDF named node or null.\n */\n createVocabOrBaseTerm(context, key) {\n if (key.startsWith('_:')) {\n return this.dataFactory.blankNode(key.substr(2));\n }\n const expandOptions = this.parsingContext.getExpandOptions();\n let expanded = context.expandTerm(key, true, expandOptions);\n if (expanded === key) {\n expanded = context.expandTerm(key, false, expandOptions);\n }\n if (!Util.isValidIri(expanded)) {\n if (expanded && this.parsingContext.strictValues && !expanded.startsWith('@')) {\n this.parsingContext.emitError(new Error(`Invalid term IRI: ${expanded}`));\n }\n else {\n return null;\n }\n }\n return this.dataFactory.namedNode(expanded);\n }\n /**\n * Ensure that the given value becomes a string.\n * @param {string | number} value A string or number.\n * @param {NamedNode} datatype The intended datatype.\n * @return {string} The returned string.\n */\n intToString(value, datatype) {\n if (typeof value === 'number') {\n if (Number.isFinite(value)) {\n const isInteger = value % 1 === 0;\n if (isInteger && (!datatype || datatype.value !== Util.XSD_DOUBLE)) {\n return Number(value).toString();\n }\n else {\n return value.toExponential(15).replace(/(\\d)0*e\\+?/, '$1E');\n }\n }\n else {\n return value > 0 ? 'INF' : '-INF';\n }\n }\n else {\n return value;\n }\n }\n /**\n * Convert a given JSON string value to an RDF term.\n * @param {number} depth The current stack depth.\n * @param {JsonLdContextNormalized} context A JSON-LD context.\n * @param {string} key The current JSON key.\n * @param {string} value A JSON value.\n * @param {NamedNode} defaultDatatype The default datatype for the given value.\n * @return {RDF.Term} An RDF term or null.\n */\n stringValueToTerm(depth, context, key, value, defaultDatatype) {\n // Check the datatype from the context\n const contextType = Util.getContextValueType(context, key);\n if (contextType) {\n if (contextType === '@id') {\n if (!defaultDatatype) {\n return this.resourceToTerm(context, this.intToString(value, defaultDatatype));\n }\n }\n else if (contextType === '@vocab') {\n if (!defaultDatatype) {\n return this.createVocabOrBaseTerm(context, this.intToString(value, defaultDatatype));\n }\n }\n else {\n defaultDatatype = this.dataFactory.namedNode(contextType);\n }\n }\n // If we don't find such a datatype, check the language from the context\n if (!defaultDatatype) {\n const contextLanguage = Util.getContextValueLanguage(context, key);\n const contextDirection = Util.getContextValueDirection(context, key);\n if (contextDirection && this.parsingContext.rdfDirection) {\n return this.createLanguageDirectionLiteral(depth, this.intToString(value, defaultDatatype), contextLanguage, contextDirection);\n }\n else {\n return this.dataFactory.literal(this.intToString(value, defaultDatatype), contextLanguage);\n }\n }\n // If all else fails, make a literal based on the default content type\n return this.dataFactory.literal(this.intToString(value, defaultDatatype), defaultDatatype);\n }\n /**\n * Create a literal for the given value with the given language and direction.\n * Auxiliary quads may be emitted.\n * @param {number} depth The current stack depth.\n * @param {string} value A string value.\n * @param {string} language A language tag.\n * @param {string} direction A direction.\n * @return {Term} An RDF term.\n */\n createLanguageDirectionLiteral(depth, value, language, direction) {\n if (this.parsingContext.rdfDirection === 'i18n-datatype') {\n // Create a datatyped literal, by encoding the language and direction into https://www.w3.org/ns/i18n#.\n if (!language) {\n language = '';\n }\n return this.dataFactory.literal(value, this.dataFactory.namedNode(`https://www.w3.org/ns/i18n#${language}_${direction}`));\n }\n else {\n // Reify the literal.\n const valueNode = this.dataFactory.blankNode();\n const graph = this.getDefaultGraph();\n this.parsingContext.emitQuad(depth, this.dataFactory.quad(valueNode, this.dataFactory.namedNode(Util.RDF + 'value'), this.dataFactory.literal(value), graph));\n if (language) {\n this.parsingContext.emitQuad(depth, this.dataFactory.quad(valueNode, this.dataFactory.namedNode(Util.RDF + 'language'), this.dataFactory.literal(language), graph));\n }\n this.parsingContext.emitQuad(depth, this.dataFactory.quad(valueNode, this.dataFactory.namedNode(Util.RDF + 'direction'), this.dataFactory.literal(direction), graph));\n return valueNode;\n }\n }\n /**\n * Stringify the given JSON object to a canonical JSON string.\n * @param value Any valid JSON value.\n * @return {string} A canonical JSON string.\n */\n valueToJsonString(value) {\n return canonicalizeJson(value);\n }\n /**\n * If the key is not a keyword, try to check if it is an alias for a keyword,\n * and if so, un-alias it.\n * @param {string} key A key, can be falsy.\n * @param {string[]} keys The path of keys.\n * @param {number} depth The depth to\n * @param {boolean} disableCache If the cache should be disabled\n * @param {JsonLdContextNormalized} context A context to unalias with,\n * will fallback to retrieving the context for the given keys.\n * @return {Promise} A promise resolving to the key itself, or another key.\n */\n async unaliasKeyword(key, keys, depth, disableCache, context) {\n // Numbers can not be an alias\n if (Number.isInteger(key)) {\n return key;\n }\n // Try to grab from cache if it was already un-aliased before.\n if (!disableCache) {\n const cachedUnaliasedKeyword = this.parsingContext.unaliasedKeywordCacheStack[depth];\n if (cachedUnaliasedKeyword) {\n return cachedUnaliasedKeyword;\n }\n }\n if (!jsonld_context_parser_1.Util.isPotentialKeyword(key)) {\n context = context || await this.parsingContext.getContext(keys);\n let unliased = context.getContextRaw()[key];\n if (unliased && typeof unliased === 'object') {\n unliased = unliased['@id'];\n }\n if (jsonld_context_parser_1.Util.isValidKeyword(unliased)) {\n key = unliased;\n }\n }\n return disableCache ? key : (this.parsingContext.unaliasedKeywordCacheStack[depth] = key);\n }\n /**\n * Unalias the keyword of the parent.\n * This adds a safety check if no parent exist.\n * @param {any[]} keys A stack of keys.\n * @param {number} depth The current depth.\n * @return {Promise} A promise resolving to the parent key, or another key.\n */\n async unaliasKeywordParent(keys, depth) {\n return await this.unaliasKeyword(depth > 0 && keys[depth - 1], keys, depth - 1);\n }\n /**\n * Un-alias all keywords in the given hash.\n * @param {{[p: string]: any}} hash A hash object.\n * @param {string[]} keys The path of keys.\n * @param {number} depth The depth.\n * @param {JsonLdContextNormalized} context A context to unalias with,\n * will fallback to retrieving the context for the given keys.\n * @return {Promise<{[p: string]: any}>} A promise resolving to the new hash.\n */\n async unaliasKeywords(hash, keys, depth, context) {\n const newHash = {};\n for (const key in hash) {\n newHash[await this.unaliasKeyword(key, keys, depth + 1, true, context)] = hash[key];\n }\n return newHash;\n }\n /**\n * Check if we are processing a literal (including JSON literals) at the given depth.\n * This will also check higher levels,\n * because if a parent is a literal,\n * then the deeper levels are definitely a literal as well.\n * @param {any[]} keys The keys.\n * @param {number} depth The depth.\n * @return {boolean} If we are processing a literal.\n */\n async isLiteral(keys, depth) {\n for (let i = depth; i >= 0; i--) {\n if (await this.unaliasKeyword(keys[i], keys, i) === '@annotation') {\n // Literals may have annotations, which require processing of inner nodes.\n return false;\n }\n if (this.parsingContext.literalStack[i] || this.parsingContext.jsonLiteralStack[i]) {\n return true;\n }\n }\n return false;\n }\n /**\n * Check how many parents should be skipped for checking the @graph for the given node.\n *\n * @param {number} depth The depth of the node.\n * @param {any[]} keys An array of keys.\n * @return {number} The graph depth offset.\n */\n async getDepthOffsetGraph(depth, keys) {\n for (let i = depth - 1; i > 0; i--) {\n if (await this.unaliasKeyword(keys[i], keys, i) === '@graph') {\n // Skip further processing if we are already in an @graph-@id or @graph-@index container\n const containers = (await EntryHandlerContainer_1.EntryHandlerContainer.getContainerHandler(this.parsingContext, keys, i)).containers;\n if (EntryHandlerContainer_1.EntryHandlerContainer.isComplexGraphContainer(containers)) {\n return -1;\n }\n return depth - i - 1;\n }\n }\n return -1;\n }\n /**\n * Check if the given subject is of a valid type.\n * This should be called when applying @reverse'd properties.\n * @param {Term} subject A subject.\n */\n validateReverseSubject(subject) {\n if (subject.termType === 'Literal') {\n throw new jsonld_context_parser_1.ErrorCoded(`Found illegal literal in subject position: ${subject.value}`, jsonld_context_parser_1.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE);\n }\n }\n /**\n * Get the default graph.\n * @return {Term} An RDF term.\n */\n getDefaultGraph() {\n return this.parsingContext.defaultGraph || this.dataFactory.defaultGraph();\n }\n /**\n * Get the current graph, while taking into account a graph that can be defined via @container: @graph.\n * If not within a graph container, the default graph will be returned.\n * @param keys The current keys.\n * @param depth The current depth.\n */\n async getGraphContainerValue(keys, depth) {\n // Default to default graph\n let graph = this.getDefaultGraph();\n // Check if we are in an @container: @graph.\n const { containers, depth: depthContainer } = await EntryHandlerContainer_1.EntryHandlerContainer\n .getContainerHandler(this.parsingContext, keys, depth);\n if ('@graph' in containers) {\n // Get the graph from the stack.\n const graphContainerIndex = EntryHandlerContainer_1.EntryHandlerContainer.getContainerGraphIndex(containers, depthContainer, keys);\n const entry = this.parsingContext.graphContainerTermStack[depthContainer];\n graph = entry ? entry[graphContainerIndex] : null;\n // Set the graph in the stack if none has been set yet.\n if (!graph) {\n let graphId = null;\n if ('@id' in containers) {\n const keyUnaliased = await this.getContainerKey(keys[depthContainer], keys, depthContainer);\n if (keyUnaliased !== null) {\n graphId = await this.resourceToTerm(await this.parsingContext.getContext(keys), keyUnaliased);\n }\n }\n if (!graphId) {\n graphId = this.dataFactory.blankNode();\n }\n if (!this.parsingContext.graphContainerTermStack[depthContainer]) {\n this.parsingContext.graphContainerTermStack[depthContainer] = {};\n }\n graph = this.parsingContext.graphContainerTermStack[depthContainer][graphContainerIndex] = graphId;\n }\n }\n return graph;\n }\n /**\n * Get the properties depth for retrieving properties.\n *\n * Typically, the properties depth will be identical to the given depth.\n *\n * The following exceptions apply:\n * * When the parent is @reverse, the depth is decremented by one.\n * * When @nest parents are found, the depth is decremented by the number of @nest parents.\n * If in combination with the exceptions above an intermediary array is discovered,\n * the depth is also decremented by this number of arrays.\n *\n * @param keys The current key chain.\n * @param depth The current depth.\n */\n async getPropertiesDepth(keys, depth) {\n let lastValidDepth = depth;\n for (let i = depth - 1; i > 0; i--) {\n if (typeof keys[i] !== 'number') { // Skip array keys\n const parentKey = await this.unaliasKeyword(keys[i], keys, i);\n if (parentKey === '@reverse') {\n return i;\n }\n else if (parentKey === '@nest') {\n lastValidDepth = i;\n }\n else {\n return lastValidDepth;\n }\n }\n }\n return lastValidDepth;\n }\n /**\n * Get the key for the current container entry.\n * @param key A key, can be falsy.\n * @param keys The key chain.\n * @param depth The current depth to get the key from.\n * @return Promise resolving to the key.\n * Null will be returned for @none entries, with aliasing taken into account.\n */\n async getContainerKey(key, keys, depth) {\n const keyUnaliased = await this.unaliasKeyword(key, keys, depth);\n return keyUnaliased === '@none' ? null : keyUnaliased;\n }\n /**\n * Check if no reverse properties are present in embedded nodes.\n * @param key The current key.\n * @param reverse If a reverse property is active.\n * @param isEmbedded If we're in an embedded node.\n */\n validateReverseInEmbeddedNode(key, reverse, isEmbedded) {\n if (isEmbedded && reverse && !this.parsingContext.rdfstarReverseInEmbedded) {\n throw new jsonld_context_parser_1.ErrorCoded(`Illegal reverse property in embedded node in ${key}`, jsonld_context_parser_1.ERROR_CODES.INVALID_EMBEDDED_NODE);\n }\n }\n /**\n * Emit a quad, with checks.\n * @param depth The current depth.\n * @param subject S\n * @param predicate P\n * @param object O\n * @param graph G\n * @param reverse If a reverse property is active.\n * @param isEmbedded If we're in an embedded node.\n */\n emitQuadChecked(depth, subject, predicate, object, graph, reverse, isEmbedded) {\n // Create a quad\n let quad;\n if (reverse) {\n this.validateReverseSubject(object);\n quad = this.dataFactory.quad(object, predicate, subject, graph);\n }\n else {\n quad = this.dataFactory.quad(subject, predicate, object, graph);\n }\n // Emit the quad, unless it was created in an embedded node\n if (isEmbedded) {\n // Embedded nodes don't inherit the active graph\n if (quad.graph.termType !== 'DefaultGraph') {\n quad = this.dataFactory.quad(quad.subject, quad.predicate, quad.object);\n }\n // Multiple embedded nodes are not allowed\n if (this.parsingContext.idStack[depth - 1]) {\n throw new jsonld_context_parser_1.ErrorCoded(`Illegal multiple properties in an embedded node`, jsonld_context_parser_1.ERROR_CODES.INVALID_EMBEDDED_NODE);\n }\n this.parsingContext.idStack[depth - 1] = [quad];\n }\n else {\n this.parsingContext.emitQuad(depth, quad);\n }\n // Flush annotations\n const annotationsBuffer = this.parsingContext.annotationsBuffer[depth];\n if (annotationsBuffer) {\n for (const annotation of annotationsBuffer) {\n this.emitAnnotation(depth, quad, annotation);\n }\n delete this.parsingContext.annotationsBuffer[depth];\n }\n }\n // This is a separate function to enable recursion\n emitAnnotation(depth, quad, annotation) {\n // Construct annotation quad\n let annotationQuad;\n if (annotation.reverse) {\n this.validateReverseSubject(annotation.object);\n annotationQuad = this.dataFactory.quad(annotation.object, annotation.predicate, quad);\n }\n else {\n annotationQuad = this.dataFactory.quad(quad, annotation.predicate, annotation.object);\n }\n // Emit annotated quad\n this.parsingContext.emitQuad(depth, annotationQuad);\n // Also emit nested annotations\n for (const nestedAnnotation of annotation.nestedAnnotations) {\n this.emitAnnotation(depth, annotationQuad, nestedAnnotation);\n }\n }\n}\nexports.Util = Util;\nUtil.XSD = 'http://www.w3.org/2001/XMLSchema#';\nUtil.XSD_BOOLEAN = Util.XSD + 'boolean';\nUtil.XSD_INTEGER = Util.XSD + 'integer';\nUtil.XSD_DOUBLE = Util.XSD + 'double';\nUtil.RDF = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#';\n//# sourceMappingURL=Util.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ContainerHandlerIdentifier = void 0;\n/**\n * Container handler for @id.\n *\n * It assumes that the current key is the identifier of the current value.\n * This will add this value to the parent node.\n */\nclass ContainerHandlerIdentifier {\n canCombineWithGraph() {\n return true;\n }\n async handle(containers, parsingContext, util, keys, value, depth) {\n let id;\n // First check if the child node already has a defined id.\n if (parsingContext.emittedStack[depth + 1] && parsingContext.idStack[depth + 1]) {\n // Use the existing identifier\n id = parsingContext.idStack[depth + 1][0];\n }\n else {\n // Create the identifier\n const keyUnaliased = await util.getContainerKey(keys[depth], keys, depth);\n const maybeId = keyUnaliased !== null\n ? await util.resourceToTerm(await parsingContext.getContext(keys), keys[depth])\n : util.dataFactory.blankNode();\n // Do nothing if the id is invalid\n if (!maybeId) {\n parsingContext.emittedStack[depth] = false; // Don't emit the predicate owning this container.\n return;\n }\n id = maybeId;\n // Insert the id into the stack so that buffered children can make us of it.\n parsingContext.idStack[depth + 1] = [id];\n }\n // Insert the id into the stack so that parents can make use of it.\n // Insert it as an array because multiple id container entries may exist\n let ids = parsingContext.idStack[depth];\n if (!ids) {\n ids = parsingContext.idStack[depth] = [];\n }\n // Only insert the term if it does not exist yet in the array.\n if (!ids.some((term) => term.equals(id))) {\n ids.push(id);\n }\n // Flush any pending flush buffers\n if (!await parsingContext.handlePendingContainerFlushBuffers()) {\n parsingContext.emittedStack[depth] = false; // Don't emit the predicate owning this container.\n }\n }\n}\nexports.ContainerHandlerIdentifier = ContainerHandlerIdentifier;\n//# sourceMappingURL=ContainerHandlerIdentifier.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ContainerHandlerIndex = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst EntryHandlerPredicate_1 = require(\"../entryhandler/EntryHandlerPredicate\");\nconst Util_1 = require(\"../Util\");\n/**\n * Container handler for @index.\n *\n * This will ignore the current key and add this entry to the parent node.\n */\nclass ContainerHandlerIndex {\n canCombineWithGraph() {\n return true;\n }\n async handle(containers, parsingContext, util, keys, value, depth) {\n if (!Array.isArray(value)) {\n const graphContainer = '@graph' in containers;\n // Check if the container is a property-based container by checking if there is a valid @index.\n const context = await parsingContext.getContext(keys);\n const indexKey = keys[depth - 1];\n const indexPropertyRaw = Util_1.Util.getContextValueIndex(context, indexKey);\n if (indexPropertyRaw) {\n // Validate the @index value\n if (jsonld_context_parser_1.Util.isPotentialKeyword(indexPropertyRaw)) {\n throw new jsonld_context_parser_1.ErrorCoded(`Keywords can not be used as @index value, got: ${indexPropertyRaw}`, jsonld_context_parser_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n if (typeof indexPropertyRaw !== 'string') {\n throw new jsonld_context_parser_1.ErrorCoded(`@index values must be strings, got: ${indexPropertyRaw}`, jsonld_context_parser_1.ERROR_CODES.INVALID_TERM_DEFINITION);\n }\n // When @index is used, values must be node values, unless @type: @id is defined in the context\n if (typeof value !== 'object') {\n // Error if we don't have @type: @id\n if (Util_1.Util.getContextValueType(context, indexKey) !== '@id') {\n throw new jsonld_context_parser_1.ErrorCoded(`Property-based index containers require nodes as values or strings with @type: @id, but got: ${value}`, jsonld_context_parser_1.ERROR_CODES.INVALID_VALUE_OBJECT);\n }\n // Add an @id to the stack, so our expanded @index value can make use of it\n const id = util.resourceToTerm(context, value);\n if (id) {\n parsingContext.idStack[depth + 1] = [id];\n }\n }\n // Expand the @index value\n const indexProperty = util.createVocabOrBaseTerm(context, indexPropertyRaw);\n if (indexProperty) {\n const indexValues = await util.valueToTerm(context, indexPropertyRaw, await util.getContainerKey(keys[depth], keys, depth), depth, keys);\n if (graphContainer) {\n // When we're in a graph container, attach the index to the graph identifier\n const graphId = await util.getGraphContainerValue(keys, depth + 1);\n for (const indexValue of indexValues) {\n parsingContext.emitQuad(depth, util.dataFactory.quad(graphId, indexProperty, indexValue, util.getDefaultGraph()));\n }\n }\n else {\n // Otherwise, attach the index to the node identifier\n for (const indexValue of indexValues) {\n await EntryHandlerPredicate_1.EntryHandlerPredicate.handlePredicateObject(parsingContext, util, keys, depth + 1, indexProperty, indexValue, false, false, false);\n }\n }\n }\n }\n const depthOffset = graphContainer ? 2 : 1;\n await parsingContext.newOnValueJob(keys.slice(0, keys.length - depthOffset), value, depth - depthOffset, true);\n // Flush any pending flush buffers\n await parsingContext.handlePendingContainerFlushBuffers();\n }\n parsingContext.emittedStack[depth] = false; // We have emitted a level higher\n }\n}\nexports.ContainerHandlerIndex = ContainerHandlerIndex;\n//# sourceMappingURL=ContainerHandlerIndex.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ContainerHandlerLanguage = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\n/**\n * Container handler for @language.\n *\n * It assumes that the current key is the language of the current value.\n * This will add this value to the parent node.\n */\nclass ContainerHandlerLanguage {\n canCombineWithGraph() {\n return false;\n }\n async handle(containers, parsingContext, util, keys, value, depth) {\n const language = await util.getContainerKey(keys[depth], keys, depth);\n if (Array.isArray(value)) {\n // No type-checking needed, will be handled on each value when this handler is called recursively.\n value = value.map((subValue) => ({ '@value': subValue, '@language': language }));\n }\n else {\n if (typeof value !== 'string') {\n throw new jsonld_context_parser_1.ErrorCoded(`Got invalid language map value, got '${JSON.stringify(value)}', but expected string`, jsonld_context_parser_1.ERROR_CODES.INVALID_LANGUAGE_MAP_VALUE);\n }\n value = { '@value': value, '@language': language };\n }\n await parsingContext.newOnValueJob(keys.slice(0, keys.length - 1), value, depth - 1, true);\n parsingContext.emittedStack[depth] = false; // We have emitted a level higher\n }\n}\nexports.ContainerHandlerLanguage = ContainerHandlerLanguage;\n//# sourceMappingURL=ContainerHandlerLanguage.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ContainerHandlerType = void 0;\nconst EntryHandlerPredicate_1 = require(\"../entryhandler/EntryHandlerPredicate\");\nconst Util_1 = require(\"../Util\");\n/**\n * Container handler for @type.\n *\n * This will add this entry to the parent node, and use the current key as an rdf:type value.\n */\nclass ContainerHandlerType {\n canCombineWithGraph() {\n return false;\n }\n async handle(containers, parsingContext, util, keys, value, depth) {\n if (!Array.isArray(value)) {\n if (typeof value === 'string') {\n // Determine the @type of the container\n const context = await parsingContext.getContext(keys);\n const containerTypeType = Util_1.Util.getContextValueType(context, keys[depth - 1]);\n // String values refer to node references\n const id = containerTypeType === '@vocab'\n ? await util.createVocabOrBaseTerm(context, value)\n : await util.resourceToTerm(context, value);\n if (id) {\n // Handle the value of this node as @id, which will also cause the predicate from above to be emitted.\n const subValue = { '@id': id.termType === 'NamedNode' ? id.value : value };\n await parsingContext.newOnValueJob(keys.slice(0, keys.length - 1), subValue, depth - 1, true);\n // Set the id in the stack so it can be used for the rdf:type handling later on\n parsingContext.idStack[depth + 1] = [id];\n }\n }\n else {\n // Other values are handled by handling them as a proper job\n // Check needed for cases where entries don't have an explicit @id\n const entryHasIdentifier = !!parsingContext.idStack[depth + 1];\n // Handle the value of this node, which will also cause the predicate from above to be emitted.\n if (!entryHasIdentifier) {\n delete parsingContext.idStack[depth]; // Force new (blank node) identifier\n }\n await parsingContext.newOnValueJob(keys.slice(0, keys.length - 1), value, depth - 1, true);\n if (!entryHasIdentifier) {\n parsingContext.idStack[depth + 1] = parsingContext.idStack[depth]; // Copy the id to the child node, for @type\n }\n }\n // Identify the type to emit.\n const keyOriginal = await util.getContainerKey(keys[depth], keys, depth);\n const type = keyOriginal !== null\n ? util.createVocabOrBaseTerm(await parsingContext.getContext(keys), keyOriginal)\n : null;\n if (type) {\n // Push the type to the stack using the rdf:type predicate\n await EntryHandlerPredicate_1.EntryHandlerPredicate.handlePredicateObject(parsingContext, util, keys, depth + 1, util.rdfType, type, false, false, false);\n }\n // Flush any pending flush buffers\n await parsingContext.handlePendingContainerFlushBuffers();\n }\n parsingContext.emittedStack[depth] = false; // Don't emit the predicate owning this container.\n }\n}\nexports.ContainerHandlerType = ContainerHandlerType;\n//# sourceMappingURL=ContainerHandlerType.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerArrayValue = void 0;\nconst Util_1 = require(\"../Util\");\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\n/**\n * Handles values that are part of an array.\n */\nclass EntryHandlerArrayValue {\n isPropertyHandler() {\n return false;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n return this.test(parsingContext, util, null, keys, depth);\n }\n async test(parsingContext, util, key, keys, depth) {\n return typeof keys[depth] === 'number';\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n let parentKey = await util.unaliasKeywordParent(keys, depth);\n // Check if we have an anonymous list\n if (parentKey === '@list') {\n // Our value is part of an array\n // Determine the list root key\n let listRootKey = null;\n let listRootDepth = 0;\n for (let i = depth - 2; i > 0; i--) {\n const keyOption = keys[i];\n if (typeof keyOption === 'string' || typeof keyOption === 'number') {\n listRootDepth = i;\n listRootKey = keyOption;\n break;\n }\n }\n if (listRootKey !== null) {\n // Emit the given objects as list elements\n const values = await util.valueToTerm(await parsingContext.getContext(keys), listRootKey, value, depth, keys);\n for (const object of values) {\n await this.handleListElement(parsingContext, util, object, value, depth, keys.slice(0, listRootDepth), listRootDepth);\n }\n // If no values were found, emit a falsy list element to force an empty RDF list to be emitted.\n if (values.length === 0) {\n await this.handleListElement(parsingContext, util, null, value, depth, keys.slice(0, listRootDepth), listRootDepth);\n }\n }\n }\n else if (parentKey === '@set') {\n // Our value is part of a set, so we just add it to the parent-parent\n await parsingContext.newOnValueJob(keys.slice(0, -2), value, depth - 2, false);\n }\n else if (parentKey !== undefined && parentKey !== '@type') {\n // Buffer our value using the parent key as predicate\n // Determine the first parent key that is *not* an array key\n // This is needed in case we have an @list container with nested arrays,\n // where each of them should produce nested RDF lists.\n for (let i = depth - 1; i > 0; i--) {\n if (typeof keys[i] !== 'number') {\n parentKey = await util.unaliasKeyword(keys[i], keys, i);\n break;\n }\n }\n // Check if the predicate is marked as an @list in the context\n const parentContext = await parsingContext.getContext(keys.slice(0, -1));\n if ('@list' in Util_1.Util.getContextValueContainer(parentContext, parentKey)) {\n // Our value is part of an array\n // Emit the given objects as list elements\n parsingContext.emittedStack[depth + 1] = true; // Ensure the creation of bnodes for empty nodes\n const values = await util.valueToTerm(await parsingContext.getContext(keys), parentKey, value, depth, keys);\n for (const object of values) {\n await this.handleListElement(parsingContext, util, object, value, depth, keys.slice(0, -1), depth - 1);\n }\n // If no values were found, emit a falsy list element to force an empty RDF list to be emitted.\n if (values.length === 0) {\n await this.handleListElement(parsingContext, util, null, value, depth, keys.slice(0, -1), depth - 1);\n }\n }\n else {\n // Copy the stack values up one level so that the next job can access them.\n parsingContext.shiftStack(depth, 1);\n // Execute the job one level higher\n await parsingContext.newOnValueJob(keys.slice(0, -1), value, depth - 1, false);\n // Remove any defined contexts at this level to avoid it to propagate to the next array element.\n parsingContext.contextTree.removeContext(keys.slice(0, -1));\n }\n }\n }\n async handleListElement(parsingContext, util, value, valueOriginal, depth, listRootKeys, listRootDepth) {\n // Buffer our value as an RDF list using the listRootKey as predicate\n let listPointer = parsingContext.listPointerStack[depth];\n if (valueOriginal !== null && (await util.unaliasKeywords(valueOriginal, listRootKeys, depth))['@value'] !== null) {\n if (!listPointer || !listPointer.value) {\n const linkTerm = util.dataFactory.blankNode();\n listPointer = { value: linkTerm, listRootDepth, listId: linkTerm };\n }\n else {\n // rdf:rest links are always emitted before the next element,\n // as the blank node identifier is only created at that point.\n // Because of this reason, the final rdf:nil is emitted when the stack depth is decreased.\n const newLinkTerm = util.dataFactory.blankNode();\n parsingContext.emitQuad(depth, util.dataFactory.quad(listPointer.value, util.rdfRest, newLinkTerm, util.getDefaultGraph()));\n // Update the list pointer for the next element\n listPointer.value = newLinkTerm;\n }\n // Emit a list element for the current value\n // Omit rdf:first if the value is invalid\n if (value) {\n parsingContext.emitQuad(depth, util.dataFactory.quad(listPointer.value, util.rdfFirst, value, util.getDefaultGraph()));\n }\n }\n else {\n // A falsy list element if found.\n // Mark it as an rdf:nil list until another valid list element comes in\n if (!listPointer) {\n listPointer = { listRootDepth, listId: util.rdfNil };\n }\n }\n parsingContext.listPointerStack[depth] = listPointer;\n // Error if an annotation was defined\n if (parsingContext.rdfstar && parsingContext.annotationsBuffer[depth]) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal annotation inside a list`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n }\n}\nexports.EntryHandlerArrayValue = EntryHandlerArrayValue;\n//# sourceMappingURL=EntryHandlerArrayValue.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerContainer = void 0;\nconst ContainerHandlerIdentifier_1 = require(\"../containerhandler/ContainerHandlerIdentifier\");\nconst ContainerHandlerIndex_1 = require(\"../containerhandler/ContainerHandlerIndex\");\nconst ContainerHandlerLanguage_1 = require(\"../containerhandler/ContainerHandlerLanguage\");\nconst ContainerHandlerType_1 = require(\"../containerhandler/ContainerHandlerType\");\nconst Util_1 = require(\"../Util\");\n/**\n * Handles values that are part of a container type (like @index),\n * as specified by {@link IContainerHandler}.\n */\nclass EntryHandlerContainer {\n /**\n * Check fit the given container is a simple @graph container.\n * Concretely, it will check if no @index or @id is active as well.\n * @param containers A container hash.\n */\n static isSimpleGraphContainer(containers) {\n return '@graph' in containers\n && (('@set' in containers && Object.keys(containers).length === 2) || Object.keys(containers).length === 1);\n }\n /**\n * Check fit the given container is a complex @graph container.\n * Concretely, it will check if @index or @id is active as well next to @graph.\n * @param containers A container hash.\n */\n static isComplexGraphContainer(containers) {\n return '@graph' in containers\n && (('@set' in containers && Object.keys(containers).length > 2)\n || (!('@set' in containers) && Object.keys(containers).length > 1));\n }\n /**\n * Create an graph container index that can be used for identifying a graph term inside the graphContainerTermStack.\n * @param containers The applicable containers.\n * @param depth The container depth.\n * @param keys The array of keys.\n * @return The graph index.\n */\n static getContainerGraphIndex(containers, depth, keys) {\n let isSimpleGraphContainer = EntryHandlerContainer.isSimpleGraphContainer(containers);\n let index = '';\n for (let i = depth; i < keys.length; i++) {\n if (!isSimpleGraphContainer || typeof keys[i] === 'number') {\n index += ':' + keys[i];\n }\n // Only allow a second 'real' key if in a non-simple graph container.\n if (!isSimpleGraphContainer && typeof keys[i] !== 'number') {\n isSimpleGraphContainer = true;\n }\n }\n return index;\n }\n /**\n * Return the applicable container type at the given depth.\n *\n * This will ignore any arrays in the key chain.\n *\n * @param {ParsingContext} parsingContext A parsing context.\n * @param {any[]} keys The array of keys.\n * @param {number} depth The current depth.\n * @return {Promise<{ containers: {[typeName: string]: boolean}, depth: number, fallback: boolean }>}\n * All applicable containers for the given depth,\n * the `depth` of the container root (can change when arrays are in the key chain),\n * and the `fallback` flag that indicates if the default container type was returned\n * (i.e., no dedicated container type is defined).\n */\n static async getContainerHandler(parsingContext, keys, depth) {\n const fallback = {\n containers: { '@set': true },\n depth,\n fallback: true,\n };\n // A flag that is enabled when @graph container should be tested in next iteration\n let checkGraphContainer = false;\n // Iterate from deeper to higher\n const context = await parsingContext.getContext(keys, 2);\n for (let i = depth - 1; i >= 0; i--) {\n if (typeof keys[i] !== 'number') { // Skip array keys\n // @graph containers without any other types are one level less deep, and require special handling\n const containersSelf = Util_1.Util.getContextValue(context, '@container', keys[i], false);\n if (containersSelf && EntryHandlerContainer.isSimpleGraphContainer(containersSelf)) {\n return {\n containers: containersSelf,\n depth: i + 1,\n fallback: false,\n };\n }\n const containersParent = Util_1.Util.getContextValue(context, '@container', keys[i - 1], false);\n if (!containersParent) { // If we have the fallback container value\n if (checkGraphContainer) {\n // Return false if we were already expecting a @graph-@id of @graph-@index container\n return fallback;\n }\n // Check parent-parent, we may be in a @graph-@id of @graph-@index container, which have two levels\n checkGraphContainer = true;\n }\n else {\n // We had an invalid container next iteration, so we now have to check if we were in an @graph container\n const graphContainer = '@graph' in containersParent;\n // We're in a regular container\n for (const containerHandleName in EntryHandlerContainer.CONTAINER_HANDLERS) {\n if (containersParent[containerHandleName]) {\n if (graphContainer) {\n // Only accept graph containers if their combined handlers can handle them.\n if (EntryHandlerContainer.CONTAINER_HANDLERS[containerHandleName].canCombineWithGraph()) {\n return {\n containers: containersParent,\n depth: i,\n fallback: false,\n };\n }\n else {\n return fallback;\n }\n }\n else {\n // Only accept if we were not expecting a @graph-@id of @graph-@index container\n if (checkGraphContainer) {\n return fallback;\n }\n else {\n return {\n containers: containersParent,\n depth: i,\n fallback: false,\n };\n }\n }\n }\n }\n // Fail if no valid container handlers were found\n return fallback;\n }\n }\n }\n return fallback;\n }\n /**\n * Check if we are handling a value at the given depth\n * that is part of something that should be handled as a container,\n * AND if this container should be buffered, so that it can be handled by a dedicated container handler.\n *\n * For instance, any container with @graph will NOT be buffered.\n *\n * This will ignore any arrays in the key chain.\n *\n * @param {ParsingContext} parsingContext A parsing context.\n * @param {any[]} keys The array of keys.\n * @param {number} depth The current depth.\n * @return {Promise} If we are in the scope of a container handler.\n */\n static async isBufferableContainerHandler(parsingContext, keys, depth) {\n const handler = await EntryHandlerContainer.getContainerHandler(parsingContext, keys, depth);\n return !handler.fallback && !('@graph' in handler.containers);\n }\n isPropertyHandler() {\n return false;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n return !!await this.test(parsingContext, util, null, keys, depth);\n }\n async test(parsingContext, util, key, keys, depth) {\n const containers = Util_1.Util.getContextValueContainer(await parsingContext.getContext(keys, 2), keys[depth - 1]);\n for (const containerName in EntryHandlerContainer.CONTAINER_HANDLERS) {\n if (containers[containerName]) {\n return {\n containers,\n handler: EntryHandlerContainer.CONTAINER_HANDLERS[containerName],\n };\n }\n }\n return null;\n }\n async handle(parsingContext, util, key, keys, value, depth, testResult) {\n return testResult.handler.handle(testResult.containers, parsingContext, util, keys, value, depth);\n }\n}\nexports.EntryHandlerContainer = EntryHandlerContainer;\nEntryHandlerContainer.CONTAINER_HANDLERS = {\n '@id': new ContainerHandlerIdentifier_1.ContainerHandlerIdentifier(),\n '@index': new ContainerHandlerIndex_1.ContainerHandlerIndex(),\n '@language': new ContainerHandlerLanguage_1.ContainerHandlerLanguage(),\n '@type': new ContainerHandlerType_1.ContainerHandlerType(),\n};\n//# sourceMappingURL=EntryHandlerContainer.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerInvalidFallback = void 0;\n/**\n * A catch-all for properties, that will either emit an error or ignore,\n * depending on whether or not the `strictValues` property is set.\n */\nclass EntryHandlerInvalidFallback {\n isPropertyHandler() {\n return false;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n return false;\n }\n async test(parsingContext, util, key, keys, depth) {\n return true;\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n parsingContext.emittedStack[depth] = false;\n }\n}\nexports.EntryHandlerInvalidFallback = EntryHandlerInvalidFallback;\n//# sourceMappingURL=EntryHandlerInvalidFallback.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerPredicate = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst Util_1 = require(\"../Util\");\n/**\n * Interprets keys as predicates.\n * The most common case in JSON-LD processing.\n */\nclass EntryHandlerPredicate {\n /**\n * Handle the given predicate-object by either emitting it,\n * or by placing it in the appropriate stack for later emission when no @graph and/or @id has been defined.\n * @param {ParsingContext} parsingContext A parsing context.\n * @param {Util} util A utility instance.\n * @param {any[]} keys A stack of keys.\n * @param {number} depth The current depth.\n * @param {Term} predicate The predicate.\n * @param {Term} object The object.\n * @param {boolean} reverse If the property is reversed.\n * @param {boolean} isEmbedded If the property exists in an embedded node as direct child.\n * @param {boolean} isAnnotation If the property exists in an annotation object.\n * @return {Promise} A promise resolving when handling is done.\n */\n static async handlePredicateObject(parsingContext, util, keys, depth, predicate, object, reverse, isEmbedded, isAnnotation) {\n const depthProperties = await util.getPropertiesDepth(keys, depth);\n const depthOffsetGraph = await util.getDepthOffsetGraph(depth, keys);\n const depthPropertiesGraph = depth - depthOffsetGraph;\n const subjects = parsingContext.idStack[depthProperties];\n if (subjects && !isAnnotation) {\n // Emit directly if the @id was already defined\n for (const subject of subjects) {\n // Check if we're in a @graph context\n const atGraph = depthOffsetGraph >= 0;\n if (atGraph) {\n const graphs = parsingContext.idStack[depthPropertiesGraph - 1];\n if (graphs) {\n for (const graph of graphs) {\n // Emit our quad if graph @id is known\n util.emitQuadChecked(depth, subject, predicate, object, graph, reverse, isEmbedded);\n }\n }\n else {\n // Buffer our triple if graph @id is not known yet.\n if (reverse) {\n util.validateReverseSubject(object);\n parsingContext.getUnidentifiedGraphBufferSafe(depthPropertiesGraph - 1).push({ subject: object, predicate, object: subject, isEmbedded });\n }\n else {\n parsingContext.getUnidentifiedGraphBufferSafe(depthPropertiesGraph - 1)\n .push({ subject, predicate, object, isEmbedded });\n }\n }\n }\n else {\n // Emit if no @graph was applicable\n const graph = await util.getGraphContainerValue(keys, depthProperties);\n util.emitQuadChecked(depth, subject, predicate, object, graph, reverse, isEmbedded);\n }\n }\n }\n else {\n // Buffer until our @id becomes known, or we go up the stack\n if (reverse) {\n util.validateReverseSubject(object);\n }\n // Either push to the annotations or the actual value buffer\n if (isAnnotation) {\n // Only add to buffer if rdfstar is enabled\n if (parsingContext.rdfstar) {\n // Error if an @id was defined\n if (parsingContext.idStack[depth]) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal @id inside an annotation: ${parsingContext.idStack[depth][0].value}`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n // Error if we're in an embedded node\n for (let i = 0; i < depth; i++) {\n if (await util.unaliasKeyword(keys[i], keys, i) === '@id') {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal annotation inside an embedded node`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n }\n // Store new annotation in the buffer\n const annotationsBuffer = parsingContext.getAnnotationsBufferSafe(depthProperties);\n const newAnnotation = { predicate, object, reverse, nestedAnnotations: [], depth: depthProperties };\n annotationsBuffer.push(newAnnotation);\n // Check in the buffer if any annotations were defined at a deeper depth,\n // if so, they are considered nested annotations.\n for (let i = annotationsBuffer.length - 2; i >= 0; i--) {\n // We iterate in reverse order, to enable easy item removal from the back.\n const existingAnnotation = annotationsBuffer[i];\n if (existingAnnotation.depth > depthProperties) {\n newAnnotation.nestedAnnotations.push(existingAnnotation);\n annotationsBuffer.splice(i, 1);\n }\n }\n }\n }\n else {\n parsingContext.getUnidentifiedValueBufferSafe(depthProperties).push({ predicate, object, reverse, isEmbedded });\n }\n }\n }\n isPropertyHandler() {\n return true;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n const key = keys[depth];\n if (key) {\n const context = await parsingContext.getContext(keys);\n if (!parsingContext.jsonLiteralStack[depth] && await util.predicateToTerm(context, keys[depth])) {\n // If this valid predicate is of type @json, mark it so in the stack so that no deeper handling of nodes occurs.\n if (Util_1.Util.getContextValueType(context, key) === '@json') {\n parsingContext.jsonLiteralStack[depth + 1] = true;\n }\n return true;\n }\n }\n return false;\n }\n async test(parsingContext, util, key, keys, depth) {\n return keys[depth];\n }\n async handle(parsingContext, util, key, keys, value, depth, testResult) {\n const keyOriginal = keys[depth];\n const context = await parsingContext.getContext(keys);\n const predicate = await util.predicateToTerm(context, key);\n if (predicate) {\n const objects = await util.valueToTerm(context, key, value, depth, keys);\n if (objects.length) {\n for (let object of objects) {\n // Based on parent key, check if reverse, embedded, and annotation.\n let parentKey = await util.unaliasKeywordParent(keys, depth);\n const reverse = Util_1.Util.isPropertyReverse(context, keyOriginal, parentKey);\n let parentDepthOffset = 0;\n while (parentKey === '@reverse' || typeof parentKey === 'number') {\n // Check parent of parent when checking while we're in an array or in @reverse\n if (typeof parentKey === 'number') {\n parentDepthOffset++;\n }\n else {\n depth--;\n }\n parentKey = await util.unaliasKeywordParent(keys, depth - parentDepthOffset);\n }\n const isEmbedded = Util_1.Util.isPropertyInEmbeddedNode(parentKey);\n util.validateReverseInEmbeddedNode(key, reverse, isEmbedded);\n const isAnnotation = Util_1.Util.isPropertyInAnnotationObject(parentKey);\n if (value) {\n // Special case if our term was defined as an @list, but does not occur in an array,\n // In that case we just emit it as an RDF list with a single element.\n const listValueContainer = '@list' in Util_1.Util.getContextValueContainer(context, key);\n if (listValueContainer || value['@list']) {\n if (((listValueContainer && !Array.isArray(value) && !value['@list'])\n || (value['@list'] && !Array.isArray(value['@list'])))\n && object !== util.rdfNil) {\n const listPointer = util.dataFactory.blankNode();\n parsingContext.emitQuad(depth, util.dataFactory.quad(listPointer, util.rdfRest, util.rdfNil, util.getDefaultGraph()));\n parsingContext.emitQuad(depth, util.dataFactory.quad(listPointer, util.rdfFirst, object, util.getDefaultGraph()));\n object = listPointer;\n }\n // Lists are not allowed in @reverse'd properties\n if (reverse && !parsingContext.allowSubjectList) {\n throw new jsonld_context_parser_1.ErrorCoded(`Found illegal list value in subject position at ${key}`, jsonld_context_parser_1.ERROR_CODES.INVALID_REVERSE_PROPERTY_VALUE);\n }\n }\n }\n await EntryHandlerPredicate.handlePredicateObject(parsingContext, util, keys, depth, predicate, object, reverse, isEmbedded, isAnnotation);\n }\n }\n }\n }\n}\nexports.EntryHandlerPredicate = EntryHandlerPredicate;\n//# sourceMappingURL=EntryHandlerPredicate.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeyword = void 0;\n/**\n * An abstract keyword entry handler.\n */\nclass EntryHandlerKeyword {\n constructor(keyword) {\n this.keyword = keyword;\n }\n isPropertyHandler() {\n return false;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n return false;\n }\n async test(parsingContext, util, key, keys, depth) {\n return key === this.keyword;\n }\n}\nexports.EntryHandlerKeyword = EntryHandlerKeyword;\n//# sourceMappingURL=EntryHandlerKeyword.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordAnnotation = void 0;\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\n/**\n * Handles @annotation entries.\n */\nclass EntryHandlerKeywordAnnotation extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@annotation');\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n // Validate value\n if (typeof value === 'string' || (typeof value === 'object' && value['@value'])) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found illegal annotation value: ${JSON.stringify(value)}`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n // Rest of the processing is done as regular nodes\n }\n}\nexports.EntryHandlerKeywordAnnotation = EntryHandlerKeywordAnnotation;\n//# sourceMappingURL=EntryHandlerKeywordAnnotation.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordContext = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @context entries.\n */\nclass EntryHandlerKeywordContext extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@context');\n }\n isStackProcessor() {\n return false;\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n // Error if an out-of-order context was found when support is not enabled.\n if (parsingContext.streamingProfile\n && (parsingContext.processingStack[depth]\n || parsingContext.processingType[depth]\n || parsingContext.idStack[depth] !== undefined)) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded('Found an out-of-order context, while streaming is enabled.' +\n '(disable `streamingProfile`)', jsonld_context_parser_1.ERROR_CODES.INVALID_STREAMING_KEY_ORDER));\n }\n // Find the parent context to inherit from.\n // We actually request a context for the current depth (with fallback to parent)\n // because we want to take into account any property-scoped contexts that are defined for this depth.\n const parentContext = parsingContext.getContext(keys);\n // Set the context for this scope\n const context = parsingContext.parseContext(value, (await parentContext).getContextRaw());\n parsingContext.contextTree.setContext(keys.slice(0, -1), context);\n parsingContext.emitContext(value);\n await parsingContext.validateContext(await context);\n }\n}\nexports.EntryHandlerKeywordContext = EntryHandlerKeywordContext;\n//# sourceMappingURL=EntryHandlerKeywordContext.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordGraph = void 0;\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @graph entries.\n */\nclass EntryHandlerKeywordGraph extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@graph');\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n // The current identifier identifies a graph for the deeper level.\n parsingContext.graphStack[depth + 1] = true;\n }\n}\nexports.EntryHandlerKeywordGraph = EntryHandlerKeywordGraph;\n//# sourceMappingURL=EntryHandlerKeywordGraph.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordId = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @id entries.\n */\nclass EntryHandlerKeywordId extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@id');\n }\n isStackProcessor() {\n return false;\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n if (typeof value !== 'string') {\n // JSON-LD-star allows @id object values\n if (parsingContext.rdfstar && typeof value === 'object') {\n const valueKeys = Object.keys(value);\n if (valueKeys.length === 1 && valueKeys[0] === '@id') {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Invalid embedded node without property with @id ${value['@id']}`, jsonld_context_parser_1.ERROR_CODES.INVALID_EMBEDDED_NODE));\n }\n }\n else {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found illegal @id '${value}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_ID_VALUE));\n }\n return;\n }\n // Determine the canonical place for this id.\n // For example, @nest parents should be ignored.\n const depthProperties = await util.getPropertiesDepth(keys, depth);\n // Error if an @id for this node already existed.\n if (parsingContext.idStack[depthProperties] !== undefined) {\n if (parsingContext.idStack[depthProperties][0].listHead) {\n // Error if an @list was already defined for this node\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found illegal neighbouring entries next to @list for key: '${keys[depth - 1]}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_SET_OR_LIST_OBJECT));\n }\n else {\n // Otherwise, the previous id was just because of an @id entry.\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found duplicate @ids '${parsingContext\n .idStack[depthProperties][0].value}' and '${value}'`, jsonld_context_parser_1.ERROR_CODES.COLLIDING_KEYWORDS));\n }\n }\n // Error if an annotation was defined\n if (parsingContext.rdfstar && parsingContext.annotationsBuffer[depth]) {\n for (const annotation of parsingContext.annotationsBuffer[depth]) {\n if (annotation.depth === depth) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal @id inside an annotation: ${value}`, jsonld_context_parser_1.ERROR_CODES.INVALID_ANNOTATION));\n }\n }\n }\n // Save our @id on the stack\n parsingContext.idStack[depthProperties] = util.nullableTermToArray(await util.resourceToTerm(await parsingContext.getContext(keys), value));\n }\n}\nexports.EntryHandlerKeywordId = EntryHandlerKeywordId;\n//# sourceMappingURL=EntryHandlerKeywordId.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordIncluded = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @included entries.\n */\nclass EntryHandlerKeywordIncluded extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@included');\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n if (typeof value !== 'object') {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found illegal @included '${value}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_INCLUDED_VALUE));\n }\n const valueUnliased = await util.unaliasKeywords(value, keys, depth, await parsingContext.getContext(keys));\n if ('@value' in valueUnliased) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal @included @value node '${JSON.stringify(value)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_INCLUDED_VALUE));\n }\n if ('@list' in valueUnliased) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an illegal @included @list node '${JSON.stringify(value)}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_INCLUDED_VALUE));\n }\n parsingContext.emittedStack[depth] = false;\n }\n}\nexports.EntryHandlerKeywordIncluded = EntryHandlerKeywordIncluded;\n//# sourceMappingURL=EntryHandlerKeywordIncluded.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordNest = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @nest entries.\n */\nclass EntryHandlerKeywordNest extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@nest');\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n if (typeof value !== 'object') {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found invalid @nest entry for '${key}': '${value}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_NEST_VALUE));\n }\n if ('@value' in await util.unaliasKeywords(value, keys, depth, await parsingContext.getContext(keys))) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found an invalid @value node for '${key}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_NEST_VALUE));\n }\n parsingContext.emittedStack[depth] = false;\n }\n}\nexports.EntryHandlerKeywordNest = EntryHandlerKeywordNest;\n//# sourceMappingURL=EntryHandlerKeywordNest.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordType = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst Util_1 = require(\"../../Util\");\nconst EntryHandlerPredicate_1 = require(\"../EntryHandlerPredicate\");\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @graph entries.\n */\nclass EntryHandlerKeywordType extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@type');\n }\n isStackProcessor() {\n return false;\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n const keyOriginal = keys[depth];\n // The current identifier identifies an rdf:type predicate.\n // But we only emit it once the node closes,\n // as it's possible that the @type is used to identify the datatype of a literal, which we ignore here.\n const context = await parsingContext.getContext(keys);\n const predicate = util.rdfType;\n const parentKey = await util.unaliasKeywordParent(keys, depth);\n const reverse = Util_1.Util.isPropertyReverse(context, keyOriginal, parentKey);\n const isEmbedded = Util_1.Util.isPropertyInEmbeddedNode(parentKey);\n util.validateReverseInEmbeddedNode(key, reverse, isEmbedded);\n const isAnnotation = Util_1.Util.isPropertyInAnnotationObject(parentKey);\n // Handle multiple values if the value is an array\n const elements = Array.isArray(value) ? value : [value];\n for (const element of elements) {\n if (typeof element !== 'string') {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Found illegal @type '${element}'`, jsonld_context_parser_1.ERROR_CODES.INVALID_TYPE_VALUE));\n }\n const type = util.createVocabOrBaseTerm(context, element);\n if (type) {\n await EntryHandlerPredicate_1.EntryHandlerPredicate.handlePredicateObject(parsingContext, util, keys, depth, predicate, type, reverse, isEmbedded, isAnnotation);\n }\n }\n // Collect type-scoped contexts if they exist\n let scopedContext = Promise.resolve(context);\n let hasTypedScopedContext = false;\n for (const element of elements.sort()) { // Spec requires lexicographical ordering\n const typeContext = Util_1.Util.getContextValue(context, '@context', element, null);\n if (typeContext) {\n hasTypedScopedContext = true;\n scopedContext = scopedContext.then((c) => parsingContext.parseContext(typeContext, c.getContextRaw()));\n }\n }\n // Error if an out-of-order type-scoped context was found when support is not enabled.\n if (parsingContext.streamingProfile\n && (hasTypedScopedContext || !parsingContext.streamingProfileAllowOutOfOrderPlainType)\n && (parsingContext.processingStack[depth] || parsingContext.idStack[depth])) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded('Found an out-of-order type-scoped context, while streaming is enabled.' +\n '(disable `streamingProfile`)', jsonld_context_parser_1.ERROR_CODES.INVALID_STREAMING_KEY_ORDER));\n }\n // If at least least one type-scoped context applies, set them in the tree.\n if (hasTypedScopedContext) {\n // Do not propagate by default\n scopedContext = scopedContext.then((c) => {\n if (!('@propagate' in c.getContextRaw())) {\n c.getContextRaw()['@propagate'] = false;\n }\n // Set the original context at this depth as a fallback\n // This is needed when a context was already defined at the given depth,\n // and this context needs to remain accessible from child nodes when propagation is disabled.\n if (c.getContextRaw()['@propagate'] === false) {\n c.getContextRaw()['@__propagateFallback'] = context.getContextRaw();\n }\n return c;\n });\n // Set the new context in the context tree\n parsingContext.contextTree.setContext(keys.slice(0, keys.length - 1), scopedContext);\n }\n // Flag that type has been processed at this depth\n parsingContext.processingType[depth] = true;\n }\n}\nexports.EntryHandlerKeywordType = EntryHandlerKeywordType;\n//# sourceMappingURL=EntryHandlerKeywordType.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordUnknownFallback = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\n/**\n * A catch-all for keywords, that will either emit an error or ignore,\n * depending on whether or not the `strictValues` property is set.\n */\nclass EntryHandlerKeywordUnknownFallback {\n isPropertyHandler() {\n return false;\n }\n isStackProcessor() {\n return true;\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n const key = await util.unaliasKeyword(keys[depth], keys, depth);\n if (jsonld_context_parser_1.Util.isPotentialKeyword(key)) {\n // Don't emit anything inside free-floating lists\n if (!inProperty) {\n if (key === '@list') {\n return false;\n }\n }\n return true;\n }\n return false;\n }\n async test(parsingContext, util, key, keys, depth) {\n return jsonld_context_parser_1.Util.isPotentialKeyword(key);\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n const keywordType = EntryHandlerKeywordUnknownFallback.VALID_KEYWORDS_TYPES[key];\n if (keywordType !== undefined) {\n if (keywordType && typeof value !== keywordType.type) {\n parsingContext.emitError(new jsonld_context_parser_1.ErrorCoded(`Invalid value type for '${key}' with value '${value}'`, keywordType.errorCode));\n }\n }\n else if (parsingContext.strictValues) {\n parsingContext.emitError(new Error(`Unknown keyword '${key}' with value '${value}'`));\n }\n parsingContext.emittedStack[depth] = false;\n }\n}\nexports.EntryHandlerKeywordUnknownFallback = EntryHandlerKeywordUnknownFallback;\nEntryHandlerKeywordUnknownFallback.VALID_KEYWORDS_TYPES = {\n '@index': { type: 'string', errorCode: jsonld_context_parser_1.ERROR_CODES.INVALID_INDEX_VALUE },\n '@list': null,\n '@reverse': { type: 'object', errorCode: jsonld_context_parser_1.ERROR_CODES.INVALID_REVERSE_VALUE },\n '@set': null,\n '@value': null,\n};\n//# sourceMappingURL=EntryHandlerKeywordUnknownFallback.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.EntryHandlerKeywordValue = void 0;\nconst EntryHandlerKeyword_1 = require(\"./EntryHandlerKeyword\");\n/**\n * Handles @value entries.\n */\nclass EntryHandlerKeywordValue extends EntryHandlerKeyword_1.EntryHandlerKeyword {\n constructor() {\n super('@value');\n }\n async validate(parsingContext, util, keys, depth, inProperty) {\n // If this is @value, mark it so in the stack so that no deeper handling of nodes occurs.\n const key = keys[depth];\n if (key && !parsingContext.literalStack[depth] && await this.test(parsingContext, util, key, keys, depth)) {\n parsingContext.literalStack[depth] = true;\n }\n return super.validate(parsingContext, util, keys, depth, inProperty);\n }\n async test(parsingContext, util, key, keys, depth) {\n return await util.unaliasKeyword(keys[depth], keys.slice(0, keys.length - 1), depth - 1, true) === '@value';\n }\n async handle(parsingContext, util, key, keys, value, depth) {\n // If the value is valid, indicate that we are processing a literal.\n // The actual value will be determined at the parent level when the @value is part of an object,\n // because we may want to take into account additional entries such as @language.\n // See {@link Util.valueToTerm}\n // Indicate that we are processing a literal, and that no later predicates should be parsed at this depth.\n parsingContext.literalStack[depth] = true;\n // Void any buffers that we may have accumulated up until now\n delete parsingContext.unidentifiedValuesBuffer[depth];\n delete parsingContext.unidentifiedGraphsBuffer[depth];\n // Indicate that we have not emitted at this depth\n parsingContext.emittedStack[depth] = false;\n }\n}\nexports.EntryHandlerKeywordValue = EntryHandlerKeywordValue;\n//# sourceMappingURL=EntryHandlerKeywordValue.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/JsonLdSerializer\"), exports);\n__exportStar(require(\"./lib/Util\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.JsonLdSerializer = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\nconst SeparatorType_1 = require(\"./SeparatorType\");\nconst Util_1 = require(\"./Util\");\nconst readable_stream_1 = require(\"readable-stream\");\n/**\n * A stream transformer that transforms an {@link RDF.Stream} into a JSON-LD (text) stream.\n */\nclass JsonLdSerializer extends readable_stream_1.Transform {\n constructor(options = {}) {\n super({ objectMode: true });\n this.indentation = 0;\n this.options = options;\n // Parse the context\n if (this.options.baseIRI && !this.options.context) {\n this.options.context = { '@base': this.options.baseIRI };\n }\n if (this.options.context) {\n this.originalContext = this.options.context;\n this.context = new jsonld_context_parser_1.ContextParser().parse(this.options.context, { baseIRI: this.options.baseIRI });\n }\n else {\n this.context = Promise.resolve(new jsonld_context_parser_1.JsonLdContextNormalized({}));\n }\n }\n /**\n * Parses the given text stream into a quad stream.\n * @param {NodeJS.EventEmitter} stream A text stream.\n * @return {NodeJS.EventEmitter} A quad stream.\n */\n import(stream) {\n const output = new readable_stream_1.PassThrough({ objectMode: true });\n stream.on('error', (error) => parsed.emit('error', error));\n stream.on('data', (data) => output.push(data));\n stream.on('end', () => output.push(null));\n const parsed = output.pipe(new JsonLdSerializer(this.options));\n return parsed;\n }\n /**\n * Transforms a quad into the text stream.\n * @param {Quad} quad An RDF quad.\n * @param {string} encoding An (ignored) encoding.\n * @param {module:stream.internal.TransformCallback} callback Callback that is invoked when the transformation is done\n * @private\n */\n _transform(quad, encoding, callback) {\n this.context.then((context) => {\n this.transformQuad(quad, context);\n callback();\n }).catch(callback);\n }\n /**\n * Construct a list in an RDF.Term object that can be used\n * inside a quad's object to write into the serializer\n * as a list using the @list keyword.\n * @param {RDF.Quad_Object[]} values A list of values, can be empty.\n * @return {RDF.Quad_Object} A term that should be used in the object position of the quad that is written to the serializer.\n */\n async list(values) {\n const context = await this.context;\n return {\n '@list': values.map((value) => Util_1.Util.termToValue(value, context, this.options)),\n };\n }\n /**\n * Called when the incoming stream is closed.\n * @param {module:stream.internal.TransformCallback} callback Callback that is invoked when the flushing is done.\n * @private\n */\n _flush(callback) {\n // If the stream was empty, ensure that we push the opening array\n if (!this.opened) {\n this.pushDocumentStart();\n }\n if (this.lastPredicate) {\n this.endPredicate();\n }\n if (this.lastSubject) {\n this.endSubject();\n }\n if (this.lastGraph && this.lastGraph.termType !== 'DefaultGraph') {\n this.endGraph();\n }\n this.endDocument();\n return callback(null, null);\n }\n /**\n * Transforms a quad into the text stream.\n * @param {Quad} quad An RDF quad.\n * @param {JsonLdContextNormalized} context A context for compacting.\n */\n transformQuad(quad, context) {\n // Open the array before the first quad\n if (!this.opened) {\n this.pushDocumentStart();\n }\n // Check if the subject equals the last named graph\n // In that case, we can reuse the already-existing @id node\n const lastGraphMatchesSubject = this.lastGraph && this.lastGraph.termType !== 'DefaultGraph'\n && this.lastGraph.equals(quad.subject);\n // Write graph\n if (!lastGraphMatchesSubject && (!this.lastGraph || !quad.graph.equals(this.lastGraph))) {\n // Check if the named graph equals the last subject\n // In that case, we can reuse the already-existing @id node\n let lastSubjectMatchesGraph = quad.graph.termType !== 'DefaultGraph'\n && this.lastSubject && this.lastSubject.equals(quad.graph);\n if (this.lastGraph) {\n if (this.lastGraph.termType !== 'DefaultGraph') {\n // The last graph was named\n this.endPredicate();\n this.endSubject();\n this.endGraph(true);\n lastSubjectMatchesGraph = false; // Special-case to avoid deeper nesting\n }\n else {\n // The last graph was default\n if (!lastSubjectMatchesGraph) {\n this.endPredicate();\n this.endSubject(true);\n }\n else {\n this.endPredicate(true);\n this.lastSubject = null;\n }\n }\n }\n // Push the graph\n if (quad.graph.termType !== 'DefaultGraph') {\n if (!lastSubjectMatchesGraph) {\n this.pushId(quad.graph, true, context);\n }\n this.pushSeparator(this.options.space\n ? SeparatorType_1.SeparatorType.GRAPH_FIELD_NONCOMPACT : SeparatorType_1.SeparatorType.GRAPH_FIELD_COMPACT);\n this.indentation++;\n }\n this.lastGraph = quad.graph;\n }\n // Write subject\n if (!this.lastSubject || !quad.subject.equals(this.lastSubject)) {\n if (lastGraphMatchesSubject) {\n this.endPredicate();\n this.endSubject();\n this.indentation--;\n this.pushSeparator(SeparatorType_1.SeparatorType.ARRAY_END_COMMA);\n this.lastGraph = quad.graph;\n }\n else {\n if (this.lastSubject) {\n this.endPredicate();\n this.endSubject(true);\n }\n // Open a new node for the new subject\n this.pushId(quad.subject, true, context);\n }\n this.lastSubject = quad.subject;\n }\n // Write predicate\n if (!this.lastPredicate || !quad.predicate.equals(this.lastPredicate)) {\n if (this.lastPredicate) {\n this.endPredicate(true);\n }\n // Open a new array for the new predicate\n this.pushPredicate(quad.predicate, context);\n }\n // Write the object value\n this.pushObject(quad.object, context);\n }\n pushDocumentStart() {\n this.opened = true;\n if (this.originalContext && !this.options.excludeContext) {\n this.pushSeparator(SeparatorType_1.SeparatorType.OBJECT_START);\n this.indentation++;\n this.pushSeparator(SeparatorType_1.SeparatorType.CONTEXT_FIELD);\n this.pushIndented(JSON.stringify(this.originalContext, null, this.options.space) + ',');\n this.pushSeparator(this.options.space\n ? SeparatorType_1.SeparatorType.GRAPH_FIELD_NONCOMPACT : SeparatorType_1.SeparatorType.GRAPH_FIELD_COMPACT);\n this.indentation++;\n }\n else {\n this.pushSeparator(SeparatorType_1.SeparatorType.ARRAY_START);\n this.indentation++;\n }\n }\n /**\n * Push the given term as an @id field.\n * @param {Term} term An RDF term.\n * @param startOnNewLine If `{` should start on a new line\n * @param {JsonLdContextNormalized} context The context.\n */\n pushId(term, startOnNewLine, context) {\n if (term.termType === 'Quad') {\n this.pushNestedQuad(term, true, context);\n }\n else {\n const subjectValue = term.termType === 'BlankNode'\n ? '_:' + term.value : context.compactIri(term.value, false);\n if (startOnNewLine) {\n this.pushSeparator(SeparatorType_1.SeparatorType.OBJECT_START);\n }\n else {\n this.push(SeparatorType_1.SeparatorType.OBJECT_START.label);\n if (this.options.space) {\n this.push('\\n');\n }\n }\n this.indentation++;\n this.pushIndented(this.options.space ? `\"@id\": \"${subjectValue}\",` : `\"@id\":\"${subjectValue}\",`);\n }\n }\n /**\n * Push the given predicate field.\n * @param {Term} predicate An RDF term.\n * @param {JsonLdContextNormalized} context The context.\n */\n pushPredicate(predicate, context) {\n let property = predicate.value;\n // Convert rdf:type into @type if not disabled.\n if (!this.options.useRdfType && property === Util_1.Util.RDF_TYPE) {\n property = '@type';\n this.objectOptions = Object.assign(Object.assign({}, this.options), { compactIds: true, vocab: true });\n }\n // Open array for following objects\n const compactedProperty = context.compactIri(property, true);\n this.pushIndented(this.options.space ? `\"${compactedProperty}\": [` : `\"${compactedProperty}\":[`);\n this.indentation++;\n this.lastPredicate = predicate;\n }\n /**\n * Push the given object value.\n * @param {Term} object An RDF term.\n * @param {JsonLdContextNormalized} context The context.\n */\n pushObject(object, context) {\n // Add a comma if we already had an object for this predicate\n if (!this.hadObjectForPredicate) {\n this.hadObjectForPredicate = true;\n }\n else {\n this.pushSeparator(SeparatorType_1.SeparatorType.COMMA);\n }\n // Handle nested quad\n if (object.termType === 'Quad') {\n const lastLastSubject = this.lastSubject;\n const lastLastPredicate = this.lastPredicate;\n this.hadObjectForPredicate = false;\n this.pushNestedQuad(object, false, context);\n this.endSubject(false); // Terminate identifier node of nested quad again, since we won't attach additional information to it.\n this.hadObjectForPredicate = true;\n this.lastPredicate = lastLastPredicate;\n this.lastSubject = lastLastSubject;\n return;\n }\n // Convert the object into a value and push it\n let value;\n try {\n if (object['@list']) {\n value = object;\n }\n else {\n value = Util_1.Util.termToValue(object, context, this.objectOptions || this.options);\n }\n }\n catch (e) {\n return this.emit('error', e);\n }\n this.pushIndented(JSON.stringify(value, null, this.options.space));\n }\n pushNestedQuad(nestedQuad, commaAfterSubject, context) {\n // Start a nested quad\n this.pushSeparator(SeparatorType_1.SeparatorType.OBJECT_START);\n this.indentation++;\n this.pushIndented(this.options.space ? `\"@id\": ` : `\"@id\":`, false);\n // Print the nested quad\n if (nestedQuad.graph.termType !== 'DefaultGraph') {\n this.emit('error', new Error(`Found a nested quad with the non-default graph: ${nestedQuad.graph.value}`));\n }\n this.pushId(nestedQuad.subject, false, context);\n this.pushPredicate(nestedQuad.predicate, context);\n this.pushObject(nestedQuad.object, context);\n this.endPredicate(false);\n this.endSubject(commaAfterSubject);\n }\n endDocument() {\n this.opened = false;\n if (this.originalContext && !this.options.excludeContext) {\n this.indentation--;\n this.pushSeparator(SeparatorType_1.SeparatorType.ARRAY_END);\n this.indentation--;\n this.pushSeparator(SeparatorType_1.SeparatorType.OBJECT_END);\n }\n else {\n this.indentation--;\n this.pushSeparator(SeparatorType_1.SeparatorType.ARRAY_END);\n }\n }\n /**\n * Push the end of a predicate and reset the buffers.\n * @param {boolean} comma If a comma should be appended.\n */\n endPredicate(comma) {\n // Close the predicate array\n this.indentation--;\n this.pushSeparator(comma ? SeparatorType_1.SeparatorType.ARRAY_END_COMMA : SeparatorType_1.SeparatorType.ARRAY_END);\n // Reset object buffer\n this.hadObjectForPredicate = false;\n this.objectOptions = null;\n // Reset predicate buffer\n this.lastPredicate = null;\n }\n /**\n * Push the end of a subject and reset the buffers.\n * @param {boolean} comma If a comma should be appended.\n */\n endSubject(comma) {\n // Close the last subject's node;\n this.indentation--;\n this.pushSeparator(comma ? SeparatorType_1.SeparatorType.OBJECT_END_COMMA : SeparatorType_1.SeparatorType.OBJECT_END);\n // Reset subject buffer\n this.lastSubject = null;\n }\n /**\n * Push the end of a graph and reset the buffers.\n * @param {boolean} comma If a comma should be appended.\n */\n endGraph(comma) {\n // Close the graph array\n this.indentation--;\n this.pushSeparator(SeparatorType_1.SeparatorType.ARRAY_END);\n // Close the graph id node\n this.indentation--;\n this.pushSeparator(comma ? SeparatorType_1.SeparatorType.OBJECT_END_COMMA : SeparatorType_1.SeparatorType.OBJECT_END);\n // Reset graph buffer\n this.lastGraph = null;\n }\n /**\n * Puh the given separator.\n * @param {SeparatorType} type A type of separator.\n */\n pushSeparator(type) {\n this.pushIndented(type.label);\n }\n /**\n * An indentation-aware variant of {@link #push}.\n * All strings that are pushed here will be prefixed by {@link #indentation} amount of spaces.\n * @param {string} data A string.\n * @param pushNewLine If a newline should be pushed afterwards.\n */\n pushIndented(data, pushNewLine = true) {\n const prefix = this.getIndentPrefix();\n const lines = data.split('\\n').map((line) => prefix + line).join('\\n');\n this.push(lines);\n if (this.options.space && pushNewLine) {\n this.push('\\n');\n }\n }\n /**\n * @return {string} Get the current indentation prefix based on {@link #indentation}.\n */\n getIndentPrefix() {\n return this.options.space ? this.options.space.repeat(this.indentation) : '';\n }\n}\nexports.JsonLdSerializer = JsonLdSerializer;\n//# sourceMappingURL=JsonLdSerializer.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SeparatorType = void 0;\n/**\n * A type of JSON separator.\n */\nclass SeparatorType {\n constructor(label) {\n this.label = label;\n }\n}\nexports.SeparatorType = SeparatorType;\nSeparatorType.COMMA = new SeparatorType(',');\nSeparatorType.OBJECT_START = new SeparatorType('{');\nSeparatorType.OBJECT_END = new SeparatorType('}');\nSeparatorType.OBJECT_END_COMMA = new SeparatorType('},');\nSeparatorType.ARRAY_START = new SeparatorType('[');\nSeparatorType.ARRAY_END = new SeparatorType(']');\nSeparatorType.ARRAY_END_COMMA = new SeparatorType('],');\nSeparatorType.GRAPH_FIELD_NONCOMPACT = new SeparatorType('\"@graph\": [');\nSeparatorType.GRAPH_FIELD_COMPACT = new SeparatorType('\"@graph\":[');\nSeparatorType.CONTEXT_FIELD = new SeparatorType('\"@context\":');\n//# sourceMappingURL=SeparatorType.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Util = void 0;\nconst jsonld_context_parser_1 = require(\"jsonld-context-parser\");\n/**\n * Utility functions and methods.\n */\nclass Util {\n /**\n * Convert an RDF term to a JSON value.\n * @param {Term} term An RDF term.\n * @param {JsonLdContextNormalized} context The context.\n * @param {ITermToValueOptions} options Conversion options.\n * @return {any} A JSON value.\n */\n static termToValue(term, context, options = {\n compactIds: false,\n useNativeTypes: false,\n }) {\n switch (term.termType) {\n case 'NamedNode':\n const compacted = context.compactIri(term.value, options.vocab);\n return options.compactIds ? compacted : { '@id': compacted };\n case 'DefaultGraph':\n return options.compactIds ? term.value : { '@id': term.value };\n case 'BlankNode':\n const id = `_:${term.value}`;\n return options.compactIds ? id : { '@id': id };\n case 'Literal':\n // Handle JSON datatype\n if (term.datatype.value === Util.RDF_JSON) {\n let parsedJson;\n try {\n parsedJson = JSON.parse(term.value);\n }\n catch (e) {\n throw new jsonld_context_parser_1.ErrorCoded('Invalid JSON literal: ' + e.message, jsonld_context_parser_1.ERROR_CODES.INVALID_JSON_LITERAL);\n }\n return {\n '@value': parsedJson,\n '@type': '@json',\n };\n }\n // Handle rdfDirection: i18n-datatype\n if (options.rdfDirection === 'i18n-datatype' && term.datatype.value.startsWith(Util.I18N)) {\n const [language, direction] = term.datatype.value\n .substr(Util.I18N.length, term.datatype.value.length)\n .split('_');\n return Object.assign(Object.assign({ '@value': term.value }, language ? { '@language': language } : {}), direction ? { '@direction': direction } : {});\n }\n const stringType = term.datatype.value === Util.XSD_STRING;\n const rawValue = {\n '@value': !stringType && options.useNativeTypes\n ? Util.stringToNativeType(term.value, term.datatype.value) : term.value,\n };\n if (term.language) {\n return Object.assign(Object.assign({}, rawValue), { '@language': term.language });\n }\n else if (!stringType && typeof rawValue['@value'] === 'string') {\n return Object.assign(Object.assign({}, rawValue), { '@type': term.datatype.value });\n }\n else {\n return rawValue;\n }\n }\n }\n /**\n * Convert a string term to a native type.\n * If no conversion is possible, the original string will be returned.\n * @param {string} value An RDF term's string value.\n * @param {string} type\n * @return {any}\n */\n static stringToNativeType(value, type) {\n if (type.startsWith(Util.XSD)) {\n const xsdType = type.substr(Util.XSD.length);\n switch (xsdType) {\n case 'boolean':\n if (value === 'true') {\n return true;\n }\n else if (value === 'false') {\n return false;\n }\n throw new Error(`Invalid xsd:boolean value '${value}'`);\n case 'integer':\n case 'number':\n case 'int':\n case 'byte':\n case 'long':\n const parsedInt = parseInt(value, 10);\n if (isNaN(parsedInt)) {\n throw new Error(`Invalid xsd:integer value '${value}'`);\n }\n return parsedInt;\n case 'float':\n case 'double':\n const parsedFloat = parseFloat(value);\n if (isNaN(parsedFloat)) {\n throw new Error(`Invalid xsd:float value '${value}'`);\n }\n return parsedFloat;\n }\n }\n return value;\n }\n}\nexports.Util = Util;\nUtil.XSD = 'http://www.w3.org/2001/XMLSchema#';\nUtil.XSD_STRING = Util.XSD + 'string';\nUtil.RDF = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#';\nUtil.RDF_TYPE = Util.RDF + 'type';\nUtil.RDF_JSON = Util.RDF + 'JSON';\nUtil.I18N = 'https://www.w3.org/ns/i18n#';\n//# sourceMappingURL=Util.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/propertyhandler/IItemPropertyHandler\"), exports);\n__exportStar(require(\"./lib/propertyhandler/ItemPropertyHandlerContent\"), exports);\n__exportStar(require(\"./lib/propertyhandler/ItemPropertyHandlerNumber\"), exports);\n__exportStar(require(\"./lib/propertyhandler/ItemPropertyHandlerTime\"), exports);\n__exportStar(require(\"./lib/propertyhandler/ItemPropertyHandlerUrl\"), exports);\n__exportStar(require(\"./lib/IHtmlParseListener\"), exports);\n__exportStar(require(\"./lib/IItemScope\"), exports);\n__exportStar(require(\"./lib/IVocabRegistry\"), exports);\n__exportStar(require(\"./lib/MicrodataRdfParser\"), exports);\n__exportStar(require(\"./lib/Util\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IHtmlParseListener.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IItemScope.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IVocabRegistry.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MicrodataRdfParser = void 0;\nconst htmlparser2_1 = require(\"htmlparser2\");\nconst readable_stream_1 = require(\"readable-stream\");\nconst ItemPropertyHandlerContent_1 = require(\"./propertyhandler/ItemPropertyHandlerContent\");\nconst ItemPropertyHandlerNumber_1 = require(\"./propertyhandler/ItemPropertyHandlerNumber\");\nconst ItemPropertyHandlerTime_1 = require(\"./propertyhandler/ItemPropertyHandlerTime\");\nconst ItemPropertyHandlerUrl_1 = require(\"./propertyhandler/ItemPropertyHandlerUrl\");\nconst Util_1 = require(\"./Util\");\nconst VOCAB_REGISTRY_DEFAULT = require(\"./vocab-registry-default.json\");\n/**\n * A stream transformer that parses Microdata (text) streams to an {@link RDF.Stream}.\n */\nclass MicrodataRdfParser extends readable_stream_1.Transform {\n constructor(options) {\n super({ readableObjectMode: true });\n // Stacks, where the key is the current depth.\n this.itemScopeStack = [];\n this.textBufferStack = [];\n // Variables for managing itemrefs.\n this.isEmittingReferences = false;\n this.pendingItemRefsDomain = {};\n this.pendingItemRefsRangeFinalized = {};\n // eslint-disable-next-line lines-between-class-members\n this.pendingItemRefsRangeCollecting = {};\n options = options || {};\n this.options = options;\n this.util = new Util_1.Util(options.dataFactory, options.baseIRI);\n this.defaultGraph = options.defaultGraph || this.util.dataFactory.defaultGraph();\n this.htmlParseListener = options.htmlParseListener;\n this.vocabRegistry = options.vocabRegistry || VOCAB_REGISTRY_DEFAULT;\n this.parser = this.initializeParser(!!options.xmlMode);\n }\n /**\n * Parses the given text stream into a quad stream.\n * @param {NodeJS.EventEmitter} stream A text stream.\n * @return {RDF.Stream} A quad stream.\n */\n import(stream) {\n const output = new readable_stream_1.PassThrough({ readableObjectMode: true });\n stream.on('error', (error) => parsed.emit('error', error));\n stream.on('data', (data) => output.push(data));\n stream.on('end', () => output.push(null));\n const parsed = output.pipe(new MicrodataRdfParser(this.options));\n return parsed;\n }\n _transform(chunk, encoding, callback) {\n this.parser.write(chunk.toString());\n callback();\n }\n _flush(callback) {\n this.parser.end();\n callback();\n }\n /**\n * Get the current item scope for the current depth.\n * This will skip all undefined item scopes.\n * @param parent If we should start looking one level higher in the stack.\n */\n getItemScope(parent) {\n let parentTagI = this.itemScopeStack.length - (parent ? 2 : 1);\n while (parentTagI > 0 && !this.itemScopeStack[parentTagI]) {\n parentTagI--;\n }\n return this.itemScopeStack[parentTagI];\n }\n /**\n * Get the current stack depth.\n */\n getDepth() {\n return this.itemScopeStack.length;\n }\n onTagOpen(name, attributes) {\n if (!this.isEmittingReferences) {\n // If the tag has an 'id', start collecting the whole stack in the item reference buffer\n if ('id' in attributes) {\n const id = attributes.id;\n this.pendingItemRefsRangeCollecting[id] = {\n events: [],\n counter: 0,\n ids: [],\n };\n }\n // Store this event in all collecting item reference buffers\n for (const buffer of Object.values(this.pendingItemRefsRangeCollecting)) {\n buffer.counter++;\n buffer.events.push({ type: 'open', name, attributes });\n }\n }\n // Ensure the text buffer stack is in line with the stack depth\n this.textBufferStack.push(undefined);\n // Processing steps based on https://w3c.github.io/microdata-rdf/#rdf-conversion-algorithm\n // 1. Determine the current item scope\n let itemScope;\n if ('itemscope' in attributes) {\n // Create a new item scope\n let subject;\n if (this.emittingReferencesItemScopeIdGenerator) {\n subject = this.emittingReferencesItemScopeIdGenerator();\n }\n else {\n subject = 'itemid' in attributes && this.util.createSubject(attributes.itemid) ||\n this.util.dataFactory.blankNode();\n // Store the genererated id in all collecting item reference buffers\n for (const buffer of Object.values(this.pendingItemRefsRangeCollecting)) {\n buffer.ids.push(subject);\n }\n }\n itemScope = { subject };\n // If the id was reused from a reference, block any new triples to be generated from it\n if (this.isEmittingReferences) {\n itemScope.blockEmission = true;\n }\n // Inherit vocab from parent item scope\n const parentItemScope = this.getItemScope();\n if (parentItemScope && parentItemScope.vocab) {\n itemScope.vocab = parentItemScope.vocab;\n }\n // 2. Push any changes to the item scope to the stack\n this.itemScopeStack.push(itemScope);\n }\n else {\n // Determine the parent item scope\n itemScope = this.getItemScope();\n // 2. Push any changes to the item scope to the stack\n this.itemScopeStack.push(undefined);\n }\n // If we have a valid item scope, process the current node\n if (itemScope) {\n // 3. Handle item types\n if ('itemtype' in attributes) {\n for (const type of this.util.createVocabIris(attributes.itemtype, itemScope, false)) {\n // 4. Vocab identifier is the first valid item\n if (!itemScope.vocab) {\n // 5. Modify vocab based on registry\n itemScope.vocab = this.util.deriveVocab(type.value, this.vocabRegistry);\n }\n // Emit item type\n if (!itemScope.blockEmission) {\n this.emitTriple(itemScope.subject, this.util.dataFactory.namedNode(`${Util_1.Util.RDF}type`), type);\n }\n }\n }\n // Save language in item scope\n if ('lang' in attributes) {\n itemScope.language = attributes.lang;\n }\n if ('xml:lang' in attributes) {\n itemScope.language = attributes['xml:lang'];\n }\n // Handle itemrefs (only if we also had an itemscope)\n // If we have an itemref, store it in our domain buffer.\n if ('itemscope' in attributes &&\n !this.isEmittingReferences && 'itemref' in attributes) {\n for (const reference of attributes.itemref.split(/\\s+/u)) {\n if (!(reference in this.pendingItemRefsDomain)) {\n this.pendingItemRefsDomain[reference] = [];\n }\n this.pendingItemRefsDomain[reference].push(itemScope);\n this.tryToEmitReferences(reference, itemScope);\n }\n }\n }\n // 6. Handle item properties\n if ('itemprop' in attributes) {\n this.handleItemProperties(attributes.itemprop, false, itemScope, name, attributes);\n }\n // Handle reverse item properties\n // https://w3c.github.io/microdata-rdf/#reverse-itemprop\n if ('itemprop-reverse' in attributes) {\n this.handleItemProperties(attributes['itemprop-reverse'], true, itemScope, name, attributes);\n }\n }\n onText(data) {\n // Store this event in all collecting item reference buffers\n if (!this.isEmittingReferences) {\n for (const buffer of Object.values(this.pendingItemRefsRangeCollecting)) {\n buffer.events.push({ type: 'text', data });\n }\n }\n // Save the text inside all item scopes that need to collect text\n for (const textBuffer of this.textBufferStack) {\n if (textBuffer) {\n textBuffer.push(data);\n }\n }\n }\n onTagClose() {\n // Store this event in all collecting item reference buffers\n if (!this.isEmittingReferences) {\n for (const [reference, buffer] of Object.entries(this.pendingItemRefsRangeCollecting)) {\n buffer.counter--;\n buffer.events.push({ type: 'close' });\n // Once the counter becomes zero, the tag is fully buffered, so we finalize it.\n if (buffer.counter === 0) {\n this.pendingItemRefsRangeFinalized[reference] = buffer;\n delete this.pendingItemRefsRangeCollecting[reference];\n // Try to emit this reference with buffered domain items\n this.tryToEmitReferences(reference);\n }\n }\n }\n // Emit all triples that were determined in the active tag\n const itemScope = this.getItemScope(true);\n if (itemScope) {\n const depth = this.getDepth();\n if (itemScope.predicates && depth in itemScope.predicates) {\n for (const [predicateKey, predicates] of Object.entries(itemScope.predicates[depth])) {\n // First check if we have a child item scope, otherwise get the text content\n // Safely cast textBufferStack, as it is always defined when itemScope.predicates is defined.\n const object = this.util.createLiteral(this.textBufferStack[depth].join(''), itemScope);\n this.emitPredicateTriples(itemScope, predicates, object, predicateKey === 'reverse');\n delete itemScope.predicates[depth][predicateKey];\n }\n }\n }\n // Remove the active tag from the stack\n this.itemScopeStack.pop();\n this.textBufferStack.pop();\n }\n onEnd() {\n // Nothing important should happen here.\n }\n /**\n * Initialize a new HtmlParser.\n * @param xmlMode If the parser should be setup in strict mode.\n */\n initializeParser(xmlMode) {\n return new htmlparser2_1.Parser({\n onclosetag: () => {\n try {\n this.onTagClose();\n if (this.htmlParseListener) {\n this.htmlParseListener.onTagClose();\n }\n }\n catch (error) {\n this.emit('error', error);\n }\n },\n onend: () => {\n try {\n this.onEnd();\n if (this.htmlParseListener) {\n this.htmlParseListener.onEnd();\n }\n }\n catch (error) {\n this.emit('error', error);\n }\n },\n onopentag: (name, attributes) => {\n try {\n this.onTagOpen(name, attributes);\n if (this.htmlParseListener) {\n this.htmlParseListener.onTagOpen(name, attributes);\n }\n }\n catch (error) {\n this.emit('error', error);\n }\n },\n ontext: (data) => {\n try {\n this.onText(data);\n if (this.htmlParseListener) {\n this.htmlParseListener.onText(data);\n }\n }\n catch (error) {\n this.emit('error', error);\n }\n },\n }, {\n decodeEntities: true,\n recognizeSelfClosing: true,\n xmlMode,\n });\n }\n /**\n * Handle the given item properties.\n * @param itempropValue The value of itemprop or itemprop-reverse.\n * @param reverse If the item properties are reversed (itemprop-reverse).\n * @param itemScope The current item scope.\n * @param tagName The current tag name.\n * @param tagAttributes The current tag attributes.\n */\n handleItemProperties(itempropValue, reverse, itemScope, tagName, tagAttributes) {\n const parentItemScope = this.getItemScope(true);\n if (parentItemScope) {\n // Set predicates in the scope, and handle them on tag close.\n const depth = this.getDepth();\n const predicates = this.util.createVocabIris(itempropValue, parentItemScope, true);\n if (!parentItemScope.predicates) {\n parentItemScope.predicates = {};\n }\n if (!parentItemScope.predicates[depth]) {\n parentItemScope.predicates[depth] = {};\n }\n const predicatesKey = reverse ? 'reverse' : 'forward';\n parentItemScope.predicates[depth][predicatesKey] = predicates;\n // Append rdf:type predicate if vocabulary expansion applies\n for (const vocabularyExpansionType of this.util.getVocabularyExpansionType(itempropValue, parentItemScope, this.vocabRegistry)) {\n predicates.push(vocabularyExpansionType);\n }\n // Check if a property handler that applies, forcefully use that as predicate value.\n // But DON'T call handlers in this prop is a direct (nested) itemscope.\n if (itemScope && 'itemscope' in tagAttributes) {\n this.emitPredicateTriples(parentItemScope, predicates, itemScope.subject, reverse);\n // Finalize the predicates, so text values do not apply to them.\n delete parentItemScope.predicates[depth][predicatesKey];\n }\n else {\n for (const handler of MicrodataRdfParser.ITEM_PROPERTY_HANDLERS) {\n if (handler.canHandle(tagName, tagAttributes)) {\n const object = handler.getObject(tagAttributes, this.util, parentItemScope);\n this.emitPredicateTriples(parentItemScope, predicates, object, reverse);\n // Finalize the predicates, so text values do not apply to them.\n delete parentItemScope.predicates[depth][predicatesKey];\n }\n }\n }\n // If no valid handler was found, indicate that we should collect text at this depth.\n if (parentItemScope.predicates[depth][predicatesKey]) {\n this.textBufferStack[depth] = [];\n }\n }\n }\n /**\n * Emit the given object for the given predicates.\n * @param itemScope The current item scope.\n * @param predicates An array of predicates.\n * @param object An object.\n * @param reverse If the triples should be reversed.\n */\n emitPredicateTriples(itemScope, predicates, object, reverse) {\n if (!itemScope.blockEmission) {\n for (const predicate of predicates) {\n if (reverse) {\n // Literals can not exist in subject position, so they must be ignored.\n if (object.termType !== 'Literal') {\n this.emitTriple(object, predicate, itemScope.subject);\n }\n }\n else {\n this.emitTriple(itemScope.subject, predicate, object);\n }\n }\n }\n }\n /**\n * Emit the given triple to the stream.\n * @param {Quad_Subject} subject A subject term.\n * @param {Quad_Predicate} predicate A predicate term.\n * @param {Quad_Object} object An object term.\n */\n emitTriple(subject, predicate, object) {\n this.push(this.util.dataFactory.quad(subject, predicate, object, this.defaultGraph));\n }\n /**\n * Attempt to emit all pending itemrefs for the given reference.\n * @param reference An item reference id.\n * @param itemScopeDomain An optional item scope. If defined, only refs from this scope will be emitted.\n */\n tryToEmitReferences(reference, itemScopeDomain) {\n const range = this.pendingItemRefsRangeFinalized[reference];\n if (range) {\n // Determine the item scope domains to emit\n let applicableItemScopes;\n if (itemScopeDomain) {\n applicableItemScopes = [itemScopeDomain];\n // Remove the item from the pending array\n // Element is guaranteed to exist in buffer\n const itemScopeDomainIndex = this.pendingItemRefsDomain[reference].indexOf(itemScopeDomain);\n this.pendingItemRefsDomain[reference].splice(itemScopeDomainIndex, 1);\n }\n else {\n applicableItemScopes = this.pendingItemRefsDomain[reference];\n // Remove all items from the pending array\n delete this.pendingItemRefsDomain[reference];\n }\n if (applicableItemScopes) {\n // Save the stack state\n const itemScopeStackOld = this.itemScopeStack;\n const textBufferStackOld = this.textBufferStack;\n this.isEmittingReferences = true;\n // For all applicable item scopes, emit the buffered events.\n for (const itemScope of applicableItemScopes) {\n this.itemScopeStack = [itemScope];\n this.textBufferStack = [undefined];\n const pendingIds = [...range.ids];\n this.emittingReferencesItemScopeIdGenerator = () => pendingIds.shift();\n for (const event of range.events) {\n switch (event.type) {\n case 'open':\n this.onTagOpen(event.name, event.attributes);\n break;\n case 'text':\n this.onText(event.data);\n break;\n case 'close':\n this.onTagClose();\n break;\n }\n }\n }\n // Restore the stack state\n this.emittingReferencesItemScopeIdGenerator = undefined;\n this.itemScopeStack = itemScopeStackOld;\n this.textBufferStack = textBufferStackOld;\n this.isEmittingReferences = false;\n }\n }\n }\n}\nexports.MicrodataRdfParser = MicrodataRdfParser;\nMicrodataRdfParser.ITEM_PROPERTY_HANDLERS = [\n new ItemPropertyHandlerContent_1.ItemPropertyHandlerContent(),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('a', 'href'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('area', 'href'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('audio', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('embed', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('iframe', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('img', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('link', 'href'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('object', 'data'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('source', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('track', 'src'),\n new ItemPropertyHandlerUrl_1.ItemPropertyHandlerUrl('video', 'src'),\n new ItemPropertyHandlerNumber_1.ItemPropertyHandlerNumber('data', 'value'),\n new ItemPropertyHandlerNumber_1.ItemPropertyHandlerNumber('meter', 'value'),\n new ItemPropertyHandlerTime_1.ItemPropertyHandlerTime(),\n];\n//# sourceMappingURL=MicrodataRdfParser.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Util = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst relative_to_absolute_iri_1 = require(\"relative-to-absolute-iri\");\n/**\n * A collection of utility functions.\n */\nclass Util {\n constructor(dataFactory, baseIRI) {\n this.dataFactory = dataFactory || new rdf_data_factory_1.DataFactory();\n this.baseIRI = baseIRI || '';\n }\n /**\n * Check if the given IRI is valid.\n * @param {string} iri A potential IRI.\n * @return {boolean} If the given IRI is valid.\n */\n static isValidIri(iri) {\n return Util.IRI_REGEX.test(iri);\n }\n /**\n * Create vocab terms for the given terms attribute.\n *\n * Relative IRIs will be based on the active vocab or baseIRI if `allowRelativeIris` is true.\n *\n * @param {string} terms An attribute value.\n * @param {IItemScope} itemScope The active item scope.\n * @param {boolean} allowRelativeIris If relative IRIs are allowed.\n * @return {Term[]} The IRI terms.\n */\n createVocabIris(terms, itemScope, allowRelativeIris) {\n return terms.split(/\\s+/u)\n .filter(term => !!term)\n .map(property => {\n if (!Util.isValidIri(property)) {\n if (!allowRelativeIris) {\n return;\n }\n property = `${itemScope.vocab || `${this.baseIRI}#`}${property}`;\n }\n return this.dataFactory.namedNode(property);\n })\n .filter(term => !!term);\n }\n /**\n * Get the predicates for which the given itemprop value should cause vocabulary expansion.\n * @param terms An attribute value.\n * @param itemScope The active item scope.\n * @param vocabRegistry The active vocabulary registry.\n */\n getVocabularyExpansionType(terms, itemScope, vocabRegistry) {\n // Check the presence of subPropertyOf or equivalentProperty\n const parts = terms.split(/\\s+/u);\n if (parts.includes('subPropertyOf') || parts.includes('equivalentProperty')) {\n return [this.dataFactory.namedNode(`${Util.RDF}type`)];\n }\n // Check in the item scope's vocab\n if (itemScope.vocab && itemScope.vocab in vocabRegistry && vocabRegistry[itemScope.vocab].properties) {\n let predicates = [];\n for (const [property, expansions] of Object\n .entries(vocabRegistry[itemScope.vocab].properties)) {\n if (parts.includes(property)) {\n predicates = [...Object.values(expansions).map(iri => this.dataFactory.namedNode(iri))];\n }\n }\n return predicates;\n }\n return [];\n }\n /**\n * Create a named node for the given term, which can be relative to the document base.\n * @param {string} iri A term string.\n * @return {Term} An RDF term, or undefined if invalid.\n */\n createSubject(iri) {\n if (!Util.isValidIri(iri)) {\n try {\n iri = (0, relative_to_absolute_iri_1.resolve)(iri, this.baseIRI);\n }\n catch (_a) {\n return;\n }\n }\n return this.dataFactory.namedNode(iri);\n }\n /**\n * Create a new literal node.\n * @param {string} literal The literal value.\n * @param {IActiveTag} activeTag The current active tag.\n * @return {Literal} A new literal node.\n */\n createLiteral(literal, activeTag) {\n return this.dataFactory.literal(literal, activeTag.language);\n }\n /**\n * Determine the vocab IRI from a given type IRI.\n * @link https://w3c.github.io/microdata-rdf/#property-uri-generation\n * @param typeIri A type IRI.\n * @param vocabRegistry The active vocabulary registry.\n */\n deriveVocab(typeIri, vocabRegistry) {\n let vocab;\n // First check if we find a prefix in the vocab registry\n for (const uriPrefix in vocabRegistry) {\n if (typeIri.startsWith(uriPrefix)) {\n vocab = uriPrefix;\n // Append fragment if prefix does not end with a slash\n if (!vocab.endsWith('/')) {\n vocab += '#';\n }\n break;\n }\n }\n // If no match was found, remove the last path segment from the URI\n if (!vocab) {\n const hashPos = typeIri.indexOf('#');\n if (hashPos > 0) {\n vocab = typeIri.slice(0, hashPos + 1);\n }\n else {\n vocab = (0, relative_to_absolute_iri_1.resolve)('.', typeIri);\n }\n }\n return vocab;\n }\n}\nexports.Util = Util;\nUtil.RDF = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#';\nUtil.XSD = 'http://www.w3.org/2001/XMLSchema#';\nUtil.RDFA = 'http://www.w3.org/ns/rdfa#';\nUtil.IRI_REGEX = /^([A-Za-z][\\d+-.A-Za-z]*|_):[^ \"<>[\\\\\\]`{|}]*$/u;\n//# sourceMappingURL=Util.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IItemPropertyHandler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ItemPropertyHandlerContent = void 0;\n/**\n * Handler for an item property with the 'content' attribute.\n */\nclass ItemPropertyHandlerContent {\n canHandle(tagName, attributes) {\n return 'content' in attributes;\n }\n getObject(attributes, util, itemScope) {\n return util.createLiteral(attributes.content, itemScope);\n }\n}\nexports.ItemPropertyHandlerContent = ItemPropertyHandlerContent;\n//# sourceMappingURL=ItemPropertyHandlerContent.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ItemPropertyHandlerNumber = void 0;\nconst Util_1 = require(\"../Util\");\n/**\n * Handler for an item property with a number attribute.\n */\nclass ItemPropertyHandlerNumber {\n constructor(tagName, attributeName) {\n this.tagName = tagName;\n this.attributeName = attributeName;\n }\n canHandle(tagName, attributes) {\n return this.tagName === tagName && this.attributeName in attributes;\n }\n getObject(attributes, util, itemScope) {\n const value = attributes[this.attributeName];\n let datatype;\n if (!Number.isNaN(Number.parseInt(value, 10)) && !value.includes('.')) {\n datatype = `${Util_1.Util.XSD}integer`;\n }\n else if (!Number.isNaN(Number.parseFloat(value))) {\n datatype = `${Util_1.Util.XSD}double`;\n }\n return util.dataFactory.literal(value, datatype && util.dataFactory.namedNode(datatype));\n }\n}\nexports.ItemPropertyHandlerNumber = ItemPropertyHandlerNumber;\n//# sourceMappingURL=ItemPropertyHandlerNumber.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ItemPropertyHandlerTime = void 0;\nconst Util_1 = require(\"../Util\");\n/**\n * Handler for an item property for time tags.\n */\nclass ItemPropertyHandlerTime {\n canHandle(tagName, attributes) {\n return tagName === 'time' && 'datetime' in attributes;\n }\n getObject(attributes, util, itemScope) {\n const value = attributes.datetime;\n let datatype;\n for (const entry of ItemPropertyHandlerTime.TIME_REGEXES) {\n if (entry.regex.test(value)) {\n datatype = util.dataFactory.namedNode(Util_1.Util.XSD + entry.type);\n break;\n }\n }\n return util.dataFactory.literal(value, datatype);\n }\n}\nexports.ItemPropertyHandlerTime = ItemPropertyHandlerTime;\nItemPropertyHandlerTime.TIME_REGEXES = [\n {\n regex: /^-?P(\\d+Y)?(\\d+M)?(\\d+D)?(T(\\d+H)?(\\d+M)?(\\d+(\\.\\d)?S)?)?$/u,\n type: 'duration',\n },\n {\n regex: /^\\d+-\\d\\d-\\d\\dT\\d\\d:\\d\\d:\\d\\d((Z?)|([+-]\\d\\d:\\d\\d))$/u,\n type: 'dateTime',\n },\n { regex: /^\\d+-\\d\\d-\\d\\dZ?$/u, type: 'date' },\n { regex: /^\\d\\d:\\d\\d:\\d\\d((Z?)|([+-]\\d\\d:\\d\\d))$/u, type: 'time' },\n { regex: /^\\d+-\\d\\d$/u, type: 'gYearMonth' },\n { regex: /^\\d+$/u, type: 'gYear' },\n];\n//# sourceMappingURL=ItemPropertyHandlerTime.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ItemPropertyHandlerUrl = void 0;\nconst relative_to_absolute_iri_1 = require(\"relative-to-absolute-iri\");\n/**\n * Handler for an item property with a URL attribute.\n */\nclass ItemPropertyHandlerUrl {\n constructor(tagName, attributeName) {\n this.tagName = tagName;\n this.attributeName = attributeName;\n }\n canHandle(tagName, attributes) {\n return this.tagName === tagName && this.attributeName in attributes;\n }\n getObject(attributes, util, itemScope) {\n return util.dataFactory.namedNode((0, relative_to_absolute_iri_1.resolve)(attributes[this.attributeName], util.baseIRI));\n }\n}\nexports.ItemPropertyHandlerUrl = ItemPropertyHandlerUrl;\n//# sourceMappingURL=ItemPropertyHandlerUrl.js.map","module.exports = assert;\n\nfunction assert(val, msg) {\n if (!val)\n throw new Error(msg || 'Assertion failed');\n}\n\nassert.equal = function assertEqual(l, r, msg) {\n if (l != r)\n throw new Error(msg || ('Assertion failed: ' + l + ' != ' + r));\n};\n","const RDF = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#',\n XSD = 'http://www.w3.org/2001/XMLSchema#',\n SWAP = 'http://www.w3.org/2000/10/swap/';\n\nexport default {\n xsd: {\n decimal: `${XSD}decimal`,\n boolean: `${XSD}boolean`,\n double: `${XSD}double`,\n integer: `${XSD}integer`,\n string: `${XSD}string`,\n },\n rdf: {\n type: `${RDF}type`,\n nil: `${RDF}nil`,\n first: `${RDF}first`,\n rest: `${RDF}rest`,\n langString: `${RDF}langString`,\n },\n owl: {\n sameAs: 'http://www.w3.org/2002/07/owl#sameAs',\n },\n r: {\n forSome: `${SWAP}reify#forSome`,\n forAll: `${SWAP}reify#forAll`,\n },\n log: {\n implies: `${SWAP}log#implies`,\n },\n};\n","// **N3Lexer** tokenizes N3 documents.\nimport namespaces from './IRIs';\nimport queueMicrotask from 'queue-microtask';\n\nconst { xsd } = namespaces;\n\n// Regular expression and replacement string to escape N3 strings\nconst escapeSequence = /\\\\u([a-fA-F0-9]{4})|\\\\U([a-fA-F0-9]{8})|\\\\([^])/g;\nconst escapeReplacements = {\n '\\\\': '\\\\', \"'\": \"'\", '\"': '\"',\n 'n': '\\n', 'r': '\\r', 't': '\\t', 'f': '\\f', 'b': '\\b',\n '_': '_', '~': '~', '.': '.', '-': '-', '!': '!', '$': '$', '&': '&',\n '(': '(', ')': ')', '*': '*', '+': '+', ',': ',', ';': ';', '=': '=',\n '/': '/', '?': '?', '#': '#', '@': '@', '%': '%',\n};\nconst illegalIriChars = /[\\x00-\\x20<>\\\\\"\\{\\}\\|\\^\\`]/;\n\nconst lineModeRegExps = {\n _iri: true,\n _unescapedIri: true,\n _simpleQuotedString: true,\n _langcode: true,\n _blank: true,\n _newline: true,\n _comment: true,\n _whitespace: true,\n _endOfFile: true,\n};\nconst invalidRegExp = /$0^/;\n\n// ## Constructor\nexport default class N3Lexer {\n constructor(options) {\n // ## Regular expressions\n // It's slightly faster to have these as properties than as in-scope variables\n this._iri = /^<((?:[^ <>{}\\\\]|\\\\[uU])+)>[ \\t]*/; // IRI with escape sequences; needs sanity check after unescaping\n this._unescapedIri = /^<([^\\x00-\\x20<>\\\\\"\\{\\}\\|\\^\\`]*)>[ \\t]*/; // IRI without escape sequences; no unescaping\n this._simpleQuotedString = /^\"([^\"\\\\\\r\\n]*)\"(?=[^\"])/; // string without escape sequences\n this._simpleApostropheString = /^'([^'\\\\\\r\\n]*)'(?=[^'])/;\n this._langcode = /^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\\-])/i;\n this._prefix = /^((?:[A-Za-z\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02ff\\u0370-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])(?:\\.?[\\-0-9A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])*)?:(?=[#\\s<])/;\n this._prefixed = /^((?:[A-Za-z\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02ff\\u0370-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])(?:\\.?[\\-0-9A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])*)?:((?:(?:[0-:A-Z_a-z\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02ff\\u0370-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff]|%[0-9a-fA-F]{2}|\\\\[!#-\\/;=?\\-@_~])(?:(?:[\\.\\-0-:A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff]|%[0-9a-fA-F]{2}|\\\\[!#-\\/;=?\\-@_~])*(?:[\\-0-:A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff]|%[0-9a-fA-F]{2}|\\\\[!#-\\/;=?\\-@_~]))?)?)(?:[ \\t]+|(?=\\.?[,;!\\^\\s#()\\[\\]\\{\\}\"'<>]))/;\n this._variable = /^\\?(?:(?:[A-Z_a-z\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02ff\\u0370-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])(?:[\\-0-:A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])*)(?=[.,;!\\^\\s#()\\[\\]\\{\\}\"'<>])/;\n this._blank = /^_:((?:[0-9A-Z_a-z\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u02ff\\u0370-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])(?:\\.?[\\-0-9A-Z_a-z\\xb7\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\u037d\\u037f-\\u1fff\\u200c\\u200d\\u203f\\u2040\\u2070-\\u218f\\u2c00-\\u2fef\\u3001-\\ud7ff\\uf900-\\ufdcf\\ufdf0-\\ufffd]|[\\ud800-\\udb7f][\\udc00-\\udfff])*)(?:[ \\t]+|(?=\\.?[,;:\\s#()\\[\\]\\{\\}\"'<>]))/;\n this._number = /^[\\-+]?(?:(\\d+\\.\\d*|\\.?\\d+)[eE][\\-+]?|\\d*(\\.)?)\\d+(?=\\.?[,;:\\s#()\\[\\]\\{\\}\"'<>])/;\n this._boolean = /^(?:true|false)(?=[.,;\\s#()\\[\\]\\{\\}\"'<>])/;\n this._keyword = /^@[a-z]+(?=[\\s#<:])/i;\n this._sparqlKeyword = /^(?:PREFIX|BASE|GRAPH)(?=[\\s#<])/i;\n this._shortPredicates = /^a(?=[\\s#()\\[\\]\\{\\}\"'<>])/;\n this._newline = /^[ \\t]*(?:#[^\\n\\r]*)?(?:\\r\\n|\\n|\\r)[ \\t]*/;\n this._comment = /#([^\\n\\r]*)/;\n this._whitespace = /^[ \\t]+/;\n this._endOfFile = /^(?:#[^\\n\\r]*)?$/;\n options = options || {};\n\n // In line mode (N-Triples or N-Quads), only simple features may be parsed\n if (this._lineMode = !!options.lineMode) {\n this._n3Mode = false;\n // Don't tokenize special literals\n for (const key in this) {\n if (!(key in lineModeRegExps) && this[key] instanceof RegExp)\n this[key] = invalidRegExp;\n }\n }\n // When not in line mode, enable N3 functionality by default\n else {\n this._n3Mode = options.n3 !== false;\n }\n // Don't output comment tokens by default\n this._comments = !!options.comments;\n // Cache the last tested closing position of long literals\n this._literalClosingPos = 0;\n }\n\n // ## Private methods\n\n // ### `_tokenizeToEnd` tokenizes as for as possible, emitting tokens through the callback\n _tokenizeToEnd(callback, inputFinished) {\n // Continue parsing as far as possible; the loop will return eventually\n let input = this._input;\n let currentLineLength = input.length;\n while (true) {\n // Count and skip whitespace lines\n let whiteSpaceMatch, comment;\n while (whiteSpaceMatch = this._newline.exec(input)) {\n // Try to find a comment\n if (this._comments && (comment = this._comment.exec(whiteSpaceMatch[0])))\n emitToken('comment', comment[1], '', this._line, whiteSpaceMatch[0].length);\n // Advance the input\n input = input.substr(whiteSpaceMatch[0].length, input.length);\n currentLineLength = input.length;\n this._line++;\n }\n // Skip whitespace on current line\n if (!whiteSpaceMatch && (whiteSpaceMatch = this._whitespace.exec(input)))\n input = input.substr(whiteSpaceMatch[0].length, input.length);\n\n // Stop for now if we're at the end\n if (this._endOfFile.test(input)) {\n // If the input is finished, emit EOF\n if (inputFinished) {\n // Try to find a final comment\n if (this._comments && (comment = this._comment.exec(input)))\n emitToken('comment', comment[1], '', this._line, input.length);\n input = null;\n emitToken('eof', '', '', this._line, 0);\n }\n return this._input = input;\n }\n\n // Look for specific token types based on the first character\n const line = this._line, firstChar = input[0];\n let type = '', value = '', prefix = '',\n match = null, matchLength = 0, inconclusive = false;\n switch (firstChar) {\n case '^':\n // We need at least 3 tokens lookahead to distinguish ^^ and ^^pre:fixed\n if (input.length < 3)\n break;\n // Try to match a type\n else if (input[1] === '^') {\n this._previousMarker = '^^';\n // Move to type IRI or prefixed name\n input = input.substr(2);\n if (input[0] !== '<') {\n inconclusive = true;\n break;\n }\n }\n // If no type, it must be a path expression\n else {\n if (this._n3Mode) {\n matchLength = 1;\n type = '^';\n }\n break;\n }\n // Fall through in case the type is an IRI\n case '<':\n // Try to find a full IRI without escape sequences\n if (match = this._unescapedIri.exec(input))\n type = 'IRI', value = match[1];\n // Try to find a full IRI with escape sequences\n else if (match = this._iri.exec(input)) {\n value = this._unescape(match[1]);\n if (value === null || illegalIriChars.test(value))\n return reportSyntaxError(this);\n type = 'IRI';\n }\n // Try to find a nested triple\n else if (input.length > 1 && input[1] === '<')\n type = '<<', matchLength = 2;\n // Try to find a backwards implication arrow\n else if (this._n3Mode && input.length > 1 && input[1] === '=')\n type = 'inverse', matchLength = 2, value = '>';\n break;\n\n case '>':\n if (input.length > 1 && input[1] === '>')\n type = '>>', matchLength = 2;\n break;\n\n case '_':\n // Try to find a blank node. Since it can contain (but not end with) a dot,\n // we always need a non-dot character before deciding it is a blank node.\n // Therefore, try inserting a space if we're at the end of the input.\n if ((match = this._blank.exec(input)) ||\n inputFinished && (match = this._blank.exec(`${input} `)))\n type = 'blank', prefix = '_', value = match[1];\n break;\n\n case '\"':\n // Try to find a literal without escape sequences\n if (match = this._simpleQuotedString.exec(input))\n value = match[1];\n // Try to find a literal wrapped in three pairs of quotes\n else {\n ({ value, matchLength } = this._parseLiteral(input));\n if (value === null)\n return reportSyntaxError(this);\n }\n if (match !== null || matchLength !== 0) {\n type = 'literal';\n this._literalClosingPos = 0;\n }\n break;\n\n case \"'\":\n if (!this._lineMode) {\n // Try to find a literal without escape sequences\n if (match = this._simpleApostropheString.exec(input))\n value = match[1];\n // Try to find a literal wrapped in three pairs of quotes\n else {\n ({ value, matchLength } = this._parseLiteral(input));\n if (value === null)\n return reportSyntaxError(this);\n }\n if (match !== null || matchLength !== 0) {\n type = 'literal';\n this._literalClosingPos = 0;\n }\n }\n break;\n\n case '?':\n // Try to find a variable\n if (this._n3Mode && (match = this._variable.exec(input)))\n type = 'var', value = match[0];\n break;\n\n case '@':\n // Try to find a language code\n if (this._previousMarker === 'literal' && (match = this._langcode.exec(input)))\n type = 'langcode', value = match[1];\n // Try to find a keyword\n else if (match = this._keyword.exec(input))\n type = match[0];\n break;\n\n case '.':\n // Try to find a dot as punctuation\n if (input.length === 1 ? inputFinished : (input[1] < '0' || input[1] > '9')) {\n type = '.';\n matchLength = 1;\n break;\n }\n // Fall through to numerical case (could be a decimal dot)\n\n case '0':\n case '1':\n case '2':\n case '3':\n case '4':\n case '5':\n case '6':\n case '7':\n case '8':\n case '9':\n case '+':\n case '-':\n // Try to find a number. Since it can contain (but not end with) a dot,\n // we always need a non-dot character before deciding it is a number.\n // Therefore, try inserting a space if we're at the end of the input.\n if (match = this._number.exec(input) ||\n inputFinished && (match = this._number.exec(`${input} `))) {\n type = 'literal', value = match[0];\n prefix = (typeof match[1] === 'string' ? xsd.double :\n (typeof match[2] === 'string' ? xsd.decimal : xsd.integer));\n }\n break;\n\n case 'B':\n case 'b':\n case 'p':\n case 'P':\n case 'G':\n case 'g':\n // Try to find a SPARQL-style keyword\n if (match = this._sparqlKeyword.exec(input))\n type = match[0].toUpperCase();\n else\n inconclusive = true;\n break;\n\n case 'f':\n case 't':\n // Try to match a boolean\n if (match = this._boolean.exec(input))\n type = 'literal', value = match[0], prefix = xsd.boolean;\n else\n inconclusive = true;\n break;\n\n case 'a':\n // Try to find an abbreviated predicate\n if (match = this._shortPredicates.exec(input))\n type = 'abbreviation', value = 'a';\n else\n inconclusive = true;\n break;\n\n case '=':\n // Try to find an implication arrow or equals sign\n if (this._n3Mode && input.length > 1) {\n type = 'abbreviation';\n if (input[1] !== '>')\n matchLength = 1, value = '=';\n else\n matchLength = 2, value = '>';\n }\n break;\n\n case '!':\n if (!this._n3Mode)\n break;\n case ',':\n case ';':\n case '[':\n case ']':\n case '(':\n case ')':\n case '}':\n if (!this._lineMode) {\n matchLength = 1;\n type = firstChar;\n }\n break;\n case '{':\n // We need at least 2 tokens lookahead to distinguish \"{|\" and \"{ \"\n if (!this._lineMode && input.length >= 2) {\n // Try to find a quoted triple annotation start\n if (input[1] === '|')\n type = '{|', matchLength = 2;\n else\n type = firstChar, matchLength = 1;\n }\n break;\n case '|':\n // We need 2 tokens lookahead to parse \"|}\"\n // Try to find a quoted triple annotation end\n if (input.length >= 2 && input[1] === '}')\n type = '|}', matchLength = 2;\n break;\n\n default:\n inconclusive = true;\n }\n\n // Some first characters do not allow an immediate decision, so inspect more\n if (inconclusive) {\n // Try to find a prefix\n if ((this._previousMarker === '@prefix' || this._previousMarker === 'PREFIX') &&\n (match = this._prefix.exec(input)))\n type = 'prefix', value = match[1] || '';\n // Try to find a prefixed name. Since it can contain (but not end with) a dot,\n // we always need a non-dot character before deciding it is a prefixed name.\n // Therefore, try inserting a space if we're at the end of the input.\n else if ((match = this._prefixed.exec(input)) ||\n inputFinished && (match = this._prefixed.exec(`${input} `)))\n type = 'prefixed', prefix = match[1] || '', value = this._unescape(match[2]);\n }\n\n // A type token is special: it can only be emitted after an IRI or prefixed name is read\n if (this._previousMarker === '^^') {\n switch (type) {\n case 'prefixed': type = 'type'; break;\n case 'IRI': type = 'typeIRI'; break;\n default: type = '';\n }\n }\n\n // What if nothing of the above was found?\n if (!type) {\n // We could be in streaming mode, and then we just wait for more input to arrive.\n // Otherwise, a syntax error has occurred in the input.\n // One exception: error on an unaccounted linebreak (= not inside a triple-quoted literal).\n if (inputFinished || (!/^'''|^\"\"\"/.test(input) && /\\n|\\r/.test(input)))\n return reportSyntaxError(this);\n else\n return this._input = input;\n }\n\n // Emit the parsed token\n const length = matchLength || match[0].length;\n const token = emitToken(type, value, prefix, line, length);\n this.previousToken = token;\n this._previousMarker = type;\n\n // Advance to next part to tokenize\n input = input.substr(length, input.length);\n }\n\n // Emits the token through the callback\n function emitToken(type, value, prefix, line, length) {\n const start = input ? currentLineLength - input.length : currentLineLength;\n const end = start + length;\n const token = { type, value, prefix, line, start, end };\n callback(null, token);\n return token;\n }\n // Signals the syntax error through the callback\n function reportSyntaxError(self) { callback(self._syntaxError(/^\\S*/.exec(input)[0])); }\n }\n\n // ### `_unescape` replaces N3 escape codes by their corresponding characters\n _unescape(item) {\n let invalid = false;\n const replaced = item.replace(escapeSequence, (sequence, unicode4, unicode8, escapedChar) => {\n // 4-digit unicode character\n if (typeof unicode4 === 'string')\n return String.fromCharCode(Number.parseInt(unicode4, 16));\n // 8-digit unicode character\n if (typeof unicode8 === 'string') {\n let charCode = Number.parseInt(unicode8, 16);\n return charCode <= 0xFFFF ? String.fromCharCode(Number.parseInt(unicode8, 16)) :\n String.fromCharCode(0xD800 + ((charCode -= 0x10000) >> 10), 0xDC00 + (charCode & 0x3FF));\n }\n // fixed escape sequence\n if (escapedChar in escapeReplacements)\n return escapeReplacements[escapedChar];\n // invalid escape sequence\n invalid = true;\n return '';\n });\n return invalid ? null : replaced;\n }\n\n // ### `_parseLiteral` parses a literal into an unescaped value\n _parseLiteral(input) {\n // Ensure we have enough lookahead to identify triple-quoted strings\n if (input.length >= 3) {\n // Identify the opening quote(s)\n const opening = input.match(/^(?:\"\"\"|\"|'''|'|)/)[0];\n const openingLength = opening.length;\n\n // Find the next candidate closing quotes\n let closingPos = Math.max(this._literalClosingPos, openingLength);\n while ((closingPos = input.indexOf(opening, closingPos)) > 0) {\n // Count backslashes right before the closing quotes\n let backslashCount = 0;\n while (input[closingPos - backslashCount - 1] === '\\\\')\n backslashCount++;\n\n // An even number of backslashes (in particular 0)\n // means these are actual, non-escaped closing quotes\n if (backslashCount % 2 === 0) {\n // Extract and unescape the value\n const raw = input.substring(openingLength, closingPos);\n const lines = raw.split(/\\r\\n|\\r|\\n/).length - 1;\n const matchLength = closingPos + openingLength;\n // Only triple-quoted strings can be multi-line\n if (openingLength === 1 && lines !== 0 ||\n openingLength === 3 && this._lineMode)\n break;\n this._line += lines;\n return { value: this._unescape(raw), matchLength };\n }\n closingPos++;\n }\n this._literalClosingPos = input.length - openingLength + 1;\n }\n return { value: '', matchLength: 0 };\n }\n\n // ### `_syntaxError` creates a syntax error for the given issue\n _syntaxError(issue) {\n this._input = null;\n const err = new Error(`Unexpected \"${issue}\" on line ${this._line}.`);\n err.context = {\n token: undefined,\n line: this._line,\n previousToken: this.previousToken,\n };\n return err;\n }\n\n // ### Strips off any starting UTF BOM mark.\n _readStartingBom(input) {\n return input.startsWith('\\ufeff') ? input.substr(1) : input;\n }\n\n // ## Public methods\n\n // ### `tokenize` starts the transformation of an N3 document into an array of tokens.\n // The input can be a string or a stream.\n tokenize(input, callback) {\n this._line = 1;\n\n // If the input is a string, continuously emit tokens through the callback until the end\n if (typeof input === 'string') {\n this._input = this._readStartingBom(input);\n // If a callback was passed, asynchronously call it\n if (typeof callback === 'function')\n queueMicrotask(() => this._tokenizeToEnd(callback, true));\n // If no callback was passed, tokenize synchronously and return\n else {\n const tokens = [];\n let error;\n this._tokenizeToEnd((e, t) => e ? (error = e) : tokens.push(t), true);\n if (error) throw error;\n return tokens;\n }\n }\n // Otherwise, the input must be a stream\n else {\n this._pendingBuffer = null;\n if (typeof input.setEncoding === 'function')\n input.setEncoding('utf8');\n // Adds the data chunk to the buffer and parses as far as possible\n input.on('data', data => {\n if (this._input !== null && data.length !== 0) {\n // Prepend any previous pending writes\n if (this._pendingBuffer) {\n data = Buffer.concat([this._pendingBuffer, data]);\n this._pendingBuffer = null;\n }\n // Hold if the buffer ends in an incomplete unicode sequence\n if (data[data.length - 1] & 0x80) {\n this._pendingBuffer = data;\n }\n // Otherwise, tokenize as far as possible\n else {\n // Only read a BOM at the start\n if (typeof this._input === 'undefined')\n this._input = this._readStartingBom(typeof data === 'string' ? data : data.toString());\n else\n this._input += data;\n this._tokenizeToEnd(callback, false);\n }\n }\n });\n // Parses until the end\n input.on('end', () => {\n if (typeof this._input === 'string')\n this._tokenizeToEnd(callback, true);\n });\n input.on('error', callback);\n }\n }\n}\n","// **N3Util** provides N3 utility functions.\n\nimport N3DataFactory from './N3DataFactory';\n\n// Tests whether the given term represents an IRI\nexport function isNamedNode(term) {\n return !!term && term.termType === 'NamedNode';\n}\n\n// Tests whether the given term represents a blank node\nexport function isBlankNode(term) {\n return !!term && term.termType === 'BlankNode';\n}\n\n// Tests whether the given term represents a literal\nexport function isLiteral(term) {\n return !!term && term.termType === 'Literal';\n}\n\n// Tests whether the given term represents a variable\nexport function isVariable(term) {\n return !!term && term.termType === 'Variable';\n}\n\n// Tests whether the given term represents the default graph\nexport function isDefaultGraph(term) {\n return !!term && term.termType === 'DefaultGraph';\n}\n\n// Tests whether the given quad is in the default graph\nexport function inDefaultGraph(quad) {\n return isDefaultGraph(quad.graph);\n}\n\n// Creates a function that prepends the given IRI to a local name\nexport function prefix(iri, factory) {\n return prefixes({ '': iri.value || iri }, factory)('');\n}\n\n// Creates a function that allows registering and expanding prefixes\nexport function prefixes(defaultPrefixes, factory) {\n // Add all of the default prefixes\n const prefixes = Object.create(null);\n for (const prefix in defaultPrefixes)\n processPrefix(prefix, defaultPrefixes[prefix]);\n // Set the default factory if none was specified\n factory = factory || N3DataFactory;\n\n // Registers a new prefix (if an IRI was specified)\n // or retrieves a function that expands an existing prefix (if no IRI was specified)\n function processPrefix(prefix, iri) {\n // Create a new prefix if an IRI is specified or the prefix doesn't exist\n if (typeof iri === 'string') {\n // Create a function that expands the prefix\n const cache = Object.create(null);\n prefixes[prefix] = local => {\n return cache[local] || (cache[local] = factory.namedNode(iri + local));\n };\n }\n else if (!(prefix in prefixes)) {\n throw new Error(`Unknown prefix: ${prefix}`);\n }\n return prefixes[prefix];\n }\n return processPrefix;\n}\n","// N3.js implementations of the RDF/JS core data types\n// See https://github.com/rdfjs/representation-task-force/blob/master/interface-spec.md\n\nimport namespaces from './IRIs';\nimport { isDefaultGraph } from './N3Util';\nconst { rdf, xsd } = namespaces;\n\n// eslint-disable-next-line prefer-const\nlet DEFAULTGRAPH;\nlet _blankNodeCounter = 0;\n\nconst escapedLiteral = /^\"(.*\".*)(?=\"[^\"]*$)/;\nconst quadId = /^<<(\"(?:\"\"|[^\"])*\"[^ ]*|[^ ]+) (\"(?:\"\"|[^\"])*\"[^ ]*|[^ ]+) (\"(?:\"\"|[^\"])*\"[^ ]*|[^ ]+) ?(\"(?:\"\"|[^\"])*\"[^ ]*|[^ ]+)?>>$/;\n\n// ## DataFactory singleton\nconst DataFactory = {\n namedNode,\n blankNode,\n variable,\n literal,\n defaultGraph,\n quad,\n triple: quad,\n};\nexport default DataFactory;\n\n// ## Term constructor\nexport class Term {\n constructor(id) {\n this.id = id;\n }\n\n // ### The value of this term\n get value() {\n return this.id;\n }\n\n // ### Returns whether this object represents the same term as the other\n equals(other) {\n // If both terms were created by this library,\n // equality can be computed through ids\n if (other instanceof Term)\n return this.id === other.id;\n // Otherwise, compare term type and value\n return !!other && this.termType === other.termType &&\n this.value === other.value;\n }\n\n // ### Implement hashCode for Immutable.js, since we implement `equals`\n // https://immutable-js.com/docs/v4.0.0/ValueObject/#hashCode()\n hashCode() {\n return 0;\n }\n\n // ### Returns a plain object representation of this term\n toJSON() {\n return {\n termType: this.termType,\n value: this.value,\n };\n }\n}\n\n\n// ## NamedNode constructor\nexport class NamedNode extends Term {\n // ### The term type of this term\n get termType() {\n return 'NamedNode';\n }\n}\n\n// ## Literal constructor\nexport class Literal extends Term {\n // ### The term type of this term\n get termType() {\n return 'Literal';\n }\n\n // ### The text value of this literal\n get value() {\n return this.id.substring(1, this.id.lastIndexOf('\"'));\n }\n\n // ### The language of this literal\n get language() {\n // Find the last quotation mark (e.g., '\"abc\"@en-us')\n const id = this.id;\n let atPos = id.lastIndexOf('\"') + 1;\n // If \"@\" it follows, return the remaining substring; empty otherwise\n return atPos < id.length && id[atPos++] === '@' ? id.substr(atPos).toLowerCase() : '';\n }\n\n // ### The datatype IRI of this literal\n get datatype() {\n return new NamedNode(this.datatypeString);\n }\n\n // ### The datatype string of this literal\n get datatypeString() {\n // Find the last quotation mark (e.g., '\"abc\"^^http://ex.org/types#t')\n const id = this.id, dtPos = id.lastIndexOf('\"') + 1;\n const char = dtPos < id.length ? id[dtPos] : '';\n // If \"^\" it follows, return the remaining substring\n return char === '^' ? id.substr(dtPos + 2) :\n // If \"@\" follows, return rdf:langString; xsd:string otherwise\n (char !== '@' ? xsd.string : rdf.langString);\n }\n\n // ### Returns whether this object represents the same term as the other\n equals(other) {\n // If both literals were created by this library,\n // equality can be computed through ids\n if (other instanceof Literal)\n return this.id === other.id;\n // Otherwise, compare term type, value, language, and datatype\n return !!other && !!other.datatype &&\n this.termType === other.termType &&\n this.value === other.value &&\n this.language === other.language &&\n this.datatype.value === other.datatype.value;\n }\n\n toJSON() {\n return {\n termType: this.termType,\n value: this.value,\n language: this.language,\n datatype: { termType: 'NamedNode', value: this.datatypeString },\n };\n }\n}\n\n// ## BlankNode constructor\nexport class BlankNode extends Term {\n constructor(name) {\n super(`_:${name}`);\n }\n\n // ### The term type of this term\n get termType() {\n return 'BlankNode';\n }\n\n // ### The name of this blank node\n get value() {\n return this.id.substr(2);\n }\n}\n\nexport class Variable extends Term {\n constructor(name) {\n super(`?${name}`);\n }\n\n // ### The term type of this term\n get termType() {\n return 'Variable';\n }\n\n // ### The name of this variable\n get value() {\n return this.id.substr(1);\n }\n}\n\n// ## DefaultGraph constructor\nexport class DefaultGraph extends Term {\n constructor() {\n super('');\n return DEFAULTGRAPH || this;\n }\n\n // ### The term type of this term\n get termType() {\n return 'DefaultGraph';\n }\n\n // ### Returns whether this object represents the same term as the other\n equals(other) {\n // If both terms were created by this library,\n // equality can be computed through strict equality;\n // otherwise, compare term types.\n return (this === other) || (!!other && (this.termType === other.termType));\n }\n}\n\n// ## DefaultGraph singleton\nDEFAULTGRAPH = new DefaultGraph();\n\n\n// ### Constructs a term from the given internal string ID\nexport function termFromId(id, factory) {\n factory = factory || DataFactory;\n\n // Falsy value or empty string indicate the default graph\n if (!id)\n return factory.defaultGraph();\n\n // Identify the term type based on the first character\n switch (id[0]) {\n case '?':\n return factory.variable(id.substr(1));\n case '_':\n return factory.blankNode(id.substr(2));\n case '\"':\n // Shortcut for internal literals\n if (factory === DataFactory)\n return new Literal(id);\n // Literal without datatype or language\n if (id[id.length - 1] === '\"')\n return factory.literal(id.substr(1, id.length - 2));\n // Literal with datatype or language\n const endPos = id.lastIndexOf('\"', id.length - 1);\n return factory.literal(id.substr(1, endPos - 1),\n id[endPos + 1] === '@' ? id.substr(endPos + 2)\n : factory.namedNode(id.substr(endPos + 3)));\n case '<':\n const components = quadId.exec(id);\n return factory.quad(\n termFromId(unescapeQuotes(components[1]), factory),\n termFromId(unescapeQuotes(components[2]), factory),\n termFromId(unescapeQuotes(components[3]), factory),\n components[4] && termFromId(unescapeQuotes(components[4]), factory)\n );\n default:\n return factory.namedNode(id);\n }\n}\n\n// ### Constructs an internal string ID from the given term or ID string\nexport function termToId(term) {\n if (typeof term === 'string')\n return term;\n if (term instanceof Term && term.termType !== 'Quad')\n return term.id;\n if (!term)\n return DEFAULTGRAPH.id;\n\n // Term instantiated with another library\n switch (term.termType) {\n case 'NamedNode': return term.value;\n case 'BlankNode': return `_:${term.value}`;\n case 'Variable': return `?${term.value}`;\n case 'DefaultGraph': return '';\n case 'Literal': return `\"${term.value}\"${\n term.language ? `@${term.language}` :\n (term.datatype && term.datatype.value !== xsd.string ? `^^${term.datatype.value}` : '')}`;\n case 'Quad':\n // To identify RDF* quad components, we escape quotes by doubling them.\n // This avoids the overhead of backslash parsing of Turtle-like syntaxes.\n return `<<${\n escapeQuotes(termToId(term.subject))\n } ${\n escapeQuotes(termToId(term.predicate))\n } ${\n escapeQuotes(termToId(term.object))\n }${\n (isDefaultGraph(term.graph)) ? '' : ` ${termToId(term.graph)}`\n }>>`;\n default: throw new Error(`Unexpected termType: ${term.termType}`);\n }\n}\n\n\n// ## Quad constructor\nexport class Quad extends Term {\n constructor(subject, predicate, object, graph) {\n super('');\n this._subject = subject;\n this._predicate = predicate;\n this._object = object;\n this._graph = graph || DEFAULTGRAPH;\n }\n\n // ### The term type of this term\n get termType() {\n return 'Quad';\n }\n\n get subject() {\n return this._subject;\n }\n\n get predicate() {\n return this._predicate;\n }\n\n get object() {\n return this._object;\n }\n\n get graph() {\n return this._graph;\n }\n\n // ### Returns a plain object representation of this quad\n toJSON() {\n return {\n termType: this.termType,\n subject: this._subject.toJSON(),\n predicate: this._predicate.toJSON(),\n object: this._object.toJSON(),\n graph: this._graph.toJSON(),\n };\n }\n\n // ### Returns whether this object represents the same quad as the other\n equals(other) {\n return !!other && this._subject.equals(other.subject) &&\n this._predicate.equals(other.predicate) &&\n this._object.equals(other.object) &&\n this._graph.equals(other.graph);\n }\n}\nexport { Quad as Triple };\n\n// ### Escapes the quotes within the given literal\nexport function escapeQuotes(id) {\n return id.replace(escapedLiteral, (_, quoted) => `\"${quoted.replace(/\"/g, '\"\"')}`);\n}\n\n// ### Unescapes the quotes within the given literal\nexport function unescapeQuotes(id) {\n return id.replace(escapedLiteral, (_, quoted) => `\"${quoted.replace(/\"\"/g, '\"')}`);\n}\n\n// ### Creates an IRI\nfunction namedNode(iri) {\n return new NamedNode(iri);\n}\n\n// ### Creates a blank node\nfunction blankNode(name) {\n return new BlankNode(name || `n3-${_blankNodeCounter++}`);\n}\n\n// ### Creates a literal\nfunction literal(value, languageOrDataType) {\n // Create a language-tagged string\n if (typeof languageOrDataType === 'string')\n return new Literal(`\"${value}\"@${languageOrDataType.toLowerCase()}`);\n\n // Automatically determine datatype for booleans and numbers\n let datatype = languageOrDataType ? languageOrDataType.value : '';\n if (datatype === '') {\n // Convert a boolean\n if (typeof value === 'boolean')\n datatype = xsd.boolean;\n // Convert an integer or double\n else if (typeof value === 'number') {\n if (Number.isFinite(value))\n datatype = Number.isInteger(value) ? xsd.integer : xsd.double;\n else {\n datatype = xsd.double;\n if (!Number.isNaN(value))\n value = value > 0 ? 'INF' : '-INF';\n }\n }\n }\n\n // Create a datatyped literal\n return (datatype === '' || datatype === xsd.string) ?\n new Literal(`\"${value}\"`) :\n new Literal(`\"${value}\"^^${datatype}`);\n}\n\n// ### Creates a variable\nfunction variable(name) {\n return new Variable(name);\n}\n\n// ### Returns the default graph\nfunction defaultGraph() {\n return DEFAULTGRAPH;\n}\n\n// ### Creates a quad\nfunction quad(subject, predicate, object, graph) {\n return new Quad(subject, predicate, object, graph);\n}\n","// **N3Parser** parses N3 documents.\nimport N3Lexer from './N3Lexer';\nimport N3DataFactory from './N3DataFactory';\nimport namespaces from './IRIs';\n\nlet blankNodePrefix = 0;\n\n// ## Constructor\nexport default class N3Parser {\n constructor(options) {\n this._contextStack = [];\n this._graph = null;\n\n // Set the document IRI\n options = options || {};\n this._setBase(options.baseIRI);\n options.factory && initDataFactory(this, options.factory);\n\n // Set supported features depending on the format\n const format = (typeof options.format === 'string') ?\n options.format.match(/\\w*$/)[0].toLowerCase() : '',\n isTurtle = /turtle/.test(format), isTriG = /trig/.test(format),\n isNTriples = /triple/.test(format), isNQuads = /quad/.test(format),\n isN3 = this._n3Mode = /n3/.test(format),\n isLineMode = isNTriples || isNQuads;\n if (!(this._supportsNamedGraphs = !(isTurtle || isN3)))\n this._readPredicateOrNamedGraph = this._readPredicate;\n // Support triples in other graphs\n this._supportsQuads = !(isTurtle || isTriG || isNTriples || isN3);\n // Support nesting of triples\n this._supportsRDFStar = format === '' || /star|\\*$/.test(format);\n // Disable relative IRIs in N-Triples or N-Quads mode\n if (isLineMode)\n this._resolveRelativeIRI = iri => { return null; };\n this._blankNodePrefix = typeof options.blankNodePrefix !== 'string' ? '' :\n options.blankNodePrefix.replace(/^(?!_:)/, '_:');\n this._lexer = options.lexer || new N3Lexer({ lineMode: isLineMode, n3: isN3 });\n // Disable explicit quantifiers by default\n this._explicitQuantifiers = !!options.explicitQuantifiers;\n }\n\n // ## Static class methods\n\n // ### `_resetBlankNodePrefix` restarts blank node prefix identification\n static _resetBlankNodePrefix() {\n blankNodePrefix = 0;\n }\n\n // ## Private methods\n\n // ### `_setBase` sets the base IRI to resolve relative IRIs\n _setBase(baseIRI) {\n if (!baseIRI) {\n this._base = '';\n this._basePath = '';\n }\n else {\n // Remove fragment if present\n const fragmentPos = baseIRI.indexOf('#');\n if (fragmentPos >= 0)\n baseIRI = baseIRI.substr(0, fragmentPos);\n // Set base IRI and its components\n this._base = baseIRI;\n this._basePath = baseIRI.indexOf('/') < 0 ? baseIRI :\n baseIRI.replace(/[^\\/?]*(?:\\?.*)?$/, '');\n baseIRI = baseIRI.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\\/\\/[^\\/]*)?/i);\n this._baseRoot = baseIRI[0];\n this._baseScheme = baseIRI[1];\n }\n }\n\n // ### `_saveContext` stores the current parsing context\n // when entering a new scope (list, blank node, formula)\n _saveContext(type, graph, subject, predicate, object) {\n const n3Mode = this._n3Mode;\n this._contextStack.push({\n type,\n subject, predicate, object, graph,\n inverse: n3Mode ? this._inversePredicate : false,\n blankPrefix: n3Mode ? this._prefixes._ : '',\n quantified: n3Mode ? this._quantified : null,\n });\n // The settings below only apply to N3 streams\n if (n3Mode) {\n // Every new scope resets the predicate direction\n this._inversePredicate = false;\n // In N3, blank nodes are scoped to a formula\n // (using a dot as separator, as a blank node label cannot start with it)\n this._prefixes._ = (this._graph ? `${this._graph.value}.` : '.');\n // Quantifiers are scoped to a formula\n this._quantified = Object.create(this._quantified);\n }\n }\n\n // ### `_restoreContext` restores the parent context\n // when leaving a scope (list, blank node, formula)\n _restoreContext(type, token) {\n // Obtain the previous context\n const context = this._contextStack.pop();\n if (!context || context.type !== type)\n return this._error(`Unexpected ${token.type}`, token);\n\n // Restore the quad of the previous context\n this._subject = context.subject;\n this._predicate = context.predicate;\n this._object = context.object;\n this._graph = context.graph;\n\n // Restore N3 context settings\n if (this._n3Mode) {\n this._inversePredicate = context.inverse;\n this._prefixes._ = context.blankPrefix;\n this._quantified = context.quantified;\n }\n }\n\n // ### `_readInTopContext` reads a token when in the top context\n _readInTopContext(token) {\n switch (token.type) {\n // If an EOF token arrives in the top context, signal that we're done\n case 'eof':\n if (this._graph !== null)\n return this._error('Unclosed graph', token);\n delete this._prefixes._;\n return this._callback(null, null, this._prefixes);\n // It could be a prefix declaration\n case 'PREFIX':\n this._sparqlStyle = true;\n case '@prefix':\n return this._readPrefix;\n // It could be a base declaration\n case 'BASE':\n this._sparqlStyle = true;\n case '@base':\n return this._readBaseIRI;\n // It could be a graph\n case '{':\n if (this._supportsNamedGraphs) {\n this._graph = '';\n this._subject = null;\n return this._readSubject;\n }\n case 'GRAPH':\n if (this._supportsNamedGraphs)\n return this._readNamedGraphLabel;\n // Otherwise, the next token must be a subject\n default:\n return this._readSubject(token);\n }\n }\n\n // ### `_readEntity` reads an IRI, prefixed name, blank node, or variable\n _readEntity(token, quantifier) {\n let value;\n switch (token.type) {\n // Read a relative or absolute IRI\n case 'IRI':\n case 'typeIRI':\n const iri = this._resolveIRI(token.value);\n if (iri === null)\n return this._error('Invalid IRI', token);\n value = this._namedNode(iri);\n break;\n // Read a prefixed name\n case 'type':\n case 'prefixed':\n const prefix = this._prefixes[token.prefix];\n if (prefix === undefined)\n return this._error(`Undefined prefix \"${token.prefix}:\"`, token);\n value = this._namedNode(prefix + token.value);\n break;\n // Read a blank node\n case 'blank':\n value = this._blankNode(this._prefixes[token.prefix] + token.value);\n break;\n // Read a variable\n case 'var':\n value = this._variable(token.value.substr(1));\n break;\n // Everything else is not an entity\n default:\n return this._error(`Expected entity but got ${token.type}`, token);\n }\n // In N3 mode, replace the entity if it is quantified\n if (!quantifier && this._n3Mode && (value.id in this._quantified))\n value = this._quantified[value.id];\n return value;\n }\n\n // ### `_readSubject` reads a quad's subject\n _readSubject(token) {\n this._predicate = null;\n switch (token.type) {\n case '[':\n // Start a new quad with a new blank node as subject\n this._saveContext('blank', this._graph,\n this._subject = this._blankNode(), null, null);\n return this._readBlankNodeHead;\n case '(':\n // Start a new list\n this._saveContext('list', this._graph, this.RDF_NIL, null, null);\n this._subject = null;\n return this._readListItem;\n case '{':\n // Start a new formula\n if (!this._n3Mode)\n return this._error('Unexpected graph', token);\n this._saveContext('formula', this._graph,\n this._graph = this._blankNode(), null, null);\n return this._readSubject;\n case '}':\n // No subject; the graph in which we are reading is closed instead\n return this._readPunctuation(token);\n case '@forSome':\n if (!this._n3Mode)\n return this._error('Unexpected \"@forSome\"', token);\n this._subject = null;\n this._predicate = this.N3_FORSOME;\n this._quantifier = this._blankNode;\n return this._readQuantifierList;\n case '@forAll':\n if (!this._n3Mode)\n return this._error('Unexpected \"@forAll\"', token);\n this._subject = null;\n this._predicate = this.N3_FORALL;\n this._quantifier = this._variable;\n return this._readQuantifierList;\n case 'literal':\n if (!this._n3Mode)\n return this._error('Unexpected literal', token);\n\n if (token.prefix.length === 0) {\n this._literalValue = token.value;\n return this._completeSubjectLiteral;\n }\n else\n this._subject = this._literal(token.value, this._namedNode(token.prefix));\n\n break;\n case '<<':\n if (!this._supportsRDFStar)\n return this._error('Unexpected RDF* syntax', token);\n this._saveContext('<<', this._graph, null, null, null);\n this._graph = null;\n return this._readSubject;\n default:\n // Read the subject entity\n if ((this._subject = this._readEntity(token)) === undefined)\n return;\n // In N3 mode, the subject might be a path\n if (this._n3Mode)\n return this._getPathReader(this._readPredicateOrNamedGraph);\n }\n\n // The next token must be a predicate,\n // or, if the subject was actually a graph IRI, a named graph\n return this._readPredicateOrNamedGraph;\n }\n\n // ### `_readPredicate` reads a quad's predicate\n _readPredicate(token) {\n const type = token.type;\n switch (type) {\n case 'inverse':\n this._inversePredicate = true;\n case 'abbreviation':\n this._predicate = this.ABBREVIATIONS[token.value];\n break;\n case '.':\n case ']':\n case '}':\n // Expected predicate didn't come, must have been trailing semicolon\n if (this._predicate === null)\n return this._error(`Unexpected ${type}`, token);\n this._subject = null;\n return type === ']' ? this._readBlankNodeTail(token) : this._readPunctuation(token);\n case ';':\n // Additional semicolons can be safely ignored\n return this._predicate !== null ? this._readPredicate :\n this._error('Expected predicate but got ;', token);\n case '[':\n if (this._n3Mode) {\n // Start a new quad with a new blank node as subject\n this._saveContext('blank', this._graph, this._subject,\n this._subject = this._blankNode(), null);\n return this._readBlankNodeHead;\n }\n case 'blank':\n if (!this._n3Mode)\n return this._error('Disallowed blank node as predicate', token);\n default:\n if ((this._predicate = this._readEntity(token)) === undefined)\n return;\n }\n // The next token must be an object\n return this._readObject;\n }\n\n // ### `_readObject` reads a quad's object\n _readObject(token) {\n switch (token.type) {\n case 'literal':\n // Regular literal, can still get a datatype or language\n if (token.prefix.length === 0) {\n this._literalValue = token.value;\n return this._readDataTypeOrLang;\n }\n // Pre-datatyped string literal (prefix stores the datatype)\n else\n this._object = this._literal(token.value, this._namedNode(token.prefix));\n break;\n case '[':\n // Start a new quad with a new blank node as subject\n this._saveContext('blank', this._graph, this._subject, this._predicate,\n this._subject = this._blankNode());\n return this._readBlankNodeHead;\n case '(':\n // Start a new list\n this._saveContext('list', this._graph, this._subject, this._predicate, this.RDF_NIL);\n this._subject = null;\n return this._readListItem;\n case '{':\n // Start a new formula\n if (!this._n3Mode)\n return this._error('Unexpected graph', token);\n this._saveContext('formula', this._graph, this._subject, this._predicate,\n this._graph = this._blankNode());\n return this._readSubject;\n case '<<':\n if (!this._supportsRDFStar)\n return this._error('Unexpected RDF* syntax', token);\n this._saveContext('<<', this._graph, this._subject, this._predicate, null);\n this._graph = null;\n return this._readSubject;\n default:\n // Read the object entity\n if ((this._object = this._readEntity(token)) === undefined)\n return;\n // In N3 mode, the object might be a path\n if (this._n3Mode)\n return this._getPathReader(this._getContextEndReader());\n }\n return this._getContextEndReader();\n }\n\n // ### `_readPredicateOrNamedGraph` reads a quad's predicate, or a named graph\n _readPredicateOrNamedGraph(token) {\n return token.type === '{' ? this._readGraph(token) : this._readPredicate(token);\n }\n\n // ### `_readGraph` reads a graph\n _readGraph(token) {\n if (token.type !== '{')\n return this._error(`Expected graph but got ${token.type}`, token);\n // The \"subject\" we read is actually the GRAPH's label\n this._graph = this._subject, this._subject = null;\n return this._readSubject;\n }\n\n // ### `_readBlankNodeHead` reads the head of a blank node\n _readBlankNodeHead(token) {\n if (token.type === ']') {\n this._subject = null;\n return this._readBlankNodeTail(token);\n }\n else {\n this._predicate = null;\n return this._readPredicate(token);\n }\n }\n\n // ### `_readBlankNodeTail` reads the end of a blank node\n _readBlankNodeTail(token) {\n if (token.type !== ']')\n return this._readBlankNodePunctuation(token);\n\n // Store blank node quad\n if (this._subject !== null)\n this._emit(this._subject, this._predicate, this._object, this._graph);\n\n // Restore the parent context containing this blank node\n const empty = this._predicate === null;\n this._restoreContext('blank', token);\n // If the blank node was the object, restore previous context and read punctuation\n if (this._object !== null)\n return this._getContextEndReader();\n // If the blank node was the predicate, continue reading the object\n else if (this._predicate !== null)\n return this._readObject;\n // If the blank node was the subject, continue reading the predicate\n else\n // If the blank node was empty, it could be a named graph label\n return empty ? this._readPredicateOrNamedGraph : this._readPredicateAfterBlank;\n }\n\n // ### `_readPredicateAfterBlank` reads a predicate after an anonymous blank node\n _readPredicateAfterBlank(token) {\n switch (token.type) {\n case '.':\n case '}':\n // No predicate is coming if the triple is terminated here\n this._subject = null;\n return this._readPunctuation(token);\n default:\n return this._readPredicate(token);\n }\n }\n\n // ### `_readListItem` reads items from a list\n _readListItem(token) {\n let item = null, // The item of the list\n list = null, // The list itself\n next = this._readListItem; // The next function to execute\n const previousList = this._subject, // The previous list that contains this list\n stack = this._contextStack, // The stack of parent contexts\n parent = stack[stack.length - 1]; // The parent containing the current list\n\n switch (token.type) {\n case '[':\n // Stack the current list quad and start a new quad with a blank node as subject\n this._saveContext('blank', this._graph,\n list = this._blankNode(), this.RDF_FIRST,\n this._subject = item = this._blankNode());\n next = this._readBlankNodeHead;\n break;\n case '(':\n // Stack the current list quad and start a new list\n this._saveContext('list', this._graph,\n list = this._blankNode(), this.RDF_FIRST, this.RDF_NIL);\n this._subject = null;\n break;\n case ')':\n // Closing the list; restore the parent context\n this._restoreContext('list', token);\n // If this list is contained within a parent list, return the membership quad here.\n // This will be ` rdf:first .`.\n if (stack.length !== 0 && stack[stack.length - 1].type === 'list')\n this._emit(this._subject, this._predicate, this._object, this._graph);\n // Was this list the parent's subject?\n if (this._predicate === null) {\n // The next token is the predicate\n next = this._readPredicate;\n // No list tail if this was an empty list\n if (this._subject === this.RDF_NIL)\n return next;\n }\n // The list was in the parent context's object\n else {\n next = this._getContextEndReader();\n // No list tail if this was an empty list\n if (this._object === this.RDF_NIL)\n return next;\n }\n // Close the list by making the head nil\n list = this.RDF_NIL;\n break;\n case 'literal':\n // Regular literal, can still get a datatype or language\n if (token.prefix.length === 0) {\n this._literalValue = token.value;\n next = this._readListItemDataTypeOrLang;\n }\n // Pre-datatyped string literal (prefix stores the datatype)\n else {\n item = this._literal(token.value, this._namedNode(token.prefix));\n next = this._getContextEndReader();\n }\n break;\n case '{':\n // Start a new formula\n if (!this._n3Mode)\n return this._error('Unexpected graph', token);\n this._saveContext('formula', this._graph, this._subject, this._predicate,\n this._graph = this._blankNode());\n return this._readSubject;\n default:\n if ((item = this._readEntity(token)) === undefined)\n return;\n }\n\n // Create a new blank node if no item head was assigned yet\n if (list === null)\n this._subject = list = this._blankNode();\n\n // Is this the first element of the list?\n if (previousList === null) {\n // This list is either the subject or the object of its parent\n if (parent.predicate === null)\n parent.subject = list;\n else\n parent.object = list;\n }\n else {\n // Continue the previous list with the current list\n this._emit(previousList, this.RDF_REST, list, this._graph);\n }\n // If an item was read, add it to the list\n if (item !== null) {\n // In N3 mode, the item might be a path\n if (this._n3Mode && (token.type === 'IRI' || token.type === 'prefixed')) {\n // Create a new context to add the item's path\n this._saveContext('item', this._graph, list, this.RDF_FIRST, item);\n this._subject = item, this._predicate = null;\n // _readPath will restore the context and output the item\n return this._getPathReader(this._readListItem);\n }\n // Output the item\n this._emit(list, this.RDF_FIRST, item, this._graph);\n }\n return next;\n }\n\n // ### `_readDataTypeOrLang` reads an _optional_ datatype or language\n _readDataTypeOrLang(token) {\n return this._completeObjectLiteral(token, false);\n }\n\n\n // ### `_readListItemDataTypeOrLang` reads an _optional_ datatype or language in a list\n _readListItemDataTypeOrLang(token) {\n return this._completeObjectLiteral(token, true);\n }\n\n // ### `_completeLiteral` completes a literal with an optional datatype or language\n _completeLiteral(token) {\n // Create a simple string literal by default\n let literal = this._literal(this._literalValue);\n\n switch (token.type) {\n // Create a datatyped literal\n case 'type':\n case 'typeIRI':\n const datatype = this._readEntity(token);\n if (datatype === undefined) return; // No datatype means an error occurred\n literal = this._literal(this._literalValue, datatype);\n token = null;\n break;\n // Create a language-tagged string\n case 'langcode':\n literal = this._literal(this._literalValue, token.value);\n token = null;\n break;\n }\n\n return { token, literal };\n }\n\n // Completes a literal in subject position\n _completeSubjectLiteral(token) {\n this._subject = this._completeLiteral(token).literal;\n return this._readPredicateOrNamedGraph;\n }\n\n // Completes a literal in object position\n _completeObjectLiteral(token, listItem) {\n const completed = this._completeLiteral(token);\n if (!completed)\n return;\n this._object = completed.literal;\n\n // If this literal was part of a list, write the item\n // (we could also check the context stack, but passing in a flag is faster)\n if (listItem)\n this._emit(this._subject, this.RDF_FIRST, this._object, this._graph);\n // If the token was consumed, continue with the rest of the input\n if (completed.token === null)\n return this._getContextEndReader();\n // Otherwise, consume the token now\n else {\n this._readCallback = this._getContextEndReader();\n return this._readCallback(completed.token);\n }\n }\n\n // ### `_readFormulaTail` reads the end of a formula\n _readFormulaTail(token) {\n if (token.type !== '}')\n return this._readPunctuation(token);\n\n // Store the last quad of the formula\n if (this._subject !== null)\n this._emit(this._subject, this._predicate, this._object, this._graph);\n\n // Restore the parent context containing this formula\n this._restoreContext('formula', token);\n // If the formula was the subject, continue reading the predicate.\n // If the formula was the object, read punctuation.\n return this._object === null ? this._readPredicate : this._getContextEndReader();\n }\n\n // ### `_readPunctuation` reads punctuation between quads or quad parts\n _readPunctuation(token) {\n let next, graph = this._graph;\n const subject = this._subject, inversePredicate = this._inversePredicate;\n switch (token.type) {\n // A closing brace ends a graph\n case '}':\n if (this._graph === null)\n return this._error('Unexpected graph closing', token);\n if (this._n3Mode)\n return this._readFormulaTail(token);\n this._graph = null;\n // A dot just ends the statement, without sharing anything with the next\n case '.':\n this._subject = null;\n next = this._contextStack.length ? this._readSubject : this._readInTopContext;\n if (inversePredicate) this._inversePredicate = false;\n break;\n // Semicolon means the subject is shared; predicate and object are different\n case ';':\n next = this._readPredicate;\n break;\n // Comma means both the subject and predicate are shared; the object is different\n case ',':\n next = this._readObject;\n break;\n // {| means that the current triple is annotated with predicate-object pairs.\n case '{|':\n if (!this._supportsRDFStar)\n return this._error('Unexpected RDF* syntax', token);\n // Continue using the last triple as quoted triple subject for the predicate-object pairs.\n const predicate = this._predicate, object = this._object;\n this._subject = this._quad(subject, predicate, object, this.DEFAULTGRAPH);\n next = this._readPredicate;\n break;\n // |} means that the current quoted triple in annotation syntax is finalized.\n case '|}':\n if (this._subject.termType !== 'Quad')\n return this._error('Unexpected asserted triple closing', token);\n this._subject = null;\n next = this._readPunctuation;\n break;\n default:\n // An entity means this is a quad (only allowed if not already inside a graph)\n if (this._supportsQuads && this._graph === null && (graph = this._readEntity(token)) !== undefined) {\n next = this._readQuadPunctuation;\n break;\n }\n return this._error(`Expected punctuation to follow \"${this._object.id}\"`, token);\n }\n // A quad has been completed now, so return it\n if (subject !== null) {\n const predicate = this._predicate, object = this._object;\n if (!inversePredicate)\n this._emit(subject, predicate, object, graph);\n else\n this._emit(object, predicate, subject, graph);\n }\n return next;\n }\n\n // ### `_readBlankNodePunctuation` reads punctuation in a blank node\n _readBlankNodePunctuation(token) {\n let next;\n switch (token.type) {\n // Semicolon means the subject is shared; predicate and object are different\n case ';':\n next = this._readPredicate;\n break;\n // Comma means both the subject and predicate are shared; the object is different\n case ',':\n next = this._readObject;\n break;\n default:\n return this._error(`Expected punctuation to follow \"${this._object.id}\"`, token);\n }\n // A quad has been completed now, so return it\n this._emit(this._subject, this._predicate, this._object, this._graph);\n return next;\n }\n\n // ### `_readQuadPunctuation` reads punctuation after a quad\n _readQuadPunctuation(token) {\n if (token.type !== '.')\n return this._error('Expected dot to follow quad', token);\n return this._readInTopContext;\n }\n\n // ### `_readPrefix` reads the prefix of a prefix declaration\n _readPrefix(token) {\n if (token.type !== 'prefix')\n return this._error('Expected prefix to follow @prefix', token);\n this._prefix = token.value;\n return this._readPrefixIRI;\n }\n\n // ### `_readPrefixIRI` reads the IRI of a prefix declaration\n _readPrefixIRI(token) {\n if (token.type !== 'IRI')\n return this._error(`Expected IRI to follow prefix \"${this._prefix}:\"`, token);\n const prefixNode = this._readEntity(token);\n this._prefixes[this._prefix] = prefixNode.value;\n this._prefixCallback(this._prefix, prefixNode);\n return this._readDeclarationPunctuation;\n }\n\n // ### `_readBaseIRI` reads the IRI of a base declaration\n _readBaseIRI(token) {\n const iri = token.type === 'IRI' && this._resolveIRI(token.value);\n if (!iri)\n return this._error('Expected valid IRI to follow base declaration', token);\n this._setBase(iri);\n return this._readDeclarationPunctuation;\n }\n\n // ### `_readNamedGraphLabel` reads the label of a named graph\n _readNamedGraphLabel(token) {\n switch (token.type) {\n case 'IRI':\n case 'blank':\n case 'prefixed':\n return this._readSubject(token), this._readGraph;\n case '[':\n return this._readNamedGraphBlankLabel;\n default:\n return this._error('Invalid graph label', token);\n }\n }\n\n // ### `_readNamedGraphLabel` reads a blank node label of a named graph\n _readNamedGraphBlankLabel(token) {\n if (token.type !== ']')\n return this._error('Invalid graph label', token);\n this._subject = this._blankNode();\n return this._readGraph;\n }\n\n // ### `_readDeclarationPunctuation` reads the punctuation of a declaration\n _readDeclarationPunctuation(token) {\n // SPARQL-style declarations don't have punctuation\n if (this._sparqlStyle) {\n this._sparqlStyle = false;\n return this._readInTopContext(token);\n }\n\n if (token.type !== '.')\n return this._error('Expected declaration to end with a dot', token);\n return this._readInTopContext;\n }\n\n // Reads a list of quantified symbols from a @forSome or @forAll statement\n _readQuantifierList(token) {\n let entity;\n switch (token.type) {\n case 'IRI':\n case 'prefixed':\n if ((entity = this._readEntity(token, true)) !== undefined)\n break;\n default:\n return this._error(`Unexpected ${token.type}`, token);\n }\n // Without explicit quantifiers, map entities to a quantified entity\n if (!this._explicitQuantifiers)\n this._quantified[entity.id] = this._quantifier(this._blankNode().value);\n // With explicit quantifiers, output the reified quantifier\n else {\n // If this is the first item, start a new quantifier list\n if (this._subject === null)\n this._emit(this._graph || this.DEFAULTGRAPH, this._predicate,\n this._subject = this._blankNode(), this.QUANTIFIERS_GRAPH);\n // Otherwise, continue the previous list\n else\n this._emit(this._subject, this.RDF_REST,\n this._subject = this._blankNode(), this.QUANTIFIERS_GRAPH);\n // Output the list item\n this._emit(this._subject, this.RDF_FIRST, entity, this.QUANTIFIERS_GRAPH);\n }\n return this._readQuantifierPunctuation;\n }\n\n // Reads punctuation from a @forSome or @forAll statement\n _readQuantifierPunctuation(token) {\n // Read more quantifiers\n if (token.type === ',')\n return this._readQuantifierList;\n // End of the quantifier list\n else {\n // With explicit quantifiers, close the quantifier list\n if (this._explicitQuantifiers) {\n this._emit(this._subject, this.RDF_REST, this.RDF_NIL, this.QUANTIFIERS_GRAPH);\n this._subject = null;\n }\n // Read a dot\n this._readCallback = this._getContextEndReader();\n return this._readCallback(token);\n }\n }\n\n // ### `_getPathReader` reads a potential path and then resumes with the given function\n _getPathReader(afterPath) {\n this._afterPath = afterPath;\n return this._readPath;\n }\n\n // ### `_readPath` reads a potential path\n _readPath(token) {\n switch (token.type) {\n // Forward path\n case '!': return this._readForwardPath;\n // Backward path\n case '^': return this._readBackwardPath;\n // Not a path; resume reading where we left off\n default:\n const stack = this._contextStack, parent = stack.length && stack[stack.length - 1];\n // If we were reading a list item, we still need to output it\n if (parent && parent.type === 'item') {\n // The list item is the remaining subejct after reading the path\n const item = this._subject;\n // Switch back to the context of the list\n this._restoreContext('item', token);\n // Output the list item\n this._emit(this._subject, this.RDF_FIRST, item, this._graph);\n }\n return this._afterPath(token);\n }\n }\n\n // ### `_readForwardPath` reads a '!' path\n _readForwardPath(token) {\n let subject, predicate;\n const object = this._blankNode();\n // The next token is the predicate\n if ((predicate = this._readEntity(token)) === undefined)\n return;\n // If we were reading a subject, replace the subject by the path's object\n if (this._predicate === null)\n subject = this._subject, this._subject = object;\n // If we were reading an object, replace the subject by the path's object\n else\n subject = this._object, this._object = object;\n // Emit the path's current quad and read its next section\n this._emit(subject, predicate, object, this._graph);\n return this._readPath;\n }\n\n // ### `_readBackwardPath` reads a '^' path\n _readBackwardPath(token) {\n const subject = this._blankNode();\n let predicate, object;\n // The next token is the predicate\n if ((predicate = this._readEntity(token)) === undefined)\n return;\n // If we were reading a subject, replace the subject by the path's subject\n if (this._predicate === null)\n object = this._subject, this._subject = subject;\n // If we were reading an object, replace the subject by the path's subject\n else\n object = this._object, this._object = subject;\n // Emit the path's current quad and read its next section\n this._emit(subject, predicate, object, this._graph);\n return this._readPath;\n }\n\n // ### `_readRDFStarTailOrGraph` reads the graph of a nested RDF* quad or the end of a nested RDF* triple\n _readRDFStarTailOrGraph(token) {\n if (token.type !== '>>') {\n // An entity means this is a quad (only allowed if not already inside a graph)\n if (this._supportsQuads && this._graph === null && (this._graph = this._readEntity(token)) !== undefined)\n return this._readRDFStarTail;\n return this._error(`Expected >> to follow \"${this._object.id}\"`, token);\n }\n return this._readRDFStarTail(token);\n }\n\n // ### `_readRDFStarTail` reads the end of a nested RDF* triple\n _readRDFStarTail(token) {\n if (token.type !== '>>')\n return this._error(`Expected >> but got ${token.type}`, token);\n // Read the quad and restore the previous context\n const quad = this._quad(this._subject, this._predicate, this._object,\n this._graph || this.DEFAULTGRAPH);\n this._restoreContext('<<', token);\n // If the triple was the subject, continue by reading the predicate.\n if (this._subject === null) {\n this._subject = quad;\n return this._readPredicate;\n }\n // If the triple was the object, read context end.\n else {\n this._object = quad;\n return this._getContextEndReader();\n }\n }\n\n // ### `_getContextEndReader` gets the next reader function at the end of a context\n _getContextEndReader() {\n const contextStack = this._contextStack;\n if (!contextStack.length)\n return this._readPunctuation;\n\n switch (contextStack[contextStack.length - 1].type) {\n case 'blank':\n return this._readBlankNodeTail;\n case 'list':\n return this._readListItem;\n case 'formula':\n return this._readFormulaTail;\n case '<<':\n return this._readRDFStarTailOrGraph;\n }\n }\n\n // ### `_emit` sends a quad through the callback\n _emit(subject, predicate, object, graph) {\n this._callback(null, this._quad(subject, predicate, object, graph || this.DEFAULTGRAPH));\n }\n\n // ### `_error` emits an error message through the callback\n _error(message, token) {\n const err = new Error(`${message} on line ${token.line}.`);\n err.context = {\n token: token,\n line: token.line,\n previousToken: this._lexer.previousToken,\n };\n this._callback(err);\n this._callback = noop;\n }\n\n // ### `_resolveIRI` resolves an IRI against the base path\n _resolveIRI(iri) {\n return /^[a-z][a-z0-9+.-]*:/i.test(iri) ? iri : this._resolveRelativeIRI(iri);\n }\n\n // ### `_resolveRelativeIRI` resolves an IRI against the base path,\n // assuming that a base path has been set and that the IRI is indeed relative\n _resolveRelativeIRI(iri) {\n // An empty relative IRI indicates the base IRI\n if (!iri.length)\n return this._base;\n // Decide resolving strategy based in the first character\n switch (iri[0]) {\n // Resolve relative fragment IRIs against the base IRI\n case '#': return this._base + iri;\n // Resolve relative query string IRIs by replacing the query string\n case '?': return this._base.replace(/(?:\\?.*)?$/, iri);\n // Resolve root-relative IRIs at the root of the base IRI\n case '/':\n // Resolve scheme-relative IRIs to the scheme\n return (iri[1] === '/' ? this._baseScheme : this._baseRoot) + this._removeDotSegments(iri);\n // Resolve all other IRIs at the base IRI's path\n default:\n // Relative IRIs cannot contain a colon in the first path segment\n return (/^[^/:]*:/.test(iri)) ? null : this._removeDotSegments(this._basePath + iri);\n }\n }\n\n // ### `_removeDotSegments` resolves './' and '../' path segments in an IRI as per RFC3986\n _removeDotSegments(iri) {\n // Don't modify the IRI if it does not contain any dot segments\n if (!/(^|\\/)\\.\\.?($|[/#?])/.test(iri))\n return iri;\n\n // Start with an imaginary slash before the IRI in order to resolve trailing './' and '../'\n const length = iri.length;\n let result = '', i = -1, pathStart = -1, segmentStart = 0, next = '/';\n\n while (i < length) {\n switch (next) {\n // The path starts with the first slash after the authority\n case ':':\n if (pathStart < 0) {\n // Skip two slashes before the authority\n if (iri[++i] === '/' && iri[++i] === '/')\n // Skip to slash after the authority\n while ((pathStart = i + 1) < length && iri[pathStart] !== '/')\n i = pathStart;\n }\n break;\n // Don't modify a query string or fragment\n case '?':\n case '#':\n i = length;\n break;\n // Handle '/.' or '/..' path segments\n case '/':\n if (iri[i + 1] === '.') {\n next = iri[++i + 1];\n switch (next) {\n // Remove a '/.' segment\n case '/':\n result += iri.substring(segmentStart, i - 1);\n segmentStart = i + 1;\n break;\n // Remove a trailing '/.' segment\n case undefined:\n case '?':\n case '#':\n return result + iri.substring(segmentStart, i) + iri.substr(i + 1);\n // Remove a '/..' segment\n case '.':\n next = iri[++i + 1];\n if (next === undefined || next === '/' || next === '?' || next === '#') {\n result += iri.substring(segmentStart, i - 2);\n // Try to remove the parent path from result\n if ((segmentStart = result.lastIndexOf('/')) >= pathStart)\n result = result.substr(0, segmentStart);\n // Remove a trailing '/..' segment\n if (next !== '/')\n return `${result}/${iri.substr(i + 1)}`;\n segmentStart = i + 1;\n }\n }\n }\n }\n next = iri[++i];\n }\n return result + iri.substring(segmentStart);\n }\n\n // ## Public methods\n\n // ### `parse` parses the N3 input and emits each parsed quad through the callback\n parse(input, quadCallback, prefixCallback) {\n // The read callback is the next function to be executed when a token arrives.\n // We start reading in the top context.\n this._readCallback = this._readInTopContext;\n this._sparqlStyle = false;\n this._prefixes = Object.create(null);\n this._prefixes._ = this._blankNodePrefix ? this._blankNodePrefix.substr(2)\n : `b${blankNodePrefix++}_`;\n this._prefixCallback = prefixCallback || noop;\n this._inversePredicate = false;\n this._quantified = Object.create(null);\n\n // Parse synchronously if no quad callback is given\n if (!quadCallback) {\n const quads = [];\n let error;\n this._callback = (e, t) => { e ? (error = e) : t && quads.push(t); };\n this._lexer.tokenize(input).every(token => {\n return this._readCallback = this._readCallback(token);\n });\n if (error) throw error;\n return quads;\n }\n\n // Parse asynchronously otherwise, executing the read callback when a token arrives\n this._callback = quadCallback;\n this._lexer.tokenize(input, (error, token) => {\n if (error !== null)\n this._callback(error), this._callback = noop;\n else if (this._readCallback)\n this._readCallback = this._readCallback(token);\n });\n }\n}\n\n// The empty function\nfunction noop() {}\n\n// Initializes the parser with the given data factory\nfunction initDataFactory(parser, factory) {\n // Set factory methods\n const namedNode = factory.namedNode;\n parser._namedNode = namedNode;\n parser._blankNode = factory.blankNode;\n parser._literal = factory.literal;\n parser._variable = factory.variable;\n parser._quad = factory.quad;\n parser.DEFAULTGRAPH = factory.defaultGraph();\n\n // Set common named nodes\n parser.RDF_FIRST = namedNode(namespaces.rdf.first);\n parser.RDF_REST = namedNode(namespaces.rdf.rest);\n parser.RDF_NIL = namedNode(namespaces.rdf.nil);\n parser.N3_FORALL = namedNode(namespaces.r.forAll);\n parser.N3_FORSOME = namedNode(namespaces.r.forSome);\n parser.ABBREVIATIONS = {\n 'a': namedNode(namespaces.rdf.type),\n '=': namedNode(namespaces.owl.sameAs),\n '>': namedNode(namespaces.log.implies),\n };\n parser.QUANTIFIERS_GRAPH = namedNode('urn:n3:quantifiers');\n}\ninitDataFactory(N3Parser.prototype, N3DataFactory);\n","// **N3Writer** writes N3 documents.\nimport namespaces from './IRIs';\nimport { default as N3DataFactory, Term } from './N3DataFactory';\nimport { isDefaultGraph } from './N3Util';\n\nconst DEFAULTGRAPH = N3DataFactory.defaultGraph();\n\nconst { rdf, xsd } = namespaces;\n\n// Characters in literals that require escaping\nconst escape = /[\"\\\\\\t\\n\\r\\b\\f\\u0000-\\u0019\\ud800-\\udbff]/,\n escapeAll = /[\"\\\\\\t\\n\\r\\b\\f\\u0000-\\u0019]|[\\ud800-\\udbff][\\udc00-\\udfff]/g,\n escapedCharacters = {\n '\\\\': '\\\\\\\\', '\"': '\\\\\"', '\\t': '\\\\t',\n '\\n': '\\\\n', '\\r': '\\\\r', '\\b': '\\\\b', '\\f': '\\\\f',\n };\n\n// ## Placeholder class to represent already pretty-printed terms\nclass SerializedTerm extends Term {\n // Pretty-printed nodes are not equal to any other node\n // (e.g., [] does not equal [])\n equals(other) {\n return other === this;\n }\n}\n\n// ## Constructor\nexport default class N3Writer {\n constructor(outputStream, options) {\n // ### `_prefixRegex` matches a prefixed name or IRI that begins with one of the added prefixes\n this._prefixRegex = /$0^/;\n\n // Shift arguments if the first argument is not a stream\n if (outputStream && typeof outputStream.write !== 'function')\n options = outputStream, outputStream = null;\n options = options || {};\n this._lists = options.lists;\n\n // If no output stream given, send the output as string through the end callback\n if (!outputStream) {\n let output = '';\n this._outputStream = {\n write(chunk, encoding, done) { output += chunk; done && done(); },\n end: done => { done && done(null, output); },\n };\n this._endStream = true;\n }\n else {\n this._outputStream = outputStream;\n this._endStream = options.end === undefined ? true : !!options.end;\n }\n\n // Initialize writer, depending on the format\n this._subject = null;\n if (!(/triple|quad/i).test(options.format)) {\n this._lineMode = false;\n this._graph = DEFAULTGRAPH;\n this._prefixIRIs = Object.create(null);\n options.prefixes && this.addPrefixes(options.prefixes);\n if (options.baseIRI) {\n this._baseMatcher = new RegExp(`^${escapeRegex(options.baseIRI)\n }${options.baseIRI.endsWith('/') ? '' : '[#?]'}`);\n this._baseLength = options.baseIRI.length;\n }\n }\n else {\n this._lineMode = true;\n this._writeQuad = this._writeQuadLine;\n }\n }\n\n // ## Private methods\n\n // ### Whether the current graph is the default graph\n get _inDefaultGraph() {\n return DEFAULTGRAPH.equals(this._graph);\n }\n\n // ### `_write` writes the argument to the output stream\n _write(string, callback) {\n this._outputStream.write(string, 'utf8', callback);\n }\n\n // ### `_writeQuad` writes the quad to the output stream\n _writeQuad(subject, predicate, object, graph, done) {\n try {\n // Write the graph's label if it has changed\n if (!graph.equals(this._graph)) {\n // Close the previous graph and start the new one\n this._write((this._subject === null ? '' : (this._inDefaultGraph ? '.\\n' : '\\n}\\n')) +\n (DEFAULTGRAPH.equals(graph) ? '' : `${this._encodeIriOrBlank(graph)} {\\n`));\n this._graph = graph;\n this._subject = null;\n }\n // Don't repeat the subject if it's the same\n if (subject.equals(this._subject)) {\n // Don't repeat the predicate if it's the same\n if (predicate.equals(this._predicate))\n this._write(`, ${this._encodeObject(object)}`, done);\n // Same subject, different predicate\n else\n this._write(`;\\n ${\n this._encodePredicate(this._predicate = predicate)} ${\n this._encodeObject(object)}`, done);\n }\n // Different subject; write the whole quad\n else\n this._write(`${(this._subject === null ? '' : '.\\n') +\n this._encodeSubject(this._subject = subject)} ${\n this._encodePredicate(this._predicate = predicate)} ${\n this._encodeObject(object)}`, done);\n }\n catch (error) { done && done(error); }\n }\n\n // ### `_writeQuadLine` writes the quad to the output stream as a single line\n _writeQuadLine(subject, predicate, object, graph, done) {\n // Write the quad without prefixes\n delete this._prefixMatch;\n this._write(this.quadToString(subject, predicate, object, graph), done);\n }\n\n // ### `quadToString` serializes a quad as a string\n quadToString(subject, predicate, object, graph) {\n return `${this._encodeSubject(subject)} ${\n this._encodeIriOrBlank(predicate)} ${\n this._encodeObject(object)\n }${graph && graph.value ? ` ${this._encodeIriOrBlank(graph)} .\\n` : ' .\\n'}`;\n }\n\n // ### `quadsToString` serializes an array of quads as a string\n quadsToString(quads) {\n return quads.map(t => {\n return this.quadToString(t.subject, t.predicate, t.object, t.graph);\n }).join('');\n }\n\n // ### `_encodeSubject` represents a subject\n _encodeSubject(entity) {\n return entity.termType === 'Quad' ?\n this._encodeQuad(entity) : this._encodeIriOrBlank(entity);\n }\n\n // ### `_encodeIriOrBlank` represents an IRI or blank node\n _encodeIriOrBlank(entity) {\n // A blank node or list is represented as-is\n if (entity.termType !== 'NamedNode') {\n // If it is a list head, pretty-print it\n if (this._lists && (entity.value in this._lists))\n entity = this.list(this._lists[entity.value]);\n return 'id' in entity ? entity.id : `_:${entity.value}`;\n }\n let iri = entity.value;\n // Use relative IRIs if requested and possible\n if (this._baseMatcher && this._baseMatcher.test(iri))\n iri = iri.substr(this._baseLength);\n // Escape special characters\n if (escape.test(iri))\n iri = iri.replace(escapeAll, characterReplacer);\n // Try to represent the IRI as prefixed name\n const prefixMatch = this._prefixRegex.exec(iri);\n return !prefixMatch ? `<${iri}>` :\n (!prefixMatch[1] ? iri : this._prefixIRIs[prefixMatch[1]] + prefixMatch[2]);\n }\n\n // ### `_encodeLiteral` represents a literal\n _encodeLiteral(literal) {\n // Escape special characters\n let value = literal.value;\n if (escape.test(value))\n value = value.replace(escapeAll, characterReplacer);\n\n // Write a language-tagged literal\n if (literal.language)\n return `\"${value}\"@${literal.language}`;\n\n // Write dedicated literals per data type\n if (this._lineMode) {\n // Only abbreviate strings in N-Triples or N-Quads\n if (literal.datatype.value === xsd.string)\n return `\"${value}\"`;\n }\n else {\n // Use common datatype abbreviations in Turtle or TriG\n switch (literal.datatype.value) {\n case xsd.string:\n return `\"${value}\"`;\n case xsd.boolean:\n if (value === 'true' || value === 'false')\n return value;\n break;\n case xsd.integer:\n if (/^[+-]?\\d+$/.test(value))\n return value;\n break;\n case xsd.decimal:\n if (/^[+-]?\\d*\\.\\d+$/.test(value))\n return value;\n break;\n case xsd.double:\n if (/^[+-]?(?:\\d+\\.\\d*|\\.?\\d+)[eE][+-]?\\d+$/.test(value))\n return value;\n break;\n }\n }\n\n // Write a regular datatyped literal\n return `\"${value}\"^^${this._encodeIriOrBlank(literal.datatype)}`;\n }\n\n // ### `_encodePredicate` represents a predicate\n _encodePredicate(predicate) {\n return predicate.value === rdf.type ? 'a' : this._encodeIriOrBlank(predicate);\n }\n\n // ### `_encodeObject` represents an object\n _encodeObject(object) {\n switch (object.termType) {\n case 'Quad':\n return this._encodeQuad(object);\n case 'Literal':\n return this._encodeLiteral(object);\n default:\n return this._encodeIriOrBlank(object);\n }\n }\n\n // ### `_encodeQuad` encodes an RDF* quad\n _encodeQuad({ subject, predicate, object, graph }) {\n return `<<${\n this._encodeSubject(subject)} ${\n this._encodePredicate(predicate)} ${\n this._encodeObject(object)}${\n isDefaultGraph(graph) ? '' : ` ${this._encodeIriOrBlank(graph)}`}>>`;\n }\n\n // ### `_blockedWrite` replaces `_write` after the writer has been closed\n _blockedWrite() {\n throw new Error('Cannot write because the writer has been closed.');\n }\n\n // ### `addQuad` adds the quad to the output stream\n addQuad(subject, predicate, object, graph, done) {\n // The quad was given as an object, so shift parameters\n if (object === undefined)\n this._writeQuad(subject.subject, subject.predicate, subject.object, subject.graph, predicate);\n // The optional `graph` parameter was not provided\n else if (typeof graph === 'function')\n this._writeQuad(subject, predicate, object, DEFAULTGRAPH, graph);\n // The `graph` parameter was provided\n else\n this._writeQuad(subject, predicate, object, graph || DEFAULTGRAPH, done);\n }\n\n // ### `addQuads` adds the quads to the output stream\n addQuads(quads) {\n for (let i = 0; i < quads.length; i++)\n this.addQuad(quads[i]);\n }\n\n // ### `addPrefix` adds the prefix to the output stream\n addPrefix(prefix, iri, done) {\n const prefixes = {};\n prefixes[prefix] = iri;\n this.addPrefixes(prefixes, done);\n }\n\n // ### `addPrefixes` adds the prefixes to the output stream\n addPrefixes(prefixes, done) {\n // Ignore prefixes if not supported by the serialization\n if (!this._prefixIRIs)\n return done && done();\n\n // Write all new prefixes\n let hasPrefixes = false;\n for (let prefix in prefixes) {\n let iri = prefixes[prefix];\n if (typeof iri !== 'string')\n iri = iri.value;\n hasPrefixes = true;\n // Finish a possible pending quad\n if (this._subject !== null) {\n this._write(this._inDefaultGraph ? '.\\n' : '\\n}\\n');\n this._subject = null, this._graph = '';\n }\n // Store and write the prefix\n this._prefixIRIs[iri] = (prefix += ':');\n this._write(`@prefix ${prefix} <${iri}>.\\n`);\n }\n // Recreate the prefix matcher\n if (hasPrefixes) {\n let IRIlist = '', prefixList = '';\n for (const prefixIRI in this._prefixIRIs) {\n IRIlist += IRIlist ? `|${prefixIRI}` : prefixIRI;\n prefixList += (prefixList ? '|' : '') + this._prefixIRIs[prefixIRI];\n }\n IRIlist = escapeRegex(IRIlist, /[\\]\\/\\(\\)\\*\\+\\?\\.\\\\\\$]/g, '\\\\$&');\n this._prefixRegex = new RegExp(`^(?:${prefixList})[^\\/]*$|` +\n `^(${IRIlist})([_a-zA-Z][\\\\-_a-zA-Z0-9]*)$`);\n }\n // End a prefix block with a newline\n this._write(hasPrefixes ? '\\n' : '', done);\n }\n\n // ### `blank` creates a blank node with the given content\n blank(predicate, object) {\n let children = predicate, child, length;\n // Empty blank node\n if (predicate === undefined)\n children = [];\n // Blank node passed as blank(Term(\"predicate\"), Term(\"object\"))\n else if (predicate.termType)\n children = [{ predicate: predicate, object: object }];\n // Blank node passed as blank({ predicate: predicate, object: object })\n else if (!('length' in predicate))\n children = [predicate];\n\n switch (length = children.length) {\n // Generate an empty blank node\n case 0:\n return new SerializedTerm('[]');\n // Generate a non-nested one-triple blank node\n case 1:\n child = children[0];\n if (!(child.object instanceof SerializedTerm))\n return new SerializedTerm(`[ ${this._encodePredicate(child.predicate)} ${\n this._encodeObject(child.object)} ]`);\n // Generate a multi-triple or nested blank node\n default:\n let contents = '[';\n // Write all triples in order\n for (let i = 0; i < length; i++) {\n child = children[i];\n // Write only the object is the predicate is the same as the previous\n if (child.predicate.equals(predicate))\n contents += `, ${this._encodeObject(child.object)}`;\n // Otherwise, write the predicate and the object\n else {\n contents += `${(i ? ';\\n ' : '\\n ') +\n this._encodePredicate(child.predicate)} ${\n this._encodeObject(child.object)}`;\n predicate = child.predicate;\n }\n }\n return new SerializedTerm(`${contents}\\n]`);\n }\n }\n\n // ### `list` creates a list node with the given content\n list(elements) {\n const length = elements && elements.length || 0, contents = new Array(length);\n for (let i = 0; i < length; i++)\n contents[i] = this._encodeObject(elements[i]);\n return new SerializedTerm(`(${contents.join(' ')})`);\n }\n\n // ### `end` signals the end of the output stream\n end(done) {\n // Finish a possible pending quad\n if (this._subject !== null) {\n this._write(this._inDefaultGraph ? '.\\n' : '\\n}\\n');\n this._subject = null;\n }\n // Disallow further writing\n this._write = this._blockedWrite;\n\n // Try to end the underlying stream, ensuring done is called exactly one time\n let singleDone = done && ((error, result) => { singleDone = null, done(error, result); });\n if (this._endStream) {\n try { return this._outputStream.end(singleDone); }\n catch (error) { /* error closing stream */ }\n }\n singleDone && singleDone();\n }\n}\n\n// Replaces a character by its escaped version\nfunction characterReplacer(character) {\n // Replace a single character by its escaped version\n let result = escapedCharacters[character];\n if (result === undefined) {\n // Replace a single character with its 4-bit unicode escape sequence\n if (character.length === 1) {\n result = character.charCodeAt(0).toString(16);\n result = '\\\\u0000'.substr(0, 6 - result.length) + result;\n }\n // Replace a surrogate pair with its 8-bit unicode escape sequence\n else {\n result = ((character.charCodeAt(0) - 0xD800) * 0x400 +\n character.charCodeAt(1) + 0x2400).toString(16);\n result = '\\\\U00000000'.substr(0, 10 - result.length) + result;\n }\n }\n return result;\n}\n\nfunction escapeRegex(regex) {\n return regex.replace(/[\\]\\/\\(\\)\\*\\+\\?\\.\\\\\\$]/g, '\\\\$&');\n}\n","// **N3Store** objects store N3 quads by graph in memory.\nimport { default as N3DataFactory, termToId, termFromId } from './N3DataFactory';\nimport { Readable } from 'readable-stream';\nimport namespaces from './IRIs';\n\n// ## Constructor\nexport default class N3Store {\n constructor(quads, options) {\n // The number of quads is initially zero\n this._size = 0;\n // `_graphs` contains subject, predicate, and object indexes per graph\n this._graphs = Object.create(null);\n // `_ids` maps entities such as `http://xmlns.com/foaf/0.1/name` to numbers,\n // saving memory by using only numbers as keys in `_graphs`\n this._id = 0;\n this._ids = Object.create(null);\n this._ids['><'] = 0; // dummy entry, so the first actual key is non-zero\n this._entities = Object.create(null); // inverse of `_ids`\n // `_blankNodeIndex` is the index of the last automatically named blank node\n this._blankNodeIndex = 0;\n\n // Shift parameters if `quads` is not given\n if (!options && quads && !quads[0])\n options = quads, quads = null;\n options = options || {};\n this._factory = options.factory || N3DataFactory;\n\n // Add quads if passed\n if (quads)\n this.addQuads(quads);\n }\n\n // ## Public properties\n\n // ### `size` returns the number of quads in the store\n get size() {\n // Return the quad count if if was cached\n let size = this._size;\n if (size !== null)\n return size;\n\n // Calculate the number of quads by counting to the deepest level\n size = 0;\n const graphs = this._graphs;\n let subjects, subject;\n for (const graphKey in graphs)\n for (const subjectKey in (subjects = graphs[graphKey].subjects))\n for (const predicateKey in (subject = subjects[subjectKey]))\n size += Object.keys(subject[predicateKey]).length;\n return this._size = size;\n }\n\n // ## Private methods\n\n // ### `_addToIndex` adds a quad to a three-layered index.\n // Returns if the index has changed, if the entry did not already exist.\n _addToIndex(index0, key0, key1, key2) {\n // Create layers as necessary\n const index1 = index0[key0] || (index0[key0] = {});\n const index2 = index1[key1] || (index1[key1] = {});\n // Setting the key to _any_ value signals the presence of the quad\n const existed = key2 in index2;\n if (!existed)\n index2[key2] = null;\n return !existed;\n }\n\n // ### `_removeFromIndex` removes a quad from a three-layered index\n _removeFromIndex(index0, key0, key1, key2) {\n // Remove the quad from the index\n const index1 = index0[key0], index2 = index1[key1];\n delete index2[key2];\n\n // Remove intermediary index layers if they are empty\n for (const key in index2) return;\n delete index1[key1];\n for (const key in index1) return;\n delete index0[key0];\n }\n\n // ### `_findInIndex` finds a set of quads in a three-layered index.\n // The index base is `index0` and the keys at each level are `key0`, `key1`, and `key2`.\n // Any of these keys can be undefined, which is interpreted as a wildcard.\n // `name0`, `name1`, and `name2` are the names of the keys at each level,\n // used when reconstructing the resulting quad\n // (for instance: _subject_, _predicate_, and _object_).\n // Finally, `graphId` will be the graph of the created quads.\n *_findInIndex(index0, key0, key1, key2, name0, name1, name2, graphId) {\n let tmp, index1, index2;\n const entityKeys = this._entities;\n const graph = termFromId(graphId, this._factory);\n const parts = { subject: null, predicate: null, object: null };\n\n // If a key is specified, use only that part of index 0.\n if (key0) (tmp = index0, index0 = {})[key0] = tmp[key0];\n for (const value0 in index0) {\n if (index1 = index0[value0]) {\n parts[name0] = termFromId(entityKeys[value0], this._factory);\n // If a key is specified, use only that part of index 1.\n if (key1) (tmp = index1, index1 = {})[key1] = tmp[key1];\n for (const value1 in index1) {\n if (index2 = index1[value1]) {\n parts[name1] = termFromId(entityKeys[value1], this._factory);\n // If a key is specified, use only that part of index 2, if it exists.\n const values = key2 ? (key2 in index2 ? [key2] : []) : Object.keys(index2);\n // Create quads for all items found in index 2.\n for (let l = 0; l < values.length; l++) {\n parts[name2] = termFromId(entityKeys[values[l]], this._factory);\n yield this._factory.quad(parts.subject, parts.predicate, parts.object, graph);\n }\n }\n }\n }\n }\n }\n\n // ### `_loop` executes the callback on all keys of index 0\n _loop(index0, callback) {\n for (const key0 in index0)\n callback(key0);\n }\n\n // ### `_loopByKey0` executes the callback on all keys of a certain entry in index 0\n _loopByKey0(index0, key0, callback) {\n let index1, key1;\n if (index1 = index0[key0]) {\n for (key1 in index1)\n callback(key1);\n }\n }\n\n // ### `_loopByKey1` executes the callback on given keys of all entries in index 0\n _loopByKey1(index0, key1, callback) {\n let key0, index1;\n for (key0 in index0) {\n index1 = index0[key0];\n if (index1[key1])\n callback(key0);\n }\n }\n\n // ### `_loopBy2Keys` executes the callback on given keys of certain entries in index 2\n _loopBy2Keys(index0, key0, key1, callback) {\n let index1, index2, key2;\n if ((index1 = index0[key0]) && (index2 = index1[key1])) {\n for (key2 in index2)\n callback(key2);\n }\n }\n\n // ### `_countInIndex` counts matching quads in a three-layered index.\n // The index base is `index0` and the keys at each level are `key0`, `key1`, and `key2`.\n // Any of these keys can be undefined, which is interpreted as a wildcard.\n _countInIndex(index0, key0, key1, key2) {\n let count = 0, tmp, index1, index2;\n\n // If a key is specified, count only that part of index 0\n if (key0) (tmp = index0, index0 = {})[key0] = tmp[key0];\n for (const value0 in index0) {\n if (index1 = index0[value0]) {\n // If a key is specified, count only that part of index 1\n if (key1) (tmp = index1, index1 = {})[key1] = tmp[key1];\n for (const value1 in index1) {\n if (index2 = index1[value1]) {\n // If a key is specified, count the quad if it exists\n if (key2) (key2 in index2) && count++;\n // Otherwise, count all quads\n else count += Object.keys(index2).length;\n }\n }\n }\n }\n return count;\n }\n\n // ### `_getGraphs` returns an array with the given graph,\n // or all graphs if the argument is null or undefined.\n _getGraphs(graph) {\n if (!isString(graph))\n return this._graphs;\n const graphs = {};\n graphs[graph] = this._graphs[graph];\n return graphs;\n }\n\n // ### `_uniqueEntities` returns a function that accepts an entity ID\n // and passes the corresponding entity to callback if it hasn't occurred before.\n _uniqueEntities(callback) {\n const uniqueIds = Object.create(null);\n return id => {\n if (!(id in uniqueIds)) {\n uniqueIds[id] = true;\n callback(termFromId(this._entities[id], this._factory));\n }\n };\n }\n\n // ## Public methods\n\n // ### `add` adds the specified quad to the dataset.\n // Returns the dataset instance it was called on.\n // Existing quads, as defined in Quad.equals, will be ignored.\n add(quad) {\n this.addQuad(quad);\n return this;\n }\n\n // ### `addQuad` adds a new quad to the store.\n // Returns if the quad index has changed, if the quad did not already exist.\n addQuad(subject, predicate, object, graph) {\n // Shift arguments if a quad object is given instead of components\n if (!predicate)\n graph = subject.graph, object = subject.object,\n predicate = subject.predicate, subject = subject.subject;\n\n // Convert terms to internal string representation\n subject = termToId(subject);\n predicate = termToId(predicate);\n object = termToId(object);\n graph = termToId(graph);\n\n // Find the graph that will contain the triple\n let graphItem = this._graphs[graph];\n // Create the graph if it doesn't exist yet\n if (!graphItem) {\n graphItem = this._graphs[graph] = { subjects: {}, predicates: {}, objects: {} };\n // Freezing a graph helps subsequent `add` performance,\n // and properties will never be modified anyway\n Object.freeze(graphItem);\n }\n\n // Since entities can often be long IRIs, we avoid storing them in every index.\n // Instead, we have a separate index that maps entities to numbers,\n // which are then used as keys in the other indexes.\n const ids = this._ids;\n const entities = this._entities;\n subject = ids[subject] || (ids[entities[++this._id] = subject] = this._id);\n predicate = ids[predicate] || (ids[entities[++this._id] = predicate] = this._id);\n object = ids[object] || (ids[entities[++this._id] = object] = this._id);\n\n const changed = this._addToIndex(graphItem.subjects, subject, predicate, object);\n this._addToIndex(graphItem.predicates, predicate, object, subject);\n this._addToIndex(graphItem.objects, object, subject, predicate);\n\n // The cached quad count is now invalid\n this._size = null;\n return changed;\n }\n\n // ### `addQuads` adds multiple quads to the store\n addQuads(quads) {\n for (let i = 0; i < quads.length; i++)\n this.addQuad(quads[i]);\n }\n\n // ### `delete` removes the specified quad from the dataset.\n // Returns the dataset instance it was called on.\n delete(quad) {\n this.removeQuad(quad);\n return this;\n }\n\n // ### `has` determines whether a dataset includes a certain quad or quad pattern.\n has(subjectOrQuad, predicate, object, graph) {\n if (subjectOrQuad && subjectOrQuad.subject)\n ({ subject: subjectOrQuad, predicate, object, graph } = subjectOrQuad);\n return !this.readQuads(subjectOrQuad, predicate, object, graph).next().done;\n }\n\n // ### `import` adds a stream of quads to the store\n import(stream) {\n stream.on('data', quad => { this.addQuad(quad); });\n return stream;\n }\n\n // ### `removeQuad` removes a quad from the store if it exists\n removeQuad(subject, predicate, object, graph) {\n // Shift arguments if a quad object is given instead of components\n if (!predicate)\n graph = subject.graph, object = subject.object,\n predicate = subject.predicate, subject = subject.subject;\n\n // Convert terms to internal string representation\n subject = termToId(subject);\n predicate = termToId(predicate);\n object = termToId(object);\n graph = termToId(graph);\n\n // Find internal identifiers for all components\n // and verify the quad exists.\n const ids = this._ids, graphs = this._graphs;\n let graphItem, subjects, predicates;\n if (!(subject = ids[subject]) || !(predicate = ids[predicate]) ||\n !(object = ids[object]) || !(graphItem = graphs[graph]) ||\n !(subjects = graphItem.subjects[subject]) ||\n !(predicates = subjects[predicate]) ||\n !(object in predicates))\n return false;\n\n // Remove it from all indexes\n this._removeFromIndex(graphItem.subjects, subject, predicate, object);\n this._removeFromIndex(graphItem.predicates, predicate, object, subject);\n this._removeFromIndex(graphItem.objects, object, subject, predicate);\n if (this._size !== null) this._size--;\n\n // Remove the graph if it is empty\n for (subject in graphItem.subjects) return true;\n delete graphs[graph];\n return true;\n }\n\n // ### `removeQuads` removes multiple quads from the store\n removeQuads(quads) {\n for (let i = 0; i < quads.length; i++)\n this.removeQuad(quads[i]);\n }\n\n // ### `remove` removes a stream of quads from the store\n remove(stream) {\n stream.on('data', quad => { this.removeQuad(quad); });\n return stream;\n }\n\n // ### `removeMatches` removes all matching quads from the store\n // Setting any field to `undefined` or `null` indicates a wildcard.\n removeMatches(subject, predicate, object, graph) {\n const stream = new Readable({ objectMode: true });\n\n stream._read = () => {\n for (const quad of this.readQuads(subject, predicate, object, graph))\n stream.push(quad);\n stream.push(null);\n };\n\n return this.remove(stream);\n }\n\n // ### `deleteGraph` removes all triples with the given graph from the store\n deleteGraph(graph) {\n return this.removeMatches(null, null, null, graph);\n }\n\n // ### `getQuads` returns an array of quads matching a pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n getQuads(subject, predicate, object, graph) {\n return [...this.readQuads(subject, predicate, object, graph)];\n }\n\n // ### `readQuads` returns an generator of quads matching a pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n *readQuads(subject, predicate, object, graph) {\n // Convert terms to internal string representation\n subject = subject && termToId(subject);\n predicate = predicate && termToId(predicate);\n object = object && termToId(object);\n graph = graph && termToId(graph);\n\n const graphs = this._getGraphs(graph), ids = this._ids;\n let content, subjectId, predicateId, objectId;\n\n // Translate IRIs to internal index keys.\n if (isString(subject) && !(subjectId = ids[subject]) ||\n isString(predicate) && !(predicateId = ids[predicate]) ||\n isString(object) && !(objectId = ids[object]))\n return;\n\n for (const graphId in graphs) {\n // Only if the specified graph contains triples, there can be results\n if (content = graphs[graphId]) {\n // Choose the optimal index, based on what fields are present\n if (subjectId) {\n if (objectId)\n // If subject and object are given, the object index will be the fastest\n yield* this._findInIndex(content.objects, objectId, subjectId, predicateId,\n 'object', 'subject', 'predicate', graphId);\n else\n // If only subject and possibly predicate are given, the subject index will be the fastest\n yield* this._findInIndex(content.subjects, subjectId, predicateId, null,\n 'subject', 'predicate', 'object', graphId);\n }\n else if (predicateId)\n // If only predicate and possibly object are given, the predicate index will be the fastest\n yield* this._findInIndex(content.predicates, predicateId, objectId, null,\n 'predicate', 'object', 'subject', graphId);\n else if (objectId)\n // If only object is given, the object index will be the fastest\n yield* this._findInIndex(content.objects, objectId, null, null,\n 'object', 'subject', 'predicate', graphId);\n else\n // If nothing is given, iterate subjects and predicates first\n yield* this._findInIndex(content.subjects, null, null, null,\n 'subject', 'predicate', 'object', graphId);\n }\n }\n }\n\n // ### `match` returns a new dataset that is comprised of all quads in the current instance matching the given arguments.\n // The logic described in Quad Matching is applied for each quad in this dataset to check if it should be included in the output dataset.\n // Note: This method always returns a new DatasetCore, even if that dataset contains no quads.\n // Note: Since a DatasetCore is an unordered set, the order of the quads within the returned sequence is arbitrary.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n // For backwards compatibility, the object return also implements the Readable stream interface.\n match(subject, predicate, object, graph) {\n return new DatasetCoreAndReadableStream(this, subject, predicate, object, graph);\n }\n\n // ### `countQuads` returns the number of quads matching a pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n countQuads(subject, predicate, object, graph) {\n // Convert terms to internal string representation\n subject = subject && termToId(subject);\n predicate = predicate && termToId(predicate);\n object = object && termToId(object);\n graph = graph && termToId(graph);\n\n const graphs = this._getGraphs(graph), ids = this._ids;\n let count = 0, content, subjectId, predicateId, objectId;\n\n // Translate IRIs to internal index keys.\n if (isString(subject) && !(subjectId = ids[subject]) ||\n isString(predicate) && !(predicateId = ids[predicate]) ||\n isString(object) && !(objectId = ids[object]))\n return 0;\n\n for (const graphId in graphs) {\n // Only if the specified graph contains triples, there can be results\n if (content = graphs[graphId]) {\n // Choose the optimal index, based on what fields are present\n if (subject) {\n if (object)\n // If subject and object are given, the object index will be the fastest\n count += this._countInIndex(content.objects, objectId, subjectId, predicateId);\n else\n // If only subject and possibly predicate are given, the subject index will be the fastest\n count += this._countInIndex(content.subjects, subjectId, predicateId, objectId);\n }\n else if (predicate) {\n // If only predicate and possibly object are given, the predicate index will be the fastest\n count += this._countInIndex(content.predicates, predicateId, objectId, subjectId);\n }\n else {\n // If only object is possibly given, the object index will be the fastest\n count += this._countInIndex(content.objects, objectId, subjectId, predicateId);\n }\n }\n }\n return count;\n }\n\n // ### `forEach` executes the callback on all quads.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n forEach(callback, subject, predicate, object, graph) {\n this.some(quad => {\n callback(quad);\n return false;\n }, subject, predicate, object, graph);\n }\n\n // ### `every` executes the callback on all quads,\n // and returns `true` if it returns truthy for all them.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n every(callback, subject, predicate, object, graph) {\n let some = false;\n const every = !this.some(quad => {\n some = true;\n return !callback(quad);\n }, subject, predicate, object, graph);\n return some && every;\n }\n\n // ### `some` executes the callback on all quads,\n // and returns `true` if it returns truthy for any of them.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n some(callback, subject, predicate, object, graph) {\n for (const quad of this.readQuads(subject, predicate, object, graph))\n if (callback(quad))\n return true;\n return false;\n }\n\n // ### `getSubjects` returns all subjects that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n getSubjects(predicate, object, graph) {\n const results = [];\n this.forSubjects(s => { results.push(s); }, predicate, object, graph);\n return results;\n }\n\n // ### `forSubjects` executes the callback on all subjects that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n forSubjects(callback, predicate, object, graph) {\n // Convert terms to internal string representation\n predicate = predicate && termToId(predicate);\n object = object && termToId(object);\n graph = graph && termToId(graph);\n\n const ids = this._ids, graphs = this._getGraphs(graph);\n let content, predicateId, objectId;\n callback = this._uniqueEntities(callback);\n\n // Translate IRIs to internal index keys.\n if (isString(predicate) && !(predicateId = ids[predicate]) ||\n isString(object) && !(objectId = ids[object]))\n return;\n\n for (graph in graphs) {\n // Only if the specified graph contains triples, there can be results\n if (content = graphs[graph]) {\n // Choose optimal index based on which fields are wildcards\n if (predicateId) {\n if (objectId)\n // If predicate and object are given, the POS index is best.\n this._loopBy2Keys(content.predicates, predicateId, objectId, callback);\n else\n // If only predicate is given, the SPO index is best.\n this._loopByKey1(content.subjects, predicateId, callback);\n }\n else if (objectId)\n // If only object is given, the OSP index is best.\n this._loopByKey0(content.objects, objectId, callback);\n else\n // If no params given, iterate all the subjects\n this._loop(content.subjects, callback);\n }\n }\n }\n\n // ### `getPredicates` returns all predicates that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n getPredicates(subject, object, graph) {\n const results = [];\n this.forPredicates(p => { results.push(p); }, subject, object, graph);\n return results;\n }\n\n // ### `forPredicates` executes the callback on all predicates that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n forPredicates(callback, subject, object, graph) {\n // Convert terms to internal string representation\n subject = subject && termToId(subject);\n object = object && termToId(object);\n graph = graph && termToId(graph);\n\n const ids = this._ids, graphs = this._getGraphs(graph);\n let content, subjectId, objectId;\n callback = this._uniqueEntities(callback);\n\n // Translate IRIs to internal index keys.\n if (isString(subject) && !(subjectId = ids[subject]) ||\n isString(object) && !(objectId = ids[object]))\n return;\n\n for (graph in graphs) {\n // Only if the specified graph contains triples, there can be results\n if (content = graphs[graph]) {\n // Choose optimal index based on which fields are wildcards\n if (subjectId) {\n if (objectId)\n // If subject and object are given, the OSP index is best.\n this._loopBy2Keys(content.objects, objectId, subjectId, callback);\n else\n // If only subject is given, the SPO index is best.\n this._loopByKey0(content.subjects, subjectId, callback);\n }\n else if (objectId)\n // If only object is given, the POS index is best.\n this._loopByKey1(content.predicates, objectId, callback);\n else\n // If no params given, iterate all the predicates.\n this._loop(content.predicates, callback);\n }\n }\n }\n\n // ### `getObjects` returns all objects that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n getObjects(subject, predicate, graph) {\n const results = [];\n this.forObjects(o => { results.push(o); }, subject, predicate, graph);\n return results;\n }\n\n // ### `forObjects` executes the callback on all objects that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n forObjects(callback, subject, predicate, graph) {\n // Convert terms to internal string representation\n subject = subject && termToId(subject);\n predicate = predicate && termToId(predicate);\n graph = graph && termToId(graph);\n\n const ids = this._ids, graphs = this._getGraphs(graph);\n let content, subjectId, predicateId;\n callback = this._uniqueEntities(callback);\n\n // Translate IRIs to internal index keys.\n if (isString(subject) && !(subjectId = ids[subject]) ||\n isString(predicate) && !(predicateId = ids[predicate]))\n return;\n\n for (graph in graphs) {\n // Only if the specified graph contains triples, there can be results\n if (content = graphs[graph]) {\n // Choose optimal index based on which fields are wildcards\n if (subjectId) {\n if (predicateId)\n // If subject and predicate are given, the SPO index is best.\n this._loopBy2Keys(content.subjects, subjectId, predicateId, callback);\n else\n // If only subject is given, the OSP index is best.\n this._loopByKey1(content.objects, subjectId, callback);\n }\n else if (predicateId)\n // If only predicate is given, the POS index is best.\n this._loopByKey0(content.predicates, predicateId, callback);\n else\n // If no params given, iterate all the objects.\n this._loop(content.objects, callback);\n }\n }\n }\n\n // ### `getGraphs` returns all graphs that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n getGraphs(subject, predicate, object) {\n const results = [];\n this.forGraphs(g => { results.push(g); }, subject, predicate, object);\n return results;\n }\n\n // ### `forGraphs` executes the callback on all graphs that match the pattern.\n // Setting any field to `undefined` or `null` indicates a wildcard.\n forGraphs(callback, subject, predicate, object) {\n for (const graph in this._graphs) {\n this.some(quad => {\n callback(quad.graph);\n return true; // Halt iteration of some()\n }, subject, predicate, object, graph);\n }\n }\n\n // ### `createBlankNode` creates a new blank node, returning its name\n createBlankNode(suggestedName) {\n let name, index;\n // Generate a name based on the suggested name\n if (suggestedName) {\n name = suggestedName = `_:${suggestedName}`, index = 1;\n while (this._ids[name])\n name = suggestedName + index++;\n }\n // Generate a generic blank node name\n else {\n do { name = `_:b${this._blankNodeIndex++}`; }\n while (this._ids[name]);\n }\n // Add the blank node to the entities, avoiding the generation of duplicates\n this._ids[name] = ++this._id;\n this._entities[this._id] = name;\n return this._factory.blankNode(name.substr(2));\n }\n\n // ### `extractLists` finds and removes all list triples\n // and returns the items per list.\n extractLists({ remove = false, ignoreErrors = false } = {}) {\n const lists = {}; // has scalar keys so could be a simple Object\n const onError = ignoreErrors ? (() => true) :\n ((node, message) => { throw new Error(`${node.value} ${message}`); });\n\n // Traverse each list from its tail\n const tails = this.getQuads(null, namespaces.rdf.rest, namespaces.rdf.nil, null);\n const toRemove = remove ? [...tails] : [];\n tails.forEach(tailQuad => {\n const items = []; // the members found as objects of rdf:first quads\n let malformed = false; // signals whether the current list is malformed\n let head; // the head of the list (_:b1 in above example)\n let headPos; // set to subject or object when head is set\n const graph = tailQuad.graph; // make sure list is in exactly one graph\n\n // Traverse the list from tail to end\n let current = tailQuad.subject;\n while (current && !malformed) {\n const objectQuads = this.getQuads(null, null, current, null);\n const subjectQuads = this.getQuads(current, null, null, null);\n let quad, first = null, rest = null, parent = null;\n\n // Find the first and rest of this list node\n for (let i = 0; i < subjectQuads.length && !malformed; i++) {\n quad = subjectQuads[i];\n if (!quad.graph.equals(graph))\n malformed = onError(current, 'not confined to single graph');\n else if (head)\n malformed = onError(current, 'has non-list arcs out');\n\n // one rdf:first\n else if (quad.predicate.value === namespaces.rdf.first) {\n if (first)\n malformed = onError(current, 'has multiple rdf:first arcs');\n else\n toRemove.push(first = quad);\n }\n\n // one rdf:rest\n else if (quad.predicate.value === namespaces.rdf.rest) {\n if (rest)\n malformed = onError(current, 'has multiple rdf:rest arcs');\n else\n toRemove.push(rest = quad);\n }\n\n // alien triple\n else if (objectQuads.length)\n malformed = onError(current, 'can\\'t be subject and object');\n else {\n head = quad; // e.g. { (1 2 3) :p :o }\n headPos = 'subject';\n }\n }\n\n // { :s :p (1 2) } arrives here with no head\n // { (1 2) :p :o } arrives here with head set to the list.\n for (let i = 0; i < objectQuads.length && !malformed; ++i) {\n quad = objectQuads[i];\n if (head)\n malformed = onError(current, 'can\\'t have coreferences');\n // one rdf:rest\n else if (quad.predicate.value === namespaces.rdf.rest) {\n if (parent)\n malformed = onError(current, 'has incoming rdf:rest arcs');\n else\n parent = quad;\n }\n else {\n head = quad; // e.g. { :s :p (1 2) }\n headPos = 'object';\n }\n }\n\n // Store the list item and continue with parent\n if (!first)\n malformed = onError(current, 'has no list head');\n else\n items.unshift(first.object);\n current = parent && parent.subject;\n }\n\n // Don't remove any quads if the list is malformed\n if (malformed)\n remove = false;\n // Store the list under the value of its head\n else if (head)\n lists[head[headPos].value] = items;\n });\n\n // Remove list quads if requested\n if (remove)\n this.removeQuads(toRemove);\n return lists;\n }\n\n // ### Store is an iterable.\n // Can be used where iterables are expected: for...of loops, array spread operator,\n // `yield*`, and destructuring assignment (order is not guaranteed).\n *[Symbol.iterator]() {\n yield* this.readQuads();\n }\n}\n\n// Determines whether the argument is a string\nfunction isString(s) {\n return typeof s === 'string' || s instanceof String;\n}\n\n/**\n * A class that implements both DatasetCore and Readable.\n */\nclass DatasetCoreAndReadableStream extends Readable {\n constructor(n3Store, subject, predicate, object, graph) {\n super({ objectMode: true });\n Object.assign(this, { n3Store, subject, predicate, object, graph });\n }\n\n get filtered() {\n if (!this._filtered) {\n const { n3Store, graph, object, predicate, subject } = this;\n const newStore = this._filtered = new N3Store({ factory: n3Store._factory });\n for (const quad of n3Store.readQuads(subject, predicate, object, graph))\n newStore.addQuad(quad);\n }\n return this._filtered;\n }\n\n get size() {\n return this.filtered.size;\n }\n\n _read() {\n for (const quad of this)\n this.push(quad);\n this.push(null);\n }\n\n add(quad) {\n return this.filtered.add(quad);\n }\n\n delete(quad) {\n return this.filtered.delete(quad);\n }\n\n has(quad) {\n return this.filtered.has(quad);\n }\n\n match(subject, predicate, object, graph) {\n return new DatasetCoreAndReadableStream(this.filtered, subject, predicate, object, graph);\n }\n\n *[Symbol.iterator]() {\n yield* this._filtered || this.n3Store.readQuads(this.subject, this.predicate, this.object, this.graph);\n }\n}\n","// **N3StreamParser** parses a text stream into a quad stream.\nimport N3Parser from './N3Parser';\nimport { Transform } from 'readable-stream';\n\n// ## Constructor\nexport default class N3StreamParser extends Transform {\n constructor(options) {\n super({ decodeStrings: true });\n this._readableState.objectMode = true;\n\n // Set up parser with dummy stream to obtain `data` and `end` callbacks\n const parser = new N3Parser(options);\n let onData, onEnd;\n parser.parse({\n on: (event, callback) => {\n switch (event) {\n case 'data': onData = callback; break;\n case 'end': onEnd = callback; break;\n }\n },\n },\n // Handle quads by pushing them down the pipeline\n (error, quad) => { error && this.emit('error', error) || quad && this.push(quad); },\n // Emit prefixes through the `prefix` event\n (prefix, uri) => { this.emit('prefix', prefix, uri); }\n );\n\n // Implement Transform methods through parser callbacks\n this._transform = (chunk, encoding, done) => { onData(chunk); done(); };\n this._flush = done => { onEnd(); done(); };\n }\n\n // ### Parses a stream of strings\n import(stream) {\n stream.on('data', chunk => { this.write(chunk); });\n stream.on('end', () => { this.end(); });\n stream.on('error', error => { this.emit('error', error); });\n return this;\n }\n}\n","// **N3StreamWriter** serializes a quad stream into a text stream.\nimport { Transform } from 'readable-stream';\nimport N3Writer from './N3Writer';\n\n// ## Constructor\nexport default class N3StreamWriter extends Transform {\n constructor(options) {\n super({ encoding: 'utf8', writableObjectMode: true });\n\n // Set up writer with a dummy stream object\n const writer = this._writer = new N3Writer({\n write: (quad, encoding, callback) => { this.push(quad); callback && callback(); },\n end: callback => { this.push(null); callback && callback(); },\n }, options);\n\n // Implement Transform methods on top of writer\n this._transform = (quad, encoding, done) => { writer.addQuad(quad, done); };\n this._flush = done => { writer.end(done); };\n }\n\n// ### Serializes a stream of quads\n import(stream) {\n stream.on('data', quad => { this.write(quad); });\n stream.on('end', () => { this.end(); });\n stream.on('error', error => { this.emit('error', error); });\n stream.on('prefix', (prefix, iri) => { this._writer.addPrefix(prefix, iri); });\n return this;\n }\n}\n","import Lexer from './N3Lexer';\nimport Parser from './N3Parser';\nimport Writer from './N3Writer';\nimport Store from './N3Store';\nimport StreamParser from './N3StreamParser';\nimport StreamWriter from './N3StreamWriter';\nimport * as Util from './N3Util';\n\nimport {\n default as DataFactory,\n\n Term,\n NamedNode,\n Literal,\n BlankNode,\n Variable,\n DefaultGraph,\n Quad,\n Triple,\n\n termFromId,\n termToId,\n} from './N3DataFactory';\n\n// Named exports\nexport {\n Lexer,\n Parser,\n Writer,\n Store,\n StreamParser,\n StreamWriter,\n Util,\n\n DataFactory,\n\n Term,\n NamedNode,\n Literal,\n BlankNode,\n Variable,\n DefaultGraph,\n Quad,\n Triple,\n\n termFromId,\n termToId,\n};\n\n// Export all named exports as a default object for backward compatibility\nexport default {\n Lexer,\n Parser,\n Writer,\n Store,\n StreamParser,\n StreamWriter,\n Util,\n\n DataFactory,\n\n Term,\n NamedNode,\n Literal,\n BlankNode,\n Variable,\n DefaultGraph,\n Quad,\n Triple,\n\n termFromId,\n termToId,\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","(function() {\n var root;\n\n\tif (typeof window === 'object' && window) {\n\t\troot = window;\n\t} else {\n\t\troot = global;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = root.Promise ? root.Promise : Promise;\n\t} else if (!root.Promise) {\n\t\troot.Promise = Promise;\n\t}\n\n\t// Use polyfill for setImmediate for performance gains\n\tvar asap = root.setImmediate || function(fn) { setTimeout(fn, 1); };\n\n\t// Polyfill for Function.prototype.bind\n\tfunction bind(fn, thisArg) {\n\t\treturn function() {\n\t\t\tfn.apply(thisArg, arguments);\n\t\t}\n\t}\n\n\tvar isArray = Array.isArray || function(value) { return Object.prototype.toString.call(value) === \"[object Array]\" };\n\n\tfunction Promise(fn) {\n\t\tif (typeof this !== 'object') throw new TypeError('Promises must be constructed via new');\n\t\tif (typeof fn !== 'function') throw new TypeError('not a function');\n\t\tthis._state = null;\n\t\tthis._value = null;\n\t\tthis._deferreds = []\n\n\t\tdoResolve(fn, bind(resolve, this), bind(reject, this))\n\t}\n\n\tfunction handle(deferred) {\n\t\tvar me = this;\n\t\tif (this._state === null) {\n\t\t\tthis._deferreds.push(deferred);\n\t\t\treturn\n\t\t}\n\t\tasap(function() {\n\t\t\tvar cb = me._state ? deferred.onFulfilled : deferred.onRejected\n\t\t\tif (cb === null) {\n\t\t\t\t(me._state ? deferred.resolve : deferred.reject)(me._value);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar ret;\n\t\t\ttry {\n\t\t\t\tret = cb(me._value);\n\t\t\t}\n\t\t\tcatch (e) {\n\t\t\t\tdeferred.reject(e);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tdeferred.resolve(ret);\n\t\t})\n\t}\n\n\tfunction resolve(newValue) {\n\t\ttry { //Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure\n\t\t\tif (newValue === this) throw new TypeError('A promise cannot be resolved with itself.');\n\t\t\tif (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {\n\t\t\t\tvar then = newValue.then;\n\t\t\t\tif (typeof then === 'function') {\n\t\t\t\t\tdoResolve(bind(then, newValue), bind(resolve, this), bind(reject, this));\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis._state = true;\n\t\t\tthis._value = newValue;\n\t\t\tfinale.call(this);\n\t\t} catch (e) { reject.call(this, e); }\n\t}\n\n\tfunction reject(newValue) {\n\t\tthis._state = false;\n\t\tthis._value = newValue;\n\t\tfinale.call(this);\n\t}\n\n\tfunction finale() {\n\t\tfor (var i = 0, len = this._deferreds.length; i < len; i++) {\n\t\t\thandle.call(this, this._deferreds[i]);\n\t\t}\n\t\tthis._deferreds = null;\n\t}\n\n\tfunction Handler(onFulfilled, onRejected, resolve, reject){\n\t\tthis.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;\n\t\tthis.onRejected = typeof onRejected === 'function' ? onRejected : null;\n\t\tthis.resolve = resolve;\n\t\tthis.reject = reject;\n\t}\n\n\t/**\n\t * Take a potentially misbehaving resolver function and make sure\n\t * onFulfilled and onRejected are only called once.\n\t *\n\t * Makes no guarantees about asynchrony.\n\t */\n\tfunction doResolve(fn, onFulfilled, onRejected) {\n\t\tvar done = false;\n\t\ttry {\n\t\t\tfn(function (value) {\n\t\t\t\tif (done) return;\n\t\t\t\tdone = true;\n\t\t\t\tonFulfilled(value);\n\t\t\t}, function (reason) {\n\t\t\t\tif (done) return;\n\t\t\t\tdone = true;\n\t\t\t\tonRejected(reason);\n\t\t\t})\n\t\t} catch (ex) {\n\t\t\tif (done) return;\n\t\t\tdone = true;\n\t\t\tonRejected(ex);\n\t\t}\n\t}\n\n\tPromise.prototype['catch'] = function (onRejected) {\n\t\treturn this.then(null, onRejected);\n\t};\n\n\tPromise.prototype.then = function(onFulfilled, onRejected) {\n\t\tvar me = this;\n\t\treturn new Promise(function(resolve, reject) {\n\t\t\thandle.call(me, new Handler(onFulfilled, onRejected, resolve, reject));\n\t\t})\n\t};\n\n\tPromise.all = function () {\n\t\tvar args = Array.prototype.slice.call(arguments.length === 1 && isArray(arguments[0]) ? arguments[0] : arguments);\n\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\tif (args.length === 0) return resolve([]);\n\t\t\tvar remaining = args.length;\n\t\t\tfunction res(i, val) {\n\t\t\t\ttry {\n\t\t\t\t\tif (val && (typeof val === 'object' || typeof val === 'function')) {\n\t\t\t\t\t\tvar then = val.then;\n\t\t\t\t\t\tif (typeof then === 'function') {\n\t\t\t\t\t\t\tthen.call(val, function (val) { res(i, val) }, reject);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\targs[i] = val;\n\t\t\t\t\tif (--remaining === 0) {\n\t\t\t\t\t\tresolve(args);\n\t\t\t\t\t}\n\t\t\t\t} catch (ex) {\n\t\t\t\t\treject(ex);\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (var i = 0; i < args.length; i++) {\n\t\t\t\tres(i, args[i]);\n\t\t\t}\n\t\t});\n\t};\n\n\tPromise.resolve = function (value) {\n\t\tif (value && typeof value === 'object' && value.constructor === Promise) {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn new Promise(function (resolve) {\n\t\t\tresolve(value);\n\t\t});\n\t};\n\n\tPromise.reject = function (value) {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\treject(value);\n\t\t});\n\t};\n\n\tPromise.race = function (values) {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\tfor(var i = 0, len = values.length; i < len; i++) {\n\t\t\t\tvalues[i].then(resolve, reject);\n\t\t\t}\n\t\t});\n\t};\n})();","/*! queue-microtask. MIT License. Feross Aboukhadijeh */\nlet promise\n\nmodule.exports = typeof queueMicrotask === 'function'\n ? queueMicrotask.bind(typeof window !== 'undefined' ? window : global)\n // reuse resolved promise, and allocate it lazily\n : cb => (promise || (promise = Promise.resolve()))\n .then(cb)\n .catch(err => setTimeout(() => { throw err }, 0))\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/BlankNode\"), exports);\n__exportStar(require(\"./lib/DataFactory\"), exports);\n__exportStar(require(\"./lib/DefaultGraph\"), exports);\n__exportStar(require(\"./lib/Literal\"), exports);\n__exportStar(require(\"./lib/NamedNode\"), exports);\n__exportStar(require(\"./lib/Quad\"), exports);\n__exportStar(require(\"./lib/Variable\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BlankNode = void 0;\n/**\n * A term that represents an RDF blank node with a label.\n */\nclass BlankNode {\n constructor(value) {\n this.termType = 'BlankNode';\n this.value = value;\n }\n equals(other) {\n return !!other && other.termType === 'BlankNode' && other.value === this.value;\n }\n}\nexports.BlankNode = BlankNode;\n//# sourceMappingURL=BlankNode.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DataFactory = void 0;\nconst BlankNode_1 = require(\"./BlankNode\");\nconst DefaultGraph_1 = require(\"./DefaultGraph\");\nconst Literal_1 = require(\"./Literal\");\nconst NamedNode_1 = require(\"./NamedNode\");\nconst Quad_1 = require(\"./Quad\");\nconst Variable_1 = require(\"./Variable\");\nlet dataFactoryCounter = 0;\n/**\n * A factory for instantiating RDF terms and quads.\n */\nclass DataFactory {\n constructor(options) {\n this.blankNodeCounter = 0;\n options = options || {};\n this.blankNodePrefix = options.blankNodePrefix || `df_${dataFactoryCounter++}_`;\n }\n /**\n * @param value The IRI for the named node.\n * @return A new instance of NamedNode.\n * @see NamedNode\n */\n namedNode(value) {\n return new NamedNode_1.NamedNode(value);\n }\n /**\n * @param value The optional blank node identifier.\n * @return A new instance of BlankNode.\n * If the `value` parameter is undefined a new identifier\n * for the blank node is generated for each call.\n * @see BlankNode\n */\n blankNode(value) {\n return new BlankNode_1.BlankNode(value || `${this.blankNodePrefix}${this.blankNodeCounter++}`);\n }\n /**\n * @param value The literal value.\n * @param languageOrDatatype The optional language or datatype.\n * If `languageOrDatatype` is a NamedNode,\n * then it is used for the value of `NamedNode.datatype`.\n * Otherwise `languageOrDatatype` is used for the value\n * of `NamedNode.language`.\n * @return A new instance of Literal.\n * @see Literal\n */\n literal(value, languageOrDatatype) {\n return new Literal_1.Literal(value, languageOrDatatype);\n }\n /**\n * This method is optional.\n * @param value The variable name\n * @return A new instance of Variable.\n * @see Variable\n */\n variable(value) {\n return new Variable_1.Variable(value);\n }\n /**\n * @return An instance of DefaultGraph.\n */\n defaultGraph() {\n return DefaultGraph_1.DefaultGraph.INSTANCE;\n }\n /**\n * @param subject The quad subject term.\n * @param predicate The quad predicate term.\n * @param object The quad object term.\n * @param graph The quad graph term.\n * @return A new instance of Quad.\n * @see Quad\n */\n quad(subject, predicate, object, graph) {\n return new Quad_1.Quad(subject, predicate, object, graph || this.defaultGraph());\n }\n /**\n * Create a deep copy of the given term using this data factory.\n * @param original An RDF term.\n * @return A deep copy of the given term.\n */\n fromTerm(original) {\n // TODO: remove nasty any casts when this TS bug has been fixed:\n // https://github.com/microsoft/TypeScript/issues/26933\n switch (original.termType) {\n case 'NamedNode':\n return this.namedNode(original.value);\n case 'BlankNode':\n return this.blankNode(original.value);\n case 'Literal':\n if (original.language) {\n return this.literal(original.value, original.language);\n }\n if (!original.datatype.equals(Literal_1.Literal.XSD_STRING)) {\n return this.literal(original.value, this.fromTerm(original.datatype));\n }\n return this.literal(original.value);\n case 'Variable':\n return this.variable(original.value);\n case 'DefaultGraph':\n return this.defaultGraph();\n case 'Quad':\n return this.quad(this.fromTerm(original.subject), this.fromTerm(original.predicate), this.fromTerm(original.object), this.fromTerm(original.graph));\n }\n }\n /**\n * Create a deep copy of the given quad using this data factory.\n * @param original An RDF quad.\n * @return A deep copy of the given quad.\n */\n fromQuad(original) {\n return this.fromTerm(original);\n }\n /**\n * Reset the internal blank node counter.\n */\n resetBlankNodeCounter() {\n this.blankNodeCounter = 0;\n }\n}\nexports.DataFactory = DataFactory;\n//# sourceMappingURL=DataFactory.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DefaultGraph = void 0;\n/**\n * A singleton term instance that represents the default graph.\n * It's only allowed to assign a DefaultGraph to the .graph property of a Quad.\n */\nclass DefaultGraph {\n constructor() {\n this.termType = 'DefaultGraph';\n this.value = '';\n // Private constructor\n }\n equals(other) {\n return !!other && other.termType === 'DefaultGraph';\n }\n}\nexports.DefaultGraph = DefaultGraph;\nDefaultGraph.INSTANCE = new DefaultGraph();\n//# sourceMappingURL=DefaultGraph.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Literal = void 0;\nconst NamedNode_1 = require(\"./NamedNode\");\n/**\n * A term that represents an RDF literal, containing a string with an optional language tag or datatype.\n */\nclass Literal {\n constructor(value, languageOrDatatype) {\n this.termType = 'Literal';\n this.value = value;\n if (typeof languageOrDatatype === 'string') {\n this.language = languageOrDatatype;\n this.datatype = Literal.RDF_LANGUAGE_STRING;\n }\n else if (languageOrDatatype) {\n this.language = '';\n this.datatype = languageOrDatatype;\n }\n else {\n this.language = '';\n this.datatype = Literal.XSD_STRING;\n }\n }\n equals(other) {\n return !!other && other.termType === 'Literal' && other.value === this.value &&\n other.language === this.language && this.datatype.equals(other.datatype);\n }\n}\nexports.Literal = Literal;\nLiteral.RDF_LANGUAGE_STRING = new NamedNode_1.NamedNode('http://www.w3.org/1999/02/22-rdf-syntax-ns#langString');\nLiteral.XSD_STRING = new NamedNode_1.NamedNode('http://www.w3.org/2001/XMLSchema#string');\n//# sourceMappingURL=Literal.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NamedNode = void 0;\n/**\n * A term that contains an IRI.\n */\nclass NamedNode {\n constructor(value) {\n this.termType = 'NamedNode';\n this.value = value;\n }\n equals(other) {\n return !!other && other.termType === 'NamedNode' && other.value === this.value;\n }\n}\nexports.NamedNode = NamedNode;\n//# sourceMappingURL=NamedNode.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Quad = void 0;\n/**\n * An instance of DefaultGraph represents the default graph.\n * It's only allowed to assign a DefaultGraph to the .graph property of a Quad.\n */\nclass Quad {\n constructor(subject, predicate, object, graph) {\n this.termType = 'Quad';\n this.value = '';\n this.subject = subject;\n this.predicate = predicate;\n this.object = object;\n this.graph = graph;\n }\n equals(other) {\n // `|| !other.termType` is for backwards-compatibility with old factories without RDF* support.\n return !!other && (other.termType === 'Quad' || !other.termType) &&\n this.subject.equals(other.subject) &&\n this.predicate.equals(other.predicate) &&\n this.object.equals(other.object) &&\n this.graph.equals(other.graph);\n }\n}\nexports.Quad = Quad;\n//# sourceMappingURL=Quad.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Variable = void 0;\n/**\n * A term that represents a variable.\n */\nclass Variable {\n constructor(value) {\n this.termType = 'Variable';\n this.value = value;\n }\n equals(other) {\n return !!other && other.termType === 'Variable' && other.value === this.value;\n }\n}\nexports.Variable = Variable;\n//# sourceMappingURL=Variable.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/RdfIsomorphic\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isTermGrounded = exports.termToSignature = exports.quadToSignature = exports.sha1hex = exports.hashTerm = exports.hashTerms = exports.getGraphBlankNodes = exports.uniqGraph = exports.deindexGraph = exports.indexGraph = exports.getQuadsWithoutBlankNodes = exports.getQuadsWithBlankNodes = exports.hasValue = exports.hashValues = exports.getBijectionInner = exports.getBijection = exports.isomorphic = void 0;\nconst hash_js_1 = require(\"hash.js\");\nconst rdf_string_1 = require(\"rdf-string\");\nconst rdf_terms_1 = require(\"rdf-terms\");\n/**\n * Determines if the two given graphs are isomorphic.\n *\n * @param {Quad[]} graphA An array of quads, order is not important.\n * @param {Quad[]} graphB An array of quads, order is not important.\n * @return {boolean} If the two given graphs are isomorphic.\n */\nfunction isomorphic(graphA, graphB) {\n return !!getBijection(graphA, graphB);\n}\nexports.isomorphic = isomorphic;\n/**\n * Calculate a hash of graphA blank nodes to graphB blank nodes.\n * This represents a bijection from graphA's blank nodes to graphB's blank nodes.\n *\n * @param {Quad[]} graphA An array of quads, order is not important.\n * @param {Quad[]} graphB An array of quads, order is not important.\n * @return {IBijection} A hash representing a bijection, or null if none could be found.\n */\nfunction getBijection(graphA, graphB) {\n // Check if all (non-blanknode-containing) quads in the two graphs are equal.\n // We do this by creating a hash-based index for both graphs.\n const nonBlankIndexA = indexGraph(getQuadsWithoutBlankNodes(graphA));\n const nonBlankIndexB = indexGraph(getQuadsWithoutBlankNodes(graphB));\n if (Object.keys(nonBlankIndexA).length !== Object.keys(nonBlankIndexB).length) {\n return null;\n }\n for (const key in nonBlankIndexA) {\n if (nonBlankIndexA[key] !== nonBlankIndexB[key]) {\n return null;\n }\n }\n // Pre-process data that needs to be present in each iteration of getBijectionInner.\n const blankQuadsA = uniqGraph(getQuadsWithBlankNodes(graphA));\n const blankQuadsB = uniqGraph(getQuadsWithBlankNodes(graphB));\n const blankNodesA = getGraphBlankNodes(graphA);\n const blankNodesB = getGraphBlankNodes(graphB);\n return getBijectionInner(blankQuadsA, blankQuadsB, blankNodesA, blankNodesB);\n}\nexports.getBijection = getBijection;\nfunction getBijectionInner(blankQuadsA, blankQuadsB, blankNodesA, blankNodesB, groundedHashesA, groundedHashesB) {\n if (!groundedHashesA) {\n groundedHashesA = {};\n }\n if (!groundedHashesB) {\n groundedHashesB = {};\n }\n // Hash every term based on the signature of the quads if appears in.\n const [hashesA, ungroundedHashesA] = hashTerms(blankQuadsA, blankNodesA, groundedHashesA);\n const [hashesB, ungroundedHashesB] = hashTerms(blankQuadsB, blankNodesB, groundedHashesB);\n // Break quickly if a graph contains a grounded node that is not contained in the other graph.\n if (Object.keys(hashesA).length !== Object.keys(hashesB).length) {\n return null;\n }\n for (const hashKeyA in hashesA) {\n if (!hasValue(hashesB, hashesA[hashKeyA])) {\n return null;\n }\n }\n // Map the blank nodes from graph A to the blank nodes of graph B using the created hashes.\n // Grounded hashes will also be equal, but not needed here, we will need them in the next recursion\n // (as we only recurse on grounded nodes).\n let bijection = {};\n for (const blankNodeA of blankNodesA) {\n const blankNodeAString = rdf_string_1.termToString(blankNodeA);\n const blankNodeAHash = ungroundedHashesA[blankNodeAString];\n for (const blankNodeBString in ungroundedHashesB) {\n if (ungroundedHashesB[blankNodeBString] === blankNodeAHash) {\n bijection[blankNodeAString] = blankNodeBString;\n delete ungroundedHashesB[blankNodeBString];\n break;\n }\n }\n }\n // Check if all nodes from graph A and B are present in the bijection,\n // if not, speculatively mark pairs with matching ungrounded hashes as bijected, and recurse.\n if (!arraysEqual(Object.keys(bijection).sort(), blankNodesA.map(rdf_string_1.termToString).sort())\n || !arraysEqual(hashValues(bijection).sort(), blankNodesB.map(rdf_string_1.termToString).sort())) {\n // I have not yet been able to find any pathological cases where this code is reached.\n // This may be removable, but let's wait until someone proves that.\n bijection = null;\n for (const blankNodeA of blankNodesA) {\n // Only replace ungrounded node hashes\n const blankNodeAString = rdf_string_1.termToString(blankNodeA);\n if (!hashesA[blankNodeAString]) {\n for (const blankNodeB of blankNodesB) {\n // Only replace ungrounded node hashes\n const blankNodeBString = rdf_string_1.termToString(blankNodeB);\n if (!hashesB[blankNodeBString]) {\n if (ungroundedHashesA[blankNodeAString] === ungroundedHashesB[blankNodeBString]) {\n const hash = sha1hex(blankNodeAString);\n bijection = getBijectionInner(blankQuadsA, blankQuadsB, blankNodesA, blankNodesB, Object.assign(Object.assign({}, hashesA), { [blankNodeAString]: hash }), Object.assign(Object.assign({}, hashesB), { [blankNodeBString]: hash }));\n }\n }\n }\n }\n }\n }\n return bijection;\n}\nexports.getBijectionInner = getBijectionInner;\nfunction arraysEqual(array1, array2) {\n if (array1.length !== array2.length) {\n return false;\n }\n for (let i = array1.length; i--;) {\n if (array1[i] !== array2[i]) {\n return false;\n }\n }\n return true;\n}\n/**\n * Get all values from the given hash\n * @param hash A hash.\n * @return {any[]} The array of values.\n */\nfunction hashValues(hash) {\n const arr = [];\n for (const e in hash) {\n arr.push(hash[e]);\n }\n return arr;\n}\nexports.hashValues = hashValues;\n/**\n * Check if the given hash contains the given value.\n * @param hash A hash.\n * @param {string} value A value.\n * @return {boolean} If it contains the value.\n */\nfunction hasValue(hash, value) {\n for (const hashValue in hash) {\n if (hash[hashValue] === value) {\n return true;\n }\n }\n return false;\n}\nexports.hasValue = hasValue;\n/**\n * Get all quads with blank nodes.\n * @param {Quad[]} graph An array of quads.\n * @return {Quad[]} An array of quads with blank nodes\n */\nfunction getQuadsWithBlankNodes(graph) {\n return graph.filter((quad) => rdf_terms_1.someTerms(quad, (value) => {\n return value.termType === 'BlankNode'\n || (value.termType === 'Quad' && rdf_terms_1.getTermsNested(value).some(term => term.termType === 'BlankNode'));\n }));\n}\nexports.getQuadsWithBlankNodes = getQuadsWithBlankNodes;\n/**\n * Get all quads without blank nodes.\n * @param {Quad[]} graph An array of quads.\n * @return {Quad[]} An array of quads without blank nodes\n */\nfunction getQuadsWithoutBlankNodes(graph) {\n return graph.filter((quad) => rdf_terms_1.everyTerms(quad, (value) => {\n return value.termType !== 'BlankNode'\n && !(value.termType === 'Quad' && rdf_terms_1.getTermsNested(value).some(term => term.termType === 'BlankNode'));\n }));\n}\nexports.getQuadsWithoutBlankNodes = getQuadsWithoutBlankNodes;\n/**\n * Create a hash-based index of the given graph.\n * @param {Quad[]} graph An array of quads, the order does not matter.\n * @return {{[p: string]: boolean}} A hash-based datastructure representing the graph.\n */\nfunction indexGraph(graph) {\n const index = {};\n for (const quad of graph) {\n index[JSON.stringify(rdf_string_1.quadToStringQuad(quad))] = true;\n }\n return index;\n}\nexports.indexGraph = indexGraph;\n/**\n * Create a graph from the given hash-based index.\n * @param {{[p: string]: boolean}} indexedGraph A hash-based datastructure representing the graph.\n * @return {Quad[]} An array of quads, the order does not matter.\n */\nfunction deindexGraph(indexedGraph) {\n return Object.keys(indexedGraph).map((str) => rdf_string_1.stringQuadToQuad(JSON.parse(str)));\n}\nexports.deindexGraph = deindexGraph;\n/**\n * Unique-ify the given RDF graph based on strict equality.\n * The output graph will consist of new quad and term instances.\n * @param {Quad[]} graph An input graph.\n * @return {Quad[]} The input graph without duplicates.\n */\nfunction uniqGraph(graph) {\n return deindexGraph(indexGraph(graph));\n}\nexports.uniqGraph = uniqGraph;\n/**\n * Find all blank nodes in the given graph.\n * @param {Quad[]} graph An array of quads.\n * @return {BlankNode[]} A list of (unique) blank nodes.\n */\nfunction getGraphBlankNodes(graph) {\n return rdf_terms_1.uniqTerms(graph.map((quad) => rdf_terms_1.getBlankNodes(rdf_terms_1.getTermsNested(quad)))\n .reduce((acc, val) => acc.concat(val), []));\n}\nexports.getGraphBlankNodes = getGraphBlankNodes;\n/**\n * Create term hashes for the given set of quads and blank node terms.\n *\n * @param {Quad[]} quads A set of quads.\n * @param {Term[]} terms Blank node terms.\n * @param {ITermHash} groundedHashes Grounded term hashes that are used to create more specific signatures\n * of other terms, because they are based on non-blank nodes and grounded blank nodes.\n * @return {[ITermHash]} A tuple of grounded and ungrounded hashes.\n */\nfunction hashTerms(quads, terms, groundedHashes) {\n const hashes = Object.assign({}, groundedHashes);\n const ungroundedHashes = {};\n let hashNeeded = true;\n // Iteratively mark nodes as grounded.\n // If a node is marked as grounded, then the next iteration can lead to new grounded states\n while (hashNeeded) {\n const initialGroundedNodesCount = Object.keys(hashes).length;\n for (const term of terms) {\n const termString = rdf_string_1.termToString(term);\n if (!hashes[termString]) {\n const [grounded, hash] = hashTerm(term, quads, hashes);\n if (grounded) {\n hashes[termString] = hash;\n }\n ungroundedHashes[termString] = hash;\n }\n }\n // All terms that have a unique hash at this point can be marked as grounded\n const uniques = {};\n for (const termKey in ungroundedHashes) {\n const hash = ungroundedHashes[termKey];\n if (uniques[hash] === undefined) {\n uniques[hash] = termKey;\n }\n else {\n uniques[hash] = false;\n }\n }\n for (const hash in uniques) {\n const value = uniques[hash];\n if (value) {\n hashes[value] = hash;\n }\n }\n // Check if the loop needs to terminate\n hashNeeded = initialGroundedNodesCount !== Object.keys(hashes).length;\n }\n return [hashes, ungroundedHashes];\n}\nexports.hashTerms = hashTerms;\n/**\n * Generate a hash for the given term based on the signature of the quads it appears in.\n *\n * Signatures are made up of grounded terms in quads that are associated with a term,\n * i.e., everything except for ungrounded blank nodes.\n * The hash is created by hashing a sorted list of each quad's signature,\n * where each quad signature is a concatenation of the signature of all grounded terms.\n *\n * Terms are considered grounded if they are a member in the given hash AND if they are not the given term.\n *\n * @param {Term} term The term to get the hash around.\n * @param {Quad[]} quads The quads to include in the hashing.\n * @param {ITermHash} hashes A grounded term hash object.\n * @return {[boolean , string]} A tuple indicating if the given term is grounded in all the given quads, and the hash.\n */\nfunction hashTerm(term, quads, hashes) {\n const quadSignatures = [];\n let grounded = true;\n for (const quad of quads) {\n const terms = rdf_terms_1.getTermsNested(quad);\n if (terms.some((quadTerm) => quadTerm.equals(term))) {\n quadSignatures.push(quadToSignature(quad, hashes, term));\n for (const quadTerm of terms) {\n if (!isTermGrounded(quadTerm, hashes) && !quadTerm.equals(term)) {\n grounded = false;\n }\n }\n }\n }\n const hash = sha1hex(quadSignatures.sort().join(''));\n return [grounded, hash];\n}\nexports.hashTerm = hashTerm;\n/**\n * Create a hash using sha1 as a hex digest.\n * @param {string | Buffer | NodeJS.TypedArray | DataView} data Something to hash.\n * @return {string} A hash string.\n */\nfunction sha1hex(data) {\n return hash_js_1.sha1().update(data).digest('hex');\n}\nexports.sha1hex = sha1hex;\n/**\n * Convert the given quad to a string signature so that it can be used in the hash structure.\n * @param {Quad} quad A quad.\n * @param {ITermHash} hashes A grounded term hash object.\n * @param {Term} term A target term to compare with.\n * @return {string} A string signature.\n */\nfunction quadToSignature(quad, hashes, term) {\n return rdf_terms_1.getTerms(quad).map((quadTerm) => termToSignature(quadTerm, hashes, term)).join('|');\n}\nexports.quadToSignature = quadToSignature;\n/**\n * Convert the given term to a string signature so that it can be used in the hash structure.\n * @param {Term} term A term.\n * @param {ITermHash} hashes A grounded term hash object.\n * @param {Term} target A target term to compare with.\n * @return {string} A string signature.\n */\nfunction termToSignature(term, hashes, target) {\n if (term.equals(target)) {\n return '@self';\n }\n else if (term.termType === 'BlankNode') {\n return hashes[rdf_string_1.termToString(term)] || '@blank';\n }\n else if (term.termType === 'Quad') {\n return `<${quadToSignature(term, hashes, target)}>`;\n }\n else {\n return rdf_string_1.termToString(term);\n }\n}\nexports.termToSignature = termToSignature;\n/**\n * Check if a term is grounded.\n *\n * A term is grounded if it is not a blank node\n * or if it included in the given hash of grounded nodes.\n *\n * @param {Term} term A term.\n * @param {ITermHash} hashes A grounded term hash object.\n * @return {boolean} If the given term is grounded.\n */\nfunction isTermGrounded(term, hashes) {\n return (term.termType !== 'BlankNode'\n && !(term.termType === 'Quad' && rdf_terms_1.getTermsNested(term).some(subTerm => !isTermGrounded(subTerm, hashes)))) || !!hashes[rdf_string_1.termToString(term)];\n}\nexports.isTermGrounded = isTermGrounded;\n//# sourceMappingURL=RdfIsomorphic.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSupportedJavaScriptPrimitives = exports.getSupportedRdfDatatypes = exports.getTermRaw = exports.toRdf = exports.fromRdf = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst handler_1 = require(\"./lib/handler\");\nconst Translator_1 = require(\"./lib/Translator\");\n__exportStar(require(\"./lib/handler\"), exports);\n__exportStar(require(\"./lib/ITypeHandler\"), exports);\n__exportStar(require(\"./lib/Translator\"), exports);\nconst DF = new rdf_data_factory_1.DataFactory();\n// Construct translator with built-in handlers\nconst translator = new Translator_1.Translator();\ntranslator.registerHandler(new handler_1.TypeHandlerString(), handler_1.TypeHandlerString.TYPES.map(t => DF.namedNode(t)), ['string']);\ntranslator.registerHandler(new handler_1.TypeHandlerBoolean(), [handler_1.TypeHandlerBoolean.TYPE].map(t => DF.namedNode(t)), ['boolean']);\ntranslator.registerHandler(new handler_1.TypeHandlerNumberDouble(), handler_1.TypeHandlerNumberDouble.TYPES.map(t => DF.namedNode(t)), ['number']);\ntranslator.registerHandler(new handler_1.TypeHandlerNumberInteger(), handler_1.TypeHandlerNumberInteger.TYPES.map(t => DF.namedNode(t)), ['number']);\ntranslator.registerHandler(new handler_1.TypeHandlerDate(), handler_1.TypeHandlerDate.TYPES.map(t => DF.namedNode(t)), ['object']);\n/**\n * Convert the given RDF literal to an JavaScript primitive.\n * @param {Literal} literal An RDF literal value.\n * @param {boolean} validate If the literal value should be validated against the datatype.\n * @return {any} A JavaScript primitive value.\n */\nfunction fromRdf(literal, validate) {\n return translator.fromRdf(literal, validate);\n}\nexports.fromRdf = fromRdf;\n/**\n * Convert the given JavaScript primitive to an RDF literal.\n * @param value A JavaScript primitive value.\n * @param options Options for RDF conversion. May also be a data factory.\n * @return {Literal} An RDF literal value.\n */\nfunction toRdf(value, options) {\n // Backwards-compatibility to accept data factory as option arg.\n if (options && 'namedNode' in options) {\n options = { dataFactory: options };\n }\n // Set default data factory\n options = options || {};\n if (options && !options.dataFactory) {\n options.dataFactory = DF;\n }\n return translator.toRdf(value, options);\n}\nexports.toRdf = toRdf;\n/**\n * Get the raw value of the given term.\n * If it is a literal, {@link fromRdf} will be called.\n * Otherwise {@link .value} will be returned.\n * @param {Term} term Any RDF term.\n * @param {boolean} validate If the literal value should be validated against the datatype.\n * @return {any} A JavaScript primitive value.\n */\nfunction getTermRaw(term, validate) {\n if (term.termType === 'Literal') {\n return fromRdf(term, validate);\n }\n return term.value;\n}\nexports.getTermRaw = getTermRaw;\n/**\n * @return {NamedNode[]} An array of all supported RDF datatypes.\n */\nfunction getSupportedRdfDatatypes() {\n return translator.getSupportedRdfDatatypes();\n}\nexports.getSupportedRdfDatatypes = getSupportedRdfDatatypes;\n/**\n * @return {string[]} An array of all supported JavaScript types.\n */\nfunction getSupportedJavaScriptPrimitives() {\n return translator.getSupportedJavaScriptPrimitives();\n}\nexports.getSupportedJavaScriptPrimitives = getSupportedJavaScriptPrimitives;\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=ITypeHandler.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Translator = void 0;\n/**\n * Translates between an RDF literal and a JavaScript primitive.\n */\nclass Translator {\n constructor() {\n this.supportedRdfDatatypes = [];\n this.fromRdfHandlers = {};\n this.toRdfHandlers = {};\n }\n static incorrectRdfDataType(literal) {\n throw new Error(`Invalid RDF ${literal.datatype.value} value: '${literal.value}'`);\n }\n registerHandler(handler, rdfDatatypes, javaScriptDataTypes) {\n for (const rdfDatatype of rdfDatatypes) {\n this.supportedRdfDatatypes.push(rdfDatatype);\n this.fromRdfHandlers[rdfDatatype.value] = handler;\n }\n for (const javaScriptDataType of javaScriptDataTypes) {\n let existingToRdfHandlers = this.toRdfHandlers[javaScriptDataType];\n if (!existingToRdfHandlers) {\n this.toRdfHandlers[javaScriptDataType] = existingToRdfHandlers = [];\n }\n existingToRdfHandlers.push(handler);\n }\n }\n fromRdf(literal, validate) {\n const handler = this.fromRdfHandlers[literal.datatype.value];\n if (handler) {\n return handler.fromRdf(literal, validate);\n }\n else {\n return literal.value;\n }\n }\n toRdf(value, options) {\n const handlers = this.toRdfHandlers[typeof value];\n if (handlers) {\n for (const handler of handlers) {\n const ret = handler.toRdf(value, options);\n if (ret) {\n return ret;\n }\n }\n }\n throw new Error(`Invalid JavaScript value: '${value}'`);\n }\n /**\n * @return {NamedNode[]} An array of all supported RDF datatypes.\n */\n getSupportedRdfDatatypes() {\n return this.supportedRdfDatatypes;\n }\n /**\n * @return {string[]} An array of all supported JavaScript types.\n */\n getSupportedJavaScriptPrimitives() {\n return Object.keys(this.toRdfHandlers);\n }\n}\nexports.Translator = Translator;\n//# sourceMappingURL=Translator.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TypeHandlerBoolean = void 0;\nconst Translator_1 = require(\"../Translator\");\n/**\n * Translates booleans.\n */\nclass TypeHandlerBoolean {\n fromRdf(literal, validate) {\n switch (literal.value) {\n case 'true':\n return true;\n case 'false':\n return false;\n case '1':\n return true;\n case '0':\n return false;\n }\n if (validate) {\n Translator_1.Translator.incorrectRdfDataType(literal);\n }\n return false;\n }\n toRdf(value, { datatype, dataFactory }) {\n return dataFactory.literal(value ? 'true' : 'false', datatype || dataFactory.namedNode(TypeHandlerBoolean.TYPE));\n }\n}\nexports.TypeHandlerBoolean = TypeHandlerBoolean;\nTypeHandlerBoolean.TYPE = 'http://www.w3.org/2001/XMLSchema#boolean';\n//# sourceMappingURL=TypeHandlerBoolean.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TypeHandlerDate = void 0;\nconst Translator_1 = require(\"../Translator\");\n/**\n * Translates dates.\n */\nclass TypeHandlerDate {\n fromRdf(literal, validate) {\n if (validate && !literal.value.match(TypeHandlerDate\n .VALIDATORS[literal.datatype.value.substr(33, literal.datatype.value.length)])) {\n Translator_1.Translator.incorrectRdfDataType(literal);\n }\n switch (literal.datatype.value) {\n case 'http://www.w3.org/2001/XMLSchema#gDay':\n return new Date(0, 0, parseInt(literal.value, 10));\n case 'http://www.w3.org/2001/XMLSchema#gMonthDay':\n const partsMonthDay = literal.value.split('-');\n return new Date(0, parseInt(partsMonthDay[0], 10) - 1, parseInt(partsMonthDay[1], 10));\n case 'http://www.w3.org/2001/XMLSchema#gYear':\n return new Date(literal.value + '-01-01');\n case 'http://www.w3.org/2001/XMLSchema#gYearMonth':\n return new Date(literal.value + '-01');\n default:\n return new Date(literal.value);\n }\n }\n toRdf(value, { datatype, dataFactory }) {\n datatype = datatype || dataFactory.namedNode(TypeHandlerDate.TYPES[0]);\n // Assume date values\n if (!(value instanceof Date)) {\n return null;\n }\n const date = value;\n let valueString;\n switch (datatype.value) {\n case 'http://www.w3.org/2001/XMLSchema#gDay':\n valueString = String(date.getUTCDate());\n break;\n case 'http://www.w3.org/2001/XMLSchema#gMonthDay':\n valueString = (date.getUTCMonth() + 1) + '-' + date.getUTCDate();\n break;\n case 'http://www.w3.org/2001/XMLSchema#gYear':\n valueString = String(date.getUTCFullYear());\n break;\n case 'http://www.w3.org/2001/XMLSchema#gYearMonth':\n valueString = date.getUTCFullYear() + '-' + (date.getUTCMonth() + 1);\n break;\n case 'http://www.w3.org/2001/XMLSchema#date':\n valueString = date.toISOString().replace(/T.*$/, '');\n break;\n default:\n valueString = date.toISOString();\n }\n return dataFactory.literal(valueString, datatype);\n }\n}\nexports.TypeHandlerDate = TypeHandlerDate;\nTypeHandlerDate.TYPES = [\n 'http://www.w3.org/2001/XMLSchema#dateTime',\n 'http://www.w3.org/2001/XMLSchema#date',\n 'http://www.w3.org/2001/XMLSchema#gDay',\n 'http://www.w3.org/2001/XMLSchema#gMonthDay',\n 'http://www.w3.org/2001/XMLSchema#gYear',\n 'http://www.w3.org/2001/XMLSchema#gYearMonth',\n];\nTypeHandlerDate.VALIDATORS = {\n date: /^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,\n dateTime: /^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\\.[0-9][0-9][0-9])?((Z?)|([\\+-][0-9][0-9]:[0-9][0-9]))$/,\n gDay: /^[0-9]+$/,\n gMonthDay: /^[0-9]+-[0-9][0-9]$/,\n gYear: /^[0-9]+$/,\n gYearMonth: /^[0-9]+-[0-9][0-9]$/,\n};\n//# sourceMappingURL=TypeHandlerDate.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TypeHandlerNumberDouble = void 0;\nconst Translator_1 = require(\"../Translator\");\n/**\n * Translates double numbers.\n */\nclass TypeHandlerNumberDouble {\n fromRdf(literal, validate) {\n const parsed = parseFloat(literal.value);\n if (validate) {\n if (isNaN(parsed)) {\n Translator_1.Translator.incorrectRdfDataType(literal);\n }\n // TODO: validate more\n }\n return parsed;\n }\n toRdf(value, { datatype, dataFactory }) {\n datatype = datatype || dataFactory.namedNode(TypeHandlerNumberDouble.TYPES[0]);\n if (isNaN(value)) {\n return dataFactory.literal('NaN', datatype);\n }\n if (!isFinite(value)) {\n return dataFactory.literal(value > 0 ? 'INF' : '-INF', datatype);\n }\n if (value % 1 === 0) {\n return null;\n }\n return dataFactory.literal(value.toExponential(15).replace(/(\\d)0*e\\+?/, '$1E'), datatype);\n }\n}\nexports.TypeHandlerNumberDouble = TypeHandlerNumberDouble;\nTypeHandlerNumberDouble.TYPES = [\n 'http://www.w3.org/2001/XMLSchema#double',\n 'http://www.w3.org/2001/XMLSchema#decimal',\n 'http://www.w3.org/2001/XMLSchema#float',\n];\n//# sourceMappingURL=TypeHandlerNumberDouble.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TypeHandlerNumberInteger = void 0;\nconst Translator_1 = require(\"../Translator\");\n/**\n * Translates integer numbers.\n */\nclass TypeHandlerNumberInteger {\n fromRdf(literal, validate) {\n const parsed = parseInt(literal.value, 10);\n if (validate) {\n if (isNaN(parsed) || literal.value.indexOf('.') >= 0) {\n Translator_1.Translator.incorrectRdfDataType(literal);\n }\n // TODO: validate more\n }\n return parsed;\n }\n toRdf(value, { datatype, dataFactory }) {\n return dataFactory.literal(String(value), datatype\n || (value <= TypeHandlerNumberInteger.MAX_INT && value >= TypeHandlerNumberInteger.MIN_INT\n ? dataFactory.namedNode(TypeHandlerNumberInteger.TYPES[0])\n : dataFactory.namedNode(TypeHandlerNumberInteger.TYPES[1])));\n }\n}\nexports.TypeHandlerNumberInteger = TypeHandlerNumberInteger;\nTypeHandlerNumberInteger.TYPES = [\n 'http://www.w3.org/2001/XMLSchema#integer',\n 'http://www.w3.org/2001/XMLSchema#long',\n 'http://www.w3.org/2001/XMLSchema#int',\n 'http://www.w3.org/2001/XMLSchema#byte',\n 'http://www.w3.org/2001/XMLSchema#short',\n 'http://www.w3.org/2001/XMLSchema#negativeInteger',\n 'http://www.w3.org/2001/XMLSchema#nonNegativeInteger',\n 'http://www.w3.org/2001/XMLSchema#nonPositiveInteger',\n 'http://www.w3.org/2001/XMLSchema#positiveInteger',\n 'http://www.w3.org/2001/XMLSchema#unsignedByte',\n 'http://www.w3.org/2001/XMLSchema#unsignedInt',\n 'http://www.w3.org/2001/XMLSchema#unsignedLong',\n 'http://www.w3.org/2001/XMLSchema#unsignedShort',\n];\nTypeHandlerNumberInteger.MAX_INT = 2147483647;\nTypeHandlerNumberInteger.MIN_INT = -2147483648;\n//# sourceMappingURL=TypeHandlerNumberInteger.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TypeHandlerString = void 0;\n/**\n * Translates strings.\n */\nclass TypeHandlerString {\n fromRdf(literal) {\n return literal.value;\n }\n toRdf(value, { datatype, dataFactory }) {\n return dataFactory.literal(value, datatype);\n }\n}\nexports.TypeHandlerString = TypeHandlerString;\nTypeHandlerString.TYPES = [\n 'http://www.w3.org/2001/XMLSchema#string',\n 'http://www.w3.org/2001/XMLSchema#normalizedString',\n 'http://www.w3.org/2001/XMLSchema#anyURI',\n 'http://www.w3.org/2001/XMLSchema#base64Binary',\n 'http://www.w3.org/2001/XMLSchema#language',\n 'http://www.w3.org/2001/XMLSchema#Name',\n 'http://www.w3.org/2001/XMLSchema#NCName',\n 'http://www.w3.org/2001/XMLSchema#NMTOKEN',\n 'http://www.w3.org/2001/XMLSchema#token',\n 'http://www.w3.org/2001/XMLSchema#hexBinary',\n 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString',\n 'http://www.w3.org/2001/XMLSchema#time',\n 'http://www.w3.org/2001/XMLSchema#duration',\n];\n//# sourceMappingURL=TypeHandlerString.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./TypeHandlerBoolean\"), exports);\n__exportStar(require(\"./TypeHandlerDate\"), exports);\n__exportStar(require(\"./TypeHandlerNumberDouble\"), exports);\n__exportStar(require(\"./TypeHandlerNumberInteger\"), exports);\n__exportStar(require(\"./TypeHandlerString\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.storeStream = void 0;\nconst rdf_stores_1 = require(\"rdf-stores\");\n/**\n * Import all quads in the given stream into a new RDF store.\n *\n * The whole stream will be consumed for this,\n * and the promise will resolve once the stream's end event is emitted.\n *\n * @param {Stream} stream An RDF stream containing the quads to import into the store.\n * @return {Promise>} A promise resolving to an RDF store.\n */\nfunction storeStream(stream) {\n const store = rdf_stores_1.RdfStore.createDefault();\n return new Promise((resolve, reject) => store.import(stream)\n .on('error', reject)\n .once('end', () => resolve(store)));\n}\nexports.storeStream = storeStream;\n//# sourceMappingURL=index.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/dataset/DatasetCoreWrapper\"), exports);\n__exportStar(require(\"./lib/dictionary/ITermDictionary\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryNumberMap\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryNumberRecord\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryNumberRecordFullTerms\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryQuoted\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryQuotedIndexed\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionaryQuotedReferential\"), exports);\n__exportStar(require(\"./lib/dictionary/TermDictionarySymbol\"), exports);\n__exportStar(require(\"./lib/index/IRdfStoreIndex\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedMap\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedMapQuoted\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedMapRecursive\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedMapRecursiveQuoted\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedRecord\"), exports);\n__exportStar(require(\"./lib/index/RdfStoreIndexNestedRecordQuoted\"), exports);\n__exportStar(require(\"./lib/IRdfStoreOptions\"), exports);\n__exportStar(require(\"./lib/OrderUtils\"), exports);\n__exportStar(require(\"./lib/PatternTerm\"), exports);\n__exportStar(require(\"./lib/RdfStore\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IRdfStoreOptions.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.arePatternsQuoted = exports.quadHasVariables = exports.quadToPattern = exports.encodeOptionalTerms = exports.orderQuadComponents = exports.getComponentOrderScore = exports.getBestIndex = exports.QUAD_TERM_NAMES_INVERSE = void 0;\nconst rdf_terms_1 = require(\"rdf-terms\");\nexports.QUAD_TERM_NAMES_INVERSE = Object.fromEntries(rdf_terms_1.QUAD_TERM_NAMES.map((value, key) => [value, key]));\n/**\n * Determine the best suitable order's index among the given orders for the given quad pattern.\n * @param componentOrders Possible orders of quad components.\n * @param quadPattern A quad pattern.\n */\nfunction getBestIndex(componentOrders, quadPattern) {\n if (componentOrders.length === 1 || quadPattern.every(term => term !== undefined)) {\n return 0;\n }\n // Determine the quad component names for which we require a defined lookup\n const definedQuadComponentNames = [];\n for (let quadComponentId = 0; quadComponentId < rdf_terms_1.QUAD_TERM_NAMES.length; quadComponentId++) {\n if (quadPattern[quadComponentId]) {\n definedQuadComponentNames.push(rdf_terms_1.QUAD_TERM_NAMES[quadComponentId]);\n }\n }\n // Score indexes by how well they match to the index\n const scoredIndexes = componentOrders.map((componentOrder, index) => {\n const score = getComponentOrderScore(componentOrder, definedQuadComponentNames);\n return { score, index };\n });\n // Sort the indexes, and pick the first one\n return scoredIndexes.sort((scoredLeft, scoredRight) => scoredRight.score - scoredLeft.score)[0].index;\n}\nexports.getBestIndex = getBestIndex;\n/**\n * Determine the score of the given partial component order in the given component order.\n * @param componentOrder A quad component order.\n * @param partialComponentOrder A partial quad component order that originates from a quad pattern.\n */\nfunction getComponentOrderScore(componentOrder, partialComponentOrder) {\n return componentOrder\n .map((order, i) => partialComponentOrder.includes(order) ? componentOrder.length - i : 0)\n .reduce((acc, add) => acc + add, 0);\n}\nexports.getComponentOrderScore = getComponentOrderScore;\n/**\n * Order a quad pattern's terms based on the given component order.\n * @param desiredComponentOrder The desired order of components.\n * @param quadPattern A quad pattern.\n */\nfunction orderQuadComponents(desiredComponentOrder, quadPattern) {\n return desiredComponentOrder.map(desiredComponent => {\n const desiredComponentIndex = exports.QUAD_TERM_NAMES_INVERSE[desiredComponent];\n return quadPattern[desiredComponentIndex];\n });\n}\nexports.orderQuadComponents = orderQuadComponents;\n/**\n * Encode the given array of quad terms.\n * @param terms Non-encoded quad terms.\n * @param dictionary A dictionary\n * @return array An array of encoded terms.\n * The array will be undefined if at least one of the patterns does not occur within the dictionary.\n */\nfunction encodeOptionalTerms(terms, dictionary) {\n const encodedTerms = terms.map(term => {\n if (term) {\n if (term.termType === 'Quad' && quadHasVariables(term)) {\n return;\n }\n const encodedTerm = dictionary.encodeOptional(term);\n if (encodedTerm === undefined) {\n return 'none';\n }\n return encodedTerm;\n }\n return term;\n });\n if (encodedTerms.includes('none')) {\n return undefined;\n }\n return encodedTerms;\n}\nexports.encodeOptionalTerms = encodeOptionalTerms;\n/**\n * Convert a quad patter to a `QuadPatternTerms` type.\n * @param subject The subject.\n * @param predicate The predicate.\n * @param object The object.\n * @param graph The graph.\n * @param quotedPatterns If the index supports quoted triple filtering.\n * @return Tuple A tuple of QuadPatternTerms\n * and a boolean indicating if post-filtering will be needed on quoted triples.\n * This boolean can only be true if `quotedPatterns` is false, and a quoted triple pattern was present.\n */\nfunction quadToPattern(subject, predicate, object, graph, quotedPatterns) {\n let requireQuotedTripleFiltering = false;\n const quadPatternTerms = [subject || undefined, predicate || undefined, object || undefined, graph || undefined]\n .map(term => {\n if (term) {\n if (term.termType === 'Variable') {\n return;\n }\n if (term.termType === 'Quad') {\n if (quotedPatterns) {\n return term;\n }\n requireQuotedTripleFiltering = true;\n return;\n }\n }\n return term;\n });\n return [quadPatternTerms, requireQuotedTripleFiltering];\n}\nexports.quadToPattern = quadToPattern;\n/**\n * Check if the given quad contains variables, even in deeply nested quoted triples.\n * @param currentTerm The quad pattern term.\n */\nfunction quadHasVariables(currentTerm) {\n for (const component of rdf_terms_1.QUAD_TERM_NAMES) {\n const subTerm = currentTerm[component];\n if (subTerm.termType === 'Variable' || (subTerm.termType === 'Quad' && quadHasVariables(subTerm))) {\n return true;\n }\n }\n return false;\n}\nexports.quadHasVariables = quadHasVariables;\n/**\n * Create a boolean array indicating which terms are quoted triple patterns.\n * @param terms An array of terms.\n */\nfunction arePatternsQuoted(terms) {\n return terms.map(term => (term === null || term === void 0 ? void 0 : term.termType) === 'Quad' && quadHasVariables(term));\n}\nexports.arePatternsQuoted = arePatternsQuoted;\n//# sourceMappingURL=OrderUtils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=PatternTerm.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStore = void 0;\nconst asynciterator_1 = require(\"asynciterator\");\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_terms_1 = require(\"rdf-terms\");\nconst DatasetCoreWrapper_1 = require(\"./dataset/DatasetCoreWrapper\");\nconst TermDictionaryNumberRecordFullTerms_1 = require(\"./dictionary/TermDictionaryNumberRecordFullTerms\");\nconst TermDictionaryQuotedIndexed_1 = require(\"./dictionary/TermDictionaryQuotedIndexed\");\nconst RdfStoreIndexNestedMapQuoted_1 = require(\"./index/RdfStoreIndexNestedMapQuoted\");\nconst OrderUtils_1 = require(\"./OrderUtils\");\n/**\n * An RDF store allows quads to be stored and fetched, based on one or more customizable indexes.\n */\nclass RdfStore {\n constructor(options) {\n this.features = { quotedTripleFiltering: true };\n this._size = 0;\n this.options = options;\n this.dataFactory = options.dataFactory;\n this.dictionary = options.dictionary;\n this.indexesWrapped = RdfStore.constructIndexesWrapped(options);\n this.indexesWrappedComponentOrders = this.indexesWrapped.map(indexThis => indexThis.componentOrder);\n }\n /**\n * Create an RDF store with default settings.\n * Concretely, this store stores triples in GSPO, GPOS, and GOSP order,\n * and makes use of in-memory number dictionary encoding.\n */\n static createDefault() {\n return new RdfStore({\n indexCombinations: RdfStore.DEFAULT_INDEX_COMBINATIONS,\n indexConstructor: subOptions => new RdfStoreIndexNestedMapQuoted_1.RdfStoreIndexNestedMapQuoted(subOptions),\n dictionary: new TermDictionaryQuotedIndexed_1.TermDictionaryQuotedIndexed(new TermDictionaryNumberRecordFullTerms_1.TermDictionaryNumberRecordFullTerms()),\n dataFactory: new rdf_data_factory_1.DataFactory(),\n });\n }\n /**\n * Internal helper to create index objects.\n * @param options The RDF store options object.\n */\n static constructIndexesWrapped(options) {\n const indexes = [];\n if (options.indexCombinations.length === 0) {\n throw new Error('At least one index combination is required');\n }\n for (const componentOrder of options.indexCombinations) {\n if (!RdfStore.isCombinationValid(componentOrder)) {\n throw new Error(`Invalid index combination: ${componentOrder}`);\n }\n indexes.push({\n index: options.indexConstructor(options),\n componentOrder,\n componentOrderInverse: Object.fromEntries(componentOrder.map((value, key) => [value, key])),\n });\n }\n return indexes;\n }\n /**\n * Check if a given quad term order is valid.\n * @param combination A quad term order.\n */\n static isCombinationValid(combination) {\n for (const quadTermName of rdf_terms_1.QUAD_TERM_NAMES) {\n if (!combination.includes(quadTermName)) {\n return false;\n }\n }\n return combination.length === 4;\n }\n /**\n * The number of quads in this store.\n */\n get size() {\n return this._size;\n }\n /**\n * Add a quad to the store.\n * @param quad An RDF quad.\n * @return boolean If the quad was not yet present in the index.\n */\n addQuad(quad) {\n const quadEncoded = [\n this.dictionary.encode(quad.subject),\n this.dictionary.encode(quad.predicate),\n this.dictionary.encode(quad.object),\n this.dictionary.encode(quad.graph),\n ];\n let newQuad = false;\n for (const indexWrapped of this.indexesWrapped) {\n // Before sending the quad to the index, make sure its components are ordered corresponding to the index's order.\n newQuad = indexWrapped.index\n .set((0, OrderUtils_1.orderQuadComponents)(indexWrapped.componentOrder, quadEncoded), true);\n }\n if (newQuad) {\n this._size++;\n return true;\n }\n return false;\n }\n /**\n * Remove a quad from the store.\n * @param quad An RDF quad.\n * @return boolean If the quad was present in the index.\n */\n removeQuad(quad) {\n const quadEncoded = [\n this.dictionary.encodeOptional(quad.subject),\n this.dictionary.encodeOptional(quad.predicate),\n this.dictionary.encodeOptional(quad.object),\n this.dictionary.encodeOptional(quad.graph),\n ];\n // We can quickly return false if the quad is not present in the dictionary\n // eslint-disable-next-line unicorn/no-useless-undefined\n if (quadEncoded.includes(undefined)) {\n return false;\n }\n let wasPresent = false;\n for (const indexWrapped of this.indexesWrapped) {\n // Before sending the quad to the index, make sure its components are ordered corresponding to the index's order.\n wasPresent = indexWrapped.index\n .remove((0, OrderUtils_1.orderQuadComponents)(indexWrapped.componentOrder, quadEncoded));\n if (!wasPresent) {\n break;\n }\n }\n if (wasPresent) {\n this._size--;\n return true;\n }\n return false;\n }\n /**\n * Removes all streamed quads.\n * @param stream A stream of quads\n */\n remove(stream) {\n stream.on('data', quad => this.removeQuad(quad));\n return stream;\n }\n /**\n * All quads matching the pattern will be removed.\n * @param subject The optional subject.\n * @param predicate The optional predicate.\n * @param object The optional object.\n * @param graph The optional graph.\n */\n removeMatches(subject, predicate, object, graph) {\n return this.remove(this.match(subject, predicate, object, graph));\n }\n /**\n * Deletes the given named graph.\n * @param graph The graph term or string to match.\n */\n deleteGraph(graph) {\n if (typeof graph === 'string') {\n graph = this.dataFactory.namedNode(graph);\n }\n return this.removeMatches(undefined, undefined, undefined, graph);\n }\n /**\n * Import the given stream of quads into the store.\n * @param stream A stream of RDF quads.\n */\n import(stream) {\n stream.on('data', (quad) => this.addQuad(quad));\n return stream;\n }\n /**\n * Returns a generator producing all quads matching the pattern.\n * @param subject The optional subject.\n * @param predicate The optional predicate.\n * @param object The optional object.\n * @param graph The optional graph.\n */\n *readQuads(subject, predicate, object, graph) {\n // Check if our dictionary and our indexes have quoted pattern support\n const indexesSupportQuotedPatterns = Boolean(this.dictionary.features.quotedTriples) &&\n Object.values(this.indexesWrapped).every(wrapped => wrapped.index.features.quotedTripleFiltering);\n // Construct a quad pattern array\n const [quadComponents, requireQuotedTripleFiltering] = (0, OrderUtils_1.quadToPattern)(subject, predicate, object, graph, indexesSupportQuotedPatterns);\n // Determine the best index for this pattern\n const indexWrapped = this.indexesWrapped[(0, OrderUtils_1.getBestIndex)(this.indexesWrappedComponentOrders, quadComponents)];\n // Re-order the quad pattern based on this best index's component order\n const quadComponentsOrdered = (0, OrderUtils_1.orderQuadComponents)(indexWrapped.componentOrder, quadComponents);\n // Call the best index's find method.\n // eslint-disable-next-line unicorn/no-array-callback-reference\n for (const decomposedQuad of indexWrapped.index.find(quadComponentsOrdered)) {\n // De-order the resulting quad components into the normal SPOG order for quad creation.\n const quad = this.dataFactory.quad(decomposedQuad[indexWrapped.componentOrderInverse.subject], decomposedQuad[indexWrapped.componentOrderInverse.predicate], decomposedQuad[indexWrapped.componentOrderInverse.object], decomposedQuad[indexWrapped.componentOrderInverse.graph]);\n if (requireQuotedTripleFiltering) {\n if ((0, rdf_terms_1.matchPattern)(quad, subject, predicate, object, graph)) {\n yield quad;\n }\n }\n else {\n yield quad;\n }\n }\n }\n /**\n * Returns an array containing all quads matching the pattern.\n * @param subject The optional subject.\n * @param predicate The optional predicate.\n * @param object The optional object.\n * @param graph The optional graph.\n */\n getQuads(subject, predicate, object, graph) {\n return [...this.readQuads(subject, predicate, object, graph)];\n }\n /**\n * Returns a stream that produces all quads matching the pattern.\n * @param subject The optional subject.\n * @param predicate The optional predicate.\n * @param object The optional object.\n * @param graph The optional graph.\n */\n match(subject, predicate, object, graph) {\n return (0, asynciterator_1.wrap)(this.readQuads(subject, predicate, object, graph));\n }\n /**\n * Returns the exact cardinality of the quads matching the pattern.\n * @param subject The optional subject.\n * @param predicate The optional predicate.\n * @param object The optional object.\n * @param graph The optional graph.\n */\n countQuads(subject, predicate, object, graph) {\n // Check if our dictionary and our indexes have quoted pattern support\n const indexesSupportQuotedPatterns = Boolean(this.dictionary.features.quotedTriples) &&\n Object.values(this.indexesWrapped).every(wrapped => wrapped.index.features.quotedTripleFiltering);\n // Construct a quad pattern array\n const [quadComponents] = (0, OrderUtils_1.quadToPattern)(subject, predicate, object, graph, indexesSupportQuotedPatterns);\n // Optimize all-variables pattern\n if (quadComponents.every(quadComponent => quadComponent === undefined)) {\n return this.size;\n }\n // Determine the best index for this pattern\n const indexWrapped = this.indexesWrapped[(0, OrderUtils_1.getBestIndex)(this.indexesWrappedComponentOrders, quadComponents)];\n // Re-order the quad pattern based on this best index's component order\n const quadComponentsOrdered = (0, OrderUtils_1.orderQuadComponents)(indexWrapped.componentOrder, quadComponents);\n // Call the best index's count method.\n return indexWrapped.index.count(quadComponentsOrdered);\n }\n /**\n * Wrap this store inside a DatasetCore interface.\n * Any mutations in either this store or the wrapper will propagate to each other.\n */\n asDataset() {\n return new DatasetCoreWrapper_1.DatasetCoreWrapper(this);\n }\n}\nRdfStore.DEFAULT_INDEX_COMBINATIONS = [\n ['graph', 'subject', 'predicate', 'object'],\n ['graph', 'predicate', 'object', 'subject'],\n ['graph', 'object', 'subject', 'predicate'],\n];\nexports.RdfStore = RdfStore;\n//# sourceMappingURL=RdfStore.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DatasetCoreWrapper = void 0;\nconst RdfStore_1 = require(\"../RdfStore\");\n/**\n * A DatasetCoreWrapper exposes an RdfStore inside an RDF.DatasetCore.\n */\nclass DatasetCoreWrapper {\n constructor(store) {\n this.store = store;\n }\n get size() {\n return this.store.size;\n }\n add(quad) {\n this.store.addQuad(quad);\n return this;\n }\n delete(quad) {\n this.store.removeQuad(quad);\n return this;\n }\n has(quad) {\n // eslint-disable-next-line no-unreachable-loop\n for (const result of this.store.readQuads(quad.subject, quad.predicate, quad.object, quad.graph)) {\n return true;\n }\n return false;\n }\n match(subject, predicate, object, graph) {\n const newStore = new RdfStore_1.RdfStore(this.store.options);\n for (const quad of this.store.readQuads(subject, predicate, object, graph)) {\n newStore.addQuad(quad);\n }\n return new DatasetCoreWrapper(newStore);\n }\n [Symbol.iterator]() {\n return this.store.readQuads();\n }\n}\nexports.DatasetCoreWrapper = DatasetCoreWrapper;\n//# sourceMappingURL=DatasetCoreWrapper.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=ITermDictionary.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryNumberMap = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_string_1 = require(\"rdf-string\");\n/**\n * A term dictionary that encodes to numbers, and stores the dictionary in memory in a Map.\n */\nclass TermDictionaryNumberMap {\n constructor(dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.lastId = 0;\n this.dictionary = new Map();\n this.reverseDictionary = new Map();\n this.features = { quotedTriples: false };\n this.dataFactory = dataFactory;\n }\n encode(term) {\n const key = (0, rdf_string_1.termToString)(term);\n let encoded = this.dictionary.get(key);\n if (encoded === undefined) {\n encoded = this.lastId++;\n this.dictionary.set(key, encoded);\n this.reverseDictionary.set(encoded, key);\n }\n return encoded;\n }\n encodeOptional(term) {\n const key = (0, rdf_string_1.termToString)(term);\n return this.dictionary.get(key);\n }\n decode(encoding) {\n const string = this.reverseDictionary.get(encoding);\n if (string === undefined) {\n throw new Error(`The value ${encoding} is not present in this dictionary`);\n }\n return (0, rdf_string_1.stringToTerm)(string, this.dataFactory);\n }\n encodings() {\n return this.reverseDictionary.keys();\n }\n findQuotedTriples(quotedTriplePattern) {\n throw new Error('findQuotedTriples is not supported');\n }\n findQuotedTriplesEncoded(quotedTriplePattern) {\n throw new Error('findQuotedTriplesEncoded is not supported');\n }\n}\nexports.TermDictionaryNumberMap = TermDictionaryNumberMap;\n//# sourceMappingURL=TermDictionaryNumberMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryNumberRecord = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_string_1 = require(\"rdf-string\");\n/**\n * A term dictionary that encodes to numbers, and stores the dictionary in memory in a Record.\n */\nclass TermDictionaryNumberRecord {\n constructor(dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.lastId = 0;\n this.dictionary = {};\n this.reverseDictionary = {};\n this.features = { quotedTriples: false };\n this.dataFactory = dataFactory;\n }\n encode(term) {\n const key = (0, rdf_string_1.termToString)(term);\n let encoded = this.dictionary[key];\n if (encoded === undefined) {\n encoded = this.lastId++;\n this.dictionary[key] = encoded;\n this.reverseDictionary[encoded] = key;\n }\n return encoded;\n }\n encodeOptional(term) {\n const key = (0, rdf_string_1.termToString)(term);\n return this.dictionary[key];\n }\n decode(encoding) {\n const string = this.reverseDictionary[encoding];\n if (string === undefined) {\n throw new Error(`The value ${encoding} is not present in this dictionary`);\n }\n return (0, rdf_string_1.stringToTerm)(string, this.dataFactory);\n }\n *encodings() {\n for (const key of Object.keys(this.reverseDictionary)) {\n yield Number.parseInt(key, 10);\n }\n }\n findQuotedTriples(quotedTriplePattern) {\n throw new Error('findQuotedTriples is not supported');\n }\n findQuotedTriplesEncoded(quotedTriplePattern) {\n throw new Error('findQuotedTriplesEncoded is not supported');\n }\n}\nexports.TermDictionaryNumberRecord = TermDictionaryNumberRecord;\n//# sourceMappingURL=TermDictionaryNumberRecord.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryNumberRecordFullTerms = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_string_1 = require(\"rdf-string\");\n/**\n * A term dictionary that encodes to numbers, and stores the dictionary in memory in a Record.\n * The reverse dictionary will store full RDF term objects,\n * resulting in slightly better query performance at the cost of slightly higher memory usage.\n */\nclass TermDictionaryNumberRecordFullTerms {\n constructor(dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.lastId = 0;\n this.dictionary = {};\n this.reverseDictionary = {};\n this.features = { quotedTriples: false };\n this.dataFactory = dataFactory;\n }\n encode(term) {\n const key = (0, rdf_string_1.termToString)(term);\n let encoded = this.dictionary[key];\n if (encoded === undefined) {\n encoded = this.lastId++;\n this.dictionary[key] = encoded;\n this.reverseDictionary[encoded] = term;\n }\n return encoded;\n }\n encodeOptional(term) {\n const key = (0, rdf_string_1.termToString)(term);\n return this.dictionary[key];\n }\n decode(encoding) {\n const string = this.reverseDictionary[encoding];\n if (string === undefined) {\n throw new Error(`The value ${encoding} is not present in this dictionary`);\n }\n return string;\n }\n *encodings() {\n for (const key of Object.keys(this.reverseDictionary)) {\n yield Number.parseInt(key, 10);\n }\n }\n findQuotedTriples(quotedTriplePattern) {\n throw new Error('findQuotedTriples is not supported');\n }\n findQuotedTriplesEncoded(quotedTriplePattern) {\n throw new Error('findQuotedTriplesEncoded is not supported');\n }\n}\nexports.TermDictionaryNumberRecordFullTerms = TermDictionaryNumberRecordFullTerms;\n//# sourceMappingURL=TermDictionaryNumberRecordFullTerms.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryQuoted = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_terms_1 = require(\"rdf-terms\");\n/**\n * A term dictionary for quoted triples.\n *\n * Plain terms and quoted triples are stored in separate dictionaries.\n *\n * Finding quoted triples is done by iterating over all quoted triples, and filtering by the matching ones.\n */\nclass TermDictionaryQuoted {\n constructor(plainTermDictionary, quotedTriplesDictionary, dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.features = { quotedTriples: true };\n this.plainTermDictionary = plainTermDictionary;\n this.quotedTriplesDictionary = quotedTriplesDictionary;\n this.dataFactory = dataFactory;\n }\n encode(term) {\n if (term.termType === 'Quad') {\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return TermDictionaryQuoted.BITMASK | (1 + this.quotedTriplesDictionary.encode(term));\n }\n return this.plainTermDictionary.encode(term);\n }\n encodeOptional(term) {\n if (term.termType === 'Quad') {\n const encoding = this.quotedTriplesDictionary.encodeOptional(term);\n if (encoding === undefined) {\n return encoding;\n }\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return TermDictionaryQuoted.BITMASK | (1 + encoding);\n }\n return this.plainTermDictionary.encodeOptional(term);\n }\n decode(encoding) {\n if (TermDictionaryQuoted.BITMASK & encoding) {\n // Term comes from the quoted triples dictionary\n const encodingBase = (~TermDictionaryQuoted.BITMASK & encoding) - 1;\n return this.quotedTriplesDictionary.decode(encodingBase);\n }\n // Term comes from the plain terms dictionary\n return this.plainTermDictionary.decode(encoding);\n }\n *encodings() {\n for (const encoding of this.plainTermDictionary.encodings()) {\n yield encoding;\n }\n for (const encoding of this.quotedTriplesDictionary.encodings()) {\n yield TermDictionaryQuoted.BITMASK | (1 + encoding);\n }\n }\n *findQuotedTriples(quotedTriplePattern) {\n for (const termEncoded of this.findQuotedTriplesEncoded(quotedTriplePattern)) {\n yield this.decode(termEncoded);\n }\n }\n *findQuotedTriplesEncoded(quotedTriplePattern) {\n for (let encodedQuotedTriple of this.quotedTriplesDictionary.encodings()) {\n encodedQuotedTriple = TermDictionaryQuoted.BITMASK | (1 + encodedQuotedTriple);\n const quotedTriple = this.decode(encodedQuotedTriple);\n if ((0, rdf_terms_1.matchPattern)(quotedTriple, quotedTriplePattern.subject, quotedTriplePattern.predicate, quotedTriplePattern.object, quotedTriplePattern.graph)) {\n yield encodedQuotedTriple;\n }\n }\n }\n}\nTermDictionaryQuoted.BITMASK = 1 << 31;\nexports.TermDictionaryQuoted = TermDictionaryQuoted;\n//# sourceMappingURL=TermDictionaryQuoted.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryQuotedIndexed = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst RdfStoreIndexNestedMap_1 = require(\"../index/RdfStoreIndexNestedMap\");\nconst OrderUtils_1 = require(\"../OrderUtils\");\n/**\n * A term dictionary for quoted triples.\n *\n * Plain terms are stored in a regular dictionary.\n * Quoted triples are stored separately using an index, which is backed the same dictionary.\n *\n * Finding quoted triples is done through indexed lookups.\n */\nclass TermDictionaryQuotedIndexed {\n constructor(rawTermDictionary, dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.quotedTriplesDictionary = [];\n this.features = { quotedTriples: true };\n this.plainTermDictionary = rawTermDictionary;\n const subIndexOpts = {\n // Not required\n indexCombinations: [],\n // Not required\n indexConstructor: undefined,\n dictionary: this,\n dataFactory,\n };\n this.quotedTriplesReverseDictionaries = [\n new RdfStoreIndexNestedMap_1.RdfStoreIndexNestedMap(subIndexOpts),\n new RdfStoreIndexNestedMap_1.RdfStoreIndexNestedMap(subIndexOpts),\n new RdfStoreIndexNestedMap_1.RdfStoreIndexNestedMap(subIndexOpts),\n ];\n this.dataFactory = dataFactory;\n }\n encode(term) {\n if (term.termType === 'Quad') {\n return this.encodeQuotedTriple(term, false);\n }\n return this.plainTermDictionary.encode(term);\n }\n encodeQuotedTriple(quad, optional) {\n // Only quoted triples are supported\n if (quad.graph.termType !== 'DefaultGraph') {\n throw new Error('Encoding of quoted quads outside of the default graph is not allowed');\n }\n // Check if the quad was already encoded\n const encodedTripleOptional = (0, OrderUtils_1.encodeOptionalTerms)([quad.subject, quad.predicate, quad.object, quad.graph], this);\n const id = encodedTripleOptional && encodedTripleOptional.every(encoded => encoded !== undefined) ?\n this.quotedTriplesReverseDictionaries[0].getEncoded(encodedTripleOptional) :\n undefined;\n // Return the encoding if we found one\n if (id !== undefined || optional) {\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return (id === undefined ? undefined : TermDictionaryQuotedIndexed.BITMASK | id);\n }\n // If the quad was not encoded yet, add a new entry for it in the dictionary.\n const encodedTriple = [\n this.encode(quad.subject),\n this.encode(quad.predicate),\n this.encode(quad.object),\n ];\n const encodingBase = this.quotedTriplesDictionary.length + 1;\n this.quotedTriplesDictionary.push(encodedTriple);\n const encodedGraph = this.encode(this.dataFactory.defaultGraph());\n this.quotedTriplesReverseDictionaries[0].set([\n encodedTriple[0],\n encodedTriple[1],\n encodedTriple[2],\n encodedGraph,\n ], encodingBase);\n this.quotedTriplesReverseDictionaries[1].set([\n encodedTriple[1],\n encodedTriple[2],\n encodedTriple[0],\n encodedGraph,\n ], encodingBase);\n this.quotedTriplesReverseDictionaries[2].set([\n encodedTriple[2],\n encodedTriple[0],\n encodedTriple[1],\n encodedGraph,\n ], encodingBase);\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return TermDictionaryQuotedIndexed.BITMASK | encodingBase;\n }\n encodeOptional(term) {\n if (term.termType === 'Quad') {\n return this.encodeQuotedTriple(term, true);\n }\n return this.plainTermDictionary.encodeOptional(term);\n }\n decode(encoding) {\n if (TermDictionaryQuotedIndexed.BITMASK & encoding) {\n // Term comes from the quoted triples dictionary\n const encodingBase = (~TermDictionaryQuotedIndexed.BITMASK & encoding) - 1;\n if (encodingBase >= this.quotedTriplesDictionary.length) {\n throw new Error(`The value ${encoding} is not present in the quoted triples range of the dictionary`);\n }\n const encodedTerms = this.quotedTriplesDictionary[encodingBase];\n return this.dataFactory.quad(this.decode(encodedTerms[0]), this.decode(encodedTerms[1]), this.decode(encodedTerms[2]));\n }\n // Term comes from the plain terms dictionary\n return this.plainTermDictionary.decode(encoding);\n }\n *encodings() {\n for (const encoding of this.plainTermDictionary.encodings()) {\n yield encoding;\n }\n for (const encoding of this.quotedTriplesDictionary.keys()) {\n yield TermDictionaryQuotedIndexed.BITMASK | (1 + encoding);\n }\n }\n *findQuotedTriples(quotedTriplePattern) {\n for (const termEncoded of this.findQuotedTriplesEncoded(quotedTriplePattern)) {\n yield this.decode(termEncoded);\n }\n }\n *findQuotedTriplesEncoded(quotedTriplePattern) {\n const [patternIn, requireQuotedTripleFiltering] = (0, OrderUtils_1.quadToPattern)(quotedTriplePattern.subject, quotedTriplePattern.predicate, quotedTriplePattern.object, quotedTriplePattern.graph, true);\n // Find all matching terms iteratively\n for (const termS of this.patternToIterable(patternIn[0])) {\n for (const termP of this.patternToIterable(patternIn[1])) {\n for (const termO of this.patternToIterable(patternIn[2])) {\n for (const termG of this.patternToIterable(patternIn[3])) {\n // Find all terms matching the pattern from the reverse indexes\n // We select the reverse index according to the current triple pattern\n if ((termS && termP) || (!termP && !termO)) {\n // SPO\n const pattern = [termS, termP, termO, termG];\n for (const termEncoded of this.quotedTriplesReverseDictionaries[0].findEncoded(pattern, patternIn)) {\n yield TermDictionaryQuotedIndexed.BITMASK |\n this.quotedTriplesReverseDictionaries[0].getEncoded(termEncoded);\n }\n }\n else if (!termS && termP) {\n // POS\n const pattern = [termP, termO, termS, termG];\n for (const termEncoded of this.quotedTriplesReverseDictionaries[1].findEncoded(pattern, patternIn)) {\n yield TermDictionaryQuotedIndexed.BITMASK |\n this.quotedTriplesReverseDictionaries[1].getEncoded(termEncoded);\n }\n }\n else {\n // OSP\n const pattern = [termO, termS, termP, termG];\n for (const termEncoded of this.quotedTriplesReverseDictionaries[2].findEncoded(pattern, patternIn)) {\n yield TermDictionaryQuotedIndexed.BITMASK |\n this.quotedTriplesReverseDictionaries[2].getEncoded(termEncoded);\n }\n }\n }\n }\n }\n }\n }\n /**\n * Helper function to convert a term to an iterator over encoded terms.\n * @param patternTerm A term.\n * @protected\n */\n *patternToIterable(patternTerm) {\n // If the term is another quoted quad, recursively find other quoted triples\n if ((patternTerm === null || patternTerm === void 0 ? void 0 : patternTerm.termType) === 'Quad') {\n yield* this.findQuotedTriplesEncoded(patternTerm);\n return;\n }\n // Undefined terms indicate a variable\n if (patternTerm === undefined) {\n // eslint-disable-next-line unicorn/no-useless-undefined\n yield undefined;\n return;\n }\n // Defined terms indicate a precise match\n const enc = this.encodeOptional(patternTerm);\n if (enc === undefined) {\n return;\n }\n yield enc;\n }\n}\nTermDictionaryQuotedIndexed.BITMASK = 1 << 31;\nexports.TermDictionaryQuotedIndexed = TermDictionaryQuotedIndexed;\n//# sourceMappingURL=TermDictionaryQuotedIndexed.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionaryQuotedReferential = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_terms_1 = require(\"rdf-terms\");\nconst OrderUtils_1 = require(\"../OrderUtils\");\n/**\n * A term dictionary for quoted triples.\n *\n * Plain terms and quoted triples are stored in separate dictionaries,\n * but quoted triples are encoded using encodings from the plain term dictionary.\n *\n * Finding quoted triples is done by iterating over all quoted triples, and filtering by the matching ones.\n */\nclass TermDictionaryQuotedReferential {\n constructor(plainTermDictionary, dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.quotedTriplesDictionary = [];\n this.quotedTriplesReverseDictionary = {};\n this.features = { quotedTriples: true };\n this.plainTermDictionary = plainTermDictionary;\n this.dataFactory = dataFactory;\n }\n encode(term) {\n if (term.termType === 'Quad') {\n return this.encodeQuotedTriple(term, false);\n }\n return this.plainTermDictionary.encode(term);\n }\n encodeQuotedTriple(quad, optional) {\n var _a;\n // Only quoted triples are supported\n if (quad.graph.termType !== 'DefaultGraph') {\n throw new Error('Encoding of quoted quads outside of the default graph is not allowed');\n }\n // Check if the quad was already encoded\n const encodedTripleOptional = (_a = (0, OrderUtils_1.encodeOptionalTerms)([quad.subject, quad.predicate, quad.object, undefined], this)) === null || _a === void 0 ? void 0 : _a.slice(0, 3);\n const id = encodedTripleOptional && encodedTripleOptional.every(encoded => encoded !== undefined) ?\n this.quotedTriplesReverseDictionary[encodedTripleOptional.join(TermDictionaryQuotedReferential.SEPARATOR)] :\n undefined;\n // Return the encoding if we found one\n if (id !== undefined || optional) {\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return (id === undefined ? undefined : TermDictionaryQuotedReferential.BITMASK | id);\n }\n // If the quad was not encoded yet, add a new entry for it in the dictionary.\n const encodedTriple = [\n this.encode(quad.subject),\n this.encode(quad.predicate),\n this.encode(quad.object),\n ];\n const encodingBase = this.quotedTriplesDictionary.length + 1;\n this.quotedTriplesDictionary.push(encodedTriple);\n this.quotedTriplesReverseDictionary[encodedTriple.join(TermDictionaryQuotedReferential.SEPARATOR)] = encodingBase;\n // Mask MSB to indicate that the encoding should refer to the quoted triples dictionary.\n return TermDictionaryQuotedReferential.BITMASK | encodingBase;\n }\n encodeOptional(term) {\n if (term.termType === 'Quad') {\n return this.encodeQuotedTriple(term, true);\n }\n return this.plainTermDictionary.encodeOptional(term);\n }\n decode(encoding) {\n if (TermDictionaryQuotedReferential.BITMASK & encoding) {\n // Term comes from the quoted triples dictionary\n const encodingBase = (~TermDictionaryQuotedReferential.BITMASK & encoding) - 1;\n if (encodingBase >= this.quotedTriplesDictionary.length) {\n throw new Error(`The value ${encoding} is not present in the quoted triples range of the dictionary`);\n }\n const encodedTerms = this.quotedTriplesDictionary[encodingBase];\n return this.dataFactory.quad(this.decode(encodedTerms[0]), this.decode(encodedTerms[1]), this.decode(encodedTerms[2]));\n }\n // Term comes from the plain terms dictionary\n return this.plainTermDictionary.decode(encoding);\n }\n *encodings() {\n for (const encoding of this.plainTermDictionary.encodings()) {\n yield encoding;\n }\n for (const encoding of this.quotedTriplesDictionary.keys()) {\n yield TermDictionaryQuotedReferential.BITMASK | (1 + encoding);\n }\n }\n *findQuotedTriples(quotedTriplePattern) {\n for (const termEncoded of this.findQuotedTriplesEncoded(quotedTriplePattern)) {\n yield this.decode(termEncoded);\n }\n }\n *findQuotedTriplesEncoded(quotedTriplePattern) {\n for (let encodedQuotedTriple of this.quotedTriplesDictionary.keys()) {\n encodedQuotedTriple = TermDictionaryQuotedReferential.BITMASK | (1 + encodedQuotedTriple);\n const quotedTriple = this.decode(encodedQuotedTriple);\n if ((0, rdf_terms_1.matchPattern)(quotedTriple, quotedTriplePattern.subject, quotedTriplePattern.predicate, quotedTriplePattern.object, quotedTriplePattern.graph)) {\n yield encodedQuotedTriple;\n }\n }\n }\n}\nTermDictionaryQuotedReferential.BITMASK = 1 << 31;\nTermDictionaryQuotedReferential.SEPARATOR = '_';\nexports.TermDictionaryQuotedReferential = TermDictionaryQuotedReferential;\n//# sourceMappingURL=TermDictionaryQuotedReferential.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TermDictionarySymbol = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst rdf_string_1 = require(\"rdf-string\");\n/**\n * A term dictionary that encodes and decodes using symbols.\n */\nclass TermDictionarySymbol {\n constructor(dataFactory = new rdf_data_factory_1.DataFactory()) {\n this.features = { quotedTriples: false };\n this.dataFactory = dataFactory;\n }\n encode(term) {\n return Symbol.for(`rdf::${(0, rdf_string_1.termToString)(term)}`);\n }\n encodeOptional(term) {\n return this.encode(term);\n }\n decode(encoding) {\n const string = Symbol.keyFor(encoding);\n if (string === undefined) {\n throw new Error(`The value ${String(encoding)} is not present in this dictionary`);\n }\n return (0, rdf_string_1.stringToTerm)(string.slice(5), this.dataFactory);\n }\n encodings() {\n throw new Error('encodings is not supported');\n }\n findQuotedTriples(quotedTriplePattern) {\n throw new Error('findQuotedTriples is not supported');\n }\n findQuotedTriplesEncoded(quotedTriplePattern) {\n throw new Error('findQuotedTriplesEncoded is not supported');\n }\n}\nexports.TermDictionarySymbol = TermDictionarySymbol;\n//# sourceMappingURL=TermDictionarySymbol.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IRdfStoreIndex.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedMap = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\n/**\n * An RDF store index that is implemented using nested Maps.\n */\nclass RdfStoreIndexNestedMap {\n constructor(options) {\n this.features = {\n quotedTripleFiltering: false,\n };\n this.dictionary = options.dictionary;\n this.nestedMap = new Map();\n }\n set(terms, value) {\n const map0 = this.nestedMap;\n let map1 = map0.get(terms[0]);\n if (!map1) {\n map1 = new Map();\n map0.set(terms[0], map1);\n }\n let map2 = map1.get(terms[1]);\n if (!map2) {\n map2 = new Map();\n map1.set(terms[1], map2);\n }\n let map3 = map2.get(terms[2]);\n if (!map3) {\n map3 = new Map();\n map2.set(terms[2], map3);\n }\n const contained = map3.has(terms[3]);\n if (!contained) {\n map3.set(terms[3], value);\n }\n return !contained;\n }\n remove(terms) {\n const map0 = this.nestedMap;\n const map1 = map0.get(terms[0]);\n if (!map1) {\n return false;\n }\n const map2 = map1.get(terms[1]);\n if (!map2) {\n return false;\n }\n const map3 = map2.get(terms[2]);\n if (!map3) {\n return false;\n }\n const ret = map3.delete(terms[3]);\n // Clean up intermediate maps\n if (ret && map3.size === 0) {\n map2.delete(terms[2]);\n if (map2.size === 0) {\n map1.delete(terms[1]);\n if (map1.size === 0) {\n map0.delete(terms[0]);\n }\n }\n }\n return ret;\n }\n get(key) {\n const encoded = (0, OrderUtils_1.encodeOptionalTerms)(key, this.dictionary);\n // eslint-disable-next-line unicorn/no-useless-undefined\n if (!encoded || encoded.includes(undefined)) {\n return undefined;\n }\n return this.getEncoded(encoded);\n }\n getEncoded(ids) {\n const map1 = this.nestedMap.get(ids[0]);\n if (!map1) {\n return undefined;\n }\n const map2 = map1.get(ids[1]);\n if (!map2) {\n return undefined;\n }\n const map3 = map2.get(ids[2]);\n if (!map3) {\n return undefined;\n }\n return map3.get(ids[3]);\n }\n *find(terms) {\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n let partialQuad0;\n let partialQuad1;\n let partialQuad2;\n let partialQuad3;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = id0 !== undefined ? (map0.has(id0) ? [id0] : []) : map0.keys();\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n partialQuad0 = term0 || this.dictionary.decode(key1);\n const map1Keys = id1 !== undefined ? (map1.has(id1) ? [id1] : []) : map1.keys();\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n partialQuad1 = term1 || this.dictionary.decode(key2);\n const map2Keys = id2 !== undefined ? (map2.has(id2) ? [id2] : []) : map2.keys();\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n partialQuad2 = term2 || this.dictionary.decode(key3);\n const map3Keys = id3 !== undefined ? (map3.has(id3) ? [id3] : []) : map3.keys();\n for (const key4 of map3Keys) {\n partialQuad3 = term3 || this.dictionary.decode(key4);\n yield [partialQuad0, partialQuad1, partialQuad2, partialQuad3];\n }\n }\n }\n }\n }\n // The code below is nearly identical. We duplicate because abstraction would result in a significant performance hit.\n *findEncoded(ids, terms) {\n const [id0, id1, id2, id3] = ids;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = id0 !== undefined ? (map0.has(id0) ? [id0] : []) : map0.keys();\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n const map1Keys = id1 !== undefined ? (map1.has(id1) ? [id1] : []) : map1.keys();\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n const map2Keys = id2 !== undefined ? (map2.has(id2) ? [id2] : []) : map2.keys();\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n const map3Keys = id3 !== undefined ? (map3.has(id3) ? [id3] : []) : map3.keys();\n for (const key4 of map3Keys) {\n yield [key1, key2, key3, key4];\n }\n }\n }\n }\n }\n count(terms) {\n let count = 0;\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return 0;\n }\n const id0 = ids[0];\n const id1 = ids[1];\n const id2 = ids[2];\n const id3 = ids[3];\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = id0 !== undefined ? (map0.has(id0) ? [id0] : []) : map0.keys();\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n const map1Keys = id1 !== undefined ? (map1.has(id1) ? [id1] : []) : map1.keys();\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n const map2Keys = id2 !== undefined ? (map2.has(id2) ? [id2] : []) : map2.keys();\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n if (id3 !== undefined) {\n if (map3.has(id3)) {\n count++;\n }\n }\n else {\n count += map3.size;\n }\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedMap = RdfStoreIndexNestedMap;\n//# sourceMappingURL=RdfStoreIndexNestedMap.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedMapQuoted = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\nconst RdfStoreIndexNestedMap_1 = require(\"./RdfStoreIndexNestedMap\");\n/**\n * An RDF store index that is implemented using nested Maps with optimized quoted triple support.\n */\nclass RdfStoreIndexNestedMapQuoted extends RdfStoreIndexNestedMap_1.RdfStoreIndexNestedMap {\n constructor(options) {\n super(options);\n this.features = {\n quotedTripleFiltering: true,\n };\n }\n *getQuotedPatternKeys(map, term) {\n for (const quotedTripleEncoded of this.dictionary.findQuotedTriplesEncoded(term)) {\n if (map.has(quotedTripleEncoded)) {\n yield quotedTripleEncoded;\n }\n }\n }\n *find(terms) {\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let partialQuad0;\n let partialQuad1;\n let partialQuad2;\n let partialQuad3;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (map0.has(id0) ? [id0] : [])) :\n map0.keys());\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n partialQuad0 = !quotedTerm0 && term0 ? term0 : this.dictionary.decode(key1);\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (map1.has(id1) ? [id1] : [])) :\n map1.keys());\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n partialQuad1 = !quotedTerm1 && term1 ? term1 : this.dictionary.decode(key2);\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (map2.has(id2) ? [id2] : [])) :\n map2.keys());\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n partialQuad2 = !quotedTerm2 && term2 ? term2 : this.dictionary.decode(key3);\n const map3Keys = (term3 !== undefined ?\n (quotedTerm3 ? this.getQuotedPatternKeys(map3, term3) : (map3.has(id3) ? [id3] : [])) :\n map3.keys());\n for (const key4 of map3Keys) {\n partialQuad3 = !quotedTerm3 && term3 ? term3 : this.dictionary.decode(key4);\n yield [partialQuad0, partialQuad1, partialQuad2, partialQuad3];\n }\n }\n }\n }\n }\n // The code below is nearly identical. We duplicate because abstraction would result in a significant performance hit.\n *findEncoded(ids, terms) {\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (map0.has(id0) ? [id0] : [])) :\n map0.keys());\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (map1.has(id1) ? [id1] : [])) :\n map1.keys());\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (map2.has(id2) ? [id2] : [])) :\n map2.keys());\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n const map3Keys = (term3 !== undefined ?\n (quotedTerm3 ? this.getQuotedPatternKeys(map3, term3) : (map3.has(id3) ? [id3] : [])) :\n map3.keys());\n for (const key4 of map3Keys) {\n yield [\n Number.parseInt(key1, 10),\n Number.parseInt(key2, 10),\n Number.parseInt(key3, 10),\n Number.parseInt(key4, 10),\n ];\n }\n }\n }\n }\n }\n count(terms) {\n let count = 0;\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return 0;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedMap;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (map0.has(id0) ? [id0] : [])) :\n map0.keys());\n for (const key1 of map0Keys) {\n map1 = map0.get(key1);\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (map1.has(id1) ? [id1] : [])) :\n map1.keys());\n for (const key2 of map1Keys) {\n map2 = map1.get(key2);\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (map2.has(id2) ? [id2] : [])) :\n map2.keys());\n for (const key3 of map2Keys) {\n map3 = map2.get(key3);\n if (term3 !== undefined) {\n if (quotedTerm3) {\n count += [...this.getQuotedPatternKeys(map3, term3)].length;\n }\n else if (map3.has(id3)) {\n count++;\n }\n }\n else {\n count += map3.size;\n }\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedMapQuoted = RdfStoreIndexNestedMapQuoted;\n//# sourceMappingURL=RdfStoreIndexNestedMapQuoted.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedMapRecursive = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\n/**\n * An RDF store index that is implemented using nested Maps,\n * and finds quads components via recursive methods calls.\n */\nclass RdfStoreIndexNestedMapRecursive {\n constructor(options) {\n this.features = {\n quotedTripleFiltering: false,\n };\n this.dictionary = options.dictionary;\n this.nestedMap = new Map();\n }\n set(terms, value) {\n let map = this.nestedMap;\n let contained = false;\n for (const [i, term] of terms.entries()) {\n const mapActual = map;\n let nextMap = mapActual.get(term);\n if (!nextMap) {\n nextMap = i === terms.length - 1 ? value : new Map();\n mapActual.set(term, nextMap);\n }\n else if (i === terms.length - 1) {\n contained = true;\n }\n map = nextMap;\n }\n return !contained;\n }\n remove(terms) {\n const map0 = this.nestedMap;\n const map1 = map0.get(terms[0]);\n if (!map1) {\n return false;\n }\n const map2 = map1.get(terms[1]);\n if (!map2) {\n return false;\n }\n const map3 = map2.get(terms[2]);\n if (!map3) {\n return false;\n }\n const ret = map3.delete(terms[3]);\n // Clean up intermediate maps\n if (ret && map3.size === 0) {\n map2.delete(terms[2]);\n if (map2.size === 0) {\n map1.delete(terms[1]);\n if (map1.size === 0) {\n map0.delete(terms[0]);\n }\n }\n }\n return ret;\n }\n get(key) {\n const encoded = (0, OrderUtils_1.encodeOptionalTerms)(key, this.dictionary);\n // eslint-disable-next-line unicorn/no-useless-undefined\n if (!encoded || encoded.includes(undefined)) {\n return undefined;\n }\n return this.getEncoded(encoded);\n }\n getEncoded(ids) {\n const map1 = this.nestedMap.get(ids[0]);\n if (!map1) {\n return undefined;\n }\n const map2 = map1.get(ids[1]);\n if (!map2) {\n return undefined;\n }\n const map3 = map2.get(ids[2]);\n if (!map3) {\n return undefined;\n }\n return map3.get(ids[3]);\n }\n *find(terms) {\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return;\n }\n for (const termsEncoded of this.findEncoded(ids, terms)) {\n yield [\n ids[0] !== undefined ? terms[0] : this.dictionary.decode(termsEncoded[0]),\n ids[1] !== undefined ? terms[1] : this.dictionary.decode(termsEncoded[1]),\n ids[2] !== undefined ? terms[2] : this.dictionary.decode(termsEncoded[2]),\n ids[3] !== undefined ? terms[3] : this.dictionary.decode(termsEncoded[3]),\n ];\n }\n }\n *findEncoded(ids, terms) {\n return yield* this\n .findEncodedInner(0, ids, terms, this.nestedMap, []);\n }\n *findEncodedInner(index, ids, terms, map, partialQuad) {\n if (index === ids.length) {\n yield [...partialQuad];\n }\n else {\n const id = ids[index];\n const currentTerm = terms[index];\n // If current term is undefined, iterate over all terms at this level.\n if (!currentTerm) {\n for (const [key, subMap] of map.entries()) {\n partialQuad[index] = key;\n yield* this\n .findEncodedInner(index + 1, ids, terms, subMap, partialQuad);\n }\n }\n else {\n // If the current term is defined, find one matching map for the current term.\n const encodedTerm = id;\n if (encodedTerm !== undefined) {\n const subMap = map.get(encodedTerm);\n if (subMap) {\n partialQuad[index] = id;\n yield* this\n .findEncodedInner(index + 1, ids, terms, subMap, partialQuad);\n }\n }\n }\n }\n }\n count(terms) {\n return this.countInner(0, terms, this.nestedMap);\n }\n countInner(index, terms, map) {\n const currentTerm = terms[index];\n let count = 0;\n // If current term is undefined, iterate over all terms at this level.\n if (!currentTerm) {\n if (index === terms.length - 1) {\n return map.size;\n }\n for (const subMap of map.values()) {\n count += this.countInner(index + 1, terms, subMap);\n }\n }\n else {\n // If the current term is defined, find one matching map for the current term.\n const encodedTerm = this.dictionary.encodeOptional(currentTerm);\n if (encodedTerm !== undefined) {\n if (index === terms.length - 1) {\n if (map.has(encodedTerm)) {\n return 1;\n }\n return 0;\n }\n const subMap = map.get(encodedTerm);\n if (subMap) {\n count += this.countInner(index + 1, terms, subMap);\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedMapRecursive = RdfStoreIndexNestedMapRecursive;\n//# sourceMappingURL=RdfStoreIndexNestedMapRecursive.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedMapRecursiveQuoted = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\nconst RdfStoreIndexNestedMapRecursive_1 = require(\"./RdfStoreIndexNestedMapRecursive\");\n/**\n * An RDF store index that is implemented using nested Maps,\n * and finds quads components via recursive methods calls\n * with optimized quoted triple support.\n */\nclass RdfStoreIndexNestedMapRecursiveQuoted extends RdfStoreIndexNestedMapRecursive_1.RdfStoreIndexNestedMapRecursive {\n constructor(options) {\n super(options);\n this.features = {\n quotedTripleFiltering: true,\n };\n }\n *findEncoded(ids, terms) {\n return yield* this\n .findEncodedInnerQuoted(0, ids, terms, (0, OrderUtils_1.arePatternsQuoted)(terms), this.nestedMap, []);\n }\n *findEncodedInnerQuoted(index, ids, terms, isQuotedPattern, map, partialQuad) {\n if (index === ids.length) {\n yield [...partialQuad];\n }\n else {\n const id = ids[index];\n const currentTerm = terms[index];\n // If current term is undefined, iterate over all terms at this level.\n if (!currentTerm) {\n for (const [key, subMap] of map.entries()) {\n partialQuad[index] = key;\n yield* this\n .findEncodedInnerQuoted(index + 1, ids, terms, isQuotedPattern, subMap, partialQuad);\n }\n }\n else if (isQuotedPattern[index]) {\n const quotedTriplesEncoded = this\n .dictionary.findQuotedTriplesEncoded(currentTerm);\n // Below, we perform a type of inner (hash) join between quotedTriplesEncoded and map (with hash on map)\n for (const quotedTripleEncoded of quotedTriplesEncoded) {\n const subMap = map.get(quotedTripleEncoded);\n if (subMap) {\n partialQuad[index] = quotedTripleEncoded;\n yield* this.findEncodedInnerQuoted(index + 1, ids, terms, isQuotedPattern, subMap, partialQuad);\n }\n }\n }\n else {\n // If the current term is defined, find one matching map for the current term.\n const encodedTerm = id;\n if (encodedTerm !== undefined) {\n const subMap = map.get(encodedTerm);\n if (subMap) {\n partialQuad[index] = id;\n yield* this.findEncodedInnerQuoted(index + 1, ids, terms, isQuotedPattern, subMap, partialQuad);\n }\n }\n }\n }\n }\n countInner(index, terms, map) {\n const currentTerm = terms[index];\n let count = 0;\n // If current term is undefined, iterate over all terms at this level.\n if (!currentTerm) {\n if (index === terms.length - 1) {\n return map.size;\n }\n for (const subMap of map.values()) {\n count += this.countInner(index + 1, terms, subMap);\n }\n }\n else if (currentTerm.termType === 'Quad' && (0, OrderUtils_1.quadHasVariables)(currentTerm)) {\n const quotedTriplesEncoded = this.dictionary.findQuotedTriplesEncoded(currentTerm);\n // Below, we perform a type of inner (hash) join between quotedTriplesEncoded and map (with hash on map)\n for (const quotedTripleEncoded of quotedTriplesEncoded) {\n if (index === terms.length - 1) {\n if (map.has(quotedTripleEncoded)) {\n count++;\n }\n }\n else {\n const subMap = map.get(quotedTripleEncoded);\n if (subMap) {\n count += this.countInner(index + 1, terms, subMap);\n }\n }\n }\n }\n else {\n // If the current term is defined, find one matching map for the current term.\n const encodedTerm = this.dictionary.encodeOptional(currentTerm);\n if (encodedTerm !== undefined) {\n if (index === terms.length - 1) {\n if (map.has(encodedTerm)) {\n return 1;\n }\n return 0;\n }\n const subMap = map.get(encodedTerm);\n if (subMap) {\n count += this.countInner(index + 1, terms, subMap);\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedMapRecursiveQuoted = RdfStoreIndexNestedMapRecursiveQuoted;\n//# sourceMappingURL=RdfStoreIndexNestedMapRecursiveQuoted.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedRecord = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\n/**\n * An RDF store index that is implemented using nested records.\n */\nclass RdfStoreIndexNestedRecord {\n constructor(options) {\n this.features = {\n quotedTripleFiltering: false,\n };\n this.dictionary = options.dictionary;\n this.nestedRecords = {};\n }\n set(terms, value) {\n const map0 = this.nestedRecords;\n const map1 = map0[terms[0]] || (map0[terms[0]] = {});\n const map2 = map1[terms[1]] || (map1[terms[1]] = {});\n const map3 = map2[terms[2]] || (map2[terms[2]] = {});\n if (map3[terms[3]]) {\n return false;\n }\n map3[terms[3]] = value;\n return true;\n }\n remove(terms) {\n const map0 = this.nestedRecords;\n const map1 = map0[terms[0]];\n if (!map1) {\n return false;\n }\n const map2 = map1[terms[1]];\n if (!map2) {\n return false;\n }\n const map3 = map2[terms[2]];\n if (!map3) {\n return false;\n }\n if (!map3[terms[3]]) {\n return false;\n }\n delete map3[terms[3]];\n // Clean up intermediate maps\n if (Object.keys(map3).length === 0) {\n delete map2[terms[2]];\n if (Object.keys(map2).length === 0) {\n delete map1[terms[1]];\n if (Object.keys(map1).length === 0) {\n delete map0[terms[0]];\n }\n }\n }\n return true;\n }\n get(key) {\n const encoded = (0, OrderUtils_1.encodeOptionalTerms)(key, this.dictionary);\n // eslint-disable-next-line unicorn/no-useless-undefined\n if (!encoded || encoded.includes(undefined)) {\n return undefined;\n }\n return this.getEncoded(encoded);\n }\n getEncoded(ids) {\n var _a, _b, _c;\n return (_c = (_b = (_a = this.nestedRecords[ids[0]]) === null || _a === void 0 ? void 0 : _a[ids[1]]) === null || _b === void 0 ? void 0 : _b[ids[2]]) === null || _c === void 0 ? void 0 : _c[ids[3]];\n }\n *find(terms) {\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n let partialQuad0;\n let partialQuad1;\n let partialQuad2;\n let partialQuad3;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = id0 !== undefined ? (id0 in map0 ? [id0] : []) : Object.keys(map0);\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n partialQuad0 = term0 || this.dictionary.decode(Number.parseInt(key1, 10));\n const map1Keys = id1 !== undefined ? (id1 in map1 ? [id1] : []) : Object.keys(map1);\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n partialQuad1 = term1 || this.dictionary.decode(Number.parseInt(key2, 10));\n const map2Keys = id2 !== undefined ? (id2 in map2 ? [id2] : []) : Object.keys(map2);\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n partialQuad2 = term2 || this.dictionary.decode(Number.parseInt(key3, 10));\n const map3Keys = id3 !== undefined ? (id3 in map3 ? [id3] : []) : Object.keys(map3);\n for (const key4 of map3Keys) {\n partialQuad3 = term3 || this.dictionary.decode(Number.parseInt(key4, 10));\n yield [partialQuad0, partialQuad1, partialQuad2, partialQuad3];\n }\n }\n }\n }\n }\n // The code below is nearly identical. We duplicate because abstraction would result in a significant performance hit.\n *findEncoded(ids, terms) {\n const [id0, id1, id2, id3] = ids;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = id0 !== undefined ? (id0 in map0 ? [id0] : []) : Object.keys(map0);\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n const map1Keys = id1 !== undefined ? (id1 in map1 ? [id1] : []) : Object.keys(map1);\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n const map2Keys = id2 !== undefined ? (id2 in map2 ? [id2] : []) : Object.keys(map2);\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n const map3Keys = id3 !== undefined ? (id3 in map3 ? [id3] : []) : Object.keys(map3);\n for (const key4 of map3Keys) {\n yield [\n Number.parseInt(key1, 10),\n Number.parseInt(key2, 10),\n Number.parseInt(key3, 10),\n Number.parseInt(key4, 10),\n ];\n }\n }\n }\n }\n }\n count(terms) {\n let count = 0;\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return 0;\n }\n const id0 = ids[0];\n const id1 = ids[1];\n const id2 = ids[2];\n const id3 = ids[3];\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = id0 !== undefined ? (id0 in map0 ? [id0] : []) : Object.keys(map0);\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n const map1Keys = id1 !== undefined ? (id1 in map1 ? [id1] : []) : Object.keys(map1);\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n const map2Keys = id2 !== undefined ? (id2 in map2 ? [id2] : []) : Object.keys(map2);\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n if (id3 !== undefined) {\n if (id3 in map3) {\n count++;\n }\n }\n else {\n count += Object.keys(map3).length;\n }\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedRecord = RdfStoreIndexNestedRecord;\n//# sourceMappingURL=RdfStoreIndexNestedRecord.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfStoreIndexNestedRecordQuoted = void 0;\nconst OrderUtils_1 = require(\"../OrderUtils\");\nconst RdfStoreIndexNestedRecord_1 = require(\"./RdfStoreIndexNestedRecord\");\n/**\n * An RDF store index that is implemented using nested records with optimized quoted triple support.\n */\nclass RdfStoreIndexNestedRecordQuoted extends RdfStoreIndexNestedRecord_1.RdfStoreIndexNestedRecord {\n constructor(options) {\n super(options);\n this.features = {\n quotedTripleFiltering: true,\n };\n }\n *getQuotedPatternKeys(map, term) {\n for (const quotedTripleEncoded of this.dictionary.findQuotedTriplesEncoded(term)) {\n if (quotedTripleEncoded in map) {\n yield quotedTripleEncoded;\n }\n }\n }\n *find(terms) {\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let partialQuad0;\n let partialQuad1;\n let partialQuad2;\n let partialQuad3;\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (id0 in map0 ? [id0] : [])) :\n Object.keys(map0));\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n partialQuad0 = !quotedTerm0 && term0 ? term0 : this.dictionary.decode(Number.parseInt(key1, 10));\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (id1 in map1 ? [id1] : [])) :\n Object.keys(map1));\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n partialQuad1 = !quotedTerm1 && term1 ? term1 : this.dictionary.decode(Number.parseInt(key2, 10));\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (id2 in map2 ? [id2] : [])) :\n Object.keys(map2));\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n partialQuad2 = !quotedTerm2 && term2 ? term2 : this.dictionary.decode(Number.parseInt(key3, 10));\n const map3Keys = (term3 !== undefined ?\n (quotedTerm3 ? this.getQuotedPatternKeys(map3, term3) : (id3 in map3 ? [id3] : [])) :\n Object.keys(map3));\n for (const key4 of map3Keys) {\n partialQuad3 = !quotedTerm3 && term3 ? term3 : this.dictionary.decode(Number.parseInt(key4, 10));\n yield [partialQuad0, partialQuad1, partialQuad2, partialQuad3];\n }\n }\n }\n }\n }\n // The code below is nearly identical. We duplicate because abstraction would result in a significant performance hit.\n *findEncoded(ids, terms) {\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (id0 in map0 ? [id0] : [])) :\n Object.keys(map0));\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (id1 in map1 ? [id1] : [])) :\n Object.keys(map1));\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (id2 in map2 ? [id2] : [])) :\n Object.keys(map2));\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n const map3Keys = (term3 !== undefined ?\n (quotedTerm3 ? this.getQuotedPatternKeys(map3, term3) : (id3 in map3 ? [id3] : [])) :\n Object.keys(map3));\n for (const key4 of map3Keys) {\n yield [\n Number.parseInt(key1, 10),\n Number.parseInt(key2, 10),\n Number.parseInt(key3, 10),\n Number.parseInt(key4, 10),\n ];\n }\n }\n }\n }\n }\n count(terms) {\n let count = 0;\n const ids = (0, OrderUtils_1.encodeOptionalTerms)(terms, this.dictionary);\n if (!ids) {\n return 0;\n }\n const [id0, id1, id2, id3] = ids;\n const [term0, term1, term2, term3] = terms;\n const [quotedTerm0, quotedTerm1, quotedTerm2, quotedTerm3] = (0, OrderUtils_1.arePatternsQuoted)(terms);\n let map1;\n let map2;\n let map3;\n const map0 = this.nestedRecords;\n const map0Keys = (term0 !== undefined ?\n (quotedTerm0 ? this.getQuotedPatternKeys(map0, term0) : (id0 in map0 ? [id0] : [])) :\n Object.keys(map0));\n for (const key1 of map0Keys) {\n map1 = map0[key1];\n const map1Keys = (term1 !== undefined ?\n (quotedTerm1 ? this.getQuotedPatternKeys(map1, term1) : (id1 in map1 ? [id1] : [])) :\n Object.keys(map1));\n for (const key2 of map1Keys) {\n map2 = map1[key2];\n const map2Keys = (term2 !== undefined ?\n (quotedTerm2 ? this.getQuotedPatternKeys(map2, term2) : (id2 in map2 ? [id2] : [])) :\n Object.keys(map2));\n for (const key3 of map2Keys) {\n map3 = map2[key3];\n if (term3 !== undefined) {\n if (quotedTerm3) {\n count += [...this.getQuotedPatternKeys(map3, term3)].length;\n }\n else if (id3 in map3) {\n count++;\n }\n }\n else {\n count += Object.keys(map3).length;\n }\n }\n }\n }\n return count;\n }\n}\nexports.RdfStoreIndexNestedRecordQuoted = RdfStoreIndexNestedRecordQuoted;\n//# sourceMappingURL=RdfStoreIndexNestedRecordQuoted.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/PendingStreamsIndex\"), exports);\n__exportStar(require(\"./lib/StreamingStore\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PendingStreamsIndex = void 0;\nconst rdf_string_1 = require(\"rdf-string\");\nconst rdf_terms_1 = require(\"rdf-terms\");\n/**\n * A PendingStreamsIndex stores pending streams indexed by the quad pattern they have been created for.\n */\nclass PendingStreamsIndex {\n constructor() {\n this.indexedStreams = new Map();\n this.allStreams = [];\n }\n termToString(term) {\n return term && term.termType !== 'Variable' ? (0, rdf_string_1.termToString)(term) : PendingStreamsIndex.ID_VARIABLE;\n }\n /**\n * Add a new pending stream for the given quad pattern.\n * @param pendingStream A pending stream.\n * @param subject A term.\n * @param predicate A term.\n * @param object A term.\n * @param graph A term.\n */\n addPatternListener(pendingStream, subject, predicate, object, graph) {\n // Append to list of pendingStreams\n this.allStreams.push(pendingStream);\n // Append to index of pendingStreams\n const key = `${this.termToString(subject)}${PendingStreamsIndex.ID_SEPARATOR}${this.termToString(predicate)}${PendingStreamsIndex.ID_SEPARATOR}${this.termToString(object)}${PendingStreamsIndex.ID_SEPARATOR}${this.termToString(graph)}`;\n let existingListeners = this.indexedStreams.get(key);\n if (!existingListeners) {\n existingListeners = [];\n this.indexedStreams.set(key, existingListeners);\n }\n existingListeners.push(pendingStream);\n }\n /**\n * Find all the pending streams from which their quad pattern match the given quad.\n * @param quad The quad to match patterns to.\n */\n getPendingStreamsForQuad(quad) {\n // Determine the combinations of quad patterns to look up\n let keys = [(0, rdf_terms_1.getTerms)(quad).map(term => (0, rdf_string_1.termToString)(term))];\n for (let i = 0; i < rdf_terms_1.QUAD_TERM_NAMES.length; i++) {\n const keysOld = keys;\n keys = [];\n for (const key of keysOld) {\n keys.push(key);\n const keyModified = [...key];\n keyModified[i] = PendingStreamsIndex.ID_VARIABLE;\n keys.push(keyModified);\n }\n }\n // Fetch the pendingStreams for the quad pattern combinations\n const pendingStreams = [];\n for (const key of keys) {\n const found = this.indexedStreams.get(key.join(PendingStreamsIndex.ID_SEPARATOR));\n if (found) {\n pendingStreams.push(...found);\n }\n }\n return pendingStreams;\n }\n}\nexports.PendingStreamsIndex = PendingStreamsIndex;\nPendingStreamsIndex.ID_VARIABLE = '?';\nPendingStreamsIndex.ID_SEPARATOR = ':';\n//# sourceMappingURL=PendingStreamsIndex.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StreamingStore = void 0;\nconst n3_1 = require(\"n3\");\nconst readable_stream_1 = require(\"readable-stream\");\nconst PendingStreamsIndex_1 = require(\"./PendingStreamsIndex\");\n/**\n * A StreamingStore allows data lookup and insertion to happen in parallel.\n * Concretely, this means that `match()` calls happening before `import()` calls, will still consider those triples that\n * are inserted later, which is done by keeping the response streams of `match()` open.\n * Only when the `end()` method is invoked, all response streams will close, and the StreamingStore will be considered\n * immutable.\n *\n * WARNING: `end()` MUST be called at some point, otherwise all `match` streams will remain unended.\n */\nclass StreamingStore {\n constructor(store = new n3_1.Store()) {\n this.pendingStreams = new PendingStreamsIndex_1.PendingStreamsIndex();\n this.ended = false;\n this.store = store;\n }\n /**\n * Mark this store as ended.\n *\n * This will make sure that all running and future `match` calls will end,\n * and all next `import` calls to this store will throw an error.\n */\n end() {\n this.ended = true;\n // Mark all pendingStreams as ended.\n for (const pendingStream of this.pendingStreams.allStreams) {\n pendingStream.push(null);\n pendingStream._pipeSource.unpipe();\n }\n }\n importToListeners(stream) {\n stream.on('data', (quad) => {\n for (const pendingStream of this.pendingStreams.getPendingStreamsForQuad(quad)) {\n if (!this.ended) {\n pendingStream.push(quad);\n pendingStream.emit('quad', quad);\n }\n }\n });\n }\n import(stream) {\n if (this.ended) {\n throw new Error('Attempted to import into an ended StreamingStore');\n }\n this.importToListeners(stream);\n return this.store.import(stream);\n }\n match(subject, predicate, object, graph) {\n const storeResult = this.store.match(subject, predicate, object, graph);\n let stream = storeResult;\n // If the store hasn't ended yet, also create a new pendingStream\n if (!this.ended) {\n // The new pendingStream remains open, until the store is ended.\n const pendingStream = new readable_stream_1.PassThrough({ objectMode: true });\n this.pendingStreams.addPatternListener(pendingStream, subject, predicate, object, graph);\n stream = storeResult.pipe(pendingStream, { end: false });\n stream._pipeSource = storeResult;\n }\n return stream;\n }\n /**\n * The internal store with all imported quads.\n */\n getStore() {\n return this.store;\n }\n}\nexports.StreamingStore = StreamingStore;\n//# sourceMappingURL=StreamingStore.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.termToString = exports.stringToTerm = exports.stringQuadToQuad = exports.quadToStringQuad = exports.getLiteralValue = exports.getLiteralType = exports.getLiteralLanguage = void 0;\nconst TermUtil_1 = require(\"./lib/TermUtil\");\nObject.defineProperty(exports, \"getLiteralLanguage\", { enumerable: true, get: function () { return TermUtil_1.getLiteralLanguage; } });\nObject.defineProperty(exports, \"getLiteralType\", { enumerable: true, get: function () { return TermUtil_1.getLiteralType; } });\nObject.defineProperty(exports, \"getLiteralValue\", { enumerable: true, get: function () { return TermUtil_1.getLiteralValue; } });\nObject.defineProperty(exports, \"quadToStringQuad\", { enumerable: true, get: function () { return TermUtil_1.quadToStringQuad; } });\nObject.defineProperty(exports, \"stringQuadToQuad\", { enumerable: true, get: function () { return TermUtil_1.stringQuadToQuad; } });\nObject.defineProperty(exports, \"stringToTerm\", { enumerable: true, get: function () { return TermUtil_1.stringToTerm; } });\nObject.defineProperty(exports, \"termToString\", { enumerable: true, get: function () { return TermUtil_1.termToString; } });\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringQuadToQuad = exports.quadToStringQuad = exports.stringToTerm = exports.getLiteralLanguage = exports.getLiteralType = exports.getLiteralValue = exports.termToString = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst FACTORY = new rdf_data_factory_1.DataFactory();\n/**\n * Utility methods for converting between string-based RDF representations and RDFJS objects.\n *\n * RDF Terms are represented as follows:\n * * Blank nodes: '_:myBlankNode'\n * * Variables: '_myVariable'\n * * Literals: '\"myString\"', '\"myLanguageString\"@en-us', '\"

e

\"^^'\n * * URIs: ''\n *\n * Quads/triples are represented as hashes with 'subject', 'predicate', 'object' and 'graph' (optional)\n * as keys, and string-based RDF terms as values.\n */\n/**\n * Convert an RDFJS term to a string-based representation.\n * @param {RDF.Term} term An RDFJS term.\n * @return {string} A string-based term representation.\n */\nfunction termToString(term) {\n // TODO: remove nasty any casts when this TS bug has been fixed: https://github.com/microsoft/TypeScript/issues/26933\n if (!term) {\n return undefined;\n }\n switch (term.termType) {\n case 'NamedNode': return (`<${escapeIRI(term.value)}>`);\n case 'BlankNode': return (`_:${term.value}`);\n case 'Literal': {\n const literalValue = term;\n return (`\"${escapeStringRDF(literalValue.value)}\"${literalValue.datatype &&\n literalValue.datatype.value !== 'http://www.w3.org/2001/XMLSchema#string' &&\n literalValue.datatype.value !== 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString' ?\n `^^<${literalValue.datatype.value}>` :\n ''}${literalValue.language ? `@${literalValue.language}` : ''}`);\n }\n case 'Quad': return (`<<${termToString(term.subject)} ${termToString(term.predicate)} ${termToString(term.object)}${term.graph.termType === 'DefaultGraph' ? '' : ` ${termToString(term.graph)}`}>>`);\n case 'Variable': return (`?${term.value}`);\n case 'DefaultGraph': return term.value;\n }\n}\nexports.termToString = termToString;\n/**\n * Get the string value of a literal.\n * @param {string} literalValue An RDF literal enclosed by '\"'.\n * @return {string} The literal value inside the '\"'.\n */\nfunction getLiteralValue(literalValue) {\n const match = /^\"([^]*)\"((\\^\\^.*)|(@.*))?$/u.exec(literalValue);\n if (!match) {\n throw new Error(`${literalValue} is not a literal`);\n }\n return match[1].replace(/\\\\\"/ug, '\"');\n}\nexports.getLiteralValue = getLiteralValue;\n/**\n * Get the datatype of the given literal.\n * @param {string} literalValue An RDF literal.\n * @return {string} The datatype of the literal.\n */\nfunction getLiteralType(literalValue) {\n const match = /^\"[^]*\"(?:\\^\\^<([^\"]+)>|(@)[^@\"]+)?$/u.exec(literalValue);\n if (!match) {\n throw new Error(`${literalValue} is not a literal`);\n }\n return match[1] || (match[2] ?\n 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString' :\n 'http://www.w3.org/2001/XMLSchema#string');\n}\nexports.getLiteralType = getLiteralType;\n/**\n * Get the language of the given literal.\n * @param {string} literalValue An RDF literal.\n * @return {string} The language of the literal.\n */\nfunction getLiteralLanguage(literalValue) {\n const match = /^\"[^]*\"(?:@([^@\"]+)|\\^\\^[^\"]+)?$/u.exec(literalValue);\n if (!match) {\n throw new Error(`${literalValue} is not a literal`);\n }\n return match[1] ? match[1].toLowerCase() : '';\n}\nexports.getLiteralLanguage = getLiteralLanguage;\n/**\n * Transform a string-based RDF term to an RDFJS term.\n * @param {string} value A string-based RDF-term.\n * @param {RDF.DataFactory} dataFactory An optional datafactory to create terms with.\n * @return {RDF.Term} An RDF-JS term.\n */\nfunction stringToTerm(value, dataFactory) {\n dataFactory = dataFactory || FACTORY;\n if (!value || (value.length === 0)) {\n return dataFactory.defaultGraph();\n }\n switch (value[0]) {\n case '_': return dataFactory.blankNode(value.slice(2));\n case '?':\n if (!dataFactory.variable) {\n throw new Error(`Missing 'variable()' method on the given DataFactory`);\n }\n return dataFactory.variable(value.slice(1));\n case '\"': {\n const language = getLiteralLanguage(value);\n const type = dataFactory.namedNode(getLiteralType(value));\n return dataFactory.literal(getLiteralValue(value), language || type);\n }\n case '<':\n default:\n if (value.startsWith('<<') && value.endsWith('>>')) {\n // Iterate character-by-character to detect spaces that are *not* wrapped in <<>>\n const terms = value.slice(2, -2);\n const stringTerms = [];\n let ignoreTags = 0;\n let lastIndex = 0;\n for (let i = 0; i < terms.length; i++) {\n const char = terms[i];\n if (char === '<') {\n ignoreTags++;\n }\n if (char === '>') {\n if (ignoreTags === 0) {\n throw new Error(`Found closing tag without opening tag in ${value}`);\n }\n else {\n ignoreTags--;\n }\n }\n if (char === ' ' && ignoreTags === 0) {\n stringTerms.push(terms.slice(lastIndex, i));\n lastIndex = i + 1;\n }\n }\n if (ignoreTags !== 0) {\n throw new Error(`Found opening tag without closing tag in ${value}`);\n }\n stringTerms.push(terms.slice(lastIndex, terms.length));\n // We require 3 or 4 components\n if (stringTerms.length !== 3 && stringTerms.length !== 4) {\n throw new Error(`Nested quad syntax error ${value}`);\n }\n return dataFactory.quad(stringToTerm(stringTerms[0]), stringToTerm(stringTerms[1]), stringToTerm(stringTerms[2]), stringTerms[3] ? stringToTerm(stringTerms[3]) : undefined);\n }\n if (!value.startsWith('<') || !value.endsWith('>')) {\n throw new Error(`Detected invalid iri for named node (must be wrapped in <>): ${value}`);\n }\n return dataFactory.namedNode(value.slice(1, -1));\n }\n}\nexports.stringToTerm = stringToTerm;\n/**\n * Convert an RDFJS quad to a string-based quad representation.\n * @param {Quad} q An RDFJS quad.\n * @return {IStringQuad} A hash with string-based quad terms.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction quadToStringQuad(quad) {\n return {\n subject: termToString(quad.subject),\n predicate: termToString(quad.predicate),\n object: termToString(quad.object),\n graph: termToString(quad.graph),\n };\n}\nexports.quadToStringQuad = quadToStringQuad;\n/**\n * Convert a string-based quad representation to an RDFJS quad.\n * @param {IStringQuad} stringQuad A hash with string-based quad terms.\n * @param {RDF.DataFactory} dataFactory An optional datafactory to create terms with.\n * @return {Q} An RDFJS quad.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction stringQuadToQuad(stringQuad, dataFactory) {\n dataFactory = dataFactory || FACTORY;\n return dataFactory.quad(stringToTerm(stringQuad.subject, dataFactory), stringToTerm(stringQuad.predicate, dataFactory), stringToTerm(stringQuad.object, dataFactory), stringToTerm(stringQuad.graph, dataFactory));\n}\nexports.stringQuadToQuad = stringQuadToQuad;\nfunction escapeIRI(iriValue) {\n return iriValue.replace(escapePattern, replaceEscapedCharacter);\n}\nfunction escapeStringRDF(stringValue) {\n if (escapePattern.test(stringValue)) {\n stringValue = stringValue.replace(escapePattern, replaceEscapedCharacter);\n }\n return stringValue;\n}\n// Characters in literals and IRIs that require escaping\n// Also containing potential surrogate pairs\n/* eslint-disable require-unicode-regexp */ /* eslint-disable unicorn/better-regex */\nconst escapePattern = /[\"\\\\\\t\\n\\r\\b\\f\\u0000-\\u0019]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n/* eslint-enable require-unicode-regexp */ /* eslint-enable unicorn/better-regex */\nconst escapes = new Map([\n ['\\\\', '\\\\\\\\'],\n ['\"', '\\\\\"'],\n ['\\t', '\\\\t'],\n ['\\n', '\\\\n'],\n ['\\r', '\\\\r'],\n ['\\b', '\\\\b'],\n ['\\f', '\\\\f'],\n]);\nfunction replaceEscapedCharacter(character) {\n // Try simplest case first, get replacement for character\n const result = escapes.get(character);\n if (!result) {\n if (character.length === 1) {\n // Single unicode charachters, i.e. not a surrogate pair\n const code = character.charCodeAt(0).toString(16);\n return `${'\\\\u0000'.slice(0, -code.length)}${code}`;\n }\n // Surrogate pairs\n const code = ((character.charCodeAt(0) - 55296) * 1024 + character.charCodeAt(1) + 9216).toString(16);\n return `${'\\\\U00000000'.slice(0, -code.length)}${code}`;\n }\n return result;\n}\n//# sourceMappingURL=TermUtil.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.termToString = exports.stringToTerm = exports.stringQuadToQuad = exports.quadToStringQuad = exports.getLiteralValue = exports.getLiteralType = exports.getLiteralLanguage = void 0;\nconst TermUtil_1 = require(\"./lib/TermUtil\");\nObject.defineProperty(exports, \"getLiteralLanguage\", { enumerable: true, get: function () { return TermUtil_1.getLiteralLanguage; } });\nObject.defineProperty(exports, \"getLiteralType\", { enumerable: true, get: function () { return TermUtil_1.getLiteralType; } });\nObject.defineProperty(exports, \"getLiteralValue\", { enumerable: true, get: function () { return TermUtil_1.getLiteralValue; } });\nObject.defineProperty(exports, \"quadToStringQuad\", { enumerable: true, get: function () { return TermUtil_1.quadToStringQuad; } });\nObject.defineProperty(exports, \"stringQuadToQuad\", { enumerable: true, get: function () { return TermUtil_1.stringQuadToQuad; } });\nObject.defineProperty(exports, \"stringToTerm\", { enumerable: true, get: function () { return TermUtil_1.stringToTerm; } });\nObject.defineProperty(exports, \"termToString\", { enumerable: true, get: function () { return TermUtil_1.termToString; } });\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stringQuadToQuad = exports.quadToStringQuad = exports.stringToTerm = exports.getLiteralLanguage = exports.getLiteralType = exports.getLiteralValue = exports.termToString = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst FACTORY = new rdf_data_factory_1.DataFactory();\n/**\n * Utility methods for converting between string-based RDF representations and RDFJS objects.\n *\n * RDF Terms are represented as follows:\n * * Blank nodes: '_:myBlankNode'\n * * Variables: '?myVariable'\n * * Literals: '\"myString\"', '\"myLanguageString\"@en-us', '\"3\"^^xsd:number'\n * * URIs: 'http://example.org'\n *\n * Quads/triples are represented as hashes with 'subject', 'predicate', 'object' and 'graph' (optional)\n * as keys, and string-based RDF terms as values.\n */\n/**\n * Convert an RDFJS term to a string-based representation.\n * @param {RDF.Term} term An RDFJS term.\n * @return {string} A string-based term representation.\n */\nfunction termToString(term) {\n // TODO: remove nasty any casts when this TS bug has been fixed: https://github.com/microsoft/TypeScript/issues/26933\n if (!term) {\n return undefined;\n }\n switch (term.termType) {\n case 'NamedNode': return term.value;\n case 'BlankNode': return ('_:' + term.value);\n case 'Literal':\n const literalValue = term;\n return ('\"' + literalValue.value + '\"' +\n (literalValue.datatype &&\n literalValue.datatype.value !== 'http://www.w3.org/2001/XMLSchema#string' &&\n literalValue.datatype.value !== 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString' ?\n '^^' + literalValue.datatype.value : '') +\n (literalValue.language ? '@' + literalValue.language : ''));\n case 'Quad': return `<<${termToString(term.subject)} ${termToString(term.predicate)} ${termToString(term.object)}${term.graph.termType === 'DefaultGraph' ? '' : ' ' + termToString(term.graph)}>>`;\n case 'Variable': return ('?' + term.value);\n case 'DefaultGraph': return term.value;\n }\n}\nexports.termToString = termToString;\n/**\n * Get the string value of a literal.\n * @param {string} literalValue An RDF literal enclosed by '\"'.\n * @return {string} The literal value inside the '\"'.\n */\nfunction getLiteralValue(literalValue) {\n const match = /^\"([^]*)\"/.exec(literalValue);\n if (!match) {\n throw new Error(literalValue + ' is not a literal');\n }\n return match[1];\n}\nexports.getLiteralValue = getLiteralValue;\n/**\n * Get the datatype of the given literal.\n * @param {string} literalValue An RDF literal.\n * @return {string} The datatype of the literal.\n */\nfunction getLiteralType(literalValue) {\n const match = /^\"[^]*\"(?:\\^\\^([^\"]+)|(@)[^@\"]+)?$/.exec(literalValue);\n if (!match) {\n throw new Error(literalValue + ' is not a literal');\n }\n return match[1] || (match[2]\n ? 'http://www.w3.org/1999/02/22-rdf-syntax-ns#langString' : 'http://www.w3.org/2001/XMLSchema#string');\n}\nexports.getLiteralType = getLiteralType;\n/**\n * Get the language of the given literal.\n * @param {string} literalValue An RDF literal.\n * @return {string} The language of the literal.\n */\nfunction getLiteralLanguage(literalValue) {\n const match = /^\"[^]*\"(?:@([^@\"]+)|\\^\\^[^\"]+)?$/.exec(literalValue);\n if (!match) {\n throw new Error(literalValue + ' is not a literal');\n }\n return match[1] ? match[1].toLowerCase() : '';\n}\nexports.getLiteralLanguage = getLiteralLanguage;\n/**\n * Transform a string-based RDF term to an RDFJS term.\n * @param {string} value A string-based RDF-term.\n * @param {RDF.DataFactory} dataFactory An optional datafactory to create terms with.\n * @return {RDF.Term} An RDF-JS term.\n */\nfunction stringToTerm(value, dataFactory) {\n dataFactory = dataFactory || FACTORY;\n if (!value || !value.length) {\n return dataFactory.defaultGraph();\n }\n switch (value[0]) {\n case '_': return dataFactory.blankNode(value.substr(2));\n case '?':\n if (!dataFactory.variable) {\n throw new Error(`Missing 'variable()' method on the given DataFactory`);\n }\n return dataFactory.variable(value.substr(1));\n case '\"':\n const language = getLiteralLanguage(value);\n const type = dataFactory.namedNode(getLiteralType(value));\n return dataFactory.literal(getLiteralValue(value), language || type);\n case '<':\n default:\n if (value[0] === '<' && value.length > 4 && value[1] === '<' && value[value.length - 1] === '>' && value[value.length - 2] === '>') {\n // Iterate character-by-character to detect spaces that are *not* wrapped in <<>>\n const terms = value.slice(2, -2).trim();\n let stringTerms = [];\n let ignoreTags = 0;\n let lastIndex = 0;\n let inQuote = false;\n for (let i = 0; i < terms.length; i++) {\n const char = terms[i];\n if (char === '<')\n ignoreTags++;\n if (char === '>') {\n if (ignoreTags === 0) {\n throw new Error('Found closing tag without opening tag in ' + value);\n }\n else {\n ignoreTags--;\n }\n }\n if (char === '\"') {\n let escaped = false;\n let j = i;\n while (j-- > 0 && terms[j] === '\\\\') {\n escaped = !escaped;\n }\n if (!escaped) {\n // We have reached an unescaped quote\n inQuote = !inQuote;\n }\n }\n if (char === ' ' && !inQuote && ignoreTags === 0) {\n stringTerms.push(terms.slice(lastIndex, i));\n while (terms[i + 1] === ' ') {\n i += 1;\n }\n lastIndex = i + 1;\n }\n }\n if (ignoreTags !== 0) {\n throw new Error('Found opening tag without closing tag in ' + value);\n }\n stringTerms.push(terms.slice(lastIndex, terms.length));\n // We require 3 or 4 components\n if (stringTerms.length !== 3 && stringTerms.length !== 4) {\n throw new Error('Nested quad syntax error ' + value);\n }\n stringTerms = stringTerms.map(term => term.startsWith('<') && !term.includes(' ') ? term.slice(1, -1) : term);\n return dataFactory.quad(stringToTerm(stringTerms[0]), stringToTerm(stringTerms[1]), stringToTerm(stringTerms[2]), stringTerms[3] ? stringToTerm(stringTerms[3]) : undefined);\n }\n return dataFactory.namedNode(value);\n }\n}\nexports.stringToTerm = stringToTerm;\n/**\n * Convert an RDFJS quad to a string-based quad representation.\n * @param {Quad} q An RDFJS quad.\n * @return {IStringQuad} A hash with string-based quad terms.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction quadToStringQuad(q) {\n // tslint:disable:object-literal-sort-keys\n return {\n subject: termToString(q.subject),\n predicate: termToString(q.predicate),\n object: termToString(q.object),\n graph: termToString(q.graph),\n };\n // tslint:enable:object-literal-sort-keys\n}\nexports.quadToStringQuad = quadToStringQuad;\n/**\n * Convert a string-based quad representation to an RDFJS quad.\n * @param {IStringQuad} stringQuad A hash with string-based quad terms.\n * @param {RDF.DataFactory} dataFactory An optional datafactory to create terms with.\n * @return {Q} An RDFJS quad.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction stringQuadToQuad(stringQuad, dataFactory) {\n dataFactory = dataFactory || FACTORY;\n return dataFactory.quad(stringToTerm(stringQuad.subject, dataFactory), stringToTerm(stringQuad.predicate, dataFactory), stringToTerm(stringQuad.object, dataFactory), stringToTerm(stringQuad.graph, dataFactory));\n}\nexports.stringQuadToQuad = stringQuadToQuad;\n//# sourceMappingURL=TermUtil.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/QuadTermUtil\"), exports);\n__exportStar(require(\"./lib/TermUtil\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.matchPatternMappings = exports.matchPatternComplete = exports.matchPattern = exports.matchTerm = exports.getValueNestedPath = exports.someTermsNested = exports.someTerms = exports.everyTermsNested = exports.everyTerms = exports.reduceTermsNested = exports.reduceTerms = exports.mapTermsNested = exports.mapTerms = exports.filterQuadTermNamesNested = exports.filterQuadTermNames = exports.filterTermsNested = exports.filterTerms = exports.forEachTermsNested = exports.forEachTerms = exports.collectNamedTerms = exports.getNamedTerms = exports.getTermsNested = exports.getTerms = exports.TRIPLE_TERM_NAMES = exports.QUAD_TERM_NAMES = void 0;\nconst rdf_data_factory_1 = require(\"rdf-data-factory\");\nconst DF = new rdf_data_factory_1.DataFactory();\n/**\n * All available quad term names.\n * @type {[string , string , string , string]}\n */\nexports.QUAD_TERM_NAMES = ['subject', 'predicate', 'object', 'graph'];\n/**\n * All available triple term names.\n * @type {[string , string , string]}\n */\nexports.TRIPLE_TERM_NAMES = ['subject', 'predicate', 'object'];\n/**\n * Get all terms in the given quad.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {boolean} ignoreDefaultGraph If true and the quad has the default graph as graph,\n * this term will not be returned in the array.\n * (default: false)\n * @return {Term[]} The available terms in the quad.\n */\nfunction getTerms(quad, ignoreDefaultGraph) {\n if (ignoreDefaultGraph && quad.graph.termType === 'DefaultGraph') {\n return [quad.subject, quad.predicate, quad.object];\n }\n return [quad.subject, quad.predicate, quad.object, quad.graph];\n}\nexports.getTerms = getTerms;\n/**\n * Get all terms in the given quad, including nested quads.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {boolean} ignoreDefaultGraph If true and the quad has the default graph as graph,\n * this term will not be returned in the array.\n * (default: false)\n * @return {Term[]} The available terms in the nested quad, excluding quad terms.\n */\nfunction getTermsNested(quad, ignoreDefaultGraph) {\n const terms = [];\n for (const term of getTerms(quad, ignoreDefaultGraph)) {\n if (term.termType === 'Quad') {\n getTermsNested(term, ignoreDefaultGraph).forEach(subTerm => terms.push(subTerm));\n }\n else {\n terms.push(term);\n }\n }\n return terms;\n}\nexports.getTermsNested = getTermsNested;\n/**\n * Convert the given quad to an array of named terms.\n * This is the reverse operation of {@link collectNamedTerms}.\n * @param {BaseQuad} quad An RDFJS quad.\n * @return {INamedTerm[]} An array of named terms.\n */\nfunction getNamedTerms(quad) {\n return [\n { key: 'subject', value: quad.subject },\n { key: 'predicate', value: quad.predicate },\n { key: 'object', value: quad.object },\n { key: 'graph', value: quad.graph },\n ];\n}\nexports.getNamedTerms = getNamedTerms;\n/**\n * Convert an array of named terms to an RDFJS quad.\n * This is the reverse operation of {@link getNamedTerms}.\n * @param {INamedTerm[]} namedTerms An array of named terms.\n * @param {(termName: QuadTermName) => Term} defaultCb An optional callback for when\n * certain terms are not available in the array.\n * @param {RDF.DataFactory} dataFactory A custom data factory to create quads.\n * @return {Q} The resulting RDFJS quad.\n * @template Q The type of quad to output, defaults to RDF.Quad.\n */\nfunction collectNamedTerms(namedTerms, defaultCb, dataFactory) {\n const elements = {};\n namedTerms.forEach((namedTerm) => elements[namedTerm.key] = namedTerm.value);\n if (defaultCb) {\n elements.subject = elements.subject || defaultCb('subject');\n elements.predicate = elements.predicate || defaultCb('predicate');\n elements.object = elements.object || defaultCb('object');\n elements.graph = elements.graph || defaultCb('graph');\n }\n return (dataFactory || DF).quad(elements.subject, elements.predicate, elements.object, elements.graph);\n}\nexports.collectNamedTerms = collectNamedTerms;\n/**\n * Iterates over each term.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} cb A callback function.\n */\nfunction forEachTerms(quad, cb) {\n cb(quad.subject, 'subject');\n cb(quad.predicate, 'predicate');\n cb(quad.object, 'object');\n cb(quad.graph, 'graph');\n}\nexports.forEachTerms = forEachTerms;\n/**\n * Iterates over each leaf term, while recursing into quoted triples.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} cb A callback function.\n * @param QuadTermName[] keys The current key path.\n */\nfunction forEachTermsNested(quad, cb, keys = []) {\n if (quad.subject.termType === 'Quad') {\n forEachTermsNested(quad.subject, cb, [...keys, 'subject']);\n }\n else {\n cb(quad.subject, [...keys, 'subject']);\n }\n if (quad.predicate.termType === 'Quad') {\n forEachTermsNested(quad.predicate, cb, [...keys, 'predicate']);\n }\n else {\n cb(quad.predicate, [...keys, 'predicate']);\n }\n if (quad.object.termType === 'Quad') {\n forEachTermsNested(quad.object, cb, [...keys, 'object']);\n }\n else {\n cb(quad.object, [...keys, 'object']);\n }\n if (quad.graph.termType === 'Quad') {\n forEachTermsNested(quad.graph, cb, [...keys, 'graph']);\n }\n else {\n cb(quad.graph, [...keys, 'graph']);\n }\n}\nexports.forEachTermsNested = forEachTermsNested;\n/**\n * Get all terms in the given quad that return true on the given filter function.\n * @param {BaseQuad} quad A quad.\n * @param {(value: Term, key: QuadTermName) => boolean} filter A filter callback.\n * @return {Term[]} The list of matching terms.\n */\nfunction filterTerms(quad, filter) {\n const terms = [];\n if (filter(quad.subject, 'subject')) {\n terms.push(quad.subject);\n }\n if (filter(quad.predicate, 'predicate')) {\n terms.push(quad.predicate);\n }\n if (filter(quad.object, 'object')) {\n terms.push(quad.object);\n }\n if (filter(quad.graph, 'graph')) {\n terms.push(quad.graph);\n }\n return terms;\n}\nexports.filterTerms = filterTerms;\n/**\n * Get all terms in the given quad that return true on the given filter function, while recursing into quoted triples.\n * @param {BaseQuad} quad A quad.\n * @param {(value: Term, key: QuadTermName) => boolean} filter A filter callback.\n * @param QuadTermName[] keys The current key path.\n * @return {Term[]} The list of matching terms.\n */\nfunction filterTermsNested(quad, filter, keys = []) {\n let terms = [];\n if (quad.subject.termType === 'Quad') {\n terms = [...terms, ...filterTermsNested(quad.subject, filter, [...keys, 'subject'])];\n }\n else {\n if (filter(quad.subject, [...keys, 'subject'])) {\n terms.push(quad.subject);\n }\n }\n if (quad.predicate.termType === 'Quad') {\n terms = [...terms, ...filterTermsNested(quad.predicate, filter, [...keys, 'predicate'])];\n }\n else {\n if (filter(quad.predicate, [...keys, 'predicate'])) {\n terms.push(quad.predicate);\n }\n }\n if (quad.object.termType === 'Quad') {\n terms = [...terms, ...filterTermsNested(quad.object, filter, [...keys, 'object'])];\n }\n else {\n if (filter(quad.object, [...keys, 'object'])) {\n terms.push(quad.object);\n }\n }\n if (quad.graph.termType === 'Quad') {\n terms = [...terms, ...filterTermsNested(quad.graph, filter, [...keys, 'graph'])];\n }\n else {\n if (filter(quad.graph, [...keys, 'graph'])) {\n terms.push(quad.graph);\n }\n }\n return terms;\n}\nexports.filterTermsNested = filterTermsNested;\n/**\n * Get all quad term names in the given quad that return true on the given filter function.\n * @param {BaseQuad} quad A quad.\n * @param {(value: Term, key: QuadTermName, all: INamedTerm[]) => boolean} filter A filter callback.\n * @return {QuadTermName[]} The list of matching quad term names.\n */\nfunction filterQuadTermNames(quad, filter) {\n const names = [];\n if (filter(quad.subject, 'subject')) {\n names.push('subject');\n }\n if (filter(quad.predicate, 'predicate')) {\n names.push('predicate');\n }\n if (filter(quad.object, 'object')) {\n names.push('object');\n }\n if (filter(quad.graph, 'graph')) {\n names.push('graph');\n }\n return names;\n}\nexports.filterQuadTermNames = filterQuadTermNames;\n/**\n * Get all quad term names in the given quad that return true on the given filter function, while recursing into quoted triples.\n * @param {BaseQuad} quad A quad.\n * @param {(value: Term, key: QuadTermName, all: INamedTerm[]) => boolean} filter A filter callback.\n * @param QuadTermName[] keys The current key path.\n * @return {QuadTermName[]} The list of matching quad term names.\n */\nfunction filterQuadTermNamesNested(quad, filter, keys = []) {\n let names = [];\n const keysS = [...keys, 'subject'];\n if (quad.subject.termType === 'Quad') {\n names = [...names, ...filterQuadTermNamesNested(quad.subject, filter, keysS)];\n }\n else {\n if (filter(quad.subject, keysS)) {\n names.push(keysS);\n }\n }\n const keysP = [...keys, 'predicate'];\n if (quad.predicate.termType === 'Quad') {\n names = [...names, ...filterQuadTermNamesNested(quad.predicate, filter, keysP)];\n }\n else {\n if (filter(quad.predicate, keysP)) {\n names.push(keysP);\n }\n }\n const keysO = [...keys, 'object'];\n if (quad.object.termType === 'Quad') {\n names = [...names, ...filterQuadTermNamesNested(quad.object, filter, keysO)];\n }\n else {\n if (filter(quad.object, keysO)) {\n names.push(keysO);\n }\n }\n const keysG = [...keys, 'graph'];\n if (quad.graph.termType === 'Quad') {\n names = [...names, ...filterQuadTermNamesNested(quad.graph, filter, keysG)];\n }\n else {\n if (filter(quad.graph, keysG)) {\n names.push(keysG);\n }\n }\n return names;\n}\nexports.filterQuadTermNamesNested = filterQuadTermNamesNested;\n/**\n * Map all terms of a quad.\n * @param {Quad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName) => Term} mapper A mapper function.\n * @param {RDF.DataFactory} dataFactory A custom data factory to create quads.\n * @return {Quad} A new RDFJS quad.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction mapTerms(quad, mapper, dataFactory) {\n return (dataFactory || DF).quad(mapper(quad.subject, 'subject'), mapper(quad.predicate, 'predicate'), mapper(quad.object, 'object'), mapper(quad.graph, 'graph'));\n}\nexports.mapTerms = mapTerms;\n/**\n * Map all terms of a quad, while recursing into quoted triples.\n * @param {Quad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName) => Term} mapper A mapper function.\n * @param {RDF.DataFactory} dataFactory A custom data factory to create quads.\n * @param QuadTermName[] keys The current key path.\n * @return {Quad} A new RDFJS quad.\n * @template Q The type of quad, defaults to RDF.Quad.\n */\nfunction mapTermsNested(quad, mapper, dataFactory, keys = []) {\n return (dataFactory || DF).quad(quad.subject.termType === 'Quad' ?\n mapTermsNested(quad.subject, mapper, dataFactory, [...keys, 'subject']) :\n mapper(quad.subject, [...keys, 'subject']), quad.predicate.termType === 'Quad' ?\n mapTermsNested(quad.predicate, mapper, dataFactory, [...keys, 'predicate']) :\n mapper(quad.predicate, [...keys, 'predicate']), quad.object.termType === 'Quad' ?\n mapTermsNested(quad.object, mapper, dataFactory, [...keys, 'object']) :\n mapper(quad.object, [...keys, 'object']), quad.graph.termType === 'Quad' ?\n mapTermsNested(quad.graph, mapper, dataFactory, [...keys, 'graph']) :\n mapper(quad.graph, [...keys, 'graph']));\n}\nexports.mapTermsNested = mapTermsNested;\n/**\n * Reduce all terms of a quad.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(previousValue: U, currentValue: Term, key: QuadTermName) => U} reducer A reduce function.\n * @param {U} initialValue The initial value.\n * @return {U} The final value.\n */\nfunction reduceTerms(quad, reducer, initialValue) {\n let value = initialValue;\n value = reducer(value, quad.subject, 'subject');\n value = reducer(value, quad.predicate, 'predicate');\n value = reducer(value, quad.object, 'object');\n return reducer(value, quad.graph, 'graph');\n}\nexports.reduceTerms = reduceTerms;\n/**\n * Reduce all terms of a quad, while recursing into quoted triples.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(previousValue: U, currentValue: Term, key: QuadTermName) => U} reducer A reduce function.\n * @param {U} initialValue The initial value.\n * @param QuadTermName[] keys The current key path.\n * @return {U} The final value.\n */\nfunction reduceTermsNested(quad, reducer, initialValue, keys = []) {\n let value = initialValue;\n if (quad.subject.termType === 'Quad') {\n value = reduceTermsNested(quad.subject, reducer, value, [...keys, 'subject']);\n }\n else {\n value = reducer(value, quad.subject, [...keys, 'subject']);\n }\n if (quad.predicate.termType === 'Quad') {\n value = reduceTermsNested(quad.predicate, reducer, value, [...keys, 'predicate']);\n }\n else {\n value = reducer(value, quad.predicate, [...keys, 'predicate']);\n }\n if (quad.object.termType === 'Quad') {\n value = reduceTermsNested(quad.object, reducer, value, [...keys, 'object']);\n }\n else {\n value = reducer(value, quad.object, [...keys, 'object']);\n }\n if (quad.graph.termType === 'Quad') {\n value = reduceTermsNested(quad.graph, reducer, value, [...keys, 'graph']);\n }\n else {\n value = reducer(value, quad.graph, [...keys, 'graph']);\n }\n return value;\n}\nexports.reduceTermsNested = reduceTermsNested;\n/**\n * Determines whether all terms satisfy the specified test.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} checker A checker function.\n * @return {boolean} If all terms satisfy the specified test.\n */\nfunction everyTerms(quad, checker) {\n return checker(quad.subject, 'subject')\n && checker(quad.predicate, 'predicate')\n && checker(quad.object, 'object')\n && checker(quad.graph, 'graph');\n}\nexports.everyTerms = everyTerms;\n/**\n * Determines whether all terms satisfy the specified test, while recursing into quoted triples.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} checker A checker function.\n * @param QuadTermName[] keys The current key path.\n * @return {boolean} If all terms satisfy the specified test.\n */\nfunction everyTermsNested(quad, checker, keys = []) {\n return (quad.subject.termType === 'Quad' ?\n everyTermsNested(quad.subject, checker, [...keys, 'subject']) :\n checker(quad.subject, [...keys, 'subject']))\n && (quad.predicate.termType === 'Quad' ?\n everyTermsNested(quad.predicate, checker, [...keys, 'predicate']) :\n checker(quad.predicate, [...keys, 'predicate']))\n && (quad.object.termType === 'Quad' ?\n everyTermsNested(quad.object, checker, [...keys, 'object']) :\n checker(quad.object, [...keys, 'object']))\n && (quad.graph.termType === 'Quad' ?\n everyTermsNested(quad.graph, checker, [...keys, 'graph']) :\n checker(quad.graph, [...keys, 'graph']));\n}\nexports.everyTermsNested = everyTermsNested;\n/**\n * Determines whether at least one term satisfies the specified test.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} checker A checker function.\n * @return {boolean} If at least one term satisfies the specified test.\n */\nfunction someTerms(quad, checker) {\n return checker(quad.subject, 'subject')\n || checker(quad.predicate, 'predicate')\n || checker(quad.object, 'object')\n || checker(quad.graph, 'graph');\n}\nexports.someTerms = someTerms;\n/**\n * Determines whether at least one term satisfies the specified test, while recursing into quoted triples.\n * @param {BaseQuad} quad An RDFJS quad.\n * @param {(value: Term, key: QuadTermName} checker A checker function.\n * @param QuadTermName[] keys The current key path.\n * @return {boolean} If at least one term satisfies the specified test.\n */\nfunction someTermsNested(quad, checker, keys = []) {\n return (quad.subject.termType === 'Quad' ?\n someTermsNested(quad.subject, checker, [...keys, 'subject']) :\n checker(quad.subject, [...keys, 'subject']))\n || (quad.predicate.termType === 'Quad' ?\n someTermsNested(quad.predicate, checker, [...keys, 'predicate']) :\n checker(quad.predicate, [...keys, 'predicate']))\n || (quad.object.termType === 'Quad' ?\n someTermsNested(quad.object, checker, [...keys, 'object']) :\n checker(quad.object, [...keys, 'object']))\n || (quad.graph.termType === 'Quad' ?\n someTermsNested(quad.graph, checker, [...keys, 'graph']) :\n checker(quad.graph, [...keys, 'graph']));\n}\nexports.someTermsNested = someTermsNested;\n/**\n * Get the nested value inside a quoted triple by the given path of quad keys.\n * @param term A term, that can be a quoted triple.\n * @param keys A path of quad term names.\n */\nfunction getValueNestedPath(term, keys) {\n if (keys.length === 0) {\n return term;\n }\n if (term.termType === 'Quad') {\n return getValueNestedPath(term[keys[0]], keys.slice(1));\n }\n throw new Error(`Tried to get ${keys[0]} from term of type ${term.termType}`);\n}\nexports.getValueNestedPath = getValueNestedPath;\n/**\n * Check if the given terms match.\n *\n * At least one of the following must be true:\n * * Term B is undefined.\n * * Term B is a variable.\n * * Term A and B are quads, and return true for `matchPatternComplete`.\n * * Quad term and term are equal (`termB.equals(termA)` return true)\n *\n * @param termA A term.\n * @param termB An optional term.\n */\nfunction matchTerm(termA, termB) {\n return !termB\n || termB.termType === 'Variable'\n || (termB.termType === 'Quad' && termA.termType === 'Quad' && matchPatternComplete(termA, termB))\n || termB.equals(termA);\n}\nexports.matchTerm = matchTerm;\n/**\n * Check if the given quad matches with the given quad terms.\n *\n * Each term must match at least one of the following:\n * * Term is undefined.\n * * Term is a variable.\n * * Quad term and term are both quads, and return true for `matchPatternComplete`.\n * * Quad term and term are equal (`quadTerm.equals(term)` return true)\n *\n * @param {BaseQuad} quad A quad to match with (can not contain variables).\n * @param {Term} subject An optional subject.\n * @param {Term} predicate An optional predicate.\n * @param {Term} object An optional object.\n * @param {Term} graph An optional graph.\n * @return {boolean} If the quad matches with the quad terms.\n */\nfunction matchPattern(quad, subject, predicate, object, graph) {\n return matchTerm(quad.subject, subject)\n && matchTerm(quad.predicate, predicate)\n && matchTerm(quad.object, object)\n && matchTerm(quad.graph, graph);\n}\nexports.matchPattern = matchPattern;\n/**\n * Check if the first quad matches with all terms from the second quad.\n *\n * Each term must match at least one of the following:\n * * Quad2 term is a variable.\n * * Quad1 term and Quad2 term are equal (`term1.equals(term2)` return true)\n *\n * @param {BaseQuad} quad A quad (can not contain variables).\n * @param {BaseQuad} pattern A quad pattern (can contain variables).\n * @return {boolean} If the quad terms match.\n */\nfunction matchPatternComplete(quad, pattern) {\n return matchPattern(quad, pattern.subject, pattern.predicate, pattern.object, pattern.graph);\n}\nexports.matchPatternComplete = matchPatternComplete;\nfunction matchPatternMappings(quad, pattern, opt = {}) {\n const map = {};\n function match(_pattern, _quad) {\n return everyTerms(_pattern, (t1, key) => {\n var _a, _b;\n const t2 = _quad[key];\n switch (t1.termType) {\n case 'Variable':\n return (opt.skipVarMapping && t2.termType === 'Variable')\n || ((_b = (_a = map[t1.value]) === null || _a === void 0 ? void 0 : _a.equals(t2)) !== null && _b !== void 0 ? _b : (map[t1.value] = t2, true));\n case 'Quad':\n return t2.termType === 'Quad' && match(t1, t2);\n default:\n return t1.equals(t2);\n }\n });\n }\n return match(pattern, quad) && (opt.returnMappings ? map : true);\n}\nexports.matchPatternMappings = matchPatternMappings;\n//# sourceMappingURL=QuadTermUtil.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getQuads = exports.getDefaultGraphs = exports.getVariables = exports.getLiterals = exports.getBlankNodes = exports.getNamedNodes = exports.getTermsOfType = exports.uniqTerms = exports.TERM_TYPES = void 0;\nconst rdf_string_1 = require(\"rdf-string\");\n/**\n * All known term types.\n * @see RDF.Term\n * @type {[string , string , string , string , string, string]}\n */\nexports.TERM_TYPES = ['NamedNode', 'BlankNode', 'Literal', 'Variable', 'DefaultGraph', 'Quad'];\n/*\n * Utility methods for handling RDFJS terms.\n */\n/**\n * Create an array of unique terms from the given array.\n * @param {T[]} terms An array of RDFJS terms.\n * @return {T[]} A new array of unique RDFJS terms.\n */\nfunction uniqTerms(terms) {\n const hash = {};\n return terms.filter(term => {\n const termString = (0, rdf_string_1.termToString)(term);\n return !(termString in hash) && (hash[termString] = true);\n });\n}\nexports.uniqTerms = uniqTerms;\n/**\n * Find all terms of the given type in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @param {\"NamedNode\" | \"BlankNode\" | \"Literal\" | \"Variable\" | \"DefaultGraph\" | \"Quad\"} termType A term type.\n * @return {Term[]} A new array with elements from the given array only containing elements of the given type.\n */\nfunction getTermsOfType(terms, termType) {\n return terms.filter((term) => term.termType === termType);\n}\nexports.getTermsOfType = getTermsOfType;\n/**\n * Find all named nodes in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {NamedNode[]} A new array with elements from the given array only containing named nodes.\n */\nfunction getNamedNodes(terms) {\n return getTermsOfType(terms, 'NamedNode');\n}\nexports.getNamedNodes = getNamedNodes;\n/**\n * Find all blank nodes in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {BlankNode[]} A new array with elements from the given array only containing blank nodes.\n */\nfunction getBlankNodes(terms) {\n return getTermsOfType(terms, 'BlankNode');\n}\nexports.getBlankNodes = getBlankNodes;\n/**\n * Find all literals in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {Literal[]} A new array with elements from the given array only containing literals.\n */\nfunction getLiterals(terms) {\n return getTermsOfType(terms, 'Literal');\n}\nexports.getLiterals = getLiterals;\n/**\n * Find all variables in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {Variable[]} A new array with elements from the given array only containing variables.\n */\nfunction getVariables(terms) {\n return getTermsOfType(terms, 'Variable');\n}\nexports.getVariables = getVariables;\n/**\n * Find all default graphs in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {DefaultGraph[]} A new array with elements from the given array only containing default graphs.\n */\nfunction getDefaultGraphs(terms) {\n return getTermsOfType(terms, 'DefaultGraph');\n}\nexports.getDefaultGraphs = getDefaultGraphs;\n/**\n * Find all quads in the given array.\n * @param {Term[]} terms An array of RDFJS terms.\n * @return {BaseQuad[]} A new array with elements from the given array only containing quads.\n */\nfunction getQuads(terms) {\n return getTermsOfType(terms, 'Quad');\n}\nexports.getQuads = getQuads;\n//# sourceMappingURL=TermUtil.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./lib/IActiveTag\"), exports);\n__exportStar(require(\"./lib/IHtmlParseListener\"), exports);\n__exportStar(require(\"./lib/IRdfaPattern\"), exports);\n__exportStar(require(\"./lib/RdfaParser\"), exports);\n__exportStar(require(\"./lib/RdfaProfile\"), exports);\n__exportStar(require(\"./lib/Util\"), exports);\n//# sourceMappingURL=index.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IActiveTag.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IHtmlParseListener.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n//# sourceMappingURL=IRdfaPattern.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RdfaParser = void 0;\nconst htmlparser2_1 = require(\"htmlparser2\");\nconst readable_stream_1 = require(\"readable-stream\");\nconst INITIAL_CONTEXT_XHTML = require(\"./initial-context-xhtml.json\");\nconst INITIAL_CONTEXT = require(\"./initial-context.json\");\nconst RdfaProfile_1 = require(\"./RdfaProfile\");\nconst Util_1 = require(\"./Util\");\n/**\n * A stream transformer that parses RDFa (text) streams to an {@link RDF.Stream}.\n */\nclass RdfaParser extends readable_stream_1.Transform {\n constructor(options) {\n super({ readableObjectMode: true });\n this.activeTagStack = [];\n options = options || {};\n this.options = options;\n this.util = new Util_1.Util(options.dataFactory, options.baseIRI);\n this.defaultGraph = options.defaultGraph || this.util.dataFactory.defaultGraph();\n const profile = options.contentType ? Util_1.Util.contentTypeToProfile(options.contentType) : options.profile || '';\n this.features = options.features || RdfaProfile_1.RDFA_FEATURES[profile];\n this.htmlParseListener = options.htmlParseListener;\n this.rdfaPatterns = this.features.copyRdfaPatterns ? {} : null;\n this.pendingRdfaPatternCopies = this.features.copyRdfaPatterns ? {} : null;\n this.parser = this.initializeParser(profile === 'xml');\n this.activeTagStack.push({\n incompleteTriples: [],\n inlist: false,\n language: options.language,\n listMapping: {},\n listMappingLocal: {},\n name: '',\n prefixesAll: Object.assign(Object.assign({}, INITIAL_CONTEXT['@context']), this.features.xhtmlInitialContext ? INITIAL_CONTEXT_XHTML['@context'] : {}),\n prefixesCustom: {},\n skipElement: false,\n vocab: options.vocab,\n });\n }\n /**\n * Parses the given text stream into a quad stream.\n * @param {NodeJS.EventEmitter} stream A text stream.\n * @return {RDF.Stream} A quad stream.\n */\n import(stream) {\n const output = new readable_stream_1.PassThrough({ readableObjectMode: true });\n stream.on('error', (error) => parsed.emit('error', error));\n stream.on('data', (data) => output.push(data));\n stream.on('end', () => output.push(null));\n const parsed = output.pipe(new RdfaParser(this.options));\n return parsed;\n }\n _transform(chunk, encoding, callback) {\n this.parser.write(chunk.toString());\n callback();\n }\n _flush(callback) {\n this.parser.end();\n callback();\n }\n onTagOpen(name, attributes) {\n // Determine the parent tag (ignore skipped tags)\n let parentTagI = this.activeTagStack.length - 1;\n while (parentTagI > 0 && this.activeTagStack[parentTagI].skipElement) {\n parentTagI--;\n }\n let parentTag = this.activeTagStack[parentTagI];\n // If we skipped a tag, make sure we DO use the lang, prefixes and vocab of the skipped tag\n if (parentTagI !== this.activeTagStack.length - 1) {\n parentTag = Object.assign(Object.assign({}, parentTag), { language: this.activeTagStack[this.activeTagStack.length - 1].language, prefixesAll: this.activeTagStack[this.activeTagStack.length - 1].prefixesAll, prefixesCustom: this.activeTagStack[this.activeTagStack.length - 1].prefixesCustom, vocab: this.activeTagStack[this.activeTagStack.length - 1].vocab });\n }\n // Create a new active tag and inherit language scope and baseIRI from parent\n const activeTag = {\n collectChildTags: parentTag.collectChildTags,\n incompleteTriples: [],\n inlist: 'inlist' in attributes,\n listMapping: [],\n listMappingLocal: parentTag.listMapping,\n localBaseIRI: parentTag.localBaseIRI,\n name,\n prefixesAll: null,\n prefixesCustom: null,\n skipElement: false,\n };\n this.activeTagStack.push(activeTag);\n // Save the tag contents if needed\n if (activeTag.collectChildTags) {\n // Add explicitly defined xmlns, xmlns:* and prefixes to attributes, as required by the spec (Step 11, note)\n // Sort prefixes alphabetically for deterministic namespace declaration order\n for (const prefix of Object.keys(parentTag.prefixesCustom).sort()) {\n const suffix = parentTag.prefixesCustom[prefix];\n const attributeKey = prefix === '' ? 'xmlns' : 'xmlns:' + prefix;\n if (!(attributeKey in attributes)) {\n attributes[attributeKey] = suffix;\n }\n }\n const attributesSerialized = Object.keys(attributes).map((key) => `${key}=\"${attributes[key]}\"`).join(' ');\n activeTag.text = [`<${name}${attributesSerialized ? ' ' + attributesSerialized : ''}>`];\n if (this.features.skipHandlingXmlLiteralChildren) {\n return;\n }\n }\n let allowTermsInRelPredicates = true;\n let allowTermsInRevPredicates = true;\n if (this.features.onlyAllowUriRelRevIfProperty) {\n // Ignore illegal rel/rev values when property is present\n if ('property' in attributes && 'rel' in attributes) {\n allowTermsInRelPredicates = false;\n if (attributes.rel.indexOf(':') < 0) {\n delete attributes.rel;\n }\n }\n if ('property' in attributes && 'rev' in attributes) {\n allowTermsInRevPredicates = false;\n if (attributes.rev.indexOf(':') < 0) {\n delete attributes.rev;\n }\n }\n }\n if (this.features.copyRdfaPatterns) {\n // Save the tag if needed\n if (parentTag.collectedPatternTag) {\n const patternTag = {\n attributes,\n children: [],\n name,\n referenced: false,\n rootPattern: false,\n text: [],\n };\n parentTag.collectedPatternTag.children.push(patternTag);\n activeTag.collectedPatternTag = patternTag;\n return;\n }\n // Store tags with type rdfa:Pattern as patterns\n if (attributes.typeof === 'rdfa:Pattern') {\n activeTag.collectedPatternTag = {\n attributes,\n children: [],\n name,\n parentTag,\n referenced: false,\n rootPattern: true,\n text: [],\n };\n return;\n }\n // Instantiate patterns on rdfa:copy\n if (attributes.property === 'rdfa:copy') {\n const copyTargetPatternId = attributes.resource || attributes.href || attributes.src;\n if (this.rdfaPatterns[copyTargetPatternId]) {\n this.emitPatternCopy(parentTag, this.rdfaPatterns[copyTargetPatternId], copyTargetPatternId);\n }\n else {\n if (!this.pendingRdfaPatternCopies[copyTargetPatternId]) {\n this.pendingRdfaPatternCopies[copyTargetPatternId] = [];\n }\n this.pendingRdfaPatternCopies[copyTargetPatternId].push(parentTag);\n }\n return;\n }\n }\n // tags override the baseIRI of the whole document\n if (this.features.baseTag && name === 'base' && attributes.href) {\n this.util.baseIRI = this.util.getBaseIRI(attributes.href);\n }\n // xml:base attributes override the baseIRI of the current tag and children\n if (this.features.xmlBase && attributes['xml:base']) {\n activeTag.localBaseIRI = this.util.getBaseIRI(attributes['xml:base']);\n }\n //