UNPKG

@barclah/jolt-physics

Version:

A WebAssembly port of JoltPhysics, a rigid body physics and collision detection library, suitable for games and VR applications. Forked by Hunter Barclay for use in Synthesis.

51 lines (48 loc) 3.82 MB
// SPDX-FileCopyrightText: 2022-2024 Jorrit Rouwe // SPDX-License-Identifier: MIT // This is Web Assembly version of Jolt Physics, see: https://github.com/jrouwe/JoltPhysics.js var Jolt = (() => { var _scriptName = import.meta.url; return ( async function(moduleArg = {}) { var moduleRtn; var b=moduleArg,aa,ba,aaa=new Promise((a,c)=>{aa=a;ba=c}),baa="object"==typeof window,ca="undefined"!=typeof WorkerGlobalScope,da="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node&&"renderer"!=process.type;if(da){const {createRequire:a}=await import("module");let c=import.meta.url;c.startsWith("data:")&&(c="/");var require=a(c)}var ea=Object.assign({},b),fa="./this.program",ha="",ia; if(da){var fs=require("fs"),caa=require("path");import.meta.url.startsWith("data:")||(ha=caa.dirname(require("url").fileURLToPath(import.meta.url))+"/");ia=a=>{a=daa(a)?new URL(a):a;return fs.readFileSync(a)};!b.thisProgram&&1<process.argv.length&&(fa=process.argv[1].replace(/\\/g,"/"));process.argv.slice(2)}else if(baa||ca)ca?ha=self.location.href:"undefined"!=typeof document&&document.currentScript&&(ha=document.currentScript.src),_scriptName&&(ha=_scriptName),ha.startsWith("blob:")? ha="":ha=ha.substr(0,ha.replace(/[?#].*/,"").lastIndexOf("/")+1),ca&&(ia=a=>{var c=new XMLHttpRequest;c.open("GET",a,!1);c.responseType="arraybuffer";c.send(null);return new Uint8Array(c.response)});var eaa=b.print||console.log.bind(console),ja=b.printErr||console.error.bind(console);Object.assign(b,ea);ea=null;b.thisProgram&&(fa=b.thisProgram);var ka=b.wasmBinary; function faa(a){if("undefined"!=typeof da&&da)return a=Buffer.from(a,"base64"),new Uint8Array(a.buffer,a.byteOffset,a.length);a=atob(a);for(var c=new Uint8Array(a.length),e=0;e<a.length;++e)c[e]=a.charCodeAt(e);return c}var la,ma=!1;function na(a){a||oa()}var pa,qa,ra,sa,ta; function ua(){var a=la.buffer;b.HEAP8=pa=new Int8Array(a);b.HEAP16=new Int16Array(a);b.HEAPU8=qa=new Uint8Array(a);b.HEAPU16=new Uint16Array(a);b.HEAP32=ra=new Int32Array(a);b.HEAPU32=sa=new Uint32Array(a);b.HEAPF32=new Float32Array(a);b.HEAPF64=ta=new Float64Array(a)}var va=[],wa=[],xa=[],ya=!1;function gaa(){var a=b.preRun.shift();va.unshift(a)}var za=0,Aa=null; function oa(a){b.onAbort?.(a);a="Aborted("+a+")";ja(a);ma=!0;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ba(a);throw a;}var haa=a=>a.startsWith("data:application/octet-stream;base64,"),daa=a=>a.startsWith("file://"),Ba;async function iaa(a){if(a==Ba&&ka)a=new Uint8Array(ka);else{var c=haa(a)?faa(a.slice(37)):void 0;if(c)a=c;else if(ia)a=ia(a);else throw"both async and sync fetching of the wasm failed";}return a} async function jaa(a){var c=Ba;try{var e=await iaa(c);return await WebAssembly.instantiate(e,a)}catch(f){ja(`failed to asynchronously prepare wasm: ${f}`),oa(f)}}async function kaa(a){return jaa(a)} var laa={35567:a=>{a=b.getCache(b.PathConstraintPathJS)[a];if(!a.hasOwnProperty("GetPathMaxFraction"))throw"a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPathMaxFraction.";return a.GetPathMaxFraction()},35834:(a,c,e)=>{a=b.getCache(b.PathConstraintPathJS)[a];if(!a.hasOwnProperty("GetClosestPoint"))throw"a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetClosestPoint.";return a.GetClosestPoint(c,e)},36097:(a,c,e,f,h,l)=>{a=b.getCache(b.PathConstraintPathJS)[a]; if(!a.hasOwnProperty("GetPointOnPath"))throw"a JSImplementation must implement all functions, you forgot PathConstraintPathJS::GetPointOnPath.";a.GetPointOnPath(c,e,f,h,l)},36359:(a,c,e)=>{a=b.getCache(b.GroupFilterJS)[a];if(!a.hasOwnProperty("CanCollide"))throw"a JSImplementation must implement all functions, you forgot GroupFilterJS::CanCollide.";return a.CanCollide(c,e)},36593:(a,c)=>{a=b.getCache(b.StateRecorderFilterJS)[a];if(!a.hasOwnProperty("ShouldSaveBody"))throw"a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveBody."; return a.ShouldSaveBody(c)},36852:(a,c)=>{a=b.getCache(b.StateRecorderFilterJS)[a];if(!a.hasOwnProperty("ShouldSaveConstraint"))throw"a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveConstraint.";return a.ShouldSaveConstraint(c)},37129:(a,c,e)=>{a=b.getCache(b.StateRecorderFilterJS)[a];if(!a.hasOwnProperty("ShouldSaveContact"))throw"a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldSaveContact.";return a.ShouldSaveContact(c, e)},37400:(a,c,e)=>{a=b.getCache(b.StateRecorderFilterJS)[a];if(!a.hasOwnProperty("ShouldRestoreContact"))throw"a JSImplementation must implement all functions, you forgot StateRecorderFilterJS::ShouldRestoreContact.";return a.ShouldRestoreContact(c,e)},37680:a=>{a=b.getCache(b.StateRecorderJS)[a];if(!a.hasOwnProperty("IsEOF"))throw"a JSImplementation must implement all functions, you forgot StateRecorderJS::IsEOF.";return a.IsEOF()},37898:a=>{a=b.getCache(b.StateRecorderJS)[a];if(!a.hasOwnProperty("IsFailed"))throw"a JSImplementation must implement all functions, you forgot StateRecorderJS::IsFailed."; return a.IsFailed()},38125:(a,c,e)=>{a=b.getCache(b.StateRecorderJS)[a];if(!a.hasOwnProperty("WriteBytes"))throw"a JSImplementation must implement all functions, you forgot StateRecorderJS::WriteBytes.";a.WriteBytes(c,e)},38356:(a,c,e)=>{a=b.getCache(b.StateRecorderJS)[a];if(!a.hasOwnProperty("ReadBytes"))throw"a JSImplementation must implement all functions, you forgot StateRecorderJS::ReadBytes.";a.ReadBytes(c,e)},38584:(a,c,e,f,h)=>{a=b.getCache(b.ContactListenerJS)[a];if(!a.hasOwnProperty("OnContactAdded"))throw"a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactAdded."; a.OnContactAdded(c,e,f,h)},38837:(a,c,e,f,h)=>{a=b.getCache(b.ContactListenerJS)[a];if(!a.hasOwnProperty("OnContactPersisted"))throw"a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactPersisted.";a.OnContactPersisted(c,e,f,h)},39102:(a,c)=>{a=b.getCache(b.ContactListenerJS)[a];if(!a.hasOwnProperty("OnContactRemoved"))throw"a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactRemoved.";a.OnContactRemoved(c)},39352:(a,c,e,f,h)=> {a=b.getCache(b.ContactListenerJS)[a];if(!a.hasOwnProperty("OnContactValidate"))throw"a JSImplementation must implement all functions, you forgot ContactListenerJS::OnContactValidate.";return a.OnContactValidate(c,e,f,h)},39621:(a,c,e)=>{a=b.getCache(b.SoftBodyContactListenerJS)[a];if(!a.hasOwnProperty("OnSoftBodyContactAdded"))throw"a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactAdded.";a.OnSoftBodyContactAdded(c,e)},39908:(a,c,e,f)=>{a=b.getCache(b.SoftBodyContactListenerJS)[a]; if(!a.hasOwnProperty("OnSoftBodyContactValidate"))throw"a JSImplementation must implement all functions, you forgot SoftBodyContactListenerJS::OnSoftBodyContactValidate.";return a.OnSoftBodyContactValidate(c,e,f)},40214:a=>{a=b.getCache(b.RayCastBodyCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::Reset.";a.Reset()},40439:(a,c)=>{a=b.getCache(b.RayCastBodyCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot RayCastBodyCollectorJS::AddHit."; a.AddHit(c)},40669:a=>{a=b.getCache(b.CollideShapeBodyCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::Reset.";a.Reset()},40904:(a,c)=>{a=b.getCache(b.CollideShapeBodyCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CollideShapeBodyCollectorJS::AddHit.";a.AddHit(c)},41144:a=>{a=b.getCache(b.CastShapeBodyCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::Reset."; a.Reset()},41373:(a,c)=>{a=b.getCache(b.CastShapeBodyCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CastShapeBodyCollectorJS::AddHit.";a.AddHit(c)},41607:a=>{a=b.getCache(b.CastRayCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CastRayCollectorJS::Reset.";a.Reset()},41824:(a,c)=>{a=b.getCache(b.CastRayCollectorJS)[a];if(!a.hasOwnProperty("OnBody"))throw"a JSImplementation must implement all functions, you forgot CastRayCollectorJS::OnBody."; a.OnBody(c)},42046:(a,c)=>{a=b.getCache(b.CastRayCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CastRayCollectorJS::AddHit.";a.AddHit(c)},42268:a=>{a=b.getCache(b.CollidePointCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::Reset.";a.Reset()},42495:(a,c)=>{a=b.getCache(b.CollidePointCollectorJS)[a];if(!a.hasOwnProperty("OnBody"))throw"a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::OnBody."; a.OnBody(c)},42727:(a,c)=>{a=b.getCache(b.CollidePointCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CollidePointCollectorJS::AddHit.";a.AddHit(c)},42959:a=>{a=b.getCache(b.CollideShapeCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::Reset.";a.Reset()},43186:(a,c)=>{a=b.getCache(b.CollideShapeCollectorJS)[a];if(!a.hasOwnProperty("OnBody"))throw"a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::OnBody."; a.OnBody(c)},43418:(a,c)=>{a=b.getCache(b.CollideShapeCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CollideShapeCollectorJS::AddHit.";a.AddHit(c)},43650:a=>{a=b.getCache(b.CastShapeCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::Reset.";a.Reset()},43871:(a,c)=>{a=b.getCache(b.CastShapeCollectorJS)[a];if(!a.hasOwnProperty("OnBody"))throw"a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::OnBody."; a.OnBody(c)},44097:(a,c)=>{a=b.getCache(b.CastShapeCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot CastShapeCollectorJS::AddHit.";a.AddHit(c)},44323:a=>{a=b.getCache(b.TransformedShapeCollectorJS)[a];if(!a.hasOwnProperty("Reset"))throw"a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::Reset.";a.Reset()},44558:(a,c)=>{a=b.getCache(b.TransformedShapeCollectorJS)[a];if(!a.hasOwnProperty("OnBody"))throw"a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::OnBody."; a.OnBody(c)},44798:(a,c)=>{a=b.getCache(b.TransformedShapeCollectorJS)[a];if(!a.hasOwnProperty("AddHit"))throw"a JSImplementation must implement all functions, you forgot TransformedShapeCollectorJS::AddHit.";a.AddHit(c)},45038:(a,c)=>{a=b.getCache(b.PhysicsStepListenerJS)[a];if(!a.hasOwnProperty("OnStep"))throw"a JSImplementation must implement all functions, you forgot PhysicsStepListenerJS::OnStep.";a.OnStep(c)},45266:(a,c,e)=>{a=b.getCache(b.BodyActivationListenerJS)[a];if(!a.hasOwnProperty("OnBodyActivated"))throw"a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyActivated."; a.OnBodyActivated(c,e)},45530:(a,c,e)=>{a=b.getCache(b.BodyActivationListenerJS)[a];if(!a.hasOwnProperty("OnBodyDeactivated"))throw"a JSImplementation must implement all functions, you forgot BodyActivationListenerJS::OnBodyDeactivated.";a.OnBodyDeactivated(c,e)},45800:(a,c,e,f,h)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnAdjustBodyVelocity"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnAdjustBodyVelocity.";a.OnAdjustBodyVelocity(c, e,f,h)},46089:(a,c,e,f)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnContactValidate"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactValidate.";return a.OnContactValidate(c,e,f)},46373:(a,c,e,f)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnCharacterContactValidate"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactValidate."; return a.OnCharacterContactValidate(c,e,f)},46684:(a,c,e,f,h,l,p)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnContactAdded"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactAdded.";a.OnContactAdded(c,e,f,h,l,p)},46961:(a,c,e,f,h,l,p)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnCharacterContactAdded"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactAdded."; a.OnCharacterContactAdded(c,e,f,h,l,p)},47265:(a,c,e,f,h,l,p,z,R,Ta)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnContactSolve"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnContactSolve.";a.OnContactSolve(c,e,f,h,l,p,z,R,Ta)},47551:(a,c,e,f,h,l,p,z,R,Ta)=>{a=b.getCache(b.CharacterContactListenerJS)[a];if(!a.hasOwnProperty("OnCharacterContactSolve"))throw"a JSImplementation must implement all functions, you forgot CharacterContactListenerJS::OnCharacterContactSolve."; a.OnCharacterContactSolve(c,e,f,h,l,p,z,R,Ta)},47864:(a,c,e)=>{a=b.getCache(b.ObjectVsBroadPhaseLayerFilterJS)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot ObjectVsBroadPhaseLayerFilterJS::ShouldCollide.";return a.ShouldCollide(c,e)},48143:(a,c)=>{a=b.getCache(b.ObjectLayerFilterJS)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot ObjectLayerFilterJS::ShouldCollide.";return a.ShouldCollide(c)}, 48395:(a,c,e)=>{a=b.getCache(b.ObjectLayerPairFilterJS)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot ObjectLayerPairFilterJS::ShouldCollide.";return a.ShouldCollide(c,e)},48658:(a,c)=>{a=b.getCache(b.BodyFilterJS)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollide.";return a.ShouldCollide(c)},48896:(a,c)=>{a=b.getCache(b.BodyFilterJS)[a];if(!a.hasOwnProperty("ShouldCollideLocked"))throw"a JSImplementation must implement all functions, you forgot BodyFilterJS::ShouldCollideLocked."; return a.ShouldCollideLocked(c)},49152:(a,c,e)=>{a=b.getCache(b.ShapeFilterJS)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot ShapeFilterJS::ShouldCollide.";return a.ShouldCollide(c,e)},49395:(a,c,e,f,h)=>{a=b.getCache(b.ShapeFilterJS2)[a];if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot ShapeFilterJS2::ShouldCollide.";return a.ShouldCollide(c,e,f,h)},49646:(a,c,e,f,h,l,p)=>{a=b.getCache(b.SimShapeFilterJS)[a]; if(!a.hasOwnProperty("ShouldCollide"))throw"a JSImplementation must implement all functions, you forgot SimShapeFilterJS::ShouldCollide.";return a.ShouldCollide(c,e,f,h,l,p)},49907:(a,c,e,f,h,l)=>{a=b.getCache(b.VehicleConstraintCallbacksJS)[a];if(!a.hasOwnProperty("GetCombinedFriction"))throw"a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::GetCombinedFriction.";return a.GetCombinedFriction(c,e,f,h,l)},50207:(a,c,e)=>{a=b.getCache(b.VehicleConstraintCallbacksJS)[a]; if(!a.hasOwnProperty("OnPreStepCallback"))throw"a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPreStepCallback.";a.OnPreStepCallback(c,e)},50485:(a,c,e)=>{a=b.getCache(b.VehicleConstraintCallbacksJS)[a];if(!a.hasOwnProperty("OnPostCollideCallback"))throw"a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostCollideCallback.";a.OnPostCollideCallback(c,e)},50775:(a,c,e)=>{a=b.getCache(b.VehicleConstraintCallbacksJS)[a]; if(!a.hasOwnProperty("OnPostStepCallback"))throw"a JSImplementation must implement all functions, you forgot VehicleConstraintCallbacksJS::OnPostStepCallback.";a.OnPostStepCallback(c,e)},51056:(a,c,e,f,h,l,p,z,R)=>{a=b.getCache(b.WheeledVehicleControllerCallbacksJS)[a];if(!a.hasOwnProperty("OnTireMaxImpulseCallback"))throw"a JSImplementation must implement all functions, you forgot WheeledVehicleControllerCallbacksJS::OnTireMaxImpulseCallback.";a.OnTireMaxImpulseCallback(c,e,f,h,l,p,z,R)},51387:a=> {a=b.getCache(b.BroadPhaseLayerInterfaceJS)[a];if(!a.hasOwnProperty("GetNumBroadPhaseLayers"))throw"a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetNumBroadPhaseLayers.";return a.GetNumBroadPhaseLayers()},51678:(a,c)=>{a=b.getCache(b.BroadPhaseLayerInterfaceJS)[a];if(!a.hasOwnProperty("GetBPLayer"))throw"a JSImplementation must implement all functions, you forgot BroadPhaseLayerInterfaceJS::GetBPLayer.";return a.GetBPLayer(c)},51935:()=>pa.length},Ca=a=> {for(;0<a.length;)a.shift()(b)},Da=(a,c,e,f)=>{if(!(0<f))return 0;var h=e;f=e+f-1;for(var l=0;l<a.length;++l){var p=a.charCodeAt(l);if(55296<=p&&57343>=p){var z=a.charCodeAt(++l);p=65536+((p&1023)<<10)|z&1023}if(127>=p){if(e>=f)break;c[e++]=p}else{if(2047>=p){if(e+1>=f)break;c[e++]=192|p>>6}else{if(65535>=p){if(e+2>=f)break;c[e++]=224|p>>12}else{if(e+3>=f)break;c[e++]=240|p>>18;c[e++]=128|p>>12&63}c[e++]=128|p>>6&63}c[e++]=128|p&63}}c[e]=0;return e-h},Ea=[],Fa=(a,c,e)=>{Ea.length=0;for(var f;f=qa[c++];){var h= 105!=f;h&=112!=f;e+=h&&e%8?4:0;Ea.push(112==f?sa[e>>2]:105==f?ra[e>>2]:ta[e>>3]);e+=h?8:4}return laa[a](...Ea)},Ga={},Ia=()=>{if(!Ha){var a={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:fa||"./this.program"},c;for(c in Ga)void 0===Ga[c]?delete a[c]:a[c]=Ga[c];var e=[];for(c in a)e.push(`${c}=${a[c]}`);Ha=e}return Ha},Ha,maa=[null,[],[]],Ja="undefined"!=typeof TextDecoder? new TextDecoder:void 0,Ka=(a,c=0,e=NaN)=>{var f=c+e;for(e=c;a[e]&&!(e>=f);)++e;if(16<e-c&&a.buffer&&Ja)return Ja.decode(a.subarray(c,e));for(f="";c<e;){var h=a[c++];if(h&128){var l=a[c++]&63;if(192==(h&224))f+=String.fromCharCode((h&31)<<6|l);else{var p=a[c++]&63;h=224==(h&240)?(h&15)<<12|l<<6|p:(h&7)<<18|l<<12|p<<6|a[c++]&63;65536>h?f+=String.fromCharCode(h):(h-=65536,f+=String.fromCharCode(55296|h>>10,56320|h&1023))}}else f+=String.fromCharCode(h)}return f},naa=a=>{for(var c=0,e=0;e<a.length;++e){var f= a.charCodeAt(e);127>=f?c++:2047>=f?c+=2:55296<=f&&57343>=f?(c+=4,++e):c+=3}return c},oaa={i:()=>oa(""),h:(a,c,e)=>qa.copyWithin(a,c,c+e),l:(a,c,e,f)=>{var h=(new Date).getFullYear(),l=(new Date(h,0,1)).getTimezoneOffset();h=(new Date(h,6,1)).getTimezoneOffset();sa[a>>2]=60*Math.max(l,h);ra[c>>2]=Number(l!=h);c=p=>{var z=Math.abs(p);return`UTC${0<=p?"-":"+"}${String(Math.floor(z/60)).padStart(2,"0")}${String(z%60).padStart(2,"0")}`};a=c(l);c=c(h);h<l?(Da(a,qa,e,17),Da(c,qa,f,17)):(Da(a,qa,f,17),Da(c, qa,e,17))},c:(a,c,e)=>Fa(a,c,e),a:(a,c,e)=>Fa(a,c,e),o:(a,c,e)=>Fa(a,c,e),k:()=>2147483648,b:()=>performance.now(),g:a=>{var c=qa.length;a>>>=0;if(2147483648<a)return!1;for(var e=1;4>=e;e*=2){var f=c*(1+.2/e);f=Math.min(f,a+100663296);a:{f=(Math.min(2147483648,65536*Math.ceil(Math.max(a,f)/65536))-la.buffer.byteLength+65535)/65536|0;try{la.grow(f);ua();var h=1;break a}catch(l){}h=void 0}if(h)return!0}return!1},m:(a,c)=>{var e=0;Ia().forEach((f,h)=>{var l=c+e;h=sa[a+4*h>>2]=l;for(l=0;l<f.length;++l)pa[h++]= f.charCodeAt(l);pa[h]=0;e+=f.length+1});return 0},n:(a,c)=>{var e=Ia();sa[a>>2]=e.length;var f=0;e.forEach(h=>f+=h.length+1);sa[c>>2]=f;return 0},e:()=>52,f:()=>52,j:function(){return 70},d:(a,c,e,f)=>{for(var h=0,l=0;l<e;l++){var p=sa[c>>2],z=sa[c+4>>2];c+=8;for(var R=0;R<z;R++){var Ta=qa[p+R],Pd=maa[a];0===Ta||10===Ta?((1===a?eaa:ja)(Ka(Pd)),Pd.length=0):Pd.push(Ta)}h+=z}sa[f>>2]=h;return 0}},d; (async function(){function a(f){d=f.exports;la=d.p;ua();wa.unshift(d.q);za--;b.monitorRunDependencies?.(za);0==za&&Aa&&(f=Aa,Aa=null,f());return d}za++;b.monitorRunDependencies?.(za);var c={a:oaa};if(b.instantiateWasm)try{return b.instantiateWasm(c,a)}catch(f){ja(`Module.instantiateWasm callback failed with error: ${f}`),ba(f)}Ba??="data:application/octet-stream;base64,AGFzbQEAAAABsQmJAWACf38AYAN/f38AYAF/AX9gAX8AYAJ/fwF/YAN/f38Bf2AAAX9gAX8BfWAEf39/fwBgBn9/f39/fwBgAn99AGAEf39/fwF/YAV/f39/fwBgBX9/f39/AX9gBn9/f39/fwF/YAd/f39/f39/AGACf30Bf2ALf39/f39/f39/f38AYAl/f39/f39/f38AYAJ/fgBgCH9/f39/f39/AGAEf39/fwF9YAN/f30AYAh/f39/f39/fwF/YAd/f39/f39/AX9gAn9/AX1gCn9/f39/f39/f38AYAN/fX0Bf2ADf39/AX5gA39/fQF/YAN/fX8AYAR/f399AGAAAGADf39+AGACf38BfmABfQF/YAN/fX0AYAN/f30BfWAFf35+fn4AYAV/f39/fQBgDH9/f39/f39/f39/fwF/YAF/AXxgBH9/fX8AYAZ/fX9/f38AYAN9fX0Bf2AFf39+f38AYAZ/f399f38BfWAFf319fX0AYAJ/fABgBH9/f30Bf2AJf39/f39/f39/AX9gDH9/f39/f39/f39/fwBgBn9/f39/fQBgBH19fX0Bf2ACf3wBf2ACfX0Bf2AFf39/f34Bf2AJf39/fX19fX19AGAEf35+fwBgAn99AX1gBX9/f399AX9gA39+fwF+YAV/fX19fwBgB39/f31/f38AYAJ9fwF/YAZ/f31/f38AYAN/fX8Bf2AEfX19fwF/YAN/f38BfGAGf39/f319AX9gBH99fX0AYAp/f39/f39/f39/AX9gBH9/fX0Bf2AFf31/f38Bf2AFf39/fX0Bf2AKf31/fX99f31/fwBgD39/f39/f39/f39/f39/fwBgC39/f39/f39/f39/AX9gBH9/f38BfmAHf39/f39/fQF/YAl/f39/f39/f30AYAt/fX9/f39/f39/fwF/YAh/fX9/f39/fwBgCX9/f319fX9/fQF/YAR/fX1/AGADf398AX9gAn9/AXxgB39/f39/fn4Bf2AGf39/f35+AX9gBX9/f398AX9gA319fwF/YAABfGAHf39/f39/fQBgBX9/f31/AX9gB399f39/fX8AYAl/fX9/f39/fX8AYAR+fn5+AX9gBH9/f34BfmACfn8Bf2ACfX0BfWAMf39/f31/f39/f39/AGACfn4BfGAFf39/fX0AYAh/f399f39/fwBgB399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AAQGAwACCgcGAAIAAgACAAIGBgYAAwYDAwAAAAQGAAIGBgYAAwYDAAAEBgYABgYGAAMGAAYAAgAGDAwMQQYGBgYAAgQCBAQEBAwCDQYCBgACBgMAAgAAAAQEAwQCBgACAAQCAAIAAgACAAIAAgYDBAMDBgICBgUGAAUDBAECCAGGAQwIDAgEARkCFhkWGRYEBAEECAQEAAQBAAgBACcJBQQBCAEEAQgIBAUEBAgECAgMDAQBDAwEAAsBCAwFBQQFBAABAQAIBAUEAAQEBQUEBAAABQIDAgMCAwICAgICAgICAgICUx8AAQADAgMDAgIAAQAAAAIAAAIDAAICAgICAgACAAIAAgACAAICAgcCAgICAgICAwAABQYDBQEBAgYGAgIGAgICAgUqBgICAgIFAQYCAgAAAwICByQFBgMCAgAHAAMCAgIHCgIABwIWJQcGAwgDAAACAAUGAgIAAAMCAgICAgIAAgAAAgIAAAIEAQQCGRYBBAQEAgICAhkZAQEBBAEEFhkWGQACFhkFhwEEAAQABgICAAADAgICBwcHAgIAAgACAAIAAgACAgoKCgoCAgICAAIKBwACBQYCAgAAAwICBwIHAgACAgckBwoHCgIABwUGAgIAAAMCAgcCCgUGAgIAAAMCAgcHAgIAAgIHJAIHCgAHBwICAgICAgUGAgIAAAMCAgIFBgMCAgAAAwICBwACBwckAAIFBgYCBgUGAwQEBAQDDgUEAgIFAgICBgMDAgYDAwIEBAMOBQQCAgIFAgIAHQQCAwACAwIdBAIDAwQEAw4FBAIFAgIFAjIPUBQPBwMHBQUDAAAEAAACAAIEAAIDAgYHAwMDBAQDDgUEAg4CAgUCBAMFAAIAAAICAAMCAwUCBAIGAwQEBAMOBQUCAgUCAgIDAgUCAwQEBAMOBQICBQIEAwMCBAMDBAQEAgcDDgUCBwMCBQICBAQDAwIEAwQDAwQEAw4FAgIFAgMDDAwIAA4NAwIGDgMDBAQDDgUFAgIFAgIDAgYDAgACAgMDBAQFBwcDDgUCBwcCBQICAwoHAAMCBgMEBAcDDgUCBwIFAgcDAkMDAiwDBAQHAw4FAgICBQJaNwMCWjcDBAQHAw4FAgMHAgUCBwcHBwQDAogBNSwDBAQEBwMOBQIHAgUDAkMsAwJDLDcOAwQEBwMOBQIFBwIFAgJCEAICAwJCEAICAwQF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AmZvAMsSAmdvAMoSAmhvAMkSAmlvAMgSAmpvAMcSAmtvAMYSAmxvAMUSAm1vAMQSAm5vAMMSAm9vAMISAnBvAMESAnFvAB0Ccm8A/AMCc28AwBICdG8AvxICdW8AvhICdm8AvRICd28AvBICeG8AuxICeW8AuhICem8AuRICQW8AuBICQm8AtxICQ28AqwgCRG8AqggCRW8AthICRm8AtRICR28AtBICSG8AsxICSW8AshICSm8AsRICS28AsBICTG8ArxICTW8ArhICTm8ArRICT28ArBICUG8ApAgCUW8AqxICUm8AowgCU28AqhICVG8AoggCVW8AqRICVm8AqBICV28ApxICWG8AphICWW8ApRICWm8AoQgCX28AoAgCJG8ApBICYXAAoxICYnAAohICY3AAoRICZHAAoBICZXAAnxICZnAAnhICZ3AAnRICaHAAnBICaXAAmxICanAAHQJrcAD8AwJscACaEgJtcACZEgJucACYEgJvcACXEgJwcACWEgJxcACVEgJycACUEgJzcACTEgJ0cACSEgJ1cACREgJ2cACQEgJ3cACpCAJ4cACoCAJ5cACnCAJ6cACPEgJBcACmCAJCcAClCAJDcACOEgJEcACfCAJFcACNEgJGcACsCAJHcACMEgJIcACLEgJJcACKEgJKcACwBQJLcACJEgJMcACIEgJNcACHEgJOcACGEgJPcACFEgJQcACEEgJRcACDEgJScACCEgJTcACBEgJUcACAEgJVcAAdAlZwAP8RAldwAP4RAlhwAP0RAllwAPwRAlpwAPsRAl9wAPoRAiRwAPkRAmFxAPgRAmJxAPcRAmNxAPYRAmRxAPURAmVxAPQRAmZxAPMRAmdxAPIRAmhxAPERAmlxAPARAmpxAO8RAmtxAO4RAmxxAB0CbXEA/AMCbnEA7RECb3EA7BECcHEA6xECcXEA6hECcnEA6RECc3EA6BECdHEA5xECdXEA5hECdnEA5RECd3EA5BECeHEA4xECeXEA4hECenEA4RECQXEA4BECQnEA3xECQ3EA3hECRHEA3RECRXEA3BECRnEA2xECR3EA2hECSHEA2RECSXEA2BECSnEA1xECS3EA1hECTHEA1RECTXEA1BECTnEA0xECT3EA0hECUHEA0RECUXEA0BECUnEAzxECU3EAzhECVHEAzRECVXEAzBECVnEA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AJEjAlNUAJAjAlRUAI8jAlVUAI4jAlZUABoCV1QAGQJYVAAwAllUAI0jAlpUALABAl9UAK8BAiRUAE4CYVUAVAJiVQBnAmNVAHwCZFUAuAECZVUAzwECZlUAqwECZ1UA5AECaFUAlwMCaVUA6QMCalUA6AMCa1UA5wMCbFUAjCMCbVUAiyMCblUAiiMCb1UAiSMCcFUAiCMCcVUAhyMCclUAhiMCc1UAhSMCdFUAhCMCdVUAgyMCdlUAgiMCd1UAgSMCeFUAiwECeVUAigECelUAgAECQVUAfwJCVQCEAQJDVQCDAQJEVQDVAQJFVQCAIwJGVQD/IgJHVQD+IgJIVQD9IgJJVQD8IgJKVQD7IgJLVQD6IgJMVQD5IgJNVQD4IgJOVQD3IgJPVQD2IgJQVQD1IgJRVQD0IgJSVQDzIgJTVQDyIgJUVQDxIgJVVQDwIgJWVQDvIgJXVQDuIgJYVQDtIgJZVQDsIgJaVQDrIgJfVQDqIgIkVQDpIgJhVgDoIgJiVgDnIgJjVgDmIgJkVgDlIgJlVgDkIgJmVgDjIgJnVgDiIgJoVgAaAmlWABkCalYAKQJrVgDAAQJsVgDhIgJtVgCJAQJuVgCYAQJvVgCXAQJwVgBEAnFWAJYBAnJWAEMCc1YAlQECdFYAlAECdVYA8gECdlYAmgECd1YAmQECeFYA3yICeVYA3iICelYA3SICQVYAwwECQlYAwgECQ1YA3CICRFYA2yICRVYAuAICRlYA2iICR1YAGgJIVgAZAklWADACSlYA2SICS1YA+A4CTFYA2CICTVYATgJOVgBUAk9WAGcCUFYAfAJRVgCWAwJSVgCVAwJTVgDIBwJUVgDHBwJVVgDXIgJWVgDWIgJXVgCNBQJYVgDVIgJZVgCLAQJaVgCKAQJfVgCAAQIkVgB/AmFXAIQBAmJXAIMBAmNXANQiAmRXANMiAmVXAOYCAmZXAOUCAmdXABoCaFcAGQJpVwAwAmpXANIiAmtXANEiAmxXANAiAm1XAM8iAm5XAPMOAm9XAG8CcFcAziICcVcAzSICclcAzCICc1cA8g4CdFcA8Q4CdVcA8A4CdlcAyyICd1cAyiICeFcAySICeVcAyCICelcAkQ8CQVcAkA8CQlcAGgJDVwAZAkRXACkCRVcAwAECRlcAxyICR1cAiQECSFcAmAECSVcAlwECSlcARAJLVwCWAQJMVwBDAk1XAJUBAk5XAJQBAk9XAMUiAlBXAJoBAlFXAJkBAlJXAMQiAlNXAMMiAlRXAMEiAlVXAMMBAlZXAMIBAldXAMAiAlhXAL8iAllXAL4iAlpXAL0iAl9XABoCJFcAGQJhWAAwAmJYALwiAmNYALABAmRYAK8BAmVYAE4CZlgAVAJnWABnAmhYAHwCaVgAuAECalgAzwECa1gAqwECbFgA5AECbVgA6gECblgA6QECb1gAtgICcFgAtQICcVgAtAICclgAswICc1gAiwECdFgAigECdVgAgAECdlgAfwJ3WACEAQJ4WACDAQJ5WADVAQJ6WAC7IgJBWACDDwJCWAC4AwJDWAC6IgJEWAAaAkVYABkCRlgAKQJHWADAAQJIWAC5IgJJWACJAQJKWACYAQJLWACXAQJMWABEAk1YAJYBAk5YAEMCT1gAlQECUFgAlAECUVgA8gECUlgAmgECU1gAmQEC