jassub 1.7.2 → 1.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/jassub-worker.js +7 -7
- package/dist/js/jassub-worker-modern.js +1 -1
- package/dist/js/jassub-worker.js +1 -1
- package/dist/js/jassub.js +836 -799
- package/package.json +1 -1
package/dist/jassub-worker.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
"use strict";var Module=function(p={}){var p=p,v;p.ready=new Promise((t,r)=>{v=t});var $=t=>console.log(t),m=t=>console.error(t);function
|
|
2
|
-
`+i.replace(/^Error(:[^\n]*)?\n/,""))});return n.prototype=Object.create(t.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},n}var N=void 0;function w(t){throw new N(t)}var Le=void 0;function ge(t){throw new Le(t)}function K(t,r,n){t.forEach(function(f){pe[f]=r});function s(f){var h=n(f);h.length!==t.length&&ge("Mismatched type converter count");for(var g=0;g<t.length;++g)x(t[g],h[g])}var i=new Array(r.length),l=[],u=0;r.forEach((f,h)=>{Z.hasOwnProperty(f)?i[h]=Z[f]:(l.push(f),Q.hasOwnProperty(f)||(Q[f]=[]),Q[f].push(()=>{i[h]=Z[f],++u,u===l.length&&s(i)}))}),l.length===0&&s(i)}function x(t,r,n={}){if(!("argPackAdvance"in r))throw new TypeError("registerType registeredInstance requires argPackAdvance");var s=r.name;if(t||w(`type "${s}" must have a positive integer typeid pointer`),Z.hasOwnProperty(t)){if(n.ignoreDuplicateRegistrations)return;w(`Cannot register type '${s}' twice`)}if(Z[t]=r,delete pe[t],Q.hasOwnProperty(t)){var i=Q[t];delete Q[t],i.forEach(l=>l())}}function gt(t,r,n,s,i){var l=Ae(n);r=I(r),x(t,{name:r,fromWireType:function(u){return!!u},toWireType:function(u,f){return f?s:i},argPackAdvance:8,readValueFromPointer:function(u){var f;if(n===1)f=j;else if(n===2)f=E;else if(n===4)f=k;else throw new TypeError("Unknown boolean type size: "+r);return this.fromWireType(f[u>>l])},destructorFunction:null})}function ht(t){if(!(this instanceof z)||!(t instanceof z))return!1;for(var r=this.$$.ptrType.registeredClass,n=this.$$.ptr,s=t.$$.ptrType.registeredClass,i=t.$$.ptr;r.baseClass;)n=r.upcast(n),r=r.baseClass;for(;s.baseClass;)i=s.upcast(i),s=s.baseClass;return r===s&&n===i}function vt(t){return{count:t.count,deleteScheduled:t.deleteScheduled,preservePointerOnDelete:t.preservePointerOnDelete,ptr:t.ptr,ptrType:t.ptrType,smartPtr:t.smartPtr,smartPtrType:t.smartPtrType}}function Ee(t){function r(n){return n.$$.ptrType.registeredClass.name}w(r(t)+" instance already deleted")}var ke=!1;function He(t){}function yt(t){t.smartPtr?t.smartPtrType.rawDestructor(t.smartPtr):t.ptrType.registeredClass.rawDestructor(t.ptr)}function Be(t){t.count.value-=1;var r=t.count.value===0;r&&yt(t)}function xe(t,r,n){if(r===n)return t;if(n.baseClass===void 0)return null;var s=xe(t,r,n.baseClass);return s===null?null:n.downcast(s)}var Ve={};function bt(){return Object.keys(re).length}function mt(){var t=[];for(var r in re)re.hasOwnProperty(r)&&t.push(re[r]);return t}var ee=[];function Re(){for(;ee.length;){var t=ee.pop();t.$$.deleteScheduled=!1,t.delete()}}var te=void 0;function Ct(t){te=t,ee.length&&te&&te(Re)}function wt(){p.getInheritedInstanceCount=bt,p.getLiveInheritedInstances=mt,p.flushPendingDeletes=Re,p.setDelayFunction=Ct}var re={};function _t(t,r){for(r===void 0&&w("ptr should not be undefined");t.baseClass;)r=t.upcast(r),t=t.baseClass;return r}function $t(t,r){return r=_t(t,r),re[r]}function he(t,r){(!r.ptrType||!r.ptr)&&ge("makeClassHandle requires ptr and ptrType");var n=!!r.smartPtrType,s=!!r.smartPtr;return n!==s&&ge("Both smartPtrType and smartPtr must be specified"),r.count={value:1},ne(Object.create(t,{$$:{value:r}}))}function Tt(t){var r=this.getPointee(t);if(!r)return this.destructor(t),null;var n=$t(this.registeredClass,r);if(n!==void 0){if(n.$$.count.value===0)return n.$$.ptr=r,n.$$.smartPtr=t,n.clone();var s=n.clone();return this.destructor(t),s}function i(){return this.isSmartPointer?he(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:t}):he(this.registeredClass.instancePrototype,{ptrType:this,ptr:t})}var l=this.registeredClass.getActualType(r),u=Ve[l];if(!u)return i.call(this);var f;this.isConst?f=u.constPointerType:f=u.pointerType;var h=xe(r,this.registeredClass,f.registeredClass);return h===null?i.call(this):this.isSmartPointer?he(f.registeredClass.instancePrototype,{ptrType:f,ptr:h,smartPtrType:this,smartPtr:t}):he(f.registeredClass.instancePrototype,{ptrType:f,ptr:h})}function ne(t){return typeof FinalizationRegistry>"u"?(ne=r=>r,t):(ke=new FinalizationRegistry(r=>{Be(r.$$)}),ne=r=>{var n=r.$$,s=!!n.smartPtr;if(s){var i={$$:n};ke.register(r,i,r)}return r},He=r=>ke.unregister(r),ne(t))}function Pt(){if(this.$$.ptr||Ee(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var t=ne(Object.create(Object.getPrototypeOf(this),{$$:{value:vt(this.$$)}}));return t.$$.count.value+=1,t.$$.deleteScheduled=!1,t}function Ft(){this.$$.ptr||Ee(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&w("Object already scheduled for deletion"),He(this),Be(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function At(){return!this.$$.ptr}function St(){return this.$$.ptr||Ee(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&w("Object already scheduled for deletion"),ee.push(this),ee.length===1&&te&&te(Re),this.$$.deleteScheduled=!0,this}function jt(){z.prototype.isAliasOf=ht,z.prototype.clone=Pt,z.prototype.delete=Ft,z.prototype.isDeleted=At,z.prototype.deleteLater=St}function z(){}function Je(t,r,n){if(t[r].overloadTable===void 0){var s=t[r];t[r]=function(){return t[r].overloadTable.hasOwnProperty(arguments.length)||w(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${t[r].overloadTable})!`),t[r].overloadTable[arguments.length].apply(this,arguments)},t[r].overloadTable=[],t[r].overloadTable[s.argCount]=s}}function Ot(t,r,n){p.hasOwnProperty(t)?((n===void 0||p[t].overloadTable!==void 0&&p[t].overloadTable[n]!==void 0)&&w(`Cannot register public name '${t}' twice`),Je(p,t,t),p.hasOwnProperty(n)&&w(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),p[t].overloadTable[n]=r):(p[t]=r,n!==void 0&&(p[t].numArguments=n))}function Et(t,r,n,s,i,l,u,f){this.name=t,this.constructor=r,this.instancePrototype=n,this.rawDestructor=s,this.baseClass=i,this.getActualType=l,this.upcast=u,this.downcast=f,this.pureVirtualFunctions=[]}function ve(t,r,n){for(;r!==n;)r.upcast||w(`Expected null or instance of ${n.name}, got an instance of ${r.name}`),t=r.upcast(t),r=r.baseClass;return t}function kt(t,r){if(r===null)return this.isReference&&w("null is not a valid "+this.name),0;r.$$||w(`Cannot pass "${De(r)}" as a ${this.name}`),r.$$.ptr||w("Cannot pass deleted object as a pointer of type "+this.name);var n=r.$$.ptrType.registeredClass,s=ve(r.$$.ptr,n,this.registeredClass);return s}function Rt(t,r){var n;if(r===null)return this.isReference&&w("null is not a valid "+this.name),this.isSmartPointer?(n=this.rawConstructor(),t!==null&&t.push(this.rawDestructor,n),n):0;r.$$||w(`Cannot pass "${De(r)}" as a ${this.name}`),r.$$.ptr||w(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&r.$$.ptrType.isConst&&w(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);var s=r.$$.ptrType.registeredClass;if(n=ve(r.$$.ptr,s,this.registeredClass),this.isSmartPointer)switch(r.$$.smartPtr===void 0&&w("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?n=r.$$.smartPtr:w(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)n=r.$$.smartPtr;else{var i=r.clone();n=this.rawShare(n,Me.toHandle(function(){i.delete()})),t!==null&&t.push(this.rawDestructor,n)}break;default:w("Unsupporting sharing policy")}return n}function Mt(t,r){if(r===null)return this.isReference&&w("null is not a valid "+this.name),0;r.$$||w(`Cannot pass "${De(r)}" as a ${this.name}`),r.$$.ptr||w(`Cannot pass deleted object as a pointer of type ${this.name}`),r.$$.ptrType.isConst&&w(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);var n=r.$$.ptrType.registeredClass,s=ve(r.$$.ptr,n,this.registeredClass);return s}function ye(t){return this.fromWireType(k[t>>2])}function Dt(t){return this.rawGetPointee&&(t=this.rawGetPointee(t)),t}function Ut(t){this.rawDestructor&&this.rawDestructor(t)}function Wt(t){t!==null&&t.delete()}function It(){V.prototype.getPointee=Dt,V.prototype.destructor=Ut,V.prototype.argPackAdvance=8,V.prototype.readValueFromPointer=ye,V.prototype.deleteObject=Wt,V.prototype.fromWireType=Tt}function V(t,r,n,s,i,l,u,f,h,g,y){this.name=t,this.registeredClass=r,this.isReference=n,this.isConst=s,this.isSmartPointer=i,this.pointeeType=l,this.sharingPolicy=u,this.rawGetPointee=f,this.rawConstructor=h,this.rawShare=g,this.rawDestructor=y,!i&&r.baseClass===void 0?s?(this.toWireType=kt,this.destructorFunction=null):(this.toWireType=Mt,this.destructorFunction=null):this.toWireType=Rt}function Lt(t,r,n){p.hasOwnProperty(t)||ge("Replacing nonexistant public symbol"),p[t].overloadTable!==void 0&&n!==void 0?p[t].overloadTable[n]=r:(p[t]=r,p[t].argCount=n)}function Ht(t,r,n){var s=dynCalls[t];return n&&n.length?s.apply(null,[r].concat(n)):s.call(null,r)}var be=[];function ae(t){var r=be[t];return r||(t>=be.length&&(be.length=t+1),be[t]=r=ue.get(t)),r}function Bt(t,r,n){if(t.includes("j"))return Ht(t,r,n);var s=ae(r).apply(null,n);return s}function xt(t,r){var n=[];return function(){return n.length=0,Object.assign(n,arguments),Bt(t,r,n)}}function q(t,r){t=I(t);function n(){return t.includes("j")?xt(t,r):ae(r)}var s=n();return typeof s!="function"&&w(`unknown function pointer with signature ${t}: ${r}`),s}var Ge=void 0;function Vt(t){var r=Ne(t),n=I(r);return J(r),n}function se(t,r){var n=[],s={};function i(l){if(!s[l]&&!Z[l]){if(pe[l]){pe[l].forEach(i);return}n.push(l),s[l]=!0}}throw r.forEach(i),new Ge(t+": "+n.map(Vt).join([", "]))}function Jt(t,r,n,s,i,l,u,f,h,g,y,_,T){y=I(y),l=q(i,l),f&&(f=q(u,f)),g&&(g=q(h,g)),T=q(_,T);var P=Se(y);Ot(P,function(){se(`Cannot construct ${y} due to unbound types`,[s])}),K([t,r,n],s?[s]:[],function(M){M=M[0];var U,D;s?(U=M.registeredClass,D=U.instancePrototype):D=z.prototype;var L=je(P,function(){if(Object.getPrototypeOf(this)!==oe)throw new N("Use 'new' to construct "+y);if(W.constructor_body===void 0)throw new N(y+" has no accessible constructor");var at=W.constructor_body[arguments.length];if(at===void 0)throw new N(`Tried to invoke ctor of ${y} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(W.constructor_body).toString()}) parameters instead!`);return at.apply(this,arguments)}),oe=Object.create(D,{constructor:{value:L}});L.prototype=oe;var W=new Et(y,L,oe,T,U,l,f,g);W.baseClass&&(W.baseClass.__derivedClasses===void 0&&(W.baseClass.__derivedClasses=[]),W.baseClass.__derivedClasses.push(W));var Lr=new V(y,W,!0,!1,!1),rt=new V(y+"*",W,!1,!1,!1),nt=new V(y+" const*",W,!1,!0,!1);return Ve[t]={pointerType:rt,constPointerType:nt},Lt(P,L),[Lr,rt,nt]})}function ze(t,r){for(var n=[],s=0;s<t;s++)n.push(R[r+s*4>>2]);return n}function qe(t){for(;t.length;){var r=t.pop(),n=t.pop();n(r)}}function Gt(t,r){if(!(t instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof t} which is not a function`);var n=je(t.name||"unknownFunctionName",function(){});n.prototype=t.prototype;var s=new n,i=t.apply(s,r);return i instanceof Object?i:s}function Ke(t,r,n,s,i,l){var u=r.length;u<2&&w("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var f=r[1]!==null&&n!==null,h=!1,g=1;g<r.length;++g)if(r[g]!==null&&r[g].destructorFunction===void 0){h=!0;break}for(var y=r[0].name!=="void",_="",T="",g=0;g<u-2;++g)_+=(g!==0?", ":"")+"arg"+g,T+=(g!==0?", ":"")+"arg"+g+"Wired";var P="return function "+Se(t)+"("+_+`) {
|
|
1
|
+
"use strict";var Module=function(p={}){var p=p,v;p.ready=new Promise((t,r)=>{v=t});var $=t=>console.log(t),m=t=>console.error(t);function S(){v(p)}function F(t,r){if(!t)throw r}let C=null;$=t=>{t==="JASSUB: No usable fontconfig configuration file found, using fallback."?console.debug(t):console.log(t)},m=t=>{t==="Fontconfig error: Cannot load default config file: No such file: (null)"?console.debug(t):console.error(t)},Y=(t=>()=>{t(),self.wasmMemory=B,self.HEAPU8C=new Uint8ClampedArray(B.buffer),self.HEAPU8=new Uint8Array(B.buffer)})(Y),String.prototype.startsWith||(String.prototype.startsWith=function(t,r=0){return this.substring(r,t.length)===t}),String.prototype.includes||(String.prototype.includes=function(t,r){return this.indexOf(t,r)!==-1}),Uint8Array.prototype.slice||(Uint8Array.prototype.slice=function(t,r){return new Uint8Array(this.subarray(t,r))});function A(t){throw t}var j,E,k,O,G,R,le,fe,B,ue;function Y(){var t=B.buffer;j=new Int8Array(t),E=new Int16Array(t),k=new Int32Array(t),O=new Uint8Array(t),G=new Uint16Array(t),R=new Uint32Array(t),le=new Float32Array(t),fe=new Float64Array(t)}B=new WebAssembly.Memory({initial:256,maximum:32768}),Y();var ce=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function de(t,r,n){for(var s=r+n,i=r;t[i]&&!(i>=s);)++i;if(i-r>16&&t.buffer&&ce)return ce.decode(t.subarray(r,i));for(var f="";r<i;){var u=t[r++];if(!(u&128)){f+=String.fromCharCode(u);continue}var l=t[r++]&63;if((u&224)==192){f+=String.fromCharCode((u&31)<<6|l);continue}var h=t[r++]&63;if((u&240)==224?u=(u&15)<<12|l<<6|h:u=(u&7)<<18|l<<12|h<<6|t[r++]&63,u<65536)f+=String.fromCharCode(u);else{var g=u-65536;f+=String.fromCharCode(55296|g>>10,56320|g&1023)}}return f}function X(t,r){return t?de(O,t,r):""}function _e(t,r,n,s){A(`Assertion failed: ${X(t)}, at: `+[r?X(r):"unknown filename",n,s?X(s):"unknown function"])}function $e(t,r,n){return 0}function Te(t,r){}function Pe(t,r,n,s){if(!(s>0))return 0;for(var i=n,f=n+s-1,u=0;u<t.length;++u){var l=t.charCodeAt(u);if(l>=55296&&l<=57343){var h=t.charCodeAt(++u);l=65536+((l&1023)<<10)|h&1023}if(l<=127){if(n>=f)break;r[n++]=l}else if(l<=2047){if(n+1>=f)break;r[n++]=192|l>>6,r[n++]=128|l&63}else if(l<=65535){if(n+2>=f)break;r[n++]=224|l>>12,r[n++]=128|l>>6&63,r[n++]=128|l&63}else{if(n+3>=f)break;r[n++]=240|l>>18,r[n++]=128|l>>12&63,r[n++]=128|l>>6&63,r[n++]=128|l&63}}return r[n]=0,n-i}function Ae(t,r,n){return Pe(t,O,r,n)}function st(t,r,n){}function it(t,r,n){return 0}function ot(t,r,n,s){}function lt(t,r,n,s){}function ft(t,r){}function ut(t,r,n,s,i){}function Fe(t){switch(t){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+t)}}function ct(){for(var t=new Array(256),r=0;r<256;++r)t[r]=String.fromCharCode(r);Ie=t}var Ie=void 0;function I(t){for(var r="",n=t;O[n];)r+=Ie[O[n++]];return r}var Q={},Z={},pe={},dt=48,pt=57;function Se(t){if(t===void 0)return"_unknown";t=t.replace(/[^a-zA-Z0-9_]/g,"$");var r=t.charCodeAt(0);return r>=dt&&r<=pt?"_"+t:t}function je(t,r){return t=Se(t),{[t]:function(){return r.apply(this,arguments)}}[t]}function Oe(t,r){var n=je(r,function(s){this.name=r,this.message=s;var i=new Error(s).stack;i!==void 0&&(this.stack=this.toString()+`
|
|
2
|
+
`+i.replace(/^Error(:[^\n]*)?\n/,""))});return n.prototype=Object.create(t.prototype),n.prototype.constructor=n,n.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},n}var N=void 0;function w(t){throw new N(t)}var Le=void 0;function ge(t){throw new Le(t)}function K(t,r,n){t.forEach(function(l){pe[l]=r});function s(l){var h=n(l);h.length!==t.length&&ge("Mismatched type converter count");for(var g=0;g<t.length;++g)x(t[g],h[g])}var i=new Array(r.length),f=[],u=0;r.forEach((l,h)=>{Z.hasOwnProperty(l)?i[h]=Z[l]:(f.push(l),Q.hasOwnProperty(l)||(Q[l]=[]),Q[l].push(()=>{i[h]=Z[l],++u,u===f.length&&s(i)}))}),f.length===0&&s(i)}function x(t,r,n={}){if(!("argPackAdvance"in r))throw new TypeError("registerType registeredInstance requires argPackAdvance");var s=r.name;if(t||w(`type "${s}" must have a positive integer typeid pointer`),Z.hasOwnProperty(t)){if(n.ignoreDuplicateRegistrations)return;w(`Cannot register type '${s}' twice`)}if(Z[t]=r,delete pe[t],Q.hasOwnProperty(t)){var i=Q[t];delete Q[t],i.forEach(f=>f())}}function gt(t,r,n,s,i){var f=Fe(n);r=I(r),x(t,{name:r,fromWireType:function(u){return!!u},toWireType:function(u,l){return l?s:i},argPackAdvance:8,readValueFromPointer:function(u){var l;if(n===1)l=j;else if(n===2)l=E;else if(n===4)l=k;else throw new TypeError("Unknown boolean type size: "+r);return this.fromWireType(l[u>>f])},destructorFunction:null})}function ht(t){if(!(this instanceof z)||!(t instanceof z))return!1;for(var r=this.$$.ptrType.registeredClass,n=this.$$.ptr,s=t.$$.ptrType.registeredClass,i=t.$$.ptr;r.baseClass;)n=r.upcast(n),r=r.baseClass;for(;s.baseClass;)i=s.upcast(i),s=s.baseClass;return r===s&&n===i}function vt(t){return{count:t.count,deleteScheduled:t.deleteScheduled,preservePointerOnDelete:t.preservePointerOnDelete,ptr:t.ptr,ptrType:t.ptrType,smartPtr:t.smartPtr,smartPtrType:t.smartPtrType}}function Ee(t){function r(n){return n.$$.ptrType.registeredClass.name}w(r(t)+" instance already deleted")}var ke=!1;function He(t){}function yt(t){t.smartPtr?t.smartPtrType.rawDestructor(t.smartPtr):t.ptrType.registeredClass.rawDestructor(t.ptr)}function Be(t){t.count.value-=1;var r=t.count.value===0;r&&yt(t)}function xe(t,r,n){if(r===n)return t;if(n.baseClass===void 0)return null;var s=xe(t,r,n.baseClass);return s===null?null:n.downcast(s)}var Ve={};function bt(){return Object.keys(re).length}function mt(){var t=[];for(var r in re)re.hasOwnProperty(r)&&t.push(re[r]);return t}var ee=[];function Re(){for(;ee.length;){var t=ee.pop();t.$$.deleteScheduled=!1,t.delete()}}var te=void 0;function Ct(t){te=t,ee.length&&te&&te(Re)}function wt(){p.getInheritedInstanceCount=bt,p.getLiveInheritedInstances=mt,p.flushPendingDeletes=Re,p.setDelayFunction=Ct}var re={};function _t(t,r){for(r===void 0&&w("ptr should not be undefined");t.baseClass;)r=t.upcast(r),t=t.baseClass;return r}function $t(t,r){return r=_t(t,r),re[r]}function he(t,r){(!r.ptrType||!r.ptr)&&ge("makeClassHandle requires ptr and ptrType");var n=!!r.smartPtrType,s=!!r.smartPtr;return n!==s&&ge("Both smartPtrType and smartPtr must be specified"),r.count={value:1},ne(Object.create(t,{$$:{value:r}}))}function Tt(t){var r=this.getPointee(t);if(!r)return this.destructor(t),null;var n=$t(this.registeredClass,r);if(n!==void 0){if(n.$$.count.value===0)return n.$$.ptr=r,n.$$.smartPtr=t,n.clone();var s=n.clone();return this.destructor(t),s}function i(){return this.isSmartPointer?he(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:t}):he(this.registeredClass.instancePrototype,{ptrType:this,ptr:t})}var f=this.registeredClass.getActualType(r),u=Ve[f];if(!u)return i.call(this);var l;this.isConst?l=u.constPointerType:l=u.pointerType;var h=xe(r,this.registeredClass,l.registeredClass);return h===null?i.call(this):this.isSmartPointer?he(l.registeredClass.instancePrototype,{ptrType:l,ptr:h,smartPtrType:this,smartPtr:t}):he(l.registeredClass.instancePrototype,{ptrType:l,ptr:h})}function ne(t){return typeof FinalizationRegistry>"u"?(ne=r=>r,t):(ke=new FinalizationRegistry(r=>{Be(r.$$)}),ne=r=>{var n=r.$$,s=!!n.smartPtr;if(s){var i={$$:n};ke.register(r,i,r)}return r},He=r=>ke.unregister(r),ne(t))}function Pt(){if(this.$$.ptr||Ee(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var t=ne(Object.create(Object.getPrototypeOf(this),{$$:{value:vt(this.$$)}}));return t.$$.count.value+=1,t.$$.deleteScheduled=!1,t}function At(){this.$$.ptr||Ee(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&w("Object already scheduled for deletion"),He(this),Be(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function Ft(){return!this.$$.ptr}function St(){return this.$$.ptr||Ee(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&w("Object already scheduled for deletion"),ee.push(this),ee.length===1&&te&&te(Re),this.$$.deleteScheduled=!0,this}function jt(){z.prototype.isAliasOf=ht,z.prototype.clone=Pt,z.prototype.delete=At,z.prototype.isDeleted=Ft,z.prototype.deleteLater=St}function z(){}function Je(t,r,n){if(t[r].overloadTable===void 0){var s=t[r];t[r]=function(){return t[r].overloadTable.hasOwnProperty(arguments.length)||w(`Function '${n}' called with an invalid number of arguments (${arguments.length}) - expects one of (${t[r].overloadTable})!`),t[r].overloadTable[arguments.length].apply(this,arguments)},t[r].overloadTable=[],t[r].overloadTable[s.argCount]=s}}function Ot(t,r,n){p.hasOwnProperty(t)?((n===void 0||p[t].overloadTable!==void 0&&p[t].overloadTable[n]!==void 0)&&w(`Cannot register public name '${t}' twice`),Je(p,t,t),p.hasOwnProperty(n)&&w(`Cannot register multiple overloads of a function with the same number of arguments (${n})!`),p[t].overloadTable[n]=r):(p[t]=r,n!==void 0&&(p[t].numArguments=n))}function Et(t,r,n,s,i,f,u,l){this.name=t,this.constructor=r,this.instancePrototype=n,this.rawDestructor=s,this.baseClass=i,this.getActualType=f,this.upcast=u,this.downcast=l,this.pureVirtualFunctions=[]}function ve(t,r,n){for(;r!==n;)r.upcast||w(`Expected null or instance of ${n.name}, got an instance of ${r.name}`),t=r.upcast(t),r=r.baseClass;return t}function kt(t,r){if(r===null)return this.isReference&&w("null is not a valid "+this.name),0;r.$$||w(`Cannot pass "${Ue(r)}" as a ${this.name}`),r.$$.ptr||w("Cannot pass deleted object as a pointer of type "+this.name);var n=r.$$.ptrType.registeredClass,s=ve(r.$$.ptr,n,this.registeredClass);return s}function Rt(t,r){var n;if(r===null)return this.isReference&&w("null is not a valid "+this.name),this.isSmartPointer?(n=this.rawConstructor(),t!==null&&t.push(this.rawDestructor,n),n):0;r.$$||w(`Cannot pass "${Ue(r)}" as a ${this.name}`),r.$$.ptr||w(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&r.$$.ptrType.isConst&&w(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);var s=r.$$.ptrType.registeredClass;if(n=ve(r.$$.ptr,s,this.registeredClass),this.isSmartPointer)switch(r.$$.smartPtr===void 0&&w("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?n=r.$$.smartPtr:w(`Cannot convert argument of type ${r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:n=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)n=r.$$.smartPtr;else{var i=r.clone();n=this.rawShare(n,Me.toHandle(function(){i.delete()})),t!==null&&t.push(this.rawDestructor,n)}break;default:w("Unsupporting sharing policy")}return n}function Mt(t,r){if(r===null)return this.isReference&&w("null is not a valid "+this.name),0;r.$$||w(`Cannot pass "${Ue(r)}" as a ${this.name}`),r.$$.ptr||w(`Cannot pass deleted object as a pointer of type ${this.name}`),r.$$.ptrType.isConst&&w(`Cannot convert argument of type ${r.$$.ptrType.name} to parameter type ${this.name}`);var n=r.$$.ptrType.registeredClass,s=ve(r.$$.ptr,n,this.registeredClass);return s}function ye(t){return this.fromWireType(k[t>>2])}function Ut(t){return this.rawGetPointee&&(t=this.rawGetPointee(t)),t}function Dt(t){this.rawDestructor&&this.rawDestructor(t)}function Wt(t){t!==null&&t.delete()}function It(){V.prototype.getPointee=Ut,V.prototype.destructor=Dt,V.prototype.argPackAdvance=8,V.prototype.readValueFromPointer=ye,V.prototype.deleteObject=Wt,V.prototype.fromWireType=Tt}function V(t,r,n,s,i,f,u,l,h,g,y){this.name=t,this.registeredClass=r,this.isReference=n,this.isConst=s,this.isSmartPointer=i,this.pointeeType=f,this.sharingPolicy=u,this.rawGetPointee=l,this.rawConstructor=h,this.rawShare=g,this.rawDestructor=y,!i&&r.baseClass===void 0?s?(this.toWireType=kt,this.destructorFunction=null):(this.toWireType=Mt,this.destructorFunction=null):this.toWireType=Rt}function Lt(t,r,n){p.hasOwnProperty(t)||ge("Replacing nonexistant public symbol"),p[t].overloadTable!==void 0&&n!==void 0?p[t].overloadTable[n]=r:(p[t]=r,p[t].argCount=n)}function Ht(t,r,n){var s=dynCalls[t];return n&&n.length?s.apply(null,[r].concat(n)):s.call(null,r)}var be=[];function ae(t){var r=be[t];return r||(t>=be.length&&(be.length=t+1),be[t]=r=ue.get(t)),r}function Bt(t,r,n){if(t.includes("j"))return Ht(t,r,n);var s=ae(r).apply(null,n);return s}function xt(t,r){var n=[];return function(){return n.length=0,Object.assign(n,arguments),Bt(t,r,n)}}function q(t,r){t=I(t);function n(){return t.includes("j")?xt(t,r):ae(r)}var s=n();return typeof s!="function"&&w(`unknown function pointer with signature ${t}: ${r}`),s}var Ge=void 0;function Vt(t){var r=Ne(t),n=I(r);return J(r),n}function se(t,r){var n=[],s={};function i(f){if(!s[f]&&!Z[f]){if(pe[f]){pe[f].forEach(i);return}n.push(f),s[f]=!0}}throw r.forEach(i),new Ge(t+": "+n.map(Vt).join([", "]))}function Jt(t,r,n,s,i,f,u,l,h,g,y,_,T){y=I(y),f=q(i,f),l&&(l=q(u,l)),g&&(g=q(h,g)),T=q(_,T);var P=Se(y);Ot(P,function(){se(`Cannot construct ${y} due to unbound types`,[s])}),K([t,r,n],s?[s]:[],function(M){M=M[0];var D,U;s?(D=M.registeredClass,U=D.instancePrototype):U=z.prototype;var L=je(P,function(){if(Object.getPrototypeOf(this)!==oe)throw new N("Use 'new' to construct "+y);if(W.constructor_body===void 0)throw new N(y+" has no accessible constructor");var at=W.constructor_body[arguments.length];if(at===void 0)throw new N(`Tried to invoke ctor of ${y} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(W.constructor_body).toString()}) parameters instead!`);return at.apply(this,arguments)}),oe=Object.create(U,{constructor:{value:L}});L.prototype=oe;var W=new Et(y,L,oe,T,D,f,l,g);W.baseClass&&(W.baseClass.__derivedClasses===void 0&&(W.baseClass.__derivedClasses=[]),W.baseClass.__derivedClasses.push(W));var Lr=new V(y,W,!0,!1,!1),rt=new V(y+"*",W,!1,!1,!1),nt=new V(y+" const*",W,!1,!0,!1);return Ve[t]={pointerType:rt,constPointerType:nt},Lt(P,L),[Lr,rt,nt]})}function ze(t,r){for(var n=[],s=0;s<t;s++)n.push(R[r+s*4>>2]);return n}function qe(t){for(;t.length;){var r=t.pop(),n=t.pop();n(r)}}function Gt(t,r){if(!(t instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof t} which is not a function`);var n=je(t.name||"unknownFunctionName",function(){});n.prototype=t.prototype;var s=new n,i=t.apply(s,r);return i instanceof Object?i:s}function Ke(t,r,n,s,i,f){var u=r.length;u<2&&w("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var l=r[1]!==null&&n!==null,h=!1,g=1;g<r.length;++g)if(r[g]!==null&&r[g].destructorFunction===void 0){h=!0;break}for(var y=r[0].name!=="void",_="",T="",g=0;g<u-2;++g)_+=(g!==0?", ":"")+"arg"+g,T+=(g!==0?", ":"")+"arg"+g+"Wired";var P="return function "+Se(t)+"("+_+`) {
|
|
3
3
|
if (arguments.length !== `+(u-2)+`) {
|
|
4
4
|
throwBindingError('function `+t+" called with ' + arguments.length + ' arguments, expected "+(u-2)+` args!');
|
|
5
5
|
}
|
|
6
6
|
`;h&&(P+=`var destructors = [];
|
|
7
|
-
`);var M=h?"destructors":"null",
|
|
7
|
+
`);var M=h?"destructors":"null",D=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],U=[w,s,i,qe,r[0],r[1]];l&&(P+="var thisWired = classParam.toWireType("+M+`, this);
|
|
8
8
|
`);for(var g=0;g<u-2;++g)P+="var arg"+g+"Wired = argType"+g+".toWireType("+M+", arg"+g+"); // "+r[g+2].name+`
|
|
9
|
-
`,
|
|
9
|
+
`,D.push("argType"+g),U.push(r[g+2]);if(l&&(T="thisWired"+(T.length>0?", ":"")+T),P+=(y||f?"var rv = ":"")+"invoker(fn"+(T.length>0?", ":"")+T+`);
|
|
10
10
|
`,h)P+=`runDestructors(destructors);
|
|
11
|
-
`;else for(var g=
|
|
12
|
-
`,
|
|
11
|
+
`;else for(var g=l?1:2;g<r.length;++g){var L=g===1?"thisWired":"arg"+(g-2)+"Wired";r[g].destructorFunction!==null&&(P+=L+"_dtor("+L+"); // "+r[g].name+`
|
|
12
|
+
`,D.push(L+"_dtor"),U.push(r[g].destructorFunction))}return y&&(P+=`var ret = retType.fromWireType(rv);
|
|
13
13
|
return ret;
|
|
14
14
|
`),P+=`}
|
|
15
|
-
`,U.push(P),Gt(Function,U).apply(null,D)}function zt(t,r,n,s,i,l){S(r>0);var u=ze(r,n);i=q(s,i),K([],[t],function(f){f=f[0];var h="constructor "+f.name;if(f.registeredClass.constructor_body===void 0&&(f.registeredClass.constructor_body=[]),f.registeredClass.constructor_body[r-1]!==void 0)throw new N(`Cannot register multiple constructors with identical number of parameters (${r-1}) for class '${f.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return f.registeredClass.constructor_body[r-1]=()=>{se(`Cannot construct ${f.name} due to unbound types`,u)},K([],u,function(g){return g.splice(1,0,null),f.registeredClass.constructor_body[r-1]=Ke(h,g,null,i,l),[]}),[]})}function qt(t,r,n,s,i,l,u,f,h){var g=ze(n,s);r=I(r),l=q(i,l),K([],[t],function(y){y=y[0];var _=y.name+"."+r;r.startsWith("@@")&&(r=Symbol[r.substring(2)]),f&&y.registeredClass.pureVirtualFunctions.push(r);function T(){se(`Cannot call ${_} due to unbound types`,g)}var P=y.registeredClass.instancePrototype,M=P[r];return M===void 0||M.overloadTable===void 0&&M.className!==y.name&&M.argCount===n-2?(T.argCount=n-2,T.className=y.name,P[r]=T):(Je(P,r,_),P[r].overloadTable[n-2]=T),K([],g,function(U){var D=Ke(_,U,y,l,u,h);return P[r].overloadTable===void 0?(D.argCount=n-2,P[r]=D):P[r].overloadTable[n-2]=D,[]}),[]})}function Ye(t,r,n){return t instanceof Object||w(n+' with invalid "this": '+t),t instanceof r.registeredClass.constructor||w(n+' incompatible with "this" of type '+t.constructor.name),t.$$.ptr||w(`cannot call emscripten binding method ${n} on deleted object`),ve(t.$$.ptr,t.$$.ptrType.registeredClass,r.registeredClass)}function Kt(t,r,n,s,i,l,u,f,h,g){r=I(r),i=q(s,i),K([],[t],function(y){y=y[0];var _=y.name+"."+r,T={get:function(){se(`Cannot access ${_} due to unbound types`,[n,u])},enumerable:!0,configurable:!0};return h?T.set=()=>{se(`Cannot access ${_} due to unbound types`,[n,u])}:T.set=P=>{w(_+" is a read-only property")},Object.defineProperty(y.registeredClass.instancePrototype,r,T),K([],h?[n,u]:[n],function(P){var M=P[0],U={get:function(){var L=Ye(this,y,_+" getter");return M.fromWireType(i(l,L))},enumerable:!0};if(h){h=q(f,h);var D=P[1];U.set=function(L){var oe=Ye(this,y,_+" setter"),W=[];h(g,oe,D.toWireType(W,L)),qe(W)}}return Object.defineProperty(y.registeredClass.instancePrototype,r,U),[]}),[]})}function Yt(){this.allocated=[void 0],this.freelist=[],this.get=function(t){return this.allocated[t]},this.allocate=function(t){var r=this.freelist.pop()||this.allocated.length;return this.allocated[r]=t,r},this.free=function(t){this.allocated[t]=void 0,this.freelist.push(t)}}var H=new Yt;function Xt(t){t>=H.reserved&&--H.get(t).refcount===0&&H.free(t)}function Qt(){for(var t=0,r=H.reserved;r<H.allocated.length;++r)H.allocated[r]!==void 0&&++t;return t}function Zt(){H.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),H.reserved=H.allocated.length,p.count_emval_handles=Qt}var Me={toValue:t=>(t||w("Cannot use deleted val. handle = "+t),H.get(t).value),toHandle:t=>{switch(t){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return H.allocate({refcount:1,value:t})}}};function Nt(t,r){r=I(r),x(t,{name:r,fromWireType:function(n){var s=Me.toValue(n);return Xt(n),s},toWireType:function(n,s){return Me.toHandle(s)},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:null})}function De(t){if(t===null)return"null";var r=typeof t;return r==="object"||r==="array"||r==="function"?t.toString():""+t}function er(t,r){switch(r){case 2:return function(n){return this.fromWireType(fe[n>>2])};case 3:return function(n){return this.fromWireType(le[n>>3])};default:throw new TypeError("Unknown float type: "+t)}}function tr(t,r,n){var s=Ae(n);r=I(r),x(t,{name:r,fromWireType:function(i){return i},toWireType:function(i,l){return l},argPackAdvance:8,readValueFromPointer:er(r,s),destructorFunction:null})}function rr(t,r,n){switch(r){case 0:return n?function(i){return j[i]}:function(i){return O[i]};case 1:return n?function(i){return E[i>>1]}:function(i){return G[i>>1]};case 2:return n?function(i){return k[i>>2]}:function(i){return R[i>>2]};default:throw new TypeError("Unknown integer type: "+t)}}function nr(t,r,n,s,i){r=I(r);var l=Ae(n),u=_=>_;if(s===0){var f=32-8*n;u=_=>_<<f>>>f}var h=r.includes("unsigned"),g=(_,T)=>{},y;h?y=function(_,T){return g(T,this.name),T>>>0}:y=function(_,T){return g(T,this.name),T},x(t,{name:r,fromWireType:u,toWireType:y,argPackAdvance:8,readValueFromPointer:rr(r,l,s!==0),destructorFunction:null})}function ar(t,r,n){var s=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],i=s[r];function l(u){u=u>>2;var f=R,h=f[u],g=f[u+1];return new i(f.buffer,g,h)}n=I(n),x(t,{name:n,fromWireType:l,argPackAdvance:8,readValueFromPointer:l},{ignoreDuplicateRegistrations:!0})}function sr(t){for(var r=0,n=0;n<t.length;++n){var s=t.charCodeAt(n);s<=127?r++:s<=2047?r+=2:s>=55296&&s<=57343?(r+=4,++n):r+=3}return r}function ir(t,r){r=I(r);var n=r==="std::string";x(t,{name:r,fromWireType:function(s){var i=R[s>>2],l=s+4,u;if(n)for(var f=l,h=0;h<=i;++h){var g=l+h;if(h==i||O[g]==0){var y=g-f,_=X(f,y);u===void 0?u=_:(u+=String.fromCharCode(0),u+=_),f=g+1}}else{for(var T=new Array(i),h=0;h<i;++h)T[h]=String.fromCharCode(O[l+h]);u=T.join("")}return J(s),u},toWireType:function(s,i){i instanceof ArrayBuffer&&(i=new Uint8Array(i));var l,u=typeof i=="string";u||i instanceof Uint8Array||i instanceof Uint8ClampedArray||i instanceof Int8Array||w("Cannot pass non-string to std::string"),n&&u?l=sr(i):l=i.length;var f=We(4+l+1),h=f+4;if(R[f>>2]=l,n&&u)Fe(i,h,l+1);else if(u)for(var g=0;g<l;++g){var y=i.charCodeAt(g);y>255&&(J(h),w("String has UTF-16 code units that do not fit in 8 bits")),O[h+g]=y}else for(var g=0;g<l;++g)O[h+g]=i[g];return s!==null&&s.push(J,f),f},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:function(s){J(s)}})}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function or(t,r){for(var n=t,s=n>>1,i=s+r/2;!(s>=i)&&G[s];)++s;if(n=s<<1,n-t>32&&Xe)return Xe.decode(O.subarray(t,n));for(var l="",u=0;!(u>=r/2);++u){var f=E[t+u*2>>1];if(f==0)break;l+=String.fromCharCode(f)}return l}function fr(t,r,n){if(n===void 0&&(n=2147483647),n<2)return 0;n-=2;for(var s=r,i=n<t.length*2?n/2:t.length,l=0;l<i;++l){var u=t.charCodeAt(l);E[r>>1]=u,r+=2}return E[r>>1]=0,r-s}function lr(t){return t.length*2}function ur(t,r){for(var n=0,s="";!(n>=r/4);){var i=k[t+n*4>>2];if(i==0)break;if(++n,i>=65536){var l=i-65536;s+=String.fromCharCode(55296|l>>10,56320|l&1023)}else s+=String.fromCharCode(i)}return s}function cr(t,r,n){if(n===void 0&&(n=2147483647),n<4)return 0;for(var s=r,i=s+n-4,l=0;l<t.length;++l){var u=t.charCodeAt(l);if(u>=55296&&u<=57343){var f=t.charCodeAt(++l);u=65536+((u&1023)<<10)|f&1023}if(k[r>>2]=u,r+=4,r+4>i)break}return k[r>>2]=0,r-s}function dr(t){for(var r=0,n=0;n<t.length;++n){var s=t.charCodeAt(n);s>=55296&&s<=57343&&++n,r+=4}return r}function pr(t,r,n){n=I(n);var s,i,l,u,f;r===2?(s=or,i=fr,u=lr,l=()=>G,f=1):r===4&&(s=ur,i=cr,u=dr,l=()=>R,f=2),x(t,{name:n,fromWireType:function(h){for(var g=R[h>>2],y=l(),_,T=h+4,P=0;P<=g;++P){var M=h+4+P*r;if(P==g||y[M>>f]==0){var U=M-T,D=s(T,U);_===void 0?_=D:(_+=String.fromCharCode(0),_+=D),T=M+r}}return J(h),_},toWireType:function(h,g){typeof g!="string"&&w("Cannot pass non-string to C++ string type "+n);var y=u(g),_=We(4+y+r);return R[_>>2]=y>>f,i(g,_+4,y+r),h!==null&&h.push(J,_),_},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:function(h){J(h)}})}function gr(t,r){r=I(r),x(t,{isVoid:!0,name:r,argPackAdvance:0,fromWireType:function(){},toWireType:function(n,s){}})}function hr(){throw 1/0}function vr(t,r,n,s,i,l,u){return-52}function yr(t,r,n,s,i,l){}function br(){A("")}var Qe;Qe=()=>performance.now();function mr(){return 2147483648}function Cr(t){var r=B.buffer;try{return B.grow(t-r.byteLength+65535>>>16),Y(),1}catch{}}function wr(t){var r=O.length;t=t>>>0;var n=mr();if(t>n)return!1;for(var s=(h,g)=>h+(g-h%g)%g,i=1;i<=4;i*=2){var l=r*(1+.2/i);l=Math.min(l,t+100663296);var u=Math.min(n,s(Math.max(t,l),65536)),f=Cr(u);if(f)return!0}return!1}var Ue={};function _r(){return"./this.program"}function ie(){if(!ie.strings){var t=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",r={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:t,_:_r()};for(var n in Ue)Ue[n]===void 0?delete r[n]:r[n]=Ue[n];var s=[];for(var n in r)s.push(n+"="+r[n]);ie.strings=s}return ie.strings}function $r(t,r){for(var n=0;n<t.length;++n)j[r++>>0]=t.charCodeAt(n);j[r>>0]=0}function Tr(t,r){var n=0;return ie().forEach(function(s,i){var l=r+n;R[t+i*4>>2]=l,$r(s,l),n+=s.length+1}),0}function Pr(t,r){var n=ie();R[t>>2]=n.length;var s=0;return n.forEach(function(i){s+=i.length+1}),R[r>>2]=s,0}function Fr(t){throw"exit("+t+")"}var Ar=Fr;function Sr(t){return 52}function jr(t,r,n,s){return 52}function Or(t,r,n,s,i){return 70}var Er=[null,[],[]];function kr(t,r){var n=Er[t];r===0||r===10?((t===1?$:m)(de(n,0)),n.length=0):n.push(r)}function Rr(t,r,n,s){for(var i=0,l=0;l<n;l++){var u=R[r>>2],f=R[r+4>>2];r+=8;for(var h=0;h<f;h++)kr(t,O[u+h]);i+=f}return R[s>>2]=i,0}ct(),N=p.BindingError=Oe(Error,"BindingError"),Le=p.InternalError=Oe(Error,"InternalError"),jt(),wt(),It(),Ge=p.UnboundTypeError=Oe(Error,"UnboundTypeError"),Zt();var Mr={b:_e,k:$e,I:Te,B:st,K:it,G:ot,n:ft,H:lt,u:ut,r:gt,j:Jt,A:zt,d:qt,c:Kt,L:Nt,p:tr,g:nr,e:ar,q:ir,l:pr,s:gr,y:hr,C:vr,D:yr,f:br,m:Qe,z:wr,E:Tr,F:Pr,h:Ar,i:Sr,o:jr,t:Or,J:Rr,x:Dr,v:Wr,w:Ur,a:B};function Dr(t,r,n){var s=Ce();try{return ae(t)(r,n)}catch(i){if(we(s),i!==i+0)throw i;me(1,0)}}function Ur(t,r,n,s,i){var l=Ce();try{return ae(t)(r,n,s,i)}catch(u){if(we(l),u!==u+0)throw u;me(1,0)}}function Wr(t,r,n,s){var i=Ce();try{return ae(t)(r,n,s)}catch(l){if(we(i),l!==l+0)throw l;me(1,0)}}p.getTempRet0=tt,p.setTempRet0=et;function Ir(t){t.M()}var Ze={a:Mr},We,J,Ne,me,et,tt,Ce,we;return(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(fetch("jassub-worker-modern.wasm"),Ze):WebAssembly.instantiate(p.wasm,Ze)).then(function(t){C=(t.instance||t).exports,p._malloc=We=C.N,J=C.O,Ne=C.P,p.__embind_initialize_bindings=C.Q,me=C.S,et=C.T,tt=C.U,Ce=C.V,we=C.W,C.X,C.Y,C.Z,C._,ue=C.R,Ir(C),F()}),p.ready};const read_=(o,p)=>{const v=new XMLHttpRequest;return v.open("GET",o,!1),v.responseType=p?"arraybuffer":"text",v.send(null),v.response},readAsync=(o,p,v)=>{const $=new XMLHttpRequest;$.open("GET",o,!0),$.responseType="arraybuffer",$.onload=()=>{if(($.status===200||$.status===0)&&$.response)return p($.response)},$.onerror=v,$.send(null)};Date.now||(Date.now=()=>new Date().getTime());"performance"in self||(self.performance={now:()=>Date.now()});if(typeof console>"u"){const o=(p,v)=>{postMessage({target:"console",command:p,content:JSON.stringify(Array.prototype.slice.call(v))})};console={log:function(){o("log",arguments)},debug:function(){o("debug",arguments)},info:function(){o("info",arguments)},warn:function(){o("warn",arguments)},error:function(){o("error",arguments)}},console.log("Detected lack of console, overridden console")}let lastCurrentTime=0;const rate=1;let rafId=null,nextIsRaf=!1,lastCurrentTimeReceivedAt=Date.now(),targetFps=24,useLocalFonts=!1,blendMode="js",availableFonts={};const fontMap_={};let fontId=0,debug;self.width=0;self.height=0;let asyncRender=!1;self.addFont=({font:o})=>asyncWrite(o);const findAvailableFonts=o=>{o=o.trim().toLowerCase(),o.startsWith("@")&&(o=o.substring(1)),!fontMap_[o]&&(fontMap_[o]=!0,availableFonts[o]?asyncWrite(availableFonts[o]):useLocalFonts&&postMessage({target:"getLocalFont",font:o}))},asyncWrite=o=>{typeof o=="string"?readAsync(o,p=>{allocFont(new Uint8Array(p))},console.error):allocFont(o)},allocFont=o=>{const p=_malloc(o.byteLength);self.HEAPU8.set(o,p),jassubObj.addFont("font-"+fontId++,p,o.byteLength),jassubObj.reloadFonts()},processAvailableFonts=o=>{if(!availableFonts)return;const p=parseAss(o);for(let m=0;m<p.length;m++)for(let F=0;F<p[m].body.length;F++)p[m].body[F].key==="Style"&&findAvailableFonts(p[m].body[F].value.Fontname);const v=/\\fn([^\\}]*?)[\\}]/g;let $;for(;($=v.exec(o))!==null;)findAvailableFonts($[1])};self.setTrack=({content:o})=>{processAvailableFonts(o),dropAllBlur&&(o=dropBlur(o)),jassubObj.createTrackMem(o),subtitleColorSpace=libassYCbCrMap[jassubObj.trackColorSpace],postMessage({target:"verifyColorSpace",subtitleColorSpace})};self.getColorSpace=()=>postMessage({target:"verifyColorSpace",subtitleColorSpace});self.freeTrack=()=>{jassubObj.removeTrack()};self.setTrackByUrl=({url:o})=>{self.setTrack({content:read_(o)})};const getCurrentTime=()=>{const o=(Date.now()-lastCurrentTimeReceivedAt)/1e3;return _isPaused?lastCurrentTime:(o>5&&(console.error("Didn't received currentTime > 5 seconds. Assuming video was paused."),setIsPaused(!0)),lastCurrentTime+o*rate)},setCurrentTime=o=>{lastCurrentTime=o,lastCurrentTimeReceivedAt=Date.now(),rafId||(nextIsRaf?rafId=requestAnimationFrame(renderLoop):(renderLoop(),setTimeout(()=>{nextIsRaf=!1},20)))};let _isPaused=!0;const setIsPaused=o=>{o!==_isPaused&&(_isPaused=o,o?rafId&&(clearTimeout(rafId),rafId=null):(lastCurrentTimeReceivedAt=Date.now(),rafId=requestAnimationFrame(renderLoop)))},a="BT601",b="BT709",c="SMPTE240M",d="FCC",libassYCbCrMap=[null,a,null,a,a,b,b,c,c,d,d],render=(o,p)=>{const v={},$=performance.now(),m=blendMode==="wasm"?jassubObj.renderBlend(o,p||0):jassubObj.renderImage(o,p||0);if(debug){const F=performance.now(),S=jassubObj.time;v.WASMRenderTime=S-$,v.WASMBitmapDecodeTime=F-S,v.JSRenderTime=Date.now()}if(jassubObj.changed!==0||p){const F=[],S=[];if(!m)return paintImages({images:F,buffers:S,times:v});if(asyncRender){const C=[];for(let A=m,j=0;j<jassubObj.count;A=A.next,++j){const E={w:A.w,h:A.h,x:A.x,y:A.y},k=A.image;C.push(createImageBitmap(new ImageData(self.HEAPU8C.subarray(k,k+E.w*E.h*4),E.w,E.h))),F.push(E)}Promise.all(C).then(A=>{for(let j=0;j<F.length;j++)F[j].image=A[j];debug&&(v.JSBitmapGenerationTime=Date.now()-v.JSRenderTime),paintImages({images:F,buffers:A,times:v})})}else{for(let C=m,A=0;A<jassubObj.count;C=C.next,++A){const j={w:C.w,h:C.h,x:C.x,y:C.y,image:C.image};if(!offCanvasCtx){const E=self.wasmMemory.buffer.slice(C.image,C.image+C.w*C.h*4);S.push(E),j.image=E}F.push(j)}paintImages({images:F,buffers:S,times:v})}}else postMessage({target:"unbusy"})};self.demand=({time:o})=>{lastCurrentTime=o,render(o)};const renderLoop=o=>{rafId=0,render(getCurrentTime(),o),_isPaused||(rafId=requestAnimationFrame(renderLoop))},paintImages=({times:o,images:p,buffers:v})=>{const $={target:"render",asyncRender,images:p,times:o,width:self.width,height:self.height,colorSpace:subtitleColorSpace};if(offscreenRender){(offCanvas.height!==self.height||offCanvas.width!==self.width)&&(offCanvas.width=self.width,offCanvas.height=self.height),offCanvasCtx.clearRect(0,0,self.width,self.height);for(const m of p)if(m.image)if(asyncRender)offCanvasCtx.drawImage(m.image,m.x,m.y),m.image.close();else{bufferCanvas.width=m.w,bufferCanvas.height=m.h;const F=hasBitmapBug?self.HEAPU8C.slice(m.image,m.image+m.w*m.h*4):self.HEAPU8C.subarray(m.image,m.image+m.w*m.h*4);bufferCtx.putImageData(new ImageData(F,m.w,m.h),0,0),offCanvasCtx.drawImage(bufferCanvas,m.x,m.y)}if(offscreenRender==="hybrid"){if(!p.length)return postMessage($);debug&&(o.bitmaps=p.length);try{const m=offCanvas.transferToImageBitmap();$.images=[{image:m,x:0,y:0}],$.asyncRender=!0,postMessage($,[m])}catch{postMessage({target:"unbusy"})}}else{if(debug){o.JSRenderTime=Date.now()-o.JSRenderTime-(o.JSBitmapGenerationTime||0);let m=0;for(const F in o)m+=o[F];console.log("Bitmaps: "+p.length+" Total: "+(m|0)+"ms",o)}postMessage({target:"unbusy"})}}else postMessage($,v)},parseAss=o=>{let p,v,$,m,F,S,C,A,j,E;const k=[],O=o.split(/[\r\n]+/g);for(A=0;A<O.length;A++)if(p=O[A].match(/^\[(.*)\]$/),p)v=null,k.push({name:p[1],body:[]});else{if(/^\s*$/.test(O[A])||k.length===0)continue;if(E=k[k.length-1].body,O[A][0]===";")E.push({type:"comment",value:O[A].substring(1)});else{if(m=O[A].split(":"),F=m[0],S=m.slice(1).join(":").trim(),(v||F==="Format")&&(S=S.split(","),v&&S.length>v.length&&($=S.slice(v.length-1).join(","),S=S.slice(0,v.length-1),S.push($)),S=S.map(G=>G.trim()),v)){for(C={},j=0;j<S.length;j++)C[v[j]]=S[j];S=C}F==="Format"&&(v=S),E.push({key:F,value:S})}}return k},blurRegex=/\\blur(?:[0-9]+\.)?[0-9]+/gm,dropBlur=o=>o.replace(blurRegex,""),requestAnimationFrame=(()=>{let o=0;return p=>{const v=Date.now();if(o===0)o=v+1e3/targetFps;else for(;v+2>=o;)o+=1e3/targetFps;const $=Math.max(o-v,0);return setTimeout(p,$)}})(),_applyKeys=(o,p)=>{for(const v of Object.keys(o))p[v]=o[v]};let offCanvas,offCanvasCtx,offscreenRender,bufferCanvas,bufferCtx,jassubObj,subtitleColorSpace,dropAllBlur,_malloc,hasBitmapBug;self.init=data=>{hasBitmapBug=data.hasBitmapBug;try{const o=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(!(o instanceof WebAssembly.Module)||!(new WebAssembly.Instance(o)instanceof WebAssembly.Instance))throw new Error("WASM not supported")}catch(e){console.warn(e),eval(read_(data.legacyWasmUrl))}const _fetch=fetch,wasm=!WebAssembly.instantiateStreaming&&read_(data.wasmUrl,!0);WebAssembly.instantiateStreaming&&(self.fetch=o=>_fetch(data.wasmUrl)),Module({wasm}).then(o=>{_malloc=o._malloc,self.width=data.width,self.height=data.height,blendMode=data.blendMode,asyncRender=data.asyncRender,asyncRender&&typeof createImageBitmap>"u"&&(asyncRender=!1,console.error("'createImageBitmap' needed for 'asyncRender' unsupported!")),availableFonts=data.availableFonts,debug=data.debug,targetFps=data.targetFps||targetFps,useLocalFonts=data.useLocalFonts,dropAllBlur=data.dropAllBlur;const p=data.fallbackFont.toLowerCase();jassubObj=new o.JASSUB(self.width,self.height,p||null,debug),p&&findAvailableFonts(p);let v=data.subContent;v||(v=read_(data.subUrl)),processAvailableFonts(v),dropAllBlur&&(v=dropBlur(v));for(const $ of data.fonts||[])asyncWrite($);jassubObj.createTrackMem(v),subtitleColorSpace=libassYCbCrMap[jassubObj.trackColorSpace],jassubObj.setDropAnimations(data.dropAllAnimations||0),(data.libassMemoryLimit>0||data.libassGlyphLimit>0)&&jassubObj.setMemoryLimits(data.libassGlyphLimit||0,data.libassMemoryLimit||0),postMessage({target:"ready"}),postMessage({target:"verifyColorSpace",subtitleColorSpace})})};self.offscreenCanvas=({transferable:o})=>{offCanvas=o[0],offCanvasCtx=offCanvas.getContext("2d"),asyncRender||(bufferCanvas=new OffscreenCanvas(self.height,self.width),bufferCtx=bufferCanvas.getContext("2d",{desynchronized:!0})),offscreenRender=!0};self.detachOffscreen=()=>{offCanvas=new OffscreenCanvas(self.height,self.width),offCanvasCtx=offCanvas.getContext("2d",{desynchronized:!0}),offscreenRender="hybrid"};self.canvas=({width:o,height:p,force:v})=>{if(o==null)throw new Error("Invalid canvas size specified");self.width=o,self.height=p,jassubObj&&jassubObj.resizeCanvas(o,p),v&&render(lastCurrentTime,!0)};self.video=({currentTime:o,isPaused:p,rate:v})=>{o!=null&&setCurrentTime(o),p!=null&&setIsPaused(p),v=v||v};self.destroy=()=>{jassubObj.quitLibrary()};self.createEvent=({event:o})=>{_applyKeys(o,jassubObj.getEvent(jassubObj.allocEvent()))};self.getEvents=()=>{const o=[];for(let p=0;p<jassubObj.getEventCount();p++){const{Start:v,Duration:$,ReadOrder:m,Layer:F,Style:S,MarginL:C,MarginR:A,MarginV:j,Name:E,Text:k,Effect:O}=jassubObj.getEvent(p);o.push({Start:v,Duration:$,ReadOrder:m,Layer:F,Style:S,MarginL:C,MarginR:A,MarginV:j,Name:E,Text:k,Effect:O})}postMessage({target:"getEvents",events:o})};self.setEvent=({event:o,index:p})=>{_applyKeys(o,jassubObj.getEvent(p))};self.removeEvent=({index:o})=>{jassubObj.removeEvent(o)};self.createStyle=({style:o})=>{_applyKeys(o,jassubObj.getStyle(jassubObj.allocStyle()))};self.getStyles=()=>{const o=[];for(let p=0;p<jassubObj.getStyleCount();p++){const{Name:v,FontName:$,FontSize:m,PrimaryColour:F,SecondaryColour:S,OutlineColour:C,BackColour:A,Bold:j,Italic:E,Underline:k,StrikeOut:O,ScaleX:G,ScaleY:R,Spacing:fe,Angle:le,BorderStyle:B,Outline:ue,Shadow:Y,Alignment:ce,MarginL:de,MarginR:X,MarginV:_e,Encoding:$e,treat_fontname_as_pattern:Te,Blur:Pe,Justify:Fe}=jassubObj.getStyle(p);o.push({Name:v,FontName:$,FontSize:m,PrimaryColour:F,SecondaryColour:S,OutlineColour:C,BackColour:A,Bold:j,Italic:E,Underline:k,StrikeOut:O,ScaleX:G,ScaleY:R,Spacing:fe,Angle:le,BorderStyle:B,Outline:ue,Shadow:Y,Alignment:ce,MarginL:de,MarginR:X,MarginV:_e,Encoding:$e,treat_fontname_as_pattern:Te,Blur:Pe,Justify:Fe})}postMessage({target:"getStyles",time:Date.now(),styles:o})};self.setStyle=({style:o,index:p})=>{_applyKeys(o,jassubObj.getStyle(p))};self.removeStyle=({index:o})=>{jassubObj.removeStyle(o)};onmessage=({data:o})=>{if(self[o.target])self[o.target](o);else throw new Error("Unknown event target "+o.target)};
|
|
15
|
+
`,D.push(P),Gt(Function,D).apply(null,U)}function zt(t,r,n,s,i,f){F(r>0);var u=ze(r,n);i=q(s,i),K([],[t],function(l){l=l[0];var h="constructor "+l.name;if(l.registeredClass.constructor_body===void 0&&(l.registeredClass.constructor_body=[]),l.registeredClass.constructor_body[r-1]!==void 0)throw new N(`Cannot register multiple constructors with identical number of parameters (${r-1}) for class '${l.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return l.registeredClass.constructor_body[r-1]=()=>{se(`Cannot construct ${l.name} due to unbound types`,u)},K([],u,function(g){return g.splice(1,0,null),l.registeredClass.constructor_body[r-1]=Ke(h,g,null,i,f),[]}),[]})}function qt(t,r,n,s,i,f,u,l,h){var g=ze(n,s);r=I(r),f=q(i,f),K([],[t],function(y){y=y[0];var _=y.name+"."+r;r.startsWith("@@")&&(r=Symbol[r.substring(2)]),l&&y.registeredClass.pureVirtualFunctions.push(r);function T(){se(`Cannot call ${_} due to unbound types`,g)}var P=y.registeredClass.instancePrototype,M=P[r];return M===void 0||M.overloadTable===void 0&&M.className!==y.name&&M.argCount===n-2?(T.argCount=n-2,T.className=y.name,P[r]=T):(Je(P,r,_),P[r].overloadTable[n-2]=T),K([],g,function(D){var U=Ke(_,D,y,f,u,h);return P[r].overloadTable===void 0?(U.argCount=n-2,P[r]=U):P[r].overloadTable[n-2]=U,[]}),[]})}function Ye(t,r,n){return t instanceof Object||w(n+' with invalid "this": '+t),t instanceof r.registeredClass.constructor||w(n+' incompatible with "this" of type '+t.constructor.name),t.$$.ptr||w(`cannot call emscripten binding method ${n} on deleted object`),ve(t.$$.ptr,t.$$.ptrType.registeredClass,r.registeredClass)}function Kt(t,r,n,s,i,f,u,l,h,g){r=I(r),i=q(s,i),K([],[t],function(y){y=y[0];var _=y.name+"."+r,T={get:function(){se(`Cannot access ${_} due to unbound types`,[n,u])},enumerable:!0,configurable:!0};return h?T.set=()=>{se(`Cannot access ${_} due to unbound types`,[n,u])}:T.set=P=>{w(_+" is a read-only property")},Object.defineProperty(y.registeredClass.instancePrototype,r,T),K([],h?[n,u]:[n],function(P){var M=P[0],D={get:function(){var L=Ye(this,y,_+" getter");return M.fromWireType(i(f,L))},enumerable:!0};if(h){h=q(l,h);var U=P[1];D.set=function(L){var oe=Ye(this,y,_+" setter"),W=[];h(g,oe,U.toWireType(W,L)),qe(W)}}return Object.defineProperty(y.registeredClass.instancePrototype,r,D),[]}),[]})}function Yt(){this.allocated=[void 0],this.freelist=[],this.get=function(t){return this.allocated[t]},this.allocate=function(t){var r=this.freelist.pop()||this.allocated.length;return this.allocated[r]=t,r},this.free=function(t){this.allocated[t]=void 0,this.freelist.push(t)}}var H=new Yt;function Xt(t){t>=H.reserved&&--H.get(t).refcount===0&&H.free(t)}function Qt(){for(var t=0,r=H.reserved;r<H.allocated.length;++r)H.allocated[r]!==void 0&&++t;return t}function Zt(){H.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),H.reserved=H.allocated.length,p.count_emval_handles=Qt}var Me={toValue:t=>(t||w("Cannot use deleted val. handle = "+t),H.get(t).value),toHandle:t=>{switch(t){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return H.allocate({refcount:1,value:t})}}};function Nt(t,r){r=I(r),x(t,{name:r,fromWireType:function(n){var s=Me.toValue(n);return Xt(n),s},toWireType:function(n,s){return Me.toHandle(s)},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:null})}function Ue(t){if(t===null)return"null";var r=typeof t;return r==="object"||r==="array"||r==="function"?t.toString():""+t}function er(t,r){switch(r){case 2:return function(n){return this.fromWireType(le[n>>2])};case 3:return function(n){return this.fromWireType(fe[n>>3])};default:throw new TypeError("Unknown float type: "+t)}}function tr(t,r,n){var s=Fe(n);r=I(r),x(t,{name:r,fromWireType:function(i){return i},toWireType:function(i,f){return f},argPackAdvance:8,readValueFromPointer:er(r,s),destructorFunction:null})}function rr(t,r,n){switch(r){case 0:return n?function(i){return j[i]}:function(i){return O[i]};case 1:return n?function(i){return E[i>>1]}:function(i){return G[i>>1]};case 2:return n?function(i){return k[i>>2]}:function(i){return R[i>>2]};default:throw new TypeError("Unknown integer type: "+t)}}function nr(t,r,n,s,i){r=I(r);var f=Fe(n),u=_=>_;if(s===0){var l=32-8*n;u=_=>_<<l>>>l}var h=r.includes("unsigned"),g=(_,T)=>{},y;h?y=function(_,T){return g(T,this.name),T>>>0}:y=function(_,T){return g(T,this.name),T},x(t,{name:r,fromWireType:u,toWireType:y,argPackAdvance:8,readValueFromPointer:rr(r,f,s!==0),destructorFunction:null})}function ar(t,r,n){var s=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],i=s[r];function f(u){u=u>>2;var l=R,h=l[u],g=l[u+1];return new i(l.buffer,g,h)}n=I(n),x(t,{name:n,fromWireType:f,argPackAdvance:8,readValueFromPointer:f},{ignoreDuplicateRegistrations:!0})}function sr(t){for(var r=0,n=0;n<t.length;++n){var s=t.charCodeAt(n);s<=127?r++:s<=2047?r+=2:s>=55296&&s<=57343?(r+=4,++n):r+=3}return r}function ir(t,r){r=I(r);var n=r==="std::string";x(t,{name:r,fromWireType:function(s){var i=R[s>>2],f=s+4,u;if(n)for(var l=f,h=0;h<=i;++h){var g=f+h;if(h==i||O[g]==0){var y=g-l,_=X(l,y);u===void 0?u=_:(u+=String.fromCharCode(0),u+=_),l=g+1}}else{for(var T=new Array(i),h=0;h<i;++h)T[h]=String.fromCharCode(O[f+h]);u=T.join("")}return J(s),u},toWireType:function(s,i){i instanceof ArrayBuffer&&(i=new Uint8Array(i));var f,u=typeof i=="string";u||i instanceof Uint8Array||i instanceof Uint8ClampedArray||i instanceof Int8Array||w("Cannot pass non-string to std::string"),n&&u?f=sr(i):f=i.length;var l=We(4+f+1),h=l+4;if(R[l>>2]=f,n&&u)Ae(i,h,f+1);else if(u)for(var g=0;g<f;++g){var y=i.charCodeAt(g);y>255&&(J(h),w("String has UTF-16 code units that do not fit in 8 bits")),O[h+g]=y}else for(var g=0;g<f;++g)O[h+g]=i[g];return s!==null&&s.push(J,l),l},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:function(s){J(s)}})}var Xe=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function or(t,r){for(var n=t,s=n>>1,i=s+r/2;!(s>=i)&&G[s];)++s;if(n=s<<1,n-t>32&&Xe)return Xe.decode(O.subarray(t,n));for(var f="",u=0;!(u>=r/2);++u){var l=E[t+u*2>>1];if(l==0)break;f+=String.fromCharCode(l)}return f}function lr(t,r,n){if(n===void 0&&(n=2147483647),n<2)return 0;n-=2;for(var s=r,i=n<t.length*2?n/2:t.length,f=0;f<i;++f){var u=t.charCodeAt(f);E[r>>1]=u,r+=2}return E[r>>1]=0,r-s}function fr(t){return t.length*2}function ur(t,r){for(var n=0,s="";!(n>=r/4);){var i=k[t+n*4>>2];if(i==0)break;if(++n,i>=65536){var f=i-65536;s+=String.fromCharCode(55296|f>>10,56320|f&1023)}else s+=String.fromCharCode(i)}return s}function cr(t,r,n){if(n===void 0&&(n=2147483647),n<4)return 0;for(var s=r,i=s+n-4,f=0;f<t.length;++f){var u=t.charCodeAt(f);if(u>=55296&&u<=57343){var l=t.charCodeAt(++f);u=65536+((u&1023)<<10)|l&1023}if(k[r>>2]=u,r+=4,r+4>i)break}return k[r>>2]=0,r-s}function dr(t){for(var r=0,n=0;n<t.length;++n){var s=t.charCodeAt(n);s>=55296&&s<=57343&&++n,r+=4}return r}function pr(t,r,n){n=I(n);var s,i,f,u,l;r===2?(s=or,i=lr,u=fr,f=()=>G,l=1):r===4&&(s=ur,i=cr,u=dr,f=()=>R,l=2),x(t,{name:n,fromWireType:function(h){for(var g=R[h>>2],y=f(),_,T=h+4,P=0;P<=g;++P){var M=h+4+P*r;if(P==g||y[M>>l]==0){var D=M-T,U=s(T,D);_===void 0?_=U:(_+=String.fromCharCode(0),_+=U),T=M+r}}return J(h),_},toWireType:function(h,g){typeof g!="string"&&w("Cannot pass non-string to C++ string type "+n);var y=u(g),_=We(4+y+r);return R[_>>2]=y>>l,i(g,_+4,y+r),h!==null&&h.push(J,_),_},argPackAdvance:8,readValueFromPointer:ye,destructorFunction:function(h){J(h)}})}function gr(t,r){r=I(r),x(t,{isVoid:!0,name:r,argPackAdvance:0,fromWireType:function(){},toWireType:function(n,s){}})}function hr(){throw 1/0}function vr(t,r,n,s,i,f,u){return-52}function yr(t,r,n,s,i,f){}function br(){A("")}var Qe;Qe=()=>performance.now();function mr(){return 2147483648}function Cr(t){var r=B.buffer;try{return B.grow(t-r.byteLength+65535>>>16),Y(),1}catch{}}function wr(t){var r=O.length;t=t>>>0;var n=mr();if(t>n)return!1;for(var s=(h,g)=>h+(g-h%g)%g,i=1;i<=4;i*=2){var f=r*(1+.2/i);f=Math.min(f,t+100663296);var u=Math.min(n,s(Math.max(t,f),65536)),l=Cr(u);if(l)return!0}return!1}var De={};function _r(){return"./this.program"}function ie(){if(!ie.strings){var t=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",r={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:t,_:_r()};for(var n in De)De[n]===void 0?delete r[n]:r[n]=De[n];var s=[];for(var n in r)s.push(n+"="+r[n]);ie.strings=s}return ie.strings}function $r(t,r){for(var n=0;n<t.length;++n)j[r++>>0]=t.charCodeAt(n);j[r>>0]=0}function Tr(t,r){var n=0;return ie().forEach(function(s,i){var f=r+n;R[t+i*4>>2]=f,$r(s,f),n+=s.length+1}),0}function Pr(t,r){var n=ie();R[t>>2]=n.length;var s=0;return n.forEach(function(i){s+=i.length+1}),R[r>>2]=s,0}function Ar(t){throw"exit("+t+")"}var Fr=Ar;function Sr(t){return 52}function jr(t,r,n,s){return 52}function Or(t,r,n,s,i){return 70}var Er=[null,[],[]];function kr(t,r){var n=Er[t];r===0||r===10?((t===1?$:m)(de(n,0)),n.length=0):n.push(r)}function Rr(t,r,n,s){for(var i=0,f=0;f<n;f++){var u=R[r>>2],l=R[r+4>>2];r+=8;for(var h=0;h<l;h++)kr(t,O[u+h]);i+=l}return R[s>>2]=i,0}ct(),N=p.BindingError=Oe(Error,"BindingError"),Le=p.InternalError=Oe(Error,"InternalError"),jt(),wt(),It(),Ge=p.UnboundTypeError=Oe(Error,"UnboundTypeError"),Zt();var Mr={b:_e,k:$e,I:Te,B:st,K:it,G:ot,n:lt,H:ft,u:ut,r:gt,j:Jt,A:zt,d:qt,c:Kt,L:Nt,p:tr,g:nr,e:ar,q:ir,l:pr,s:gr,y:hr,C:vr,D:yr,f:br,m:Qe,z:wr,E:Tr,F:Pr,h:Fr,i:Sr,o:jr,t:Or,J:Rr,x:Ur,v:Wr,w:Dr,a:B};function Ur(t,r,n){var s=Ce();try{return ae(t)(r,n)}catch(i){if(we(s),i!==i+0)throw i;me(1,0)}}function Dr(t,r,n,s,i){var f=Ce();try{return ae(t)(r,n,s,i)}catch(u){if(we(f),u!==u+0)throw u;me(1,0)}}function Wr(t,r,n,s){var i=Ce();try{return ae(t)(r,n,s)}catch(f){if(we(i),f!==f+0)throw f;me(1,0)}}p.getTempRet0=tt,p.setTempRet0=et;function Ir(t){t.M()}var Ze={a:Mr},We,J,Ne,me,et,tt,Ce,we;return(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(fetch("jassub-worker-modern.wasm"),Ze):WebAssembly.instantiate(p.wasm,Ze)).then(function(t){C=(t.instance||t).exports,p._malloc=We=C.N,J=C.O,Ne=C.P,p.__embind_initialize_bindings=C.Q,me=C.S,et=C.T,tt=C.U,Ce=C.V,we=C.W,C.X,C.Y,C.Z,C._,ue=C.R,Ir(C),S()}),p.ready};const read_=(o,p)=>{const v=new XMLHttpRequest;return v.open("GET",o,!1),v.responseType=p?"arraybuffer":"text",v.send(null),v.response},readAsync=(o,p,v)=>{const $=new XMLHttpRequest;$.open("GET",o,!0),$.responseType="arraybuffer",$.onload=()=>{if(($.status===200||$.status===0)&&$.response)return p($.response)},$.onerror=v,$.send(null)};Date.now||(Date.now=()=>new Date().getTime());"performance"in self||(self.performance={now:()=>Date.now()});if(typeof console>"u"){const o=(p,v)=>{postMessage({target:"console",command:p,content:JSON.stringify(Array.prototype.slice.call(v))})};console={log:function(){o("log",arguments)},debug:function(){o("debug",arguments)},info:function(){o("info",arguments)},warn:function(){o("warn",arguments)},error:function(){o("error",arguments)}},console.log("Detected lack of console, overridden console")}let lastCurrentTime=0;const rate=1;let rafId=null,nextIsRaf=!1,lastCurrentTimeReceivedAt=Date.now(),targetFps=24,useLocalFonts=!1,blendMode="js",availableFonts={};const fontMap_={};let fontId=0,debug;self.width=0;self.height=0;let asyncRender=!1;self.addFont=({font:o})=>asyncWrite(o);const findAvailableFonts=o=>{o=o.trim().toLowerCase(),o.startsWith("@")&&(o=o.substring(1)),!fontMap_[o]&&(fontMap_[o]=!0,availableFonts[o]?asyncWrite(availableFonts[o]):useLocalFonts&&postMessage({target:"getLocalFont",font:o}))},asyncWrite=o=>{typeof o=="string"?readAsync(o,p=>{allocFont(new Uint8Array(p))},console.error):allocFont(o)},allocFont=o=>{const p=_malloc(o.byteLength);self.HEAPU8.set(o,p),jassubObj.addFont("font-"+fontId++,p,o.byteLength),jassubObj.reloadFonts()},processAvailableFonts=o=>{if(!availableFonts)return;const p=parseAss(o);for(let m=0;m<p.length;m++)for(let S=0;S<p[m].body.length;S++)p[m].body[S].key==="Style"&&findAvailableFonts(p[m].body[S].value.Fontname);const v=/\\fn([^\\}]*?)[\\}]/g;let $;for(;($=v.exec(o))!==null;)findAvailableFonts($[1])};self.setTrack=({content:o})=>{processAvailableFonts(o),dropAllBlur&&(o=dropBlur(o)),jassubObj.createTrackMem(o),subtitleColorSpace=libassYCbCrMap[jassubObj.trackColorSpace],postMessage({target:"verifyColorSpace",subtitleColorSpace})};self.getColorSpace=()=>postMessage({target:"verifyColorSpace",subtitleColorSpace});self.freeTrack=()=>{jassubObj.removeTrack()};self.setTrackByUrl=({url:o})=>{self.setTrack({content:read_(o)})};const getCurrentTime=()=>{const o=(Date.now()-lastCurrentTimeReceivedAt)/1e3;return _isPaused?lastCurrentTime:(o>5&&(console.error("Didn't received currentTime > 5 seconds. Assuming video was paused."),setIsPaused(!0)),lastCurrentTime+o*rate)},setCurrentTime=o=>{lastCurrentTime=o,lastCurrentTimeReceivedAt=Date.now(),rafId||(nextIsRaf?rafId=requestAnimationFrame(renderLoop):(renderLoop(),setTimeout(()=>{nextIsRaf=!1},20)))};let _isPaused=!0;const setIsPaused=o=>{o!==_isPaused&&(_isPaused=o,o?rafId&&(clearTimeout(rafId),rafId=null):(lastCurrentTimeReceivedAt=Date.now(),rafId=requestAnimationFrame(renderLoop)))},a="BT601",b="BT709",c="SMPTE240M",d="FCC",libassYCbCrMap=[null,a,null,a,a,b,b,c,c,d,d],render=(o,p)=>{const v={},$=performance.now(),m=blendMode==="wasm"?jassubObj.renderBlend(o,p||0):jassubObj.renderImage(o,p||0);if(debug){const S=performance.now(),F=jassubObj.time;v.WASMRenderTime=F-$,v.WASMBitmapDecodeTime=S-F,v.JSRenderTime=Date.now()}if(jassubObj.changed!==0||p){const S=[],F=[];if(!m)return paintImages({images:S,buffers:F,times:v});if(asyncRender){const C=[];for(let A=m,j=0;j<jassubObj.count;A=A.next,++j){const E={w:A.w,h:A.h,x:A.x,y:A.y},k=A.image,O=hasBitmapBug?self.HEAPU8C.slice(k,k+E.w*E.h*4):self.HEAPU8C.subarray(k,k+E.w*E.h*4);C.push(createImageBitmap(new ImageData(O,E.w,E.h))),S.push(E)}Promise.all(C).then(A=>{for(let j=0;j<S.length;j++)S[j].image=A[j];debug&&(v.JSBitmapGenerationTime=Date.now()-v.JSRenderTime),paintImages({images:S,buffers:A,times:v})})}else{for(let C=m,A=0;A<jassubObj.count;C=C.next,++A){const j={w:C.w,h:C.h,x:C.x,y:C.y,image:C.image};if(!offCanvasCtx){const E=self.wasmMemory.buffer.slice(C.image,C.image+C.w*C.h*4);F.push(E),j.image=E}S.push(j)}paintImages({images:S,buffers:F,times:v})}}else postMessage({target:"unbusy"})};self.demand=({time:o})=>{lastCurrentTime=o,render(o)};const renderLoop=o=>{rafId=0,render(getCurrentTime(),o),_isPaused||(rafId=requestAnimationFrame(renderLoop))},paintImages=({times:o,images:p,buffers:v})=>{const $={target:"render",asyncRender,images:p,times:o,width:self.width,height:self.height,colorSpace:subtitleColorSpace};if(offscreenRender){(offCanvas.height!==self.height||offCanvas.width!==self.width)&&(offCanvas.width=self.width,offCanvas.height=self.height),offCanvasCtx.clearRect(0,0,self.width,self.height);for(const m of p)m.image&&(asyncRender?(offCanvasCtx.drawImage(m.image,m.x,m.y),m.image.close()):(bufferCanvas.width=m.w,bufferCanvas.height=m.h,bufferCtx.putImageData(new ImageData(self.HEAPU8C.subarray(m.image,m.image+m.w*m.h*4),m.w,m.h),0,0),offCanvasCtx.drawImage(bufferCanvas,m.x,m.y)));if(offscreenRender==="hybrid"){if(!p.length)return postMessage($);debug&&(o.bitmaps=p.length);try{const m=offCanvas.transferToImageBitmap();$.images=[{image:m,x:0,y:0}],$.asyncRender=!0,postMessage($,[m])}catch{postMessage({target:"unbusy"})}}else{if(debug){o.JSRenderTime=Date.now()-o.JSRenderTime-(o.JSBitmapGenerationTime||0);let m=0;for(const S in o)m+=o[S];console.log("Bitmaps: "+p.length+" Total: "+(m|0)+"ms",o)}postMessage({target:"unbusy"})}}else postMessage($,v)},parseAss=o=>{let p,v,$,m,S,F,C,A,j,E;const k=[],O=o.split(/[\r\n]+/g);for(A=0;A<O.length;A++)if(p=O[A].match(/^\[(.*)\]$/),p)v=null,k.push({name:p[1],body:[]});else{if(/^\s*$/.test(O[A])||k.length===0)continue;if(E=k[k.length-1].body,O[A][0]===";")E.push({type:"comment",value:O[A].substring(1)});else{if(m=O[A].split(":"),S=m[0],F=m.slice(1).join(":").trim(),(v||S==="Format")&&(F=F.split(","),v&&F.length>v.length&&($=F.slice(v.length-1).join(","),F=F.slice(0,v.length-1),F.push($)),F=F.map(G=>G.trim()),v)){for(C={},j=0;j<F.length;j++)C[v[j]]=F[j];F=C}S==="Format"&&(v=F),E.push({key:S,value:F})}}return k},blurRegex=/\\blur(?:[0-9]+\.)?[0-9]+/gm,dropBlur=o=>o.replace(blurRegex,""),requestAnimationFrame=(()=>{let o=0;return p=>{const v=Date.now();if(o===0)o=v+1e3/targetFps;else for(;v+2>=o;)o+=1e3/targetFps;const $=Math.max(o-v,0);return setTimeout(p,$)}})(),_applyKeys=(o,p)=>{for(const v of Object.keys(o))p[v]=o[v]};let offCanvas,offCanvasCtx,offscreenRender,bufferCanvas,bufferCtx,jassubObj,subtitleColorSpace,dropAllBlur,_malloc,hasBitmapBug;self.init=data=>{hasBitmapBug=data.hasBitmapBug;try{const o=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(!(o instanceof WebAssembly.Module)||!(new WebAssembly.Instance(o)instanceof WebAssembly.Instance))throw new Error("WASM not supported")}catch(e){console.warn(e),eval(read_(data.legacyWasmUrl))}const _fetch=fetch,wasm=!WebAssembly.instantiateStreaming&&read_(data.wasmUrl,!0);WebAssembly.instantiateStreaming&&(self.fetch=o=>_fetch(data.wasmUrl)),Module({wasm}).then(o=>{_malloc=o._malloc,self.width=data.width,self.height=data.height,blendMode=data.blendMode,asyncRender=data.asyncRender,asyncRender&&typeof createImageBitmap>"u"&&(asyncRender=!1,console.error("'createImageBitmap' needed for 'asyncRender' unsupported!")),availableFonts=data.availableFonts,debug=data.debug,targetFps=data.targetFps||targetFps,useLocalFonts=data.useLocalFonts,dropAllBlur=data.dropAllBlur;const p=data.fallbackFont.toLowerCase();jassubObj=new o.JASSUB(self.width,self.height,p||null,debug),p&&findAvailableFonts(p);let v=data.subContent;v||(v=read_(data.subUrl)),processAvailableFonts(v),dropAllBlur&&(v=dropBlur(v));for(const $ of data.fonts||[])asyncWrite($);jassubObj.createTrackMem(v),subtitleColorSpace=libassYCbCrMap[jassubObj.trackColorSpace],jassubObj.setDropAnimations(data.dropAllAnimations||0),(data.libassMemoryLimit>0||data.libassGlyphLimit>0)&&jassubObj.setMemoryLimits(data.libassGlyphLimit||0,data.libassMemoryLimit||0),postMessage({target:"ready"}),postMessage({target:"verifyColorSpace",subtitleColorSpace})})};self.offscreenCanvas=({transferable:o})=>{offCanvas=o[0],offCanvasCtx=offCanvas.getContext("2d"),asyncRender||(bufferCanvas=new OffscreenCanvas(self.height,self.width),bufferCtx=bufferCanvas.getContext("2d",{desynchronized:!0})),offscreenRender=!0};self.detachOffscreen=()=>{offCanvas=new OffscreenCanvas(self.height,self.width),offCanvasCtx=offCanvas.getContext("2d",{desynchronized:!0}),offscreenRender="hybrid"};self.canvas=({width:o,height:p,force:v})=>{if(o==null)throw new Error("Invalid canvas size specified");self.width=o,self.height=p,jassubObj&&jassubObj.resizeCanvas(o,p),v&&render(lastCurrentTime,!0)};self.video=({currentTime:o,isPaused:p,rate:v})=>{o!=null&&setCurrentTime(o),p!=null&&setIsPaused(p),v=v||v};self.destroy=()=>{jassubObj.quitLibrary()};self.createEvent=({event:o})=>{_applyKeys(o,jassubObj.getEvent(jassubObj.allocEvent()))};self.getEvents=()=>{const o=[];for(let p=0;p<jassubObj.getEventCount();p++){const{Start:v,Duration:$,ReadOrder:m,Layer:S,Style:F,MarginL:C,MarginR:A,MarginV:j,Name:E,Text:k,Effect:O}=jassubObj.getEvent(p);o.push({Start:v,Duration:$,ReadOrder:m,Layer:S,Style:F,MarginL:C,MarginR:A,MarginV:j,Name:E,Text:k,Effect:O})}postMessage({target:"getEvents",events:o})};self.setEvent=({event:o,index:p})=>{_applyKeys(o,jassubObj.getEvent(p))};self.removeEvent=({index:o})=>{jassubObj.removeEvent(o)};self.createStyle=({style:o})=>{_applyKeys(o,jassubObj.getStyle(jassubObj.allocStyle()))};self.getStyles=()=>{const o=[];for(let p=0;p<jassubObj.getStyleCount();p++){const{Name:v,FontName:$,FontSize:m,PrimaryColour:S,SecondaryColour:F,OutlineColour:C,BackColour:A,Bold:j,Italic:E,Underline:k,StrikeOut:O,ScaleX:G,ScaleY:R,Spacing:le,Angle:fe,BorderStyle:B,Outline:ue,Shadow:Y,Alignment:ce,MarginL:de,MarginR:X,MarginV:_e,Encoding:$e,treat_fontname_as_pattern:Te,Blur:Pe,Justify:Ae}=jassubObj.getStyle(p);o.push({Name:v,FontName:$,FontSize:m,PrimaryColour:S,SecondaryColour:F,OutlineColour:C,BackColour:A,Bold:j,Italic:E,Underline:k,StrikeOut:O,ScaleX:G,ScaleY:R,Spacing:le,Angle:fe,BorderStyle:B,Outline:ue,Shadow:Y,Alignment:ce,MarginL:de,MarginR:X,MarginV:_e,Encoding:$e,treat_fontname_as_pattern:Te,Blur:Pe,Justify:Ae})}postMessage({target:"getStyles",time:Date.now(),styles:o})};self.setStyle=({style:o,index:p})=>{_applyKeys(o,jassubObj.getStyle(p))};self.removeStyle=({index:o})=>{jassubObj.removeStyle(o)};onmessage=({data:o})=>{if(self[o.target])self[o.target](o);else throw new Error("Unknown event target "+o.target)};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var Module=
|
|
2
2
|
function(Module = {}) {
|
|
3
3
|
|
|
4
|
-
var Module=Module;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var out=text=>console.log(text);var err=text=>console.error(text);function ready(){readyPromiseResolve(Module)}function assert(c,m){if(!c)throw m}let asm=null;out=text=>{if(text==="JASSUB: No usable fontconfig configuration file found, using fallback."){console.debug(text)}else{console.log(text)}};err=text=>{if(text==="Fontconfig error: Cannot load default config file: No such file: (null)"){console.debug(text)}else{console.error(text)}};updateMemoryViews=(_super=>{return()=>{_super();self.wasmMemory=wasmMemory;self.HEAPU8C=new Uint8ClampedArray(wasmMemory.buffer);self.HEAPU8=new Uint8Array(wasmMemory.buffer)}})(updateMemoryViews);if(!String.prototype.startsWith){String.prototype.startsWith=function(s,p){if(p===undefined){p=0}return this.substring(p,s.length)===s}}if(!String.prototype.includes){String.prototype.includes=function(s,p){return this.indexOf(s,p)!==-1}}function abort(what){throw what}var HEAP8,HEAP16,HEAP32,HEAPU8,HEAPU16,HEAPU32,HEAPF32,HEAPF64,wasmMemory,wasmTable;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAP32=new Int32Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b)}wasmMemory=new WebAssembly.Memory({"initial":256,"maximum":32768});updateMemoryViews();var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function ___assert_fail(condition,filename,line,func){abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}var SYSCALLS={varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;return 0}function ___syscall_fstat64(fd,buf){}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function ___syscall_getdents64(fd,dirp,count){}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;return 0}function ___syscall_newfstatat(dirfd,path,buf,flags){}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs}function ___syscall_stat64(path,buf){}function __embind_register_bigint(primitiveType,name,size,minRange,maxRange){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}return name}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return{[name]:function(){return body.apply(this,arguments)}}[name]}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;dependentTypes.forEach((dt,i)=>{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}});if(0===unregisteredTypes.length){onComplete(typeConverters)}}function registerType(rawType,registeredInstance,options={}){if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(wt){return!!wt},"toWireType":function(destructors,o){return o?trueValue:falseValue},"argPackAdvance":8,"readValueFromPointer":function(pointer){var heap;if(size===1){heap=HEAP8}else if(size===2){heap=HEAP16}else if(size===4){heap=HEAP32}else{throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])},destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}var finalizationRegistry=false;function detachFinalizer(handle){}function runDestructor($$){if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function releaseClassHandle($$){$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$)}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}var registeredPointers={};function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}var delayFunction=undefined;function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record}}))}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function attachFinalizer(handle){if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry(info=>{releaseClassHandle(info.$$)});attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$:$$};finalizationRegistry.register(handle,info,handle)}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle(function(){clonedHandle["delete"]()}));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAP32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function dynCallLegacy(sig,ptr,args){var f=dynCalls[sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}var rtn=getWasmTableEntry(ptr).apply(null,args);return rtn}function getDynCaller(sig,ptr){var argCache=[];return function(){argCache.length=0;Object.assign(argCache,arguments);return dynCall(sig,ptr,argCache)}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(){if(signature.includes("j")){return getDynCaller(signature,rawFunction)}return getWasmTableEntry(rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp}var UnboundTypeError=undefined;function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(message+": "+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast)}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast)}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType])});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(legalFunctionName,function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,arguments)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){if(registeredClass.baseClass.__derivedClasses===undefined){registeredClass.baseClass.__derivedClasses=[]}registeredClass.baseClass.__derivedClasses.push(registeredClass)}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]})}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i<count;i++){array.push(HEAPU32[firstElement+i*4>>2])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function newFunc(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`)}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,isAsync){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){needsDestructorStack=true;break}}var returns=argTypes[0].name!=="void";var argsList="";var argsListWired="";for(var i=0;i<argCount-2;++i){argsList+=(i!==0?", ":"")+"arg"+i;argsListWired+=(i!==0?", ":"")+"arg"+i+"Wired"}var invokerFnBody="return function "+makeLegalFunctionName(humanName)+"("+argsList+") {\n"+"if (arguments.length !== "+(argCount-2)+") {\n"+"throwBindingError('function "+humanName+" called with ' + arguments.length + ' arguments, expected "+(argCount-2)+" args!');\n"+"}\n";if(needsDestructorStack){invokerFnBody+="var destructors = [];\n"}var dtorStack=needsDestructorStack?"destructors":"null";var args1=["throwBindingError","invoker","fn","runDestructors","retType","classParam"];var args2=[throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,argTypes[0],argTypes[1]];if(isClassMethodFunc){invokerFnBody+="var thisWired = classParam.toWireType("+dtorStack+", this);\n"}for(var i=0;i<argCount-2;++i){invokerFnBody+="var arg"+i+"Wired = argType"+i+".toWireType("+dtorStack+", arg"+i+"); // "+argTypes[i+2].name+"\n";args1.push("argType"+i);args2.push(argTypes[i+2])}if(isClassMethodFunc){argsListWired="thisWired"+(argsListWired.length>0?", ":"")+argsListWired}invokerFnBody+=(returns||isAsync?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){var paramName=i===1?"thisWired":"arg"+(i-2)+"Wired";if(argTypes[i].destructorFunction!==null){invokerFnBody+=paramName+"_dtor("+paramName+"); // "+argTypes[i].name+"\n";args1.push(paramName+"_dtor");args2.push(argTypes[i].destructorFunction)}}}if(returns){invokerFnBody+="var ret = retType.fromWireType(rv);\n"+"return ret;\n"}else{}invokerFnBody+="}\n";args1.push(invokerFnBody);return newFunc(Function,args1).apply(null,args2)}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){assert(argCount>0);var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount-1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`)}classType.registeredClass.constructor_body[argCount-1]=()=>{throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`,rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)]}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context,isAsync);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]});return[]})}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError(`cannot call emscripten binding method ${humanName} on deleted object`)}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:function(){throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=()=>{throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])}}else{desc.set=v=>{throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],function(types){var getterReturnType=types[0];var desc={get:function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})}function HandleAllocator(){this.allocated=[undefined];this.freelist=[];this.get=function(id){return this.allocated[id]};this.allocate=function(handle){var id=this.freelist.pop()||this.allocated.length;this.allocated[id]=handle;return id};this.free=function(id){this.allocated[id]=undefined;this.freelist.push(id)}}var emval_handles=new HandleAllocator;function __emval_decref(handle){if(handle>=emval_handles.reserved&&0===--emval_handles.get(handle).refcount){emval_handles.free(handle)}}function count_emval_handles(){var count=0;for(var i=emval_handles.reserved;i<emval_handles.allocated.length;++i){if(emval_handles.allocated[i]!==undefined){++count}}return count}function init_emval(){emval_handles.allocated.push({value:undefined},{value:null},{value:true},{value:false});emval_handles.reserved=emval_handles.allocated.length;Module["count_emval_handles"]=count_emval_handles}var Emval={toValue:handle=>{if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handles.get(handle).value},toHandle:value=>{switch(value){case undefined:return 1;case null:return 2;case true:return 3;case false:return 4;default:{return emval_handles.allocate({refcount:1,value:value})}}}};function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=Emval.toValue(handle);__emval_decref(handle);return rv},"toWireType":function(destructors,value){return Emval.toHandle(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function embindRepr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=value=>value;if(minRange===0){var bitshift=32-8*size;fromWireType=value=>value<<bitshift>>>bitshift}var isUnsignedType=name.includes("unsigned");var checkAssertions=(value,toTypeName)=>{};var toWireType;if(isUnsignedType){toWireType=function(destructors,value){checkAssertions(value,this.name);return value>>>0}}else{toWireType=function(destructors,value){checkAssertions(value,this.name);return value}}registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":toWireType,"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAPU8[payload+i])}str=a.join("")}_free(value);return str},"toWireType":function(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var length;var valueIsOfTypeString=typeof value=="string";if(!(valueIsOfTypeString||value instanceof Uint8Array||value instanceof Uint8ClampedArray||value instanceof Int8Array)){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){length=lengthBytesUTF8(value)}else{length=value.length}var base=_malloc(4+length+1);var ptr=base+4;HEAPU32[base>>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr,length+1)}else{if(valueIsOfTypeString){for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}else{for(var i=0;i<length;++i){HEAPU8[ptr+i]=value[i]}}}if(destructors!==null){destructors.push(_free,base)}return base},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr));var str="";for(var i=0;!(i>=maxBytesToRead/2);++i){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var decodeString,encodeString,getHeap,lengthBytesUTF,shift;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;getHeap=()=>HEAPU16;shift=1}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;getHeap=()=>HEAPU32;shift=2}registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value=="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function __emscripten_throw_longjmp(){throw Infinity}function __mmap_js(len,prot,flags,fd,off,allocated,addr){return-52}function __munmap_js(addr,len,prot,flags,fd,offset){}function _abort(){abort("")}var _emscripten_get_now;_emscripten_get_now=()=>performance.now();function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;try{wasmMemory.grow(size-b.byteLength+65535>>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ENV={};function getExecutableName(){return"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function stringToAscii(str,buffer){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}HEAP8[buffer>>0]=0}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>2]=bufSize;return 0}function _proc_exit(code){throw"exit("+code+")"}var _exit=_proc_exit;function _fd_close(fd){return 52}function _fd_read(fd,iov,iovcnt,pnum){return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){return 70}var printCharBuffers=[null,[],[]];function printChar(stream,curr){var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU32[pnum>>2]=num;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_embind();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();var wasmImports={"b":___assert_fail,"k":___syscall_fcntl64,"I":___syscall_fstat64,"B":___syscall_getdents64,"K":___syscall_ioctl,"G":___syscall_newfstatat,"n":___syscall_openat,"H":___syscall_stat64,"u":__embind_register_bigint,"r":__embind_register_bool,"j":__embind_register_class,"A":__embind_register_class_constructor,"d":__embind_register_class_function,"c":__embind_register_class_property,"L":__embind_register_emval,"p":__embind_register_float,"g":__embind_register_integer,"e":__embind_register_memory_view,"q":__embind_register_std_string,"l":__embind_register_std_wstring,"s":__embind_register_void,"y":__emscripten_throw_longjmp,"C":__mmap_js,"D":__munmap_js,"f":_abort,"m":_emscripten_get_now,"z":_emscripten_resize_heap,"E":_environ_get,"F":_environ_sizes_get,"h":_exit,"i":_fd_close,"o":_fd_read,"t":_fd_seek,"J":_fd_write,"x":invoke_iii,"v":invoke_iiii,"w":invoke_iiiii,"a":wasmMemory};function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}Module["getTempRet0"]=getTempRet0;Module["setTempRet0"]=setTempRet0;function initRuntime(asm){asm["M"]()}var imports={"a":wasmImports};var _malloc,_free,___getTypeName,__embind_initialize_bindings,_setThrew,setTempRet0,getTempRet0,stackSave,stackRestore,stackAlloc,dynCall_viiiiji,dynCall_jiji,dynCall_jij;(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(fetch("jassub-worker-modern.wasm"),imports):WebAssembly.instantiate(Module["wasm"],imports)).then(function(output){asm=(output.instance||output).exports;Module["_malloc"]=_malloc=asm["N"];_free=asm["O"];___getTypeName=asm["P"];Module["__embind_initialize_bindings"]=__embind_initialize_bindings=asm["Q"];_setThrew=asm["S"];setTempRet0=asm["T"];getTempRet0=asm["U"];stackSave=asm["V"];stackRestore=asm["W"];stackAlloc=asm["X"];dynCall_viiiiji=asm["Y"];dynCall_jiji=asm["Z"];dynCall_jij=asm["_"];wasmTable=asm["R"];initRuntime(asm);ready()});
|
|
4
|
+
var Module=Module;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var out=text=>console.log(text);var err=text=>console.error(text);function ready(){readyPromiseResolve(Module)}function assert(c,m){if(!c)throw m}let asm=null;out=text=>{if(text==="JASSUB: No usable fontconfig configuration file found, using fallback."){console.debug(text)}else{console.log(text)}};err=text=>{if(text==="Fontconfig error: Cannot load default config file: No such file: (null)"){console.debug(text)}else{console.error(text)}};updateMemoryViews=(_super=>{return()=>{_super();self.wasmMemory=wasmMemory;self.HEAPU8C=new Uint8ClampedArray(wasmMemory.buffer);self.HEAPU8=new Uint8Array(wasmMemory.buffer)}})(updateMemoryViews);if(!String.prototype.startsWith){String.prototype.startsWith=function(s,p=0){return this.substring(p,s.length)===s}}if(!String.prototype.includes){String.prototype.includes=function(s,p){return this.indexOf(s,p)!==-1}}if(!Uint8Array.prototype.slice){Uint8Array.prototype.slice=function(b,e){return new Uint8Array(this.subarray(b,e))}}function abort(what){throw what}var HEAP8,HEAP16,HEAP32,HEAPU8,HEAPU16,HEAPU32,HEAPF32,HEAPF64,wasmMemory,wasmTable;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAP32=new Int32Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b)}wasmMemory=new WebAssembly.Memory({"initial":256,"maximum":32768});updateMemoryViews();var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str}function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}function ___assert_fail(condition,filename,line,func){abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])}var SYSCALLS={varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;return 0}function ___syscall_fstat64(fd,buf){}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function ___syscall_getdents64(fd,dirp,count){}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;return 0}function ___syscall_newfstatat(dirfd,path,buf,flags){}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs}function ___syscall_stat64(path,buf){}function __embind_register_bigint(primitiveType,name,size,minRange,maxRange){}function getShiftFromSize(size){switch(size){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+size)}}function embind_init_charCodes(){var codes=new Array(256);for(var i=0;i<256;++i){codes[i]=String.fromCharCode(i)}embind_charCodes=codes}var embind_charCodes=undefined;function readLatin1String(ptr){var ret="";var c=ptr;while(HEAPU8[c]){ret+=embind_charCodes[HEAPU8[c++]]}return ret}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var char_0=48;var char_9=57;function makeLegalFunctionName(name){if(undefined===name){return"_unknown"}name=name.replace(/[^a-zA-Z0-9_]/g,"$");var f=name.charCodeAt(0);if(f>=char_0&&f<=char_9){return"_"+name}return name}function createNamedFunction(name,body){name=makeLegalFunctionName(name);return{[name]:function(){return body.apply(this,arguments)}}[name]}function extendError(baseErrorType,errorName){var errorClass=createNamedFunction(errorName,function(message){this.name=errorName;this.message=message;var stack=new Error(message).stack;if(stack!==undefined){this.stack=this.toString()+"\n"+stack.replace(/^Error(:[^\n]*)?\n/,"")}});errorClass.prototype=Object.create(baseErrorType.prototype);errorClass.prototype.constructor=errorClass;errorClass.prototype.toString=function(){if(this.message===undefined){return this.name}else{return this.name+": "+this.message}};return errorClass}var BindingError=undefined;function throwBindingError(message){throw new BindingError(message)}var InternalError=undefined;function throwInternalError(message){throw new InternalError(message)}function whenDependentTypesAreResolved(myTypes,dependentTypes,getTypeConverters){myTypes.forEach(function(type){typeDependencies[type]=dependentTypes});function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;dependentTypes.forEach((dt,i)=>{if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}});if(0===unregisteredTypes.length){onComplete(typeConverters)}}function registerType(rawType,registeredInstance,options={}){if(!("argPackAdvance"in registeredInstance)){throw new TypeError("registerType registeredInstance requires argPackAdvance")}var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}function __embind_register_bool(rawType,name,size,trueValue,falseValue){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(wt){return!!wt},"toWireType":function(destructors,o){return o?trueValue:falseValue},"argPackAdvance":8,"readValueFromPointer":function(pointer){var heap;if(size===1){heap=HEAP8}else if(size===2){heap=HEAP16}else if(size===4){heap=HEAP32}else{throw new TypeError("Unknown boolean type size: "+name)}return this["fromWireType"](heap[pointer>>shift])},destructorFunction:null})}function ClassHandle_isAliasOf(other){if(!(this instanceof ClassHandle)){return false}if(!(other instanceof ClassHandle)){return false}var leftClass=this.$$.ptrType.registeredClass;var left=this.$$.ptr;var rightClass=other.$$.ptrType.registeredClass;var right=other.$$.ptr;while(leftClass.baseClass){left=leftClass.upcast(left);leftClass=leftClass.baseClass}while(rightClass.baseClass){right=rightClass.upcast(right);rightClass=rightClass.baseClass}return leftClass===rightClass&&left===right}function shallowCopyInternalPointer(o){return{count:o.count,deleteScheduled:o.deleteScheduled,preservePointerOnDelete:o.preservePointerOnDelete,ptr:o.ptr,ptrType:o.ptrType,smartPtr:o.smartPtr,smartPtrType:o.smartPtrType}}function throwInstanceAlreadyDeleted(obj){function getInstanceTypeName(handle){return handle.$$.ptrType.registeredClass.name}throwBindingError(getInstanceTypeName(obj)+" instance already deleted")}var finalizationRegistry=false;function detachFinalizer(handle){}function runDestructor($$){if($$.smartPtr){$$.smartPtrType.rawDestructor($$.smartPtr)}else{$$.ptrType.registeredClass.rawDestructor($$.ptr)}}function releaseClassHandle($$){$$.count.value-=1;var toDelete=0===$$.count.value;if(toDelete){runDestructor($$)}}function downcastPointer(ptr,ptrClass,desiredClass){if(ptrClass===desiredClass){return ptr}if(undefined===desiredClass.baseClass){return null}var rv=downcastPointer(ptr,ptrClass,desiredClass.baseClass);if(rv===null){return null}return desiredClass.downcast(rv)}var registeredPointers={};function getInheritedInstanceCount(){return Object.keys(registeredInstances).length}function getLiveInheritedInstances(){var rv=[];for(var k in registeredInstances){if(registeredInstances.hasOwnProperty(k)){rv.push(registeredInstances[k])}}return rv}var deletionQueue=[];function flushPendingDeletes(){while(deletionQueue.length){var obj=deletionQueue.pop();obj.$$.deleteScheduled=false;obj["delete"]()}}var delayFunction=undefined;function setDelayFunction(fn){delayFunction=fn;if(deletionQueue.length&&delayFunction){delayFunction(flushPendingDeletes)}}function init_embind(){Module["getInheritedInstanceCount"]=getInheritedInstanceCount;Module["getLiveInheritedInstances"]=getLiveInheritedInstances;Module["flushPendingDeletes"]=flushPendingDeletes;Module["setDelayFunction"]=setDelayFunction}var registeredInstances={};function getBasestPointer(class_,ptr){if(ptr===undefined){throwBindingError("ptr should not be undefined")}while(class_.baseClass){ptr=class_.upcast(ptr);class_=class_.baseClass}return ptr}function getInheritedInstance(class_,ptr){ptr=getBasestPointer(class_,ptr);return registeredInstances[ptr]}function makeClassHandle(prototype,record){if(!record.ptrType||!record.ptr){throwInternalError("makeClassHandle requires ptr and ptrType")}var hasSmartPtrType=!!record.smartPtrType;var hasSmartPtr=!!record.smartPtr;if(hasSmartPtrType!==hasSmartPtr){throwInternalError("Both smartPtrType and smartPtr must be specified")}record.count={value:1};return attachFinalizer(Object.create(prototype,{$$:{value:record}}))}function RegisteredPointer_fromWireType(ptr){var rawPointer=this.getPointee(ptr);if(!rawPointer){this.destructor(ptr);return null}var registeredInstance=getInheritedInstance(this.registeredClass,rawPointer);if(undefined!==registeredInstance){if(0===registeredInstance.$$.count.value){registeredInstance.$$.ptr=rawPointer;registeredInstance.$$.smartPtr=ptr;return registeredInstance["clone"]()}else{var rv=registeredInstance["clone"]();this.destructor(ptr);return rv}}function makeDefaultHandle(){if(this.isSmartPointer){return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:rawPointer,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:ptr})}}var actualType=this.registeredClass.getActualType(rawPointer);var registeredPointerRecord=registeredPointers[actualType];if(!registeredPointerRecord){return makeDefaultHandle.call(this)}var toType;if(this.isConst){toType=registeredPointerRecord.constPointerType}else{toType=registeredPointerRecord.pointerType}var dp=downcastPointer(rawPointer,this.registeredClass,toType.registeredClass);if(dp===null){return makeDefaultHandle.call(this)}if(this.isSmartPointer){return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp,smartPtrType:this,smartPtr:ptr})}else{return makeClassHandle(toType.registeredClass.instancePrototype,{ptrType:toType,ptr:dp})}}function attachFinalizer(handle){if("undefined"===typeof FinalizationRegistry){attachFinalizer=handle=>handle;return handle}finalizationRegistry=new FinalizationRegistry(info=>{releaseClassHandle(info.$$)});attachFinalizer=handle=>{var $$=handle.$$;var hasSmartPtr=!!$$.smartPtr;if(hasSmartPtr){var info={$$:$$};finalizationRegistry.register(handle,info,handle)}return handle};detachFinalizer=handle=>finalizationRegistry.unregister(handle);return attachFinalizer(handle)}function ClassHandle_clone(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.preservePointerOnDelete){this.$$.count.value+=1;return this}else{var clone=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));clone.$$.count.value+=1;clone.$$.deleteScheduled=false;return clone}}function ClassHandle_delete(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}detachFinalizer(this);releaseClassHandle(this.$$);if(!this.$$.preservePointerOnDelete){this.$$.smartPtr=undefined;this.$$.ptr=undefined}}function ClassHandle_isDeleted(){return!this.$$.ptr}function ClassHandle_deleteLater(){if(!this.$$.ptr){throwInstanceAlreadyDeleted(this)}if(this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete){throwBindingError("Object already scheduled for deletion")}deletionQueue.push(this);if(deletionQueue.length===1&&delayFunction){delayFunction(flushPendingDeletes)}this.$$.deleteScheduled=true;return this}function init_ClassHandle(){ClassHandle.prototype["isAliasOf"]=ClassHandle_isAliasOf;ClassHandle.prototype["clone"]=ClassHandle_clone;ClassHandle.prototype["delete"]=ClassHandle_delete;ClassHandle.prototype["isDeleted"]=ClassHandle_isDeleted;ClassHandle.prototype["deleteLater"]=ClassHandle_deleteLater}function ClassHandle(){}function ensureOverloadTable(proto,methodName,humanName){if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(){if(!proto[methodName].overloadTable.hasOwnProperty(arguments.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[arguments.length].apply(this,arguments)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}}function exposePublicSymbol(name,value,numArguments){if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;if(undefined!==numArguments){Module[name].numArguments=numArguments}}}function RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast){this.name=name;this.constructor=constructor;this.instancePrototype=instancePrototype;this.rawDestructor=rawDestructor;this.baseClass=baseClass;this.getActualType=getActualType;this.upcast=upcast;this.downcast=downcast;this.pureVirtualFunctions=[]}function upcastPointer(ptr,ptrClass,desiredClass){while(ptrClass!==desiredClass){if(!ptrClass.upcast){throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`)}ptr=ptrClass.upcast(ptr);ptrClass=ptrClass.baseClass}return ptr}function constNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError("Cannot pass deleted object as a pointer of type "+this.name)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function genericPointerToWireType(destructors,handle){var ptr;if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}if(this.isSmartPointer){ptr=this.rawConstructor();if(destructors!==null){destructors.push(this.rawDestructor,ptr)}return ptr}else{return 0}}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(!this.isConst&&handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);if(this.isSmartPointer){if(undefined===handle.$$.smartPtr){throwBindingError("Passing raw pointer to smart pointer is illegal")}switch(this.sharingPolicy){case 0:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{throwBindingError(`Cannot convert argument of type ${handle.$$.smartPtrType?handle.$$.smartPtrType.name:handle.$$.ptrType.name} to parameter type ${this.name}`)}break;case 1:ptr=handle.$$.smartPtr;break;case 2:if(handle.$$.smartPtrType===this){ptr=handle.$$.smartPtr}else{var clonedHandle=handle["clone"]();ptr=this.rawShare(ptr,Emval.toHandle(function(){clonedHandle["delete"]()}));if(destructors!==null){destructors.push(this.rawDestructor,ptr)}}break;default:throwBindingError("Unsupporting sharing policy")}}return ptr}function nonConstNoSmartPtrRawPointerToWireType(destructors,handle){if(handle===null){if(this.isReference){throwBindingError("null is not a valid "+this.name)}return 0}if(!handle.$$){throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`)}if(!handle.$$.ptr){throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`)}if(handle.$$.ptrType.isConst){throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`)}var handleClass=handle.$$.ptrType.registeredClass;var ptr=upcastPointer(handle.$$.ptr,handleClass,this.registeredClass);return ptr}function simpleReadValueFromPointer(pointer){return this["fromWireType"](HEAP32[pointer>>2])}function RegisteredPointer_getPointee(ptr){if(this.rawGetPointee){ptr=this.rawGetPointee(ptr)}return ptr}function RegisteredPointer_destructor(ptr){if(this.rawDestructor){this.rawDestructor(ptr)}}function RegisteredPointer_deleteObject(handle){if(handle!==null){handle["delete"]()}}function init_RegisteredPointer(){RegisteredPointer.prototype.getPointee=RegisteredPointer_getPointee;RegisteredPointer.prototype.destructor=RegisteredPointer_destructor;RegisteredPointer.prototype["argPackAdvance"]=8;RegisteredPointer.prototype["readValueFromPointer"]=simpleReadValueFromPointer;RegisteredPointer.prototype["deleteObject"]=RegisteredPointer_deleteObject;RegisteredPointer.prototype["fromWireType"]=RegisteredPointer_fromWireType}function RegisteredPointer(name,registeredClass,isReference,isConst,isSmartPointer,pointeeType,sharingPolicy,rawGetPointee,rawConstructor,rawShare,rawDestructor){this.name=name;this.registeredClass=registeredClass;this.isReference=isReference;this.isConst=isConst;this.isSmartPointer=isSmartPointer;this.pointeeType=pointeeType;this.sharingPolicy=sharingPolicy;this.rawGetPointee=rawGetPointee;this.rawConstructor=rawConstructor;this.rawShare=rawShare;this.rawDestructor=rawDestructor;if(!isSmartPointer&®isteredClass.baseClass===undefined){if(isConst){this["toWireType"]=constNoSmartPtrRawPointerToWireType;this.destructorFunction=null}else{this["toWireType"]=nonConstNoSmartPtrRawPointerToWireType;this.destructorFunction=null}}else{this["toWireType"]=genericPointerToWireType}}function replacePublicSymbol(name,value,numArguments){if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistant public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}}function dynCallLegacy(sig,ptr,args){var f=dynCalls[sig];return args&&args.length?f.apply(null,[ptr].concat(args)):f.call(null,ptr)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function dynCall(sig,ptr,args){if(sig.includes("j")){return dynCallLegacy(sig,ptr,args)}var rtn=getWasmTableEntry(ptr).apply(null,args);return rtn}function getDynCaller(sig,ptr){var argCache=[];return function(){argCache.length=0;Object.assign(argCache,arguments);return dynCall(sig,ptr,argCache)}}function embind__requireFunction(signature,rawFunction){signature=readLatin1String(signature);function makeDynCaller(){if(signature.includes("j")){return getDynCaller(signature,rawFunction)}return getWasmTableEntry(rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp}var UnboundTypeError=undefined;function getTypeName(type){var ptr=___getTypeName(type);var rv=readLatin1String(ptr);_free(ptr);return rv}function throwUnboundTypeError(message,types){var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(message+": "+unboundTypes.map(getTypeName).join([", "]))}function __embind_register_class(rawType,rawPointerType,rawConstPointerType,baseClassRawType,getActualTypeSignature,getActualType,upcastSignature,upcast,downcastSignature,downcast,name,destructorSignature,rawDestructor){name=readLatin1String(name);getActualType=embind__requireFunction(getActualTypeSignature,getActualType);if(upcast){upcast=embind__requireFunction(upcastSignature,upcast)}if(downcast){downcast=embind__requireFunction(downcastSignature,downcast)}rawDestructor=embind__requireFunction(destructorSignature,rawDestructor);var legalFunctionName=makeLegalFunctionName(name);exposePublicSymbol(legalFunctionName,function(){throwUnboundTypeError(`Cannot construct ${name} due to unbound types`,[baseClassRawType])});whenDependentTypesAreResolved([rawType,rawPointerType,rawConstPointerType],baseClassRawType?[baseClassRawType]:[],function(base){base=base[0];var baseClass;var basePrototype;if(baseClassRawType){baseClass=base.registeredClass;basePrototype=baseClass.instancePrototype}else{basePrototype=ClassHandle.prototype}var constructor=createNamedFunction(legalFunctionName,function(){if(Object.getPrototypeOf(this)!==instancePrototype){throw new BindingError("Use 'new' to construct "+name)}if(undefined===registeredClass.constructor_body){throw new BindingError(name+" has no accessible constructor")}var body=registeredClass.constructor_body[arguments.length];if(undefined===body){throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`)}return body.apply(this,arguments)});var instancePrototype=Object.create(basePrototype,{constructor:{value:constructor}});constructor.prototype=instancePrototype;var registeredClass=new RegisteredClass(name,constructor,instancePrototype,rawDestructor,baseClass,getActualType,upcast,downcast);if(registeredClass.baseClass){if(registeredClass.baseClass.__derivedClasses===undefined){registeredClass.baseClass.__derivedClasses=[]}registeredClass.baseClass.__derivedClasses.push(registeredClass)}var referenceConverter=new RegisteredPointer(name,registeredClass,true,false,false);var pointerConverter=new RegisteredPointer(name+"*",registeredClass,false,false,false);var constPointerConverter=new RegisteredPointer(name+" const*",registeredClass,false,true,false);registeredPointers[rawType]={pointerType:pointerConverter,constPointerType:constPointerConverter};replacePublicSymbol(legalFunctionName,constructor);return[referenceConverter,pointerConverter,constPointerConverter]})}function heap32VectorToArray(count,firstElement){var array=[];for(var i=0;i<count;i++){array.push(HEAPU32[firstElement+i*4>>2])}return array}function runDestructors(destructors){while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}}function newFunc(constructor,argumentList){if(!(constructor instanceof Function)){throw new TypeError(`new_ called with constructor type ${typeof constructor} which is not a function`)}var dummy=createNamedFunction(constructor.name||"unknownFunctionName",function(){});dummy.prototype=constructor.prototype;var obj=new dummy;var r=constructor.apply(obj,argumentList);return r instanceof Object?r:obj}function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,isAsync){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=false;for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){needsDestructorStack=true;break}}var returns=argTypes[0].name!=="void";var argsList="";var argsListWired="";for(var i=0;i<argCount-2;++i){argsList+=(i!==0?", ":"")+"arg"+i;argsListWired+=(i!==0?", ":"")+"arg"+i+"Wired"}var invokerFnBody="return function "+makeLegalFunctionName(humanName)+"("+argsList+") {\n"+"if (arguments.length !== "+(argCount-2)+") {\n"+"throwBindingError('function "+humanName+" called with ' + arguments.length + ' arguments, expected "+(argCount-2)+" args!');\n"+"}\n";if(needsDestructorStack){invokerFnBody+="var destructors = [];\n"}var dtorStack=needsDestructorStack?"destructors":"null";var args1=["throwBindingError","invoker","fn","runDestructors","retType","classParam"];var args2=[throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,argTypes[0],argTypes[1]];if(isClassMethodFunc){invokerFnBody+="var thisWired = classParam.toWireType("+dtorStack+", this);\n"}for(var i=0;i<argCount-2;++i){invokerFnBody+="var arg"+i+"Wired = argType"+i+".toWireType("+dtorStack+", arg"+i+"); // "+argTypes[i+2].name+"\n";args1.push("argType"+i);args2.push(argTypes[i+2])}if(isClassMethodFunc){argsListWired="thisWired"+(argsListWired.length>0?", ":"")+argsListWired}invokerFnBody+=(returns||isAsync?"var rv = ":"")+"invoker(fn"+(argsListWired.length>0?", ":"")+argsListWired+");\n";if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){var paramName=i===1?"thisWired":"arg"+(i-2)+"Wired";if(argTypes[i].destructorFunction!==null){invokerFnBody+=paramName+"_dtor("+paramName+"); // "+argTypes[i].name+"\n";args1.push(paramName+"_dtor");args2.push(argTypes[i].destructorFunction)}}}if(returns){invokerFnBody+="var ret = retType.fromWireType(rv);\n"+"return ret;\n"}else{}invokerFnBody+="}\n";args1.push(invokerFnBody);return newFunc(Function,args1).apply(null,args2)}function __embind_register_class_constructor(rawClassType,argCount,rawArgTypesAddr,invokerSignature,invoker,rawConstructor){assert(argCount>0);var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);invoker=embind__requireFunction(invokerSignature,invoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName="constructor "+classType.name;if(undefined===classType.registeredClass.constructor_body){classType.registeredClass.constructor_body=[]}if(undefined!==classType.registeredClass.constructor_body[argCount-1]){throw new BindingError(`Cannot register multiple constructors with identical number of parameters (${argCount-1}) for class '${classType.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`)}classType.registeredClass.constructor_body[argCount-1]=()=>{throwUnboundTypeError(`Cannot construct ${classType.name} due to unbound types`,rawArgTypes)};whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){argTypes.splice(1,0,null);classType.registeredClass.constructor_body[argCount-1]=craftInvokerFunction(humanName,argTypes,null,invoker,rawConstructor);return[]});return[]})}function __embind_register_class_function(rawClassType,methodName,argCount,rawArgTypesAddr,invokerSignature,rawInvoker,context,isPureVirtual,isAsync){var rawArgTypes=heap32VectorToArray(argCount,rawArgTypesAddr);methodName=readLatin1String(methodName);rawInvoker=embind__requireFunction(invokerSignature,rawInvoker);whenDependentTypesAreResolved([],[rawClassType],function(classType){classType=classType[0];var humanName=classType.name+"."+methodName;if(methodName.startsWith("@@")){methodName=Symbol[methodName.substring(2)]}if(isPureVirtual){classType.registeredClass.pureVirtualFunctions.push(methodName)}function unboundTypesHandler(){throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`,rawArgTypes)}var proto=classType.registeredClass.instancePrototype;var method=proto[methodName];if(undefined===method||undefined===method.overloadTable&&method.className!==classType.name&&method.argCount===argCount-2){unboundTypesHandler.argCount=argCount-2;unboundTypesHandler.className=classType.name;proto[methodName]=unboundTypesHandler}else{ensureOverloadTable(proto,methodName,humanName);proto[methodName].overloadTable[argCount-2]=unboundTypesHandler}whenDependentTypesAreResolved([],rawArgTypes,function(argTypes){var memberFunction=craftInvokerFunction(humanName,argTypes,classType,rawInvoker,context,isAsync);if(undefined===proto[methodName].overloadTable){memberFunction.argCount=argCount-2;proto[methodName]=memberFunction}else{proto[methodName].overloadTable[argCount-2]=memberFunction}return[]});return[]})}function validateThis(this_,classType,humanName){if(!(this_ instanceof Object)){throwBindingError(humanName+' with invalid "this": '+this_)}if(!(this_ instanceof classType.registeredClass.constructor)){throwBindingError(humanName+' incompatible with "this" of type '+this_.constructor.name)}if(!this_.$$.ptr){throwBindingError(`cannot call emscripten binding method ${humanName} on deleted object`)}return upcastPointer(this_.$$.ptr,this_.$$.ptrType.registeredClass,classType.registeredClass)}function __embind_register_class_property(classType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){fieldName=readLatin1String(fieldName);getter=embind__requireFunction(getterSignature,getter);whenDependentTypesAreResolved([],[classType],function(classType){classType=classType[0];var humanName=classType.name+"."+fieldName;var desc={get:function(){throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])},enumerable:true,configurable:true};if(setter){desc.set=()=>{throwUnboundTypeError(`Cannot access ${humanName} due to unbound types`,[getterReturnType,setterArgumentType])}}else{desc.set=v=>{throwBindingError(humanName+" is a read-only property")}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);whenDependentTypesAreResolved([],setter?[getterReturnType,setterArgumentType]:[getterReturnType],function(types){var getterReturnType=types[0];var desc={get:function(){var ptr=validateThis(this,classType,humanName+" getter");return getterReturnType["fromWireType"](getter(getterContext,ptr))},enumerable:true};if(setter){setter=embind__requireFunction(setterSignature,setter);var setterArgumentType=types[1];desc.set=function(v){var ptr=validateThis(this,classType,humanName+" setter");var destructors=[];setter(setterContext,ptr,setterArgumentType["toWireType"](destructors,v));runDestructors(destructors)}}Object.defineProperty(classType.registeredClass.instancePrototype,fieldName,desc);return[]});return[]})}function HandleAllocator(){this.allocated=[undefined];this.freelist=[];this.get=function(id){return this.allocated[id]};this.allocate=function(handle){var id=this.freelist.pop()||this.allocated.length;this.allocated[id]=handle;return id};this.free=function(id){this.allocated[id]=undefined;this.freelist.push(id)}}var emval_handles=new HandleAllocator;function __emval_decref(handle){if(handle>=emval_handles.reserved&&0===--emval_handles.get(handle).refcount){emval_handles.free(handle)}}function count_emval_handles(){var count=0;for(var i=emval_handles.reserved;i<emval_handles.allocated.length;++i){if(emval_handles.allocated[i]!==undefined){++count}}return count}function init_emval(){emval_handles.allocated.push({value:undefined},{value:null},{value:true},{value:false});emval_handles.reserved=emval_handles.allocated.length;Module["count_emval_handles"]=count_emval_handles}var Emval={toValue:handle=>{if(!handle){throwBindingError("Cannot use deleted val. handle = "+handle)}return emval_handles.get(handle).value},toHandle:value=>{switch(value){case undefined:return 1;case null:return 2;case true:return 3;case false:return 4;default:{return emval_handles.allocate({refcount:1,value:value})}}}};function __embind_register_emval(rawType,name){name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(handle){var rv=Emval.toValue(handle);__emval_decref(handle);return rv},"toWireType":function(destructors,value){return Emval.toHandle(value)},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:null})}function embindRepr(v){if(v===null){return"null"}var t=typeof v;if(t==="object"||t==="array"||t==="function"){return v.toString()}else{return""+v}}function floatReadValueFromPointer(name,shift){switch(shift){case 2:return function(pointer){return this["fromWireType"](HEAPF32[pointer>>2])};case 3:return function(pointer){return this["fromWireType"](HEAPF64[pointer>>3])};default:throw new TypeError("Unknown float type: "+name)}}function __embind_register_float(rawType,name,size){var shift=getShiftFromSize(size);name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":function(value){return value},"toWireType":function(destructors,value){return value},"argPackAdvance":8,"readValueFromPointer":floatReadValueFromPointer(name,shift),destructorFunction:null})}function integerReadValueFromPointer(name,shift,signed){switch(shift){case 0:return signed?function readS8FromPointer(pointer){return HEAP8[pointer]}:function readU8FromPointer(pointer){return HEAPU8[pointer]};case 1:return signed?function readS16FromPointer(pointer){return HEAP16[pointer>>1]}:function readU16FromPointer(pointer){return HEAPU16[pointer>>1]};case 2:return signed?function readS32FromPointer(pointer){return HEAP32[pointer>>2]}:function readU32FromPointer(pointer){return HEAPU32[pointer>>2]};default:throw new TypeError("Unknown integer type: "+name)}}function __embind_register_integer(primitiveType,name,size,minRange,maxRange){name=readLatin1String(name);if(maxRange===-1){maxRange=4294967295}var shift=getShiftFromSize(size);var fromWireType=value=>value;if(minRange===0){var bitshift=32-8*size;fromWireType=value=>value<<bitshift>>>bitshift}var isUnsignedType=name.includes("unsigned");var checkAssertions=(value,toTypeName)=>{};var toWireType;if(isUnsignedType){toWireType=function(destructors,value){checkAssertions(value,this.name);return value>>>0}}else{toWireType=function(destructors,value){checkAssertions(value,this.name);return value}}registerType(primitiveType,{name:name,"fromWireType":fromWireType,"toWireType":toWireType,"argPackAdvance":8,"readValueFromPointer":integerReadValueFromPointer(name,shift,minRange!==0),destructorFunction:null})}function __embind_register_memory_view(rawType,dataTypeIndex,name){var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){handle=handle>>2;var heap=HEAPU32;var size=heap[handle];var data=heap[handle+1];return new TA(heap.buffer,data,size)}name=readLatin1String(name);registerType(rawType,{name:name,"fromWireType":decodeMemoryView,"argPackAdvance":8,"readValueFromPointer":decodeMemoryView},{ignoreDuplicateRegistrations:true})}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}function __embind_register_std_string(rawType,name){name=readLatin1String(name);var stdStringIsUTF8=name==="std::string";registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var payload=value+4;var str;if(stdStringIsUTF8){var decodeStartPtr=payload;for(var i=0;i<=length;++i){var currentBytePtr=payload+i;if(i==length||HEAPU8[currentBytePtr]==0){var maxRead=currentBytePtr-decodeStartPtr;var stringSegment=UTF8ToString(decodeStartPtr,maxRead);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+1}}}else{var a=new Array(length);for(var i=0;i<length;++i){a[i]=String.fromCharCode(HEAPU8[payload+i])}str=a.join("")}_free(value);return str},"toWireType":function(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var length;var valueIsOfTypeString=typeof value=="string";if(!(valueIsOfTypeString||value instanceof Uint8Array||value instanceof Uint8ClampedArray||value instanceof Int8Array)){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){length=lengthBytesUTF8(value)}else{length=value.length}var base=_malloc(4+length+1);var ptr=base+4;HEAPU32[base>>2]=length;if(stdStringIsUTF8&&valueIsOfTypeString){stringToUTF8(value,ptr,length+1)}else{if(valueIsOfTypeString){for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(ptr);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}else{for(var i=0;i<length;++i){HEAPU8[ptr+i]=value[i]}}}if(destructors!==null){destructors.push(_free,base)}return base},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}var UTF16Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf-16le"):undefined;function UTF16ToString(ptr,maxBytesToRead){var endPtr=ptr;var idx=endPtr>>1;var maxIdx=idx+maxBytesToRead/2;while(!(idx>=maxIdx)&&HEAPU16[idx])++idx;endPtr=idx<<1;if(endPtr-ptr>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(ptr,endPtr));var str="";for(var i=0;!(i>=maxBytesToRead/2);++i){var codeUnit=HEAP16[ptr+i*2>>1];if(codeUnit==0)break;str+=String.fromCharCode(codeUnit)}return str}function stringToUTF16(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr>>1]=codeUnit;outPtr+=2}HEAP16[outPtr>>1]=0;return outPtr-startPtr}function lengthBytesUTF16(str){return str.length*2}function UTF32ToString(ptr,maxBytesToRead){var i=0;var str="";while(!(i>=maxBytesToRead/4)){var utf32=HEAP32[ptr+i*4>>2];if(utf32==0)break;++i;if(utf32>=65536){var ch=utf32-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}else{str+=String.fromCharCode(utf32)}}return str}function stringToUTF32(str,outPtr,maxBytesToWrite){if(maxBytesToWrite===undefined){maxBytesToWrite=2147483647}if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343){var trailSurrogate=str.charCodeAt(++i);codeUnit=65536+((codeUnit&1023)<<10)|trailSurrogate&1023}HEAP32[outPtr>>2]=codeUnit;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr>>2]=0;return outPtr-startPtr}function lengthBytesUTF32(str){var len=0;for(var i=0;i<str.length;++i){var codeUnit=str.charCodeAt(i);if(codeUnit>=55296&&codeUnit<=57343)++i;len+=4}return len}function __embind_register_std_wstring(rawType,charSize,name){name=readLatin1String(name);var decodeString,encodeString,getHeap,lengthBytesUTF,shift;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16;getHeap=()=>HEAPU16;shift=1}else if(charSize===4){decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32;getHeap=()=>HEAPU32;shift=2}registerType(rawType,{name:name,"fromWireType":function(value){var length=HEAPU32[value>>2];var HEAP=getHeap();var str;var decodeStartPtr=value+4;for(var i=0;i<=length;++i){var currentBytePtr=value+4+i*charSize;if(i==length||HEAP[currentBytePtr>>shift]==0){var maxReadBytes=currentBytePtr-decodeStartPtr;var stringSegment=decodeString(decodeStartPtr,maxReadBytes);if(str===undefined){str=stringSegment}else{str+=String.fromCharCode(0);str+=stringSegment}decodeStartPtr=currentBytePtr+charSize}}_free(value);return str},"toWireType":function(destructors,value){if(!(typeof value=="string")){throwBindingError("Cannot pass non-string to C++ string type "+name)}var length=lengthBytesUTF(value);var ptr=_malloc(4+length+charSize);HEAPU32[ptr>>2]=length>>shift;encodeString(value,ptr+4,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},"argPackAdvance":8,"readValueFromPointer":simpleReadValueFromPointer,destructorFunction:function(ptr){_free(ptr)}})}function __embind_register_void(rawType,name){name=readLatin1String(name);registerType(rawType,{isVoid:true,name:name,"argPackAdvance":0,"fromWireType":function(){return undefined},"toWireType":function(destructors,o){return undefined}})}function __emscripten_throw_longjmp(){throw Infinity}function __mmap_js(len,prot,flags,fd,off,allocated,addr){return-52}function __munmap_js(addr,len,prot,flags,fd,offset){}function _abort(){abort("")}var _emscripten_get_now;_emscripten_get_now=()=>performance.now();function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;try{wasmMemory.grow(size-b.byteLength+65535>>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var ENV={};function getExecutableName(){return"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(x+"="+env[x])}getEnvStrings.strings=strings}return getEnvStrings.strings}function stringToAscii(str,buffer){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}HEAP8[buffer>>0]=0}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>2]=bufSize;return 0}function _proc_exit(code){throw"exit("+code+")"}var _exit=_proc_exit;function _fd_close(fd){return 52}function _fd_read(fd,iov,iovcnt,pnum){return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){return 70}var printCharBuffers=[null,[],[]];function printChar(stream,curr){var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}}function _fd_write(fd,iov,iovcnt,pnum){var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU32[pnum>>2]=num;return 0}embind_init_charCodes();BindingError=Module["BindingError"]=extendError(Error,"BindingError");InternalError=Module["InternalError"]=extendError(Error,"InternalError");init_ClassHandle();init_embind();init_RegisteredPointer();UnboundTypeError=Module["UnboundTypeError"]=extendError(Error,"UnboundTypeError");init_emval();var wasmImports={"b":___assert_fail,"k":___syscall_fcntl64,"I":___syscall_fstat64,"B":___syscall_getdents64,"K":___syscall_ioctl,"G":___syscall_newfstatat,"n":___syscall_openat,"H":___syscall_stat64,"u":__embind_register_bigint,"r":__embind_register_bool,"j":__embind_register_class,"A":__embind_register_class_constructor,"d":__embind_register_class_function,"c":__embind_register_class_property,"L":__embind_register_emval,"p":__embind_register_float,"g":__embind_register_integer,"e":__embind_register_memory_view,"q":__embind_register_std_string,"l":__embind_register_std_wstring,"s":__embind_register_void,"y":__emscripten_throw_longjmp,"C":__mmap_js,"D":__munmap_js,"f":_abort,"m":_emscripten_get_now,"z":_emscripten_resize_heap,"E":_environ_get,"F":_environ_sizes_get,"h":_exit,"i":_fd_close,"o":_fd_read,"t":_fd_seek,"J":_fd_write,"x":invoke_iii,"v":invoke_iiii,"w":invoke_iiiii,"a":wasmMemory};function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}Module["getTempRet0"]=getTempRet0;Module["setTempRet0"]=setTempRet0;function initRuntime(asm){asm["M"]()}var imports={"a":wasmImports};var _malloc,_free,___getTypeName,__embind_initialize_bindings,_setThrew,setTempRet0,getTempRet0,stackSave,stackRestore,stackAlloc,dynCall_viiiiji,dynCall_jiji,dynCall_jij;(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(fetch("jassub-worker-modern.wasm"),imports):WebAssembly.instantiate(Module["wasm"],imports)).then(function(output){asm=(output.instance||output).exports;Module["_malloc"]=_malloc=asm["N"];_free=asm["O"];___getTypeName=asm["P"];Module["__embind_initialize_bindings"]=__embind_initialize_bindings=asm["Q"];_setThrew=asm["S"];setTempRet0=asm["T"];getTempRet0=asm["U"];stackSave=asm["V"];stackRestore=asm["W"];stackAlloc=asm["X"];dynCall_viiiiji=asm["Y"];dynCall_jiji=asm["Z"];dynCall_jij=asm["_"];wasmTable=asm["R"];initRuntime(asm);ready()});
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
return Module.ready
|