jassub 1.5.4 → 1.5.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/jassub-worker-legacy.js +9 -9
- package/dist/jassub-worker.js +18 -18
- package/package.json +1 -1
package/dist/jassub-worker.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
var p=p,yr=e=>console.log(e),mr=e=>console.error(e);function br(e,r){if(!e)throw r}String.prototype.startsWith||(String.prototype.startsWith=function(e,r){return r===void 0&&(r=0),this.substring(r,e.length)===e});String.prototype.includes||(String.prototype.includes=function(e,r){return this.indexOf(e,r)!==-1});if(!ArrayBuffer.isView){const e=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];ArrayBuffer.isView=r=>r&&r.constructor&&e.indexOf(r.constructor)!==-1}Uint8Array.prototype.slice||(Uint8Array.prototype.slice=function(e,r){return new Uint8Array(this.subarray(e,r))});Date.now||(Date.now=()=>new Date().getTime());"performance"in self||(self.performance={now:()=>Date.now()});if(typeof console>"u"){const e=(r,t)=>{postMessage({target:"console",command:r,content:JSON.stringify(Array.prototype.slice.call(t))})};console={log:function(){e("log",arguments)},debug:function(){e("debug",arguments)},info:function(){e("info",arguments)},warn:function(){e("warn",arguments)},error:function(){e("error",arguments)}},console.log("overridden console")}const Ce=(e,r)=>{const t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType=r?"arraybuffer":"text",t.send(null),t.response},wr=(e,r,t)=>{const n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{if((n.status===200||n.status===0)&&n.response)return r(n.response);t()},n.onerror=t,n.send(null)};p={wasm:!WebAssembly.instantiateStreaming&&Ce("jassub-worker.wasm",!0)};self.ready=()=>postMessage({target:"ready"});self.out=e=>{e==="libass: No usable fontconfig configuration file found, using fallback."?console.debug(e):console.log(e)};self.err=e=>{e==="Fontconfig error: Cannot load default config file: No such file: (null)"?console.debug(e):console.error(e)};let x=0;const _r=1;let j=null,We=!1,Pe=Date.now(),ee=24,He=!1,Be="js",re={};const Re={};let Cr=0,xe;self.width=0;self.height=0;let E=!1;self.addFont=({font:e})=>Te(e);const we=e=>{if(e=e.trim().toLowerCase(),e.startsWith("@")&&(e=e.substring(1)),!Re[e]){if(Re[e]=!0,!re[e]&&He)return postMessage({target:"getLocalFont",font:e});Te(re[e])}},Te=e=>{ArrayBuffer.isView(e)?Le(e):wr(e,r=>{Le(new Uint8Array(r))},console.error)},Le=e=>{const r=ge(e.byteLength);m.set(e,r),self.jassubObj.addFont("font-"+Cr++,r,e.byteLength),self.jassubObj.reloadFonts()},Ge=e=>{if(!re)return;const r=Ar(e);for(let i=0;i<r.length;i++)for(let s=0;s<r[i].body.length;s++)r[i].body[s].key==="Style"&&we(r[i].body[s].value.Fontname);const t=/\\fn([^\\}]*?)[\\}]/g;let n;for(;(n=t.exec(e))!==null;)we(n[1])};self.setTrack=({content:e})=>{Ge(e),self.jassubObj.createTrackMem(e)};self.freeTrack=()=>{self.jassubObj.removeTrack()};self.setTrackByUrl=({url:e})=>{self.setTrack({content:Ce(e)})};const Pr=(e,r)=>{self.width=e,self.height=r,self.jassubObj.resizeCanvas(e,r)},Tr=()=>{const e=(Date.now()-Pe)/1e3;return te?x:(e>5&&(console.error("Didn't received currentTime > 5 seconds. Assuming video was paused."),ze(!0)),x+e*_r)},$r=e=>{x=e,Pe=Date.now(),j||(We?j=Ae(ne):(ne(),setTimeout(()=>{We=!1},20)))};let te=!0;const ze=e=>{e!==te&&(te=e,e?j&&(clearTimeout(j),j=null):(Pe=Date.now(),j=Ae(ne)))},$e=(e,r)=>{const t=performance.now(),n=Be==="wasm"?self.jassubObj.renderBlend(e,r):self.jassubObj.renderImage(e,r),i={renderTime:performance.now()-t-self.jassubObj.time,decodeTime:self.jassubObj.time};if(self.jassubObj.changed!==0||r){const s=[];let f=[];const o=performance.now();if(!n)return me({images:s,buffers:f,times:i,decodeStartTime:o});if(E){const a=[];for(let l=n,u=0;u<self.jassubObj.count;l=l.next,++u)s.push({w:l.w,h:l.h,x:l.x,y:l.y}),a.push(createImageBitmap(new ImageData(Fe.subarray(l.image,l.image+l.w*l.h*4),l.w,l.h)));Promise.all(a).then(l=>{for(let u=0;u<s.length;u++)s[u].image=l[u];f=l,me({images:s,buffers:f,times:i,decodeStartTime:o})})}else{for(let a=n,l=0;l<self.jassubObj.count;a=a.next,++l){const u={w:a.w,h:a.h,x:a.x,y:a.y,image:a.image};if(!W){const c=ue.slice(a.image,a.image+a.w*a.h*4);f.push(c),u.image=c}s.push(u)}me({images:s,buffers:f,times:i,decodeStartTime:o})}}else postMessage({target:"unbusy"})};self.demand=({time:e})=>{x=e,$e(e)};const ne=e=>{j=0,$e(Tr(),e),te||(j=Ae(ne))},me=({times:e,images:r,decodeStartTime:t,buffers:n})=>{if(e.decodeTime=performance.now()-t,W){const i=performance.now();I.width=self.width,I.height!==self.height&&(I.height=self.height),W.clearRect(0,0,self.width,self.height);for(const s of r)s.image&&(E?(W.drawImage(s.image,s.x,s.y),s.image.close()):(self.bufferCanvas.width=s.w,self.bufferCanvas.height=s.h,self.bufferCtx.putImageData(new ImageData(Fe.subarray(s.image,s.image+s.w*s.h*4),s.w,s.h),0,0),W.drawImage(self.bufferCanvas,s.x,s.y)));if(xe){e.drawTime=performance.now()-i;let s=0;for(const f in e)s+=e[f];console.log("Bitmaps: "+r.length+" Total: "+Math.round(s)+"ms",e)}postMessage({target:"unbusy"})}else postMessage({target:"render",async:E,images:r,times:e,width:self.width,height:self.height},n)},Ar=e=>{let r,t,n,i,s,f,o,a,l,u;const c=[],d=e.split(/[\r\n]+/g);for(a=0;a<d.length;a++)if(r=d[a].match(/^\[(.*)\]$/),r)t=null,c.push({name:r[1],body:[]});else{if(/^\s*$/.test(d[a])||c.length===0)continue;if(u=c[c.length-1].body,d[a][0]===";")u.push({type:"comment",value:d[a].substring(1)});else{if(i=d[a].split(":"),s=i[0],f=i.slice(1).join(":").trim(),(t||s==="Format")&&(f=f.split(","),t&&f.length>t.length&&(n=f.slice(t.length-1).join(","),f=f.slice(0,t.length-1),f.push(n)),f=f.map(h=>h.trim()),t)){for(o={},l=0;l<f.length;l++)o[t[l]]=f[l];f=o}s==="Format"&&(t=f),u.push({key:s,value:f})}}return c},Ae=(()=>{let e=0;return r=>{const t=Date.now();if(e===0)e=t+1e3/ee;else for(;t+2>=e;)e+=1e3/ee;const n=Math.max(e-t,0);return setTimeout(r,n)}})(),fe=(e,r)=>{for(const t of Object.keys(e))r[t]=e[t]};self.init=e=>{self.width=e.width,self.height=e.height,Be=e.blendMode,E=e.asyncRender,E&&typeof createImageBitmap>"u"&&(E=!1,console.error("'createImageBitmap' needed for 'asyncRender' unsupported!")),re=e.availableFonts,xe=e.debug,ee=e.targetFps||ee,He=e.useLocalFonts;const r=e.fallbackFont.toLowerCase();self.jassubObj=new p.JASSUB(self.width,self.height,r||null),r&&we(r);let t=e.subContent;t||(t=Ce(e.subUrl)),Ge(t);for(const n of e.fonts||[])Te(n);self.jassubObj.createTrackMem(t),self.jassubObj.setDropAnimations(e.dropAllAnimations),(e.libassMemoryLimit>0||e.libassGlyphLimit>0)&&self.jassubObj.setMemoryLimits(e.libassGlyphLimit||0,e.libassMemoryLimit||0)};self.canvas=({width:e,height:r,force:t})=>{if(e==null)throw new Error("Invalid canvas size specified");Pr(e,r),t&&$e(x)};self.video=({currentTime:e,isPaused:r,rate:t})=>{e!=null&&$r(e),r!=null&&ze(r),t=t||t};let I,W;self.offscreenCanvas=({transferable:e})=>{I=e[0],W=I.getContext("2d",{desynchronized:!0}),E||(self.bufferCanvas=new OffscreenCanvas(self.height,self.width),self.bufferCtx=self.bufferCanvas.getContext("2d",{desynchronized:!0}))};self.destroy=()=>{self.jassubObj.quitLibrary()};self.createEvent=({event:e})=>{fe(e,self.jassubObj.getEvent(self.jassubObj.allocEvent()))};self.getEvents=()=>{const e=[];for(let r=0;r<self.jassubObj.getEventCount();r++){const{Start:t,Duration:n,ReadOrder:i,Layer:s,Style:f,MarginL:o,MarginR:a,MarginV:l,Name:u,Text:c,Effect:d}=self.jassubObj.getEvent(r);e.push({Start:t,Duration:n,ReadOrder:i,Layer:s,Style:f,MarginL:o,MarginR:a,MarginV:l,Name:u,Text:c,Effect:d})}postMessage({target:"getEvents",events:e})};self.setEvent=({event:e,index:r})=>{fe(e,self.jassubObj.getEvent(r))};self.removeEvent=({index:e})=>{self.jassubObj.removeEvent(e)};self.createStyle=({style:e})=>{fe(e,self.jassubObj.getStyle(self.jassubObj.allocStyle()))};self.getStyles=()=>{const e=[];for(let r=0;r<self.jassubObj.getStyleCount();r++){const{Name:t,FontName:n,FontSize:i,PrimaryColour:s,SecondaryColour:f,OutlineColour:o,BackColour:a,Bold:l,Italic:u,Underline:c,StrikeOut:d,ScaleX:h,ScaleY:v,Spacing:y,Angle:b,BorderStyle:_,Outline:k,Shadow:P,Alignment:ye,MarginL:X,MarginR:Y,MarginV:K,Encoding:gr,treat_fontname_as_pattern:pr,Blur:hr,Justify:vr}=self.jassubObj.getStyle(r);e.push({Name:t,FontName:n,FontSize:i,PrimaryColour:s,SecondaryColour:f,OutlineColour:o,BackColour:a,Bold:l,Italic:u,Underline:c,StrikeOut:d,ScaleX:h,ScaleY:v,Spacing:y,Angle:b,BorderStyle:_,Outline:k,Shadow:P,Alignment:ye,MarginL:X,MarginR:Y,MarginV:K,Encoding:gr,treat_fontname_as_pattern:pr,Blur:hr,Justify:vr})}postMessage({target:"getStyles",time:Date.now(),styles:e})};self.setStyle=({style:e,index:r})=>{fe(e,self.jassubObj.getStyle(r))};self.removeStyle=({index:e})=>{self.jassubObj.removeStyle(e)};onmessage=({data:e})=>{if(self[e.target])self[e.target](e);else throw new Error("Unknown event target "+e.target)};let Fe=null;self.updateGlobalBufferAndViews=(e=>r=>{e(r),Fe=new Uint8ClampedArray(r)})(self.updateGlobalBufferAndViews);function Je(e){throw e}var qe=new TextDecoder("utf8");function Fr(e,r,t){for(var n=r+t,i=r;e[i]&&!(i>=n);)++i;return qe.decode(e.buffer?e.subarray(r,i):new Uint8Array(e.slice(r,i)))}function N(e,r){if(!e)return"";for(var t=e+r,n=e;!(n>=t)&&m[n];)++n;return qe.decode(m.subarray(e,n))}function Sr(e,r,t,n){if(!(n>0))return 0;for(var i=t,s=t+n-1,f=0;f<e.length;++f){var o=e.charCodeAt(f);if(o>=55296&&o<=57343){var a=e.charCodeAt(++f);o=65536+((o&1023)<<10)|a&1023}if(o<=127){if(t>=s)break;r[t++]=o}else if(o<=2047){if(t+1>=s)break;r[t++]=192|o>>6,r[t++]=128|o&63}else if(o<=65535){if(t+2>=s)break;r[t++]=224|o>>12,r[t++]=128|o>>6&63,r[t++]=128|o&63}else{if(t+3>=s)break;r[t++]=240|o>>18,r[t++]=128|o>>12&63,r[t++]=128|o>>6&63,r[t++]=128|o&63}}return r[t]=0,t-i}function jr(e,r,t){return Sr(e,m,r,t)}function Or(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++t):r+=3}return r}var Se,G,D,m,le,C,Xe,Ye,ie,ue,Ke;function Qe(e){ue=e,Se=new Int8Array(e),G=new Int16Array(e),D=new Int32Array(e),m=new Uint8Array(e),le=new Uint16Array(e),C=new Uint32Array(e),Xe=new Float32Array(e),Ye=new Float64Array(e)}function kr(e,r,t,n){Je("Assertion failed: "+N(e)+", at: "+[r?N(r):"unknown filename",t,n?N(n):"unknown function"])}function Er(e,r,t){return 0}function Ur(e,r,t){}function Dr(e,r,t){return 0}function Mr(e,r,t,n){}function Wr(e,r,t,n,i){}function je(e){switch(e){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+e)}}function Rr(){for(var e=new Array(256),r=0;r<256;++r)e[r]=String.fromCharCode(r);Ze=e}var Ze=void 0;function w(e){for(var r="",t=e;m[t];)r+=Ze[m[t++]];return r}var R={},U={},se={},Lr=48,Ir=57;function Oe(e){if(e===void 0)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var r=e.charCodeAt(0);return r>=Lr&&r<=Ir?"_"+e:e}function ke(e,r){return e=Oe(e),new Function("body","return function "+e+`() {
|
|
2
|
-
"use strict"; return body.apply(this, arguments);
|
|
3
|
-
};
|
|
4
|
-
`)(r)}function
|
|
5
|
-
`+i.replace(/^Error(:[^\n]*)?\n/,""))});return t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},t}var L=void 0;function g(e){throw new L(e)}var Ne=void 0;function ae(e){throw new Ne(e)}function M(e,r,t){e.forEach(function(o){se[o]=r});function n(o){var a=t(o);a.length!==e.length&&ae("Mismatched type converter count");for(var l=0;l<e.length;++l)F(e[l],a[l])}var i=new Array(r.length),s=[],f=0;r.forEach((o,a)=>{U.hasOwnProperty(o)?i[a]=U[o]:(s.push(o),R.hasOwnProperty(o)||(R[o]=[]),R[o].push(()=>{i[a]=U[o],++f,f===s.length&&n(i)}))}),s.length===0&&n(i)}function F(e,r,t={}){if(!("argPackAdvance"in r))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=r.name;if(e||g('type "'+n+'" must have a positive integer typeid pointer'),U.hasOwnProperty(e)){if(t.ignoreDuplicateRegistrations)return;g("Cannot register type '"+n+"' twice")}if(U[e]=r,delete se[e],R.hasOwnProperty(e)){var i=R[e];delete R[e],i.forEach(s=>s())}}function Vr(e,r,t,n,i){var s=je(t);r=w(r),F(e,{name:r,fromWireType:function(f){return!!f},toWireType:function(f,o){return o?n:i},argPackAdvance:8,readValueFromPointer:function(f){var o;if(t===1)o=Se;else if(t===2)o=G;else if(t===4)o=D;else throw new TypeError("Unknown boolean type size: "+r);return this.fromWireType(o[f>>s])},destructorFunction:null})}function Hr(e){if(!(this instanceof S)||!(e instanceof S))return!1;for(var r=this.$$.ptrType.registeredClass,t=this.$$.ptr,n=e.$$.ptrType.registeredClass,i=e.$$.ptr;r.baseClass;)t=r.upcast(t),r=r.baseClass;for(;n.baseClass;)i=n.upcast(i),n=n.baseClass;return r===n&&t===i}function Br(e){return{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}}function Ue(e){function r(t){return t.$$.ptrType.registeredClass.name}g(r(e)+" instance already deleted")}var be=!1;function er(e){}function xr(e){e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)}function rr(e){e.count.value-=1;var r=e.count.value===0;r&&xr(e)}function tr(e,r,t){if(r===t)return e;if(t.baseClass===void 0)return null;var n=tr(e,r,t.baseClass);return n===null?null:t.downcast(n)}var nr={};function Gr(){return Object.keys(H).length}function zr(){var e=[];for(var r in H)H.hasOwnProperty(r)&&e.push(H[r]);return e}var z=[];function De(){for(;z.length;){var e=z.pop();e.$$.deleteScheduled=!1,e.delete()}}var V=void 0;function Jr(e){V=e,z.length&&V&&V(De)}function qr(){p.getInheritedInstanceCount=Gr,p.getLiveInheritedInstances=zr,p.flushPendingDeletes=De,p.setDelayFunction=Jr}var H={};function Xr(e,r){for(r===void 0&&g("ptr should not be undefined");e.baseClass;)r=e.upcast(r),e=e.baseClass;return r}function Yr(e,r){return r=Xr(e,r),H[r]}function Q(e,r){(!r.ptrType||!r.ptr)&&ae("makeClassHandle requires ptr and ptrType");var t=!!r.smartPtrType,n=!!r.smartPtr;return t!==n&&ae("Both smartPtrType and smartPtr must be specified"),r.count={value:1},B(Object.create(e,{$$:{value:r}}))}function Kr(e){var r=this.getPointee(e);if(!r)return this.destructor(e),null;var t=Yr(this.registeredClass,r);if(t!==void 0){if(t.$$.count.value===0)return t.$$.ptr=r,t.$$.smartPtr=e,t.clone();var n=t.clone();return this.destructor(e),n}function i(){return this.isSmartPointer?Q(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:e}):Q(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var s=this.registeredClass.getActualType(r),f=nr[s];if(!f)return i.call(this);var o;this.isConst?o=f.constPointerType:o=f.pointerType;var a=tr(r,this.registeredClass,o.registeredClass);return a===null?i.call(this):this.isSmartPointer?Q(o.registeredClass.instancePrototype,{ptrType:o,ptr:a,smartPtrType:this,smartPtr:e}):Q(o.registeredClass.instancePrototype,{ptrType:o,ptr:a})}function B(e){return typeof FinalizationRegistry>"u"?(B=r=>r,e):(be=new FinalizationRegistry(r=>{rr(r.$$)}),B=r=>{var t=r.$$,n=!!t.smartPtr;if(n){var i={$$:t};be.register(r,i,r)}return r},er=r=>be.unregister(r),B(e))}function Qr(){if(this.$$.ptr||Ue(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=B(Object.create(Object.getPrototypeOf(this),{$$:{value:Br(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e}function Zr(){this.$$.ptr||Ue(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g("Object already scheduled for deletion"),er(this),rr(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function Nr(){return!this.$$.ptr}function et(){return this.$$.ptr||Ue(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g("Object already scheduled for deletion"),z.push(this),z.length===1&&V&&V(De),this.$$.deleteScheduled=!0,this}function rt(){S.prototype.isAliasOf=Hr,S.prototype.clone=Qr,S.prototype.delete=Zr,S.prototype.isDeleted=Nr,S.prototype.deleteLater=et}function S(){}function ir(e,r,t){if(e[r].overloadTable===void 0){var n=e[r];e[r]=function(){return e[r].overloadTable.hasOwnProperty(arguments.length)||g("Function '"+t+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+e[r].overloadTable+")!"),e[r].overloadTable[arguments.length].apply(this,arguments)},e[r].overloadTable=[],e[r].overloadTable[n.argCount]=n}}function tt(e,r,t){p.hasOwnProperty(e)?((t===void 0||p[e].overloadTable!==void 0&&p[e].overloadTable[t]!==void 0)&&g("Cannot register public name '"+e+"' twice"),ir(p,e,e),p.hasOwnProperty(t)&&g("Cannot register multiple overloads of a function with the same number of arguments ("+t+")!"),p[e].overloadTable[t]=r):(p[e]=r,t!==void 0&&(p[e].numArguments=t))}function nt(e,r,t,n,i,s,f,o){this.name=e,this.constructor=r,this.instancePrototype=t,this.rawDestructor=n,this.baseClass=i,this.getActualType=s,this.upcast=f,this.downcast=o,this.pureVirtualFunctions=[]}function ce(e,r,t){for(;r!==t;)r.upcast||g("Expected null or instance of "+t.name+", got an instance of "+r.name),e=r.upcast(e),r=r.baseClass;return e}function it(e,r){if(r===null)return this.isReference&&g("null is not a valid "+this.name),0;r.$$||g('Cannot pass "'+Me(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name);var t=r.$$.ptrType.registeredClass,n=ce(r.$$.ptr,t,this.registeredClass);return n}function st(e,r){var t;if(r===null)return this.isReference&&g("null is not a valid "+this.name),this.isSmartPointer?(t=this.rawConstructor(),e!==null&&e.push(this.rawDestructor,t),t):0;r.$$||g('Cannot pass "'+Me(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&r.$$.ptrType.isConst&&g("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);var n=r.$$.ptrType.registeredClass;if(t=ce(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(r.$$.smartPtr===void 0&&g("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?t=r.$$.smartPtr:g("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:t=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)t=r.$$.smartPtr;else{var i=r.clone();t=this.rawShare(t,oe.toHandle(function(){i.delete()})),e!==null&&e.push(this.rawDestructor,t)}break;default:g("Unsupporting sharing policy")}return t}function at(e,r){if(r===null)return this.isReference&&g("null is not a valid "+this.name),0;r.$$||g('Cannot pass "'+Me(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name),r.$$.ptrType.isConst&&g("Cannot convert argument of type "+r.$$.ptrType.name+" to parameter type "+this.name);var t=r.$$.ptrType.registeredClass,n=ce(r.$$.ptr,t,this.registeredClass);return n}function de(e){return this.fromWireType(D[e>>2])}function ot(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e}function ft(e){this.rawDestructor&&this.rawDestructor(e)}function lt(e){e!==null&&e.delete()}function ut(){$.prototype.getPointee=ot,$.prototype.destructor=ft,$.prototype.argPackAdvance=8,$.prototype.readValueFromPointer=de,$.prototype.deleteObject=lt,$.prototype.fromWireType=Kr}function $(e,r,t,n,i,s,f,o,a,l,u){this.name=e,this.registeredClass=r,this.isReference=t,this.isConst=n,this.isSmartPointer=i,this.pointeeType=s,this.sharingPolicy=f,this.rawGetPointee=o,this.rawConstructor=a,this.rawShare=l,this.rawDestructor=u,!i&&r.baseClass===void 0?n?(this.toWireType=it,this.destructorFunction=null):(this.toWireType=at,this.destructorFunction=null):this.toWireType=st}function ct(e,r,t){p.hasOwnProperty(e)||ae("Replacing nonexistant public symbol"),p[e].overloadTable!==void 0&&t!==void 0?p[e].overloadTable[t]=r:(p[e]=r,p[e].argCount=t)}function dt(e,r,t){var n=dynCalls[e];return t&&t.length?n.apply(null,[r].concat(t)):n.call(null,r)}var Z=[];function q(e){var r=Z[e];return r||(e>=Z.length&&(Z.length=e+1),Z[e]=r=Ke.get(e)),r}function gt(e,r,t){if(e.includes("j"))return dt(e,r,t);var n=q(r).apply(null,t);return n}function pt(e,r){var t=[];return function(){return t.length=0,Object.assign(t,arguments),gt(e,r,t)}}function O(e,r){e=w(e);function t(){return e.includes("j")?pt(e,r):q(r)}var n=t();return typeof n!="function"&&g("unknown function pointer with signature "+e+": "+r),n}var sr=void 0;function ar(e){var r=dr(e),t=w(r);return A(r),t}function J(e,r){var t=[],n={};function i(s){if(!n[s]&&!U[s]){if(se[s]){se[s].forEach(i);return}t.push(s),n[s]=!0}}throw r.forEach(i),new sr(e+": "+t.map(ar).join([", "]))}function ht(e,r,t,n,i,s,f,o,a,l,u,c,d){u=w(u),s=O(i,s),o&&(o=O(f,o)),l&&(l=O(a,l)),d=O(c,d);var h=Oe(u);tt(h,function(){J("Cannot construct "+u+" due to unbound types",[n])}),M([e,r,t],n?[n]:[],function(v){v=v[0];var y,b;n?(y=v.registeredClass,b=y.instancePrototype):b=S.prototype;var _=ke(h,function(){if(Object.getPrototypeOf(this)!==k)throw new L("Use 'new' to construct "+u);if(P.constructor_body===void 0)throw new L(u+" has no accessible constructor");var K=P.constructor_body[arguments.length];if(K===void 0)throw new L("Tried to invoke ctor of "+u+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(P.constructor_body).toString()+") parameters instead!");return K.apply(this,arguments)}),k=Object.create(b,{constructor:{value:_}});_.prototype=k;var P=new nt(u,_,k,d,y,s,o,l),ye=new $(u,P,!0,!1,!1),X=new $(u+"*",P,!1,!1,!1),Y=new $(u+" const*",P,!1,!0,!1);return nr[e]={pointerType:X,constPointerType:Y},ct(h,_),[ye,X,Y]})}function or(e,r){for(var t=[],n=0;n<e;n++)t.push(C[r+n*4>>2]);return t}function fr(e){for(;e.length;){var r=e.pop(),t=e.pop();t(r)}}function vt(e,r){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type "+typeof e+" which is not a function");var t=ke(e.name||"unknownFunctionName",function(){});t.prototype=e.prototype;var n=new t,i=e.apply(n,r);return i instanceof Object?i:n}function lr(e,r,t,n,i){var s=r.length;s<2&&g("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var f=r[1]!==null&&t!==null,o=!1,a=1;a<r.length;++a)if(r[a]!==null&&r[a].destructorFunction===void 0){o=!0;break}for(var l=r[0].name!=="void",u="",c="",a=0;a<s-2;++a)u+=(a!==0?", ":"")+"arg"+a,c+=(a!==0?", ":"")+"arg"+a+"Wired";var d="return function "+Oe(e)+"("+u+`) {
|
|
6
|
-
if (arguments.length !== `+(s-2)+`) {
|
|
7
|
-
throwBindingError('function `+e+" called with ' + arguments.length + ' arguments, expected "+(s-2)+` args!');
|
|
8
|
-
}
|
|
9
|
-
`;o&&(d+=`var destructors = [];
|
|
10
|
-
`);var h=o?"destructors":"null",v=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],y=[g,n,i,
|
|
11
|
-
`);for(var a=0;a<s-2;++a)d+="var arg"+a+"Wired = argType"+a+".toWireType("+h+", arg"+a+"); // "+r[a+2].name+`
|
|
12
|
-
`,v.push("argType"+a),y.push(r[a+2]);if(f&&(c="thisWired"+(c.length>0?", ":"")+c),d+=(l?"var rv = ":"")+"invoker(fn"+(c.length>0?", ":"")+c+`);
|
|
13
|
-
`,o)d+=`runDestructors(destructors);
|
|
14
|
-
`;else for(var a=f?1:2;a<r.length;++a){var b=a===1?"thisWired":"arg"+(a-2)+"Wired";r[a].destructorFunction!==null&&(d+=b+"_dtor("+b+"); // "+r[a].name+`
|
|
15
|
-
`,v.push(b+"_dtor"),y.push(r[a].destructorFunction))}l&&(d+=`var ret = retType.fromWireType(rv);
|
|
16
|
-
return ret;
|
|
17
|
-
`),d+=`}
|
|
18
|
-
`,v.push(d);var _=
|
|
1
|
+
var p=p,Be=e=>console.log(e),xe=e=>console.error(e);function ze(){}function wr(e,r){if(!e)throw r}String.prototype.startsWith||(String.prototype.startsWith=function(e,r){return r===void 0&&(r=0),this.substring(r,e.length)===e});String.prototype.includes||(String.prototype.includes=function(e,r){return this.indexOf(e,r)!==-1});if(!ArrayBuffer.isView){const e=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];ArrayBuffer.isView=r=>r&&r.constructor&&e.indexOf(r.constructor)!==-1}Uint8Array.prototype.slice||(Uint8Array.prototype.slice=function(e,r){return new Uint8Array(this.subarray(e,r))});Date.now||(Date.now=()=>new Date().getTime());"performance"in self||(self.performance={now:()=>Date.now()});if(typeof console>"u"){const e=(r,t)=>{postMessage({target:"console",command:r,content:JSON.stringify(Array.prototype.slice.call(t))})};console={log:function(){e("log",arguments)},debug:function(){e("debug",arguments)},info:function(){e("info",arguments)},warn:function(){e("warn",arguments)},error:function(){e("error",arguments)}},console.log("overridden console")}const Pe=(e,r)=>{const t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType=r?"arraybuffer":"text",t.send(null),t.response},_r=(e,r,t)=>{const n=new XMLHttpRequest;n.open("GET",e,!0),n.responseType="arraybuffer",n.onload=()=>{if((n.status===200||n.status===0)&&n.response)return r(n.response);t()},n.onerror=t,n.send(null)};p={wasm:!WebAssembly.instantiateStreaming&&Pe("jassub-worker.wasm",!0)};ze=()=>postMessage({target:"ready"});Be=e=>{e==="libass: No usable fontconfig configuration file found, using fallback."?console.debug(e):console.log(e)};xe=e=>{e==="Fontconfig error: Cannot load default config file: No such file: (null)"?console.debug(e):console.error(e)};let x=0;const Cr=1;let j=null,Re=!1,Te=Date.now(),ee=24,Ge=!1,Je="js",re={};const Le={};let Pr=0,qe;self.width=0;self.height=0;let E=!1;self.addFont=({font:e})=>$e(e);const _e=e=>{if(e=e.trim().toLowerCase(),e.startsWith("@")&&(e=e.substring(1)),!Le[e]){if(Le[e]=!0,!re[e]&&Ge)return postMessage({target:"getLocalFont",font:e});$e(re[e])}},$e=e=>{ArrayBuffer.isView(e)?Ie(e):_r(e,r=>{Ie(new Uint8Array(r))},console.error)},Ie=e=>{const r=pe(e.byteLength);m.set(e,r),self.jassubObj.addFont("font-"+Pr++,r,e.byteLength),self.jassubObj.reloadFonts()},Xe=e=>{if(!re)return;const r=Ar(e);for(let i=0;i<r.length;i++)for(let s=0;s<r[i].body.length;s++)r[i].body[s].key==="Style"&&_e(r[i].body[s].value.Fontname);const t=/\\fn([^\\}]*?)[\\}]/g;let n;for(;(n=t.exec(e))!==null;)_e(n[1])};self.setTrack=({content:e})=>{Xe(e),self.jassubObj.createTrackMem(e)};self.freeTrack=()=>{self.jassubObj.removeTrack()};self.setTrackByUrl=({url:e})=>{self.setTrack({content:Pe(e)})};const Tr=(e,r)=>{self.width=e,self.height=r,self.jassubObj.resizeCanvas(e,r)},$r=()=>{const e=(Date.now()-Te)/1e3;return te?x:(e>5&&(console.error("Didn't received currentTime > 5 seconds. Assuming video was paused."),Ye(!0)),x+e*Cr)},Fr=e=>{x=e,Te=Date.now(),j||(Re?j=Ae(ne):(ne(),setTimeout(()=>{Re=!1},20)))};let te=!0;const Ye=e=>{e!==te&&(te=e,e?j&&(clearTimeout(j),j=null):(Te=Date.now(),j=Ae(ne)))},Fe=(e,r)=>{const t=performance.now(),n=Je==="wasm"?self.jassubObj.renderBlend(e,r):self.jassubObj.renderImage(e,r),i={renderTime:performance.now()-t-self.jassubObj.time,decodeTime:self.jassubObj.time};if(self.jassubObj.changed!==0||r){const s=[];let f=[];const o=performance.now();if(!n)return be({images:s,buffers:f,times:i,decodeStartTime:o});if(E){const a=[];for(let l=n,u=0;u<self.jassubObj.count;l=l.next,++u)s.push({w:l.w,h:l.h,x:l.x,y:l.y}),a.push(createImageBitmap(new ImageData(Se.subarray(l.image,l.image+l.w*l.h*4),l.w,l.h)));Promise.all(a).then(l=>{for(let u=0;u<s.length;u++)s[u].image=l[u];f=l,be({images:s,buffers:f,times:i,decodeStartTime:o})})}else{for(let a=n,l=0;l<self.jassubObj.count;a=a.next,++l){const u={w:a.w,h:a.h,x:a.x,y:a.y,image:a.image};if(!W){const c=ce.slice(a.image,a.image+a.w*a.h*4);f.push(c),u.image=c}s.push(u)}be({images:s,buffers:f,times:i,decodeStartTime:o})}}else postMessage({target:"unbusy"})};self.demand=({time:e})=>{x=e,Fe(e)};const ne=e=>{j=0,Fe($r(),e),te||(j=Ae(ne))},be=({times:e,images:r,decodeStartTime:t,buffers:n})=>{if(e.decodeTime=performance.now()-t,W){const i=performance.now();I.width=self.width,I.height!==self.height&&(I.height=self.height),W.clearRect(0,0,self.width,self.height);for(const s of r)s.image&&(E?(W.drawImage(s.image,s.x,s.y),s.image.close()):(self.bufferCanvas.width=s.w,self.bufferCanvas.height=s.h,self.bufferCtx.putImageData(new ImageData(Se.subarray(s.image,s.image+s.w*s.h*4),s.w,s.h),0,0),W.drawImage(self.bufferCanvas,s.x,s.y)));if(qe){e.drawTime=performance.now()-i;let s=0;for(const f in e)s+=e[f];console.log("Bitmaps: "+r.length+" Total: "+Math.round(s)+"ms",e)}postMessage({target:"unbusy"})}else postMessage({target:"render",async:E,images:r,times:e,width:self.width,height:self.height},n)},Ar=e=>{let r,t,n,i,s,f,o,a,l,u;const c=[],d=e.split(/[\r\n]+/g);for(a=0;a<d.length;a++)if(r=d[a].match(/^\[(.*)\]$/),r)t=null,c.push({name:r[1],body:[]});else{if(/^\s*$/.test(d[a])||c.length===0)continue;if(u=c[c.length-1].body,d[a][0]===";")u.push({type:"comment",value:d[a].substring(1)});else{if(i=d[a].split(":"),s=i[0],f=i.slice(1).join(":").trim(),(t||s==="Format")&&(f=f.split(","),t&&f.length>t.length&&(n=f.slice(t.length-1).join(","),f=f.slice(0,t.length-1),f.push(n)),f=f.map(h=>h.trim()),t)){for(o={},l=0;l<f.length;l++)o[t[l]]=f[l];f=o}s==="Format"&&(t=f),u.push({key:s,value:f})}}return c},Ae=(()=>{let e=0;return r=>{const t=Date.now();if(e===0)e=t+1e3/ee;else for(;t+2>=e;)e+=1e3/ee;const n=Math.max(e-t,0);return setTimeout(r,n)}})(),le=(e,r)=>{for(const t of Object.keys(e))r[t]=e[t]};self.init=e=>{self.width=e.width,self.height=e.height,Je=e.blendMode,E=e.asyncRender,E&&typeof createImageBitmap>"u"&&(E=!1,console.error("'createImageBitmap' needed for 'asyncRender' unsupported!")),re=e.availableFonts,qe=e.debug,ee=e.targetFps||ee,Ge=e.useLocalFonts;const r=e.fallbackFont.toLowerCase();self.jassubObj=new p.JASSUB(self.width,self.height,r||null),r&&_e(r);let t=e.subContent;t||(t=Pe(e.subUrl)),Xe(t);for(const n of e.fonts||[])$e(n);self.jassubObj.createTrackMem(t),self.jassubObj.setDropAnimations(e.dropAllAnimations),(e.libassMemoryLimit>0||e.libassGlyphLimit>0)&&self.jassubObj.setMemoryLimits(e.libassGlyphLimit||0,e.libassMemoryLimit||0)};self.canvas=({width:e,height:r,force:t})=>{if(e==null)throw new Error("Invalid canvas size specified");Tr(e,r),t&&Fe(x)};self.video=({currentTime:e,isPaused:r,rate:t})=>{e!=null&&Fr(e),r!=null&&Ye(r),t=t||t};let I,W;self.offscreenCanvas=({transferable:e})=>{I=e[0],W=I.getContext("2d",{desynchronized:!0}),E||(self.bufferCanvas=new OffscreenCanvas(self.height,self.width),self.bufferCtx=self.bufferCanvas.getContext("2d",{desynchronized:!0}))};self.destroy=()=>{self.jassubObj.quitLibrary()};self.createEvent=({event:e})=>{le(e,self.jassubObj.getEvent(self.jassubObj.allocEvent()))};self.getEvents=()=>{const e=[];for(let r=0;r<self.jassubObj.getEventCount();r++){const{Start:t,Duration:n,ReadOrder:i,Layer:s,Style:f,MarginL:o,MarginR:a,MarginV:l,Name:u,Text:c,Effect:d}=self.jassubObj.getEvent(r);e.push({Start:t,Duration:n,ReadOrder:i,Layer:s,Style:f,MarginL:o,MarginR:a,MarginV:l,Name:u,Text:c,Effect:d})}postMessage({target:"getEvents",events:e})};self.setEvent=({event:e,index:r})=>{le(e,self.jassubObj.getEvent(r))};self.removeEvent=({index:e})=>{self.jassubObj.removeEvent(e)};self.createStyle=({style:e})=>{le(e,self.jassubObj.getStyle(self.jassubObj.allocStyle()))};self.getStyles=()=>{const e=[];for(let r=0;r<self.jassubObj.getStyleCount();r++){const{Name:t,FontName:n,FontSize:i,PrimaryColour:s,SecondaryColour:f,OutlineColour:o,BackColour:a,Bold:l,Italic:u,Underline:c,StrikeOut:d,ScaleX:h,ScaleY:v,Spacing:y,Angle:b,BorderStyle:_,Outline:k,Shadow:P,Alignment:me,MarginL:X,MarginR:Y,MarginV:K,Encoding:vr,treat_fontname_as_pattern:yr,Blur:mr,Justify:br}=self.jassubObj.getStyle(r);e.push({Name:t,FontName:n,FontSize:i,PrimaryColour:s,SecondaryColour:f,OutlineColour:o,BackColour:a,Bold:l,Italic:u,Underline:c,StrikeOut:d,ScaleX:h,ScaleY:v,Spacing:y,Angle:b,BorderStyle:_,Outline:k,Shadow:P,Alignment:me,MarginL:X,MarginR:Y,MarginV:K,Encoding:vr,treat_fontname_as_pattern:yr,Blur:mr,Justify:br})}postMessage({target:"getStyles",time:Date.now(),styles:e})};self.setStyle=({style:e,index:r})=>{le(e,self.jassubObj.getStyle(r))};self.removeStyle=({index:e})=>{self.jassubObj.removeStyle(e)};onmessage=({data:e})=>{if(self[e.target])self[e.target](e);else throw new Error("Unknown event target "+e.target)};let Se=null;se=(e=>r=>{e(r),Se=new Uint8ClampedArray(r)})(se);function Ke(e){throw e}var Qe=new TextDecoder("utf8");function Sr(e,r,t){for(var n=r+t,i=r;e[i]&&!(i>=n);)++i;return Qe.decode(e.buffer?e.subarray(r,i):new Uint8Array(e.slice(r,i)))}function N(e,r){if(!e)return"";for(var t=e+r,n=e;!(n>=t)&&m[n];)++n;return Qe.decode(m.subarray(e,n))}function jr(e,r,t,n){if(!(n>0))return 0;for(var i=t,s=t+n-1,f=0;f<e.length;++f){var o=e.charCodeAt(f);if(o>=55296&&o<=57343){var a=e.charCodeAt(++f);o=65536+((o&1023)<<10)|a&1023}if(o<=127){if(t>=s)break;r[t++]=o}else if(o<=2047){if(t+1>=s)break;r[t++]=192|o>>6,r[t++]=128|o&63}else if(o<=65535){if(t+2>=s)break;r[t++]=224|o>>12,r[t++]=128|o>>6&63,r[t++]=128|o&63}else{if(t+3>=s)break;r[t++]=240|o>>18,r[t++]=128|o>>12&63,r[t++]=128|o>>6&63,r[t++]=128|o&63}}return r[t]=0,t-i}function Or(e,r,t){return jr(e,m,r,t)}function kr(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++t):r+=3}return r}var je,z,D,m,ue,C,Ze,Ne,ie,ce,er;function se(e){ce=e,je=new Int8Array(e),z=new Int16Array(e),D=new Int32Array(e),m=new Uint8Array(e),ue=new Uint16Array(e),C=new Uint32Array(e),Ze=new Float32Array(e),Ne=new Float64Array(e)}function Er(e,r,t,n){Ke("Assertion failed: "+N(e)+", at: "+[r?N(r):"unknown filename",t,n?N(n):"unknown function"])}function Ur(e,r,t){return 0}function Dr(e,r,t){}function Mr(e,r,t){return 0}function Wr(e,r,t,n){}function Rr(e,r,t,n,i){}function Oe(e){switch(e){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw new TypeError("Unknown type size: "+e)}}function Lr(){for(var e=new Array(256),r=0;r<256;++r)e[r]=String.fromCharCode(r);rr=e}var rr=void 0;function w(e){for(var r="",t=e;m[t];)r+=rr[m[t++]];return r}var R={},U={},ae={},Ir=48,Hr=57;function ke(e){if(e===void 0)return"_unknown";e=e.replace(/[^a-zA-Z0-9_]/g,"$");var r=e.charCodeAt(0);return r>=Ir&&r<=Hr?"_"+e:e}function Ee(e,r){return e=ke(e),new Function("body","return function "+e+`() {
|
|
2
|
+
"use strict"; return body.apply(this, arguments);
|
|
3
|
+
};
|
|
4
|
+
`)(r)}function Ue(e,r){var t=Ee(r,function(n){this.name=r,this.message=n;var i=new Error(n).stack;i!==void 0&&(this.stack=this.toString()+`
|
|
5
|
+
`+i.replace(/^Error(:[^\n]*)?\n/,""))});return t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},t}var L=void 0;function g(e){throw new L(e)}var tr=void 0;function oe(e){throw new tr(e)}function M(e,r,t){e.forEach(function(o){ae[o]=r});function n(o){var a=t(o);a.length!==e.length&&oe("Mismatched type converter count");for(var l=0;l<e.length;++l)A(e[l],a[l])}var i=new Array(r.length),s=[],f=0;r.forEach((o,a)=>{U.hasOwnProperty(o)?i[a]=U[o]:(s.push(o),R.hasOwnProperty(o)||(R[o]=[]),R[o].push(()=>{i[a]=U[o],++f,f===s.length&&n(i)}))}),s.length===0&&n(i)}function A(e,r,t={}){if(!("argPackAdvance"in r))throw new TypeError("registerType registeredInstance requires argPackAdvance");var n=r.name;if(e||g('type "'+n+'" must have a positive integer typeid pointer'),U.hasOwnProperty(e)){if(t.ignoreDuplicateRegistrations)return;g("Cannot register type '"+n+"' twice")}if(U[e]=r,delete ae[e],R.hasOwnProperty(e)){var i=R[e];delete R[e],i.forEach(s=>s())}}function Vr(e,r,t,n,i){var s=Oe(t);r=w(r),A(e,{name:r,fromWireType:function(f){return!!f},toWireType:function(f,o){return o?n:i},argPackAdvance:8,readValueFromPointer:function(f){var o;if(t===1)o=je;else if(t===2)o=z;else if(t===4)o=D;else throw new TypeError("Unknown boolean type size: "+r);return this.fromWireType(o[f>>s])},destructorFunction:null})}function Br(e){if(!(this instanceof S)||!(e instanceof S))return!1;for(var r=this.$$.ptrType.registeredClass,t=this.$$.ptr,n=e.$$.ptrType.registeredClass,i=e.$$.ptr;r.baseClass;)t=r.upcast(t),r=r.baseClass;for(;n.baseClass;)i=n.upcast(i),n=n.baseClass;return r===n&&t===i}function xr(e){return{count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}}function De(e){function r(t){return t.$$.ptrType.registeredClass.name}g(r(e)+" instance already deleted")}var we=!1;function nr(e){}function zr(e){e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)}function ir(e){e.count.value-=1;var r=e.count.value===0;r&&zr(e)}function sr(e,r,t){if(r===t)return e;if(t.baseClass===void 0)return null;var n=sr(e,r,t.baseClass);return n===null?null:t.downcast(n)}var ar={};function Gr(){return Object.keys(V).length}function Jr(){var e=[];for(var r in V)V.hasOwnProperty(r)&&e.push(V[r]);return e}var G=[];function Me(){for(;G.length;){var e=G.pop();e.$$.deleteScheduled=!1,e.delete()}}var H=void 0;function qr(e){H=e,G.length&&H&&H(Me)}function Xr(){p.getInheritedInstanceCount=Gr,p.getLiveInheritedInstances=Jr,p.flushPendingDeletes=Me,p.setDelayFunction=qr}var V={};function Yr(e,r){for(r===void 0&&g("ptr should not be undefined");e.baseClass;)r=e.upcast(r),e=e.baseClass;return r}function Kr(e,r){return r=Yr(e,r),V[r]}function Q(e,r){(!r.ptrType||!r.ptr)&&oe("makeClassHandle requires ptr and ptrType");var t=!!r.smartPtrType,n=!!r.smartPtr;return t!==n&&oe("Both smartPtrType and smartPtr must be specified"),r.count={value:1},B(Object.create(e,{$$:{value:r}}))}function Qr(e){var r=this.getPointee(e);if(!r)return this.destructor(e),null;var t=Kr(this.registeredClass,r);if(t!==void 0){if(t.$$.count.value===0)return t.$$.ptr=r,t.$$.smartPtr=e,t.clone();var n=t.clone();return this.destructor(e),n}function i(){return this.isSmartPointer?Q(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:r,smartPtrType:this,smartPtr:e}):Q(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var s=this.registeredClass.getActualType(r),f=ar[s];if(!f)return i.call(this);var o;this.isConst?o=f.constPointerType:o=f.pointerType;var a=sr(r,this.registeredClass,o.registeredClass);return a===null?i.call(this):this.isSmartPointer?Q(o.registeredClass.instancePrototype,{ptrType:o,ptr:a,smartPtrType:this,smartPtr:e}):Q(o.registeredClass.instancePrototype,{ptrType:o,ptr:a})}function B(e){return typeof FinalizationRegistry>"u"?(B=r=>r,e):(we=new FinalizationRegistry(r=>{ir(r.$$)}),B=r=>{var t=r.$$,n=!!t.smartPtr;if(n){var i={$$:t};we.register(r,i,r)}return r},nr=r=>we.unregister(r),B(e))}function Zr(){if(this.$$.ptr||De(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=B(Object.create(Object.getPrototypeOf(this),{$$:{value:xr(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e}function Nr(){this.$$.ptr||De(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g("Object already scheduled for deletion"),nr(this),ir(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function et(){return!this.$$.ptr}function rt(){return this.$$.ptr||De(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&g("Object already scheduled for deletion"),G.push(this),G.length===1&&H&&H(Me),this.$$.deleteScheduled=!0,this}function tt(){S.prototype.isAliasOf=Br,S.prototype.clone=Zr,S.prototype.delete=Nr,S.prototype.isDeleted=et,S.prototype.deleteLater=rt}function S(){}function or(e,r,t){if(e[r].overloadTable===void 0){var n=e[r];e[r]=function(){return e[r].overloadTable.hasOwnProperty(arguments.length)||g("Function '"+t+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+e[r].overloadTable+")!"),e[r].overloadTable[arguments.length].apply(this,arguments)},e[r].overloadTable=[],e[r].overloadTable[n.argCount]=n}}function nt(e,r,t){p.hasOwnProperty(e)?((t===void 0||p[e].overloadTable!==void 0&&p[e].overloadTable[t]!==void 0)&&g("Cannot register public name '"+e+"' twice"),or(p,e,e),p.hasOwnProperty(t)&&g("Cannot register multiple overloads of a function with the same number of arguments ("+t+")!"),p[e].overloadTable[t]=r):(p[e]=r,t!==void 0&&(p[e].numArguments=t))}function it(e,r,t,n,i,s,f,o){this.name=e,this.constructor=r,this.instancePrototype=t,this.rawDestructor=n,this.baseClass=i,this.getActualType=s,this.upcast=f,this.downcast=o,this.pureVirtualFunctions=[]}function de(e,r,t){for(;r!==t;)r.upcast||g("Expected null or instance of "+t.name+", got an instance of "+r.name),e=r.upcast(e),r=r.baseClass;return e}function st(e,r){if(r===null)return this.isReference&&g("null is not a valid "+this.name),0;r.$$||g('Cannot pass "'+We(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name);var t=r.$$.ptrType.registeredClass,n=de(r.$$.ptr,t,this.registeredClass);return n}function at(e,r){var t;if(r===null)return this.isReference&&g("null is not a valid "+this.name),this.isSmartPointer?(t=this.rawConstructor(),e!==null&&e.push(this.rawDestructor,t),t):0;r.$$||g('Cannot pass "'+We(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name),!this.isConst&&r.$$.ptrType.isConst&&g("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);var n=r.$$.ptrType.registeredClass;if(t=de(r.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(r.$$.smartPtr===void 0&&g("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:r.$$.smartPtrType===this?t=r.$$.smartPtr:g("Cannot convert argument of type "+(r.$$.smartPtrType?r.$$.smartPtrType.name:r.$$.ptrType.name)+" to parameter type "+this.name);break;case 1:t=r.$$.smartPtr;break;case 2:if(r.$$.smartPtrType===this)t=r.$$.smartPtr;else{var i=r.clone();t=this.rawShare(t,fe.toHandle(function(){i.delete()})),e!==null&&e.push(this.rawDestructor,t)}break;default:g("Unsupporting sharing policy")}return t}function ot(e,r){if(r===null)return this.isReference&&g("null is not a valid "+this.name),0;r.$$||g('Cannot pass "'+We(r)+'" as a '+this.name),r.$$.ptr||g("Cannot pass deleted object as a pointer of type "+this.name),r.$$.ptrType.isConst&&g("Cannot convert argument of type "+r.$$.ptrType.name+" to parameter type "+this.name);var t=r.$$.ptrType.registeredClass,n=de(r.$$.ptr,t,this.registeredClass);return n}function ge(e){return this.fromWireType(D[e>>2])}function ft(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e}function lt(e){this.rawDestructor&&this.rawDestructor(e)}function ut(e){e!==null&&e.delete()}function ct(){$.prototype.getPointee=ft,$.prototype.destructor=lt,$.prototype.argPackAdvance=8,$.prototype.readValueFromPointer=ge,$.prototype.deleteObject=ut,$.prototype.fromWireType=Qr}function $(e,r,t,n,i,s,f,o,a,l,u){this.name=e,this.registeredClass=r,this.isReference=t,this.isConst=n,this.isSmartPointer=i,this.pointeeType=s,this.sharingPolicy=f,this.rawGetPointee=o,this.rawConstructor=a,this.rawShare=l,this.rawDestructor=u,!i&&r.baseClass===void 0?n?(this.toWireType=st,this.destructorFunction=null):(this.toWireType=ot,this.destructorFunction=null):this.toWireType=at}function dt(e,r,t){p.hasOwnProperty(e)||oe("Replacing nonexistant public symbol"),p[e].overloadTable!==void 0&&t!==void 0?p[e].overloadTable[t]=r:(p[e]=r,p[e].argCount=t)}function gt(e,r,t){var n=dynCalls[e];return t&&t.length?n.apply(null,[r].concat(t)):n.call(null,r)}var Z=[];function q(e){var r=Z[e];return r||(e>=Z.length&&(Z.length=e+1),Z[e]=r=er.get(e)),r}function pt(e,r,t){if(e.includes("j"))return gt(e,r,t);var n=q(r).apply(null,t);return n}function ht(e,r){var t=[];return function(){return t.length=0,Object.assign(t,arguments),pt(e,r,t)}}function O(e,r){e=w(e);function t(){return e.includes("j")?ht(e,r):q(r)}var n=t();return typeof n!="function"&&g("unknown function pointer with signature "+e+": "+r),n}var fr=void 0;function lr(e){var r=hr(e),t=w(r);return F(r),t}function J(e,r){var t=[],n={};function i(s){if(!n[s]&&!U[s]){if(ae[s]){ae[s].forEach(i);return}t.push(s),n[s]=!0}}throw r.forEach(i),new fr(e+": "+t.map(lr).join([", "]))}function vt(e,r,t,n,i,s,f,o,a,l,u,c,d){u=w(u),s=O(i,s),o&&(o=O(f,o)),l&&(l=O(a,l)),d=O(c,d);var h=ke(u);nt(h,function(){J("Cannot construct "+u+" due to unbound types",[n])}),M([e,r,t],n?[n]:[],function(v){v=v[0];var y,b;n?(y=v.registeredClass,b=y.instancePrototype):b=S.prototype;var _=Ee(h,function(){if(Object.getPrototypeOf(this)!==k)throw new L("Use 'new' to construct "+u);if(P.constructor_body===void 0)throw new L(u+" has no accessible constructor");var K=P.constructor_body[arguments.length];if(K===void 0)throw new L("Tried to invoke ctor of "+u+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(P.constructor_body).toString()+") parameters instead!");return K.apply(this,arguments)}),k=Object.create(b,{constructor:{value:_}});_.prototype=k;var P=new it(u,_,k,d,y,s,o,l),me=new $(u,P,!0,!1,!1),X=new $(u+"*",P,!1,!1,!1),Y=new $(u+" const*",P,!1,!0,!1);return ar[e]={pointerType:X,constPointerType:Y},dt(h,_),[me,X,Y]})}function ur(e,r){for(var t=[],n=0;n<e;n++)t.push(C[r+n*4>>2]);return t}function cr(e){for(;e.length;){var r=e.pop(),t=e.pop();t(r)}}function yt(e,r){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type "+typeof e+" which is not a function");var t=Ee(e.name||"unknownFunctionName",function(){});t.prototype=e.prototype;var n=new t,i=e.apply(n,r);return i instanceof Object?i:n}function dr(e,r,t,n,i){var s=r.length;s<2&&g("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var f=r[1]!==null&&t!==null,o=!1,a=1;a<r.length;++a)if(r[a]!==null&&r[a].destructorFunction===void 0){o=!0;break}for(var l=r[0].name!=="void",u="",c="",a=0;a<s-2;++a)u+=(a!==0?", ":"")+"arg"+a,c+=(a!==0?", ":"")+"arg"+a+"Wired";var d="return function "+ke(e)+"("+u+`) {
|
|
6
|
+
if (arguments.length !== `+(s-2)+`) {
|
|
7
|
+
throwBindingError('function `+e+" called with ' + arguments.length + ' arguments, expected "+(s-2)+` args!');
|
|
8
|
+
}
|
|
9
|
+
`;o&&(d+=`var destructors = [];
|
|
10
|
+
`);var h=o?"destructors":"null",v=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],y=[g,n,i,cr,r[0],r[1]];f&&(d+="var thisWired = classParam.toWireType("+h+`, this);
|
|
11
|
+
`);for(var a=0;a<s-2;++a)d+="var arg"+a+"Wired = argType"+a+".toWireType("+h+", arg"+a+"); // "+r[a+2].name+`
|
|
12
|
+
`,v.push("argType"+a),y.push(r[a+2]);if(f&&(c="thisWired"+(c.length>0?", ":"")+c),d+=(l?"var rv = ":"")+"invoker(fn"+(c.length>0?", ":"")+c+`);
|
|
13
|
+
`,o)d+=`runDestructors(destructors);
|
|
14
|
+
`;else for(var a=f?1:2;a<r.length;++a){var b=a===1?"thisWired":"arg"+(a-2)+"Wired";r[a].destructorFunction!==null&&(d+=b+"_dtor("+b+"); // "+r[a].name+`
|
|
15
|
+
`,v.push(b+"_dtor"),y.push(r[a].destructorFunction))}l&&(d+=`var ret = retType.fromWireType(rv);
|
|
16
|
+
return ret;
|
|
17
|
+
`),d+=`}
|
|
18
|
+
`,v.push(d);var _=yt(Function,v).apply(null,y);return _}function mt(e,r,t,n,i,s){wr(r>0);var f=ur(r,t);i=O(n,i),M([],[e],function(o){o=o[0];var a="constructor "+o.name;if(o.registeredClass.constructor_body===void 0&&(o.registeredClass.constructor_body=[]),o.registeredClass.constructor_body[r-1]!==void 0)throw new L("Cannot register multiple constructors with identical number of parameters ("+(r-1)+") for class '"+o.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return o.registeredClass.constructor_body[r-1]=()=>{J("Cannot construct "+o.name+" due to unbound types",f)},M([],f,function(l){return l.splice(1,0,null),o.registeredClass.constructor_body[r-1]=dr(a,l,null,i,s),[]}),[]})}function bt(e,r,t,n,i,s,f,o){var a=ur(t,n);r=w(r),s=O(i,s),M([],[e],function(l){l=l[0];var u=l.name+"."+r;r.startsWith("@@")&&(r=Symbol[r.substring(2)]),o&&l.registeredClass.pureVirtualFunctions.push(r);function c(){J("Cannot call "+u+" due to unbound types",a)}var d=l.registeredClass.instancePrototype,h=d[r];return h===void 0||h.overloadTable===void 0&&h.className!==l.name&&h.argCount===t-2?(c.argCount=t-2,c.className=l.name,d[r]=c):(or(d,r,u),d[r].overloadTable[t-2]=c),M([],a,function(v){var y=dr(u,v,l,s,f);return d[r].overloadTable===void 0?(y.argCount=t-2,d[r]=y):d[r].overloadTable[t-2]=y,[]}),[]})}function He(e,r,t){return e instanceof Object||g(t+' with invalid "this": '+e),e instanceof r.registeredClass.constructor||g(t+' incompatible with "this" of type '+e.constructor.name),e.$$.ptr||g("cannot call emscripten binding method "+t+" on deleted object"),de(e.$$.ptr,e.$$.ptrType.registeredClass,r.registeredClass)}function wt(e,r,t,n,i,s,f,o,a,l){r=w(r),i=O(n,i),M([],[e],function(u){u=u[0];var c=u.name+"."+r,d={get:function(){J("Cannot access "+c+" due to unbound types",[t,f])},enumerable:!0,configurable:!0};return a?d.set=()=>{J("Cannot access "+c+" due to unbound types",[t,f])}:d.set=h=>{g(c+" is a read-only property")},Object.defineProperty(u.registeredClass.instancePrototype,r,d),M([],a?[t,f]:[t],function(h){var v=h[0],y={get:function(){var _=He(this,u,c+" getter");return v.fromWireType(i(s,_))},enumerable:!0};if(a){a=O(o,a);var b=h[1];y.set=function(_){var k=He(this,u,c+" setter"),P=[];a(l,k,b.toWireType(P,_)),cr(P)}}return Object.defineProperty(u.registeredClass.instancePrototype,r,y),[]}),[]})}var Ce=[],T=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function gr(e){e>4&&--T[e].refcount===0&&(T[e]=void 0,Ce.push(e))}function _t(){for(var e=0,r=5;r<T.length;++r)T[r]!==void 0&&++e;return e}function Ct(){for(var e=5;e<T.length;++e)if(T[e]!==void 0)return T[e];return null}function Pt(){p.count_emval_handles=_t,p.get_first_emval=Ct}var fe={toValue:e=>(e||g("Cannot use deleted val. handle = "+e),T[e].value),toHandle:e=>{switch(e){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{var r=Ce.length?Ce.pop():T.length;return T[r]={refcount:1,value:e},r}}}};function Tt(e,r){r=w(r),A(e,{name:r,fromWireType:function(t){var n=fe.toValue(t);return gr(t),n},toWireType:function(t,n){return fe.toHandle(n)},argPackAdvance:8,readValueFromPointer:ge,destructorFunction:null})}function We(e){if(e===null)return"null";var r=typeof e;return r==="object"||r==="array"||r==="function"?e.toString():""+e}function $t(e,r){switch(r){case 2:return function(t){return this.fromWireType(Ze[t>>2])};case 3:return function(t){return this.fromWireType(Ne[t>>3])};default:throw new TypeError("Unknown float type: "+e)}}function Ft(e,r,t){var n=Oe(t);r=w(r),A(e,{name:r,fromWireType:function(i){return i},toWireType:function(i,s){return s},argPackAdvance:8,readValueFromPointer:$t(r,n),destructorFunction:null})}function At(e,r,t){switch(r){case 0:return t?function(i){return je[i]}:function(i){return m[i]};case 1:return t?function(i){return z[i>>1]}:function(i){return ue[i>>1]};case 2:return t?function(i){return D[i>>2]}:function(i){return C[i>>2]};default:throw new TypeError("Unknown integer type: "+e)}}function St(e,r,t,n,i){r=w(r);var s=Oe(t),f=c=>c;if(n===0){var o=32-8*t;f=c=>c<<o>>>o}var a=r.includes("unsigned"),l=(c,d)=>{},u;a?u=function(c,d){return l(d,this.name),d>>>0}:u=function(c,d){return l(d,this.name),d},A(e,{name:r,fromWireType:f,toWireType:u,argPackAdvance:8,readValueFromPointer:At(r,s,n!==0),destructorFunction:null})}function jt(e,r,t){var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],i=n[r];function s(f){f=f>>2;var o=C,a=o[f],l=o[f+1];return new i(ce,l,a)}t=w(t),A(e,{name:t,fromWireType:s,argPackAdvance:8,readValueFromPointer:s},{ignoreDuplicateRegistrations:!0})}function Ot(e,r){r=w(r);var t=r==="std::string";A(e,{name:r,fromWireType:function(n){var i=C[n>>2],s=n+4,f;if(t)for(var o=s,a=0;a<=i;++a){var l=s+a;if(a==i||m[l]==0){var u=l-o,c=N(o,u);f===void 0?f=c:(f+=String.fromCharCode(0),f+=c),o=l+1}}else{for(var d=new Array(i),a=0;a<i;++a)d[a]=String.fromCharCode(m[s+a]);f=d.join("")}return F(n),f},toWireType:function(n,i){i instanceof ArrayBuffer&&(i=new Uint8Array(i));var s,f=typeof i=="string";f||i instanceof Uint8Array||i instanceof Uint8ClampedArray||i instanceof Int8Array||g("Cannot pass non-string to std::string"),t&&f?s=kr(i):s=i.length;var o=pe(4+s+1),a=o+4;if(C[o>>2]=s,t&&f)Or(i,a,s+1);else if(f)for(var l=0;l<s;++l){var u=i.charCodeAt(l);u>255&&(F(a),g("String has UTF-16 code units that do not fit in 8 bits")),m[a+l]=u}else for(var l=0;l<s;++l)m[a+l]=i[l];return n!==null&&n.push(F,o),o},argPackAdvance:8,readValueFromPointer:ge,destructorFunction:function(n){F(n)}})}var kt=new TextDecoder("utf-16le");function Et(e,r){for(var t=e,n=t>>1,i=n+r/2;!(n>=i)&&ue[n];)++n;return t=n<<1,kt.decode(m.subarray(e,t))}function Ut(e,r,t){if(t===void 0&&(t=2147483647),t<2)return 0;t-=2;for(var n=r,i=t<e.length*2?t/2:e.length,s=0;s<i;++s){var f=e.charCodeAt(s);z[r>>1]=f,r+=2}return z[r>>1]=0,r-n}function Dt(e){return e.length*2}function Mt(e,r){for(var t=0,n="";!(t>=r/4);){var i=D[e+t*4>>2];if(i==0)break;if(++t,i>=65536){var s=i-65536;n+=String.fromCharCode(55296|s>>10,56320|s&1023)}else n+=String.fromCharCode(i)}return n}function Wt(e,r,t){if(t===void 0&&(t=2147483647),t<4)return 0;for(var n=r,i=n+t-4,s=0;s<e.length;++s){var f=e.charCodeAt(s);if(f>=55296&&f<=57343){var o=e.charCodeAt(++s);f=65536+((f&1023)<<10)|o&1023}if(D[r>>2]=f,r+=4,r+4>i)break}return D[r>>2]=0,r-n}function Rt(e){for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&++t,r+=4}return r}function Lt(e,r,t){t=w(t);var n,i,s,f,o;r===2?(n=Et,i=Ut,f=Dt,s=()=>ue,o=1):r===4&&(n=Mt,i=Wt,f=Rt,s=()=>C,o=2),A(e,{name:t,fromWireType:function(a){for(var l=C[a>>2],u=s(),c,d=a+4,h=0;h<=l;++h){var v=a+4+h*r;if(h==l||u[v>>o]==0){var y=v-d,b=n(d,y);c===void 0?c=b:(c+=String.fromCharCode(0),c+=b),d=v+r}}return F(a),c},toWireType:function(a,l){typeof l!="string"&&g("Cannot pass non-string to C++ string type "+t);var u=f(l),c=pe(4+u+r);return C[c>>2]=u>>o,i(l,c+4,u+r),a!==null&&a.push(F,c),c},argPackAdvance:8,readValueFromPointer:ge,destructorFunction:function(a){F(a)}})}function It(e,r){r=w(r),A(e,{isVoid:!0,name:r,argPackAdvance:0,fromWireType:function(){},toWireType:function(t,n){}})}function Ht(){throw 1/0}function Vt(e){e>4&&(T[e].refcount+=1)}function Bt(e,r){var t=U[e];return t===void 0&&g(r+" has unknown type "+lr(e)),t}function xt(e,r){e=Bt(e,"_emval_take_value");var t=e.readValueFromPointer(r);return fe.toHandle(t)}function zt(){Ke("")}var pr;pr=()=>performance.now();function Gt(e,r,t){m.copyWithin(e,r,r+t)}function Jt(){return 2147483648}function qt(e){try{return ie.grow(e-ce.byteLength+65535>>>16),se(ie.buffer),1}catch{}}function Xt(e){var r=m.length;e=e>>>0;var t=Jt();if(e>t)return!1;let n=(a,l)=>a+(l-a%l)%l;for(var i=1;i<=4;i*=2){var s=r*(1+.2/i);s=Math.min(s,e+100663296);var f=Math.min(t,n(Math.max(e,s),65536)),o=qt(f);if(o)return!0}return!1}function Yt(e){throw"exit("+e+")"}var Kt=Yt;function Qt(e){return 52}function Zt(e,r,t,n){return 52}function Nt(e,r,t,n,i){return 70}var en=[null,[],[]];function rn(e,r){var t=en[e];r===0||r===10?((e===1?Be:xe)(Sr(t,0)),t.length=0):t.push(r)}function tn(e,r,t,n){for(var i=0,s=0;s<t;s++){var f=C[r>>2],o=C[r+4>>2];r+=8;for(var a=0;a<o;a++)rn(e,m[f+a]);i+=o}return C[n>>2]=i,0}Lr();L=p.BindingError=Ue(Error,"BindingError");tr=p.InternalError=Ue(Error,"InternalError");tt();Xr();ct();fr=p.UnboundTypeError=Ue(Error,"UnboundTypeError");Pt();var nn={a:Er,n:Ur,A:Dr,E:Mr,l:Wr,u:Rr,G:Vr,g:vt,m:mt,c:bt,b:wt,F:Tt,o:Ft,f:St,d:jt,p:Ot,k:Lt,H:It,y:Ht,r:gr,s:Vt,q:xt,e:zt,h:pr,B:Gt,z:Xt,i:Kt,j:Qt,D:Zt,t:Nt,C:tn,x:sn,v:on,w:an};function sn(e,r,t){var n=ve();try{return q(e)(r,t)}catch(i){if(ye(n),i!==i+0)throw i;he(1,0)}}function an(e,r,t,n,i){var s=ve();try{return q(e)(r,t,n,i)}catch(f){if(ye(s),f!==f+0)throw f;he(1,0)}}function on(e,r,t,n){var i=ve();try{return q(e)(r,t,n)}catch(s){if(ye(i),s!==s+0)throw s;he(1,0)}}function fn(e){e.J()}var Ve={a:nn},pe,F,hr,he,ve,ye;(WebAssembly.instantiateStreaming?WebAssembly.instantiateStreaming(fetch("jassub-worker.wasm"),Ve):WebAssembly.instantiate(p.wasm,Ve)).then(function(e){asm=(e.instance||e).exports,pe=asm.K,F=asm.L,hr=asm.M,asm.N,he=asm.P,asm.Q,ve=asm.R,ye=asm.S,asm.T,asm.U,asm.V,asm.W,er=asm.O,ie=asm.I,se(ie.buffer),fn(asm),ze()});
|