moorhen 0.8.2 → 0.8.4
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/README.md +9 -1
- package/baby-gru/CootWorker.js +1 -1
- package/baby-gru/CootWorker.ts +27 -1
- package/baby-gru/wasm/RDKit_minimal.js +1 -0
- package/baby-gru/wasm/RDKit_minimal.wasm +0 -0
- package/baby-gru/wasm/moorhen.js +1 -1
- package/baby-gru/wasm/moorhen.wasm +0 -0
- package/baby-gru/wasm/moorhen.worker.js +1 -1
- package/baby-gru/wasm/web_example.js +1 -1
- package/baby-gru/wasm/web_example.wasm +0 -0
- package/moorhen.js +14 -14
- package/package.json +8 -5
- package/types/libcoot.d.ts +16 -0
- package/types/main.d.ts +132 -3
- package/types/mgWebGL.d.ts +8 -0
- package/types/moorhen.d.ts +9 -2
package/README.md
CHANGED
|
@@ -67,8 +67,16 @@ Binaries are available on the releases page. Please read the instructions there
|
|
|
67
67
|
5. Build gsl, Boost, RDKIt, Coot, the CCP4 libraries and examples:
|
|
68
68
|
<br>In this branch, it is intended that you do the build in the source directory.
|
|
69
69
|
<br/>After first checkout you should run the following script to build:
|
|
70
|
-
`./
|
|
70
|
+
`./moorhen_build.sh`
|
|
71
71
|
This should build all dependencies and then `Moorhen`.
|
|
72
|
+
\
|
|
73
|
+
\
|
|
74
|
+
It is also possible to build a 64-bit version of Moorhen which (currently) can address up to 8GB memory:
|
|
75
|
+
`./moorhen_build.sh --64bit`
|
|
76
|
+
Note that you need a 64-bit WASM capable web browser to use this. Most browsers are not 64-bit capable by default. Some have
|
|
77
|
+
64-bit capability available as an option or in development versions.
|
|
78
|
+
See the `MEMORY64` feature at [https://webassembly.org/features/](https://webassembly.org/features/)
|
|
79
|
+
Moorhen developers have seen success with Firefox Nightly on MacOS and Linux and Chrome Canary (with `chrome://flags/#enable-experimental-webassembly-features`) on MacOS.
|
|
72
80
|
|
|
73
81
|
6. To run the Moorhen molecular graphics application:
|
|
74
82
|
`cd baby-gru`
|
package/baby-gru/CootWorker.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var cootModule,molecules_container,ccp4Module,__assign=this&&this.__assign||function(){return __assign=Object.assign||function(e){for(var a,r=1,t=arguments.length;r<t;r++)for(var o in a=arguments[r])Object.prototype.hasOwnProperty.call(a,o)&&(e[o]=a[o]);return e},__assign.apply(this,arguments)};importScripts("./wasm/moorhen.js"),importScripts("./wasm/web_example.js");var guid=function(){var e=Date.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(a){var r=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===a?r:3&r|8).toString(16)}))},print=function(e){console.log(e),postMessage({consoleMessage:JSON.stringify(e)})},instancedMeshToMeshData=function(e,a,r,t){void 0===r&&(r=!1),void 0===t&&(t=1e4);for(var o=[],s=[],n=[],i=[],c=[],l=[],_=[],u=[],d=[],m=e.geom,p=e.markup,g=m.size(),h=0;h<g;h++){var f=r,v=[],y=[],S=[],b=[],M=[],z=[],T=[],x=m.get(h);"spherical-atoms"===x.name&&(f=!0);for(var A=x.vertices,F=x.triangles,w=F.size(),k=0;k<w;k++){var I=F.get(k).point_id;a?(v.push(I[0]),v.push(I[2]),v.push(I[1])):(v.push(I[0]),v.push(I[1]),v.push(I[2]))}F.delete();for(var J=A.size(),D=0;D<J;D++){var C=A.get(D),N=C.pos;y.push(N[0]),y.push(N[1]),y.push(N[2]);var R=C.normal;S.push(R[0]),S.push(R[1]),S.push(R[2])}A.delete();var P=x.instancing_data_A,E=P.size();if(E>0)for(var U=0;U<E;U++){var L=(q=P.get(U)).position;z.push(L[0]),z.push(L[1]),z.push(L[2]);var O=q.colour;M.push(O[0]),M.push(O[1]),M.push(O[2]),M.push(O[3]);var B=q.size;b.push(B[0]),b.push(B[1]),b.push(B[2]),T.push.apply(T,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}P.delete();var j=x.instancing_data_B,V=j.size();if(V>0)for(U=0;U<V;U++){var q;if(!((B=(q=j.get(U)).size)[2]>t)){b.push(B[0]),b.push(B[1]),b.push(B[2]),L=q.position,z.push(L[0]),z.push(L[1]),z.push(L[2]),O=q.colour,M.push(O[0]),M.push(O[1]),M.push(O[2]),M.push(O[3]);var H=q.orientation;T.push(H[0][0]),T.push(H[0][1]),T.push(H[0][2]),T.push(H[0][3]),T.push(H[1][0]),T.push(H[1][1]),T.push(H[1][2]),T.push(H[1][3]),T.push(H[2][0]),T.push(H[2][1]),T.push(H[2][2]),T.push(H[2][3]),T.push(H[3][0]),T.push(H[3][1]),T.push(H[3][2]),T.push(H[3][3])}}j.delete(),n.push(S),s.push(y),o.push(v),i.push(b),l.push(z),_.push(T),c.push(M),u.push(!0),f?d.push("PERFECT_SPHERES"):d.push("TRIANGLES")}m.delete();var K=simpleMeshToMeshData(p);return K.idx_tri.length>0&&K.idx_tri[0].length>0&&K.idx_tri[0][0].length>0?r?{prim_types:[d,K.prim_types[0]],idx_tri:[o,K.idx_tri[0]],vert_tri:[l,K.vert_tri[0]],norm_tri:[n,K.norm_tri[0]],col_tri:[c,K.col_tri[0]],instance_use_colors:[u,null],instance_sizes:[i,null],instance_origins:[l,null],instance_orientations:[_,null]}:{prim_types:[d,K.prim_types[0]],idx_tri:[o,K.idx_tri[0]],vert_tri:[s,K.vert_tri[0]],norm_tri:[n,K.norm_tri[0]],col_tri:[c,K.col_tri[0]],instance_use_colors:[u,null],instance_sizes:[i,null],instance_origins:[l,null],instance_orientations:[_,null]}:{prim_types:[d],idx_tri:[o],vert_tri:[s],norm_tri:[n],col_tri:[c],instance_use_colors:[u],instance_sizes:[i],instance_origins:[l],instance_orientations:[_]}},simpleMeshToMeshData=function(e,a){void 0===a&&(a=!1),performance.now();var r=e.vertices,t=e.triangles,o=r.size(),s=t.size(),n=new Uint32Array(3*s),i=new Float32Array(3*o),c=new Float32Array(3*o),l=new Float32Array(4*o);cootModule.getPositionsFromSimpleMesh2(e,i),cootModule.getColoursFromSimpleMesh2(e,l),a?(cootModule.getReversedNormalsFromSimpleMesh2(e,c),cootModule.getPermutedTriangleIndicesFromSimpleMesh2(e,n)):(cootModule.getNormalsFromSimpleMesh2(e,c),cootModule.getTriangleIndicesFromSimpleMesh2(e,n)),performance.now();var _=i,u=l,d=c,m=n;return r.delete(),t.delete(),{prim_types:[["TRIANGLES"]],idx_tri:[[m]],vert_tri:[[_]],norm_tri:[[d]],col_tri:[[u]]}},SuperposeResultsToJSArray=function(e){for(var a=e.aligned_pairs,r=a.size(),t=[],o=0;o<r;o++){var s=a.get(o),n=s.first,i=n.residue_spec,c=s.second,l=c.residue_spec,_={reference:{chainId:i.chain_id,insCode:i.ins_code,seqNum:i.res_no,restype:"UNK",value:n.function_value,label:n.label},moving:{chainId:l.chain_id,insCode:l.ins_code,seqNum:l.res_no,restype:"UNK",value:c.function_value,label:c.label}};t.push(_)}return a.delete(),{referenceSequence:e.alignment.first,movingSequence:e.alignment.second,supperposeInfo:e.superpose_info,alignedPairsData:t}},colourRulesToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},stringArrayArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){for(var o=e.get(t),s=o.size(),n=[],i=0;i<s;i++){var c=o.get(i);n.push(c)}a.push(n),o.delete()}return e.delete(),a},floatArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},mapMoleculeCentreInfoToJSObject=function(e){var a=e.updated_centre,r={updated_centre:[a.x(),a.y(),a.z()],success:e.success,suggested_radius:e.suggested_radius,suggested_contour_level:e.suggested_contour_level};return a.delete(),r},fitLigandInfoArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(__assign({},o))}return e.delete(),a},intArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},stringArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},export_map_as_gltf=function(e,a,r,t,o,s){var n="".concat(guid(),".glb");molecules_container.export_map_molecule_as_gltf(e,a,r,t,o,s,n);var i=cootModule.FS.readFile(n,{encoding:"binary"});return cootModule.FS_unlink(n),i.buffer},export_molecule_as_gltf=function(e,a,r,t,o,s,n,i,c){var l="".concat(guid(),".glb");molecules_container.export_model_molecule_as_gltf(e,a,r,t,o,s,n,i,c,l);var _=cootModule.FS.readFile(l,{encoding:"binary"});return cootModule.FS_unlink(l),_.buffer},symmetryToJSData=function(e){for(var a=[],r=e.first,t=e.second,o=r.symm_trans,s=o.size(),n=0;n<s;n++){var i=o.get(n),c=i.first,l=i.second,_=t.get(n);a.push({x:c.x(),y:c.y(),z:c.z(),asString:c.symm_as_string,isym:c.isym(),us:l.us,ws:l.ws,vs:l.vs,matrix:_}),c.delete()}return o.delete(),t.delete(),a},mmrrccStatsToJSArray=function(e){var a=function(e){for(var a=[],r=e.keys(),t=r.size(),o=0;o<t;o++){var s=r.get(o),n=e.get(s);a.push({resNum:s.res_no,insCode:s.ins_code,modelNumber:s.model_number,chainId:s.chain_id,n:n.n,correlation:n.correlation()}),n.delete()}return r.delete(),a},r=e.first,t=e.second,o={"All atoms":a(r),"Side-chains":a(t)};return r.delete(),t.delete(),o},atomSpecToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({chain_id:o.chain_id,res_no:o.res_no,ins_code:o.ins_code,atom_name:o.atom_name,alt_conf:o.alt_conf,int_user_data:o.int_user_data,float_user_data:o.float_user_data,string_user_data:o.string_user_data,model_number:o.model_number})}return e.delete(),a},residueSpecToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({resNum:o.res_no,insCode:o.ins_code,modelNumber:o.model_number,chainId:o.chain_id,intUserData:o.int_user_data})}return e.delete(),a},stringPairVectorToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({first:o.first,second:o.second})}return e.delete(),a},validationDataToJSArray=function(e,a){void 0===a&&(a=null);for(var r=[],t=e.cviv,o=t.size(),s=0;s<o;s++){var n=t.get(s);if(null!==a&&n.chain_id!==a);else{for(var i=n.rviv,c=i.size(),l=0;l<c;l++){var _=i.get(l),u=_.residue_spec;r.push({chainId:u.chain_id,insCode:u.ins_code,seqNum:u.res_no,restype:"UNK",value:_.function_value})}i.delete()}}return t.delete(),e.delete(),r},linesBoxToJSArray=function(e){for(var a=[],r=e.line_segments,t=r.size(),o=0;o<t;o++){for(var s=[],n=r.get(o),i=n.size(),c=0;c<i;c++){var l=n.get(c),_=l.getStart(),u=l.getFinish(),d=l.amplitude(),m={x:_.x(),y:_.y(),z:_.z()},p={x:u.x(),y:u.y(),z:u.z()};s.push({start:m,end:p,dist:d}),_.delete(),u.delete(),l.delete()}n.delete(),a.push(s)}return r.delete(),a},vectorHBondToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({hb_hydrogen:o.hb_hydrogen,donor:o.donor,acceptor:o.acceptor,donor_neigh:o.donor_neigh,acceptor_neigh:o.acceptor_neigh,angle_1:o.angle_1,angle_2:o.angle_2,angle_3:o.angle_3,dist:o.dist,ligand_atom_is_donor:o.ligand_atom_is_donor,hydrogen_is_ligand_atom:o.hydrogen_is_ligand_atom,bond_has_hydrogen_flag:o.bond_has_hydrogen_flag})}return e.delete(),a},interestingPlaceDataToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s=o.residue_spec;a.push({intUserData:s.int_user_data,modelNumber:s.model_number,chainId:s.chain_id,insCode:s.ins_code,resNum:s.res_no,featureType:o.feature_type,featureValue:o.feature_value,buttonLabel:o.button_label,badness:o.badness,coordX:o.x,coordY:o.y,coordZ:o.z})}return e.delete(),a},histogramInfoToJSData=function(e){var a=e.counts;return{counts:intArrayToJSArray(a),bin_width:e.bin_width,base:e.base}},autoReadMtzInfoVectToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({idx:o.idx,F:o.F,phi:o.phi,w:o.w,weights_used:o.weights_used,Rfree:o.Rfree?o.Rfree.split("/")[3]:"",F_obs:o.F_obs?o.F_obs.split("/")[3]:"",sigF_obs:o.sigF_obs?o.sigF_obs.split("/")[3]:""})}if(e.delete(),a.some((function(e){return-1===e.idx}))){var s=a.find((function(e){return-1===e.idx}));s&&s.F_obs&&s.Rfree&&s.sigF_obs&&a.forEach((function(e){e.F_obs=s.F_obs,e.sigF_obs=s.sigF_obs,e.Rfree=s.Rfree})),a=a.filter((function(e){return-1!==e.idx}))}return a},ramachandranDataToJSArray=function(e,a){for(var r=[],t=e.size(),o=0;o<t;o++){var s=e.get(o),n=s.phi_psi;n.chain_id===a&&r.push({chainId:n.chain_id,insCode:n.ins_code,seqNum:n.residue_number,restype:s.residue_name(),isOutlier:!s.is_allowed_flag,phi:n.phi(),psi:n.psi(),is_pre_pro:"PRO"===s.residue_name()}),s.delete(),n.delete()}return e.delete(),r},vectorPairStringIntToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s={residue:o.first,slice:o.second};a.push(s)}return e.delete(),a},vectorPairClipperCoordFloatToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s=o.second,n=o.first,i={x:n.x(),y:n.y(),z:n.z()};n.delete(),a.push({value:s,coord:i})}return e.delete(),a},simpleMeshToLineMeshData=function(e,a){performance.now();var r=e.vertices,t=e.triangles,o=t.size(),s=r.size(),n=new Uint32Array(6*o),i=new Float32Array(3*s),c=new Float32Array(3*s),l=new Float32Array(4*s);cootModule.getLineIndicesFromSimpleMesh2(e,n),cootModule.getPositionsFromSimpleMesh2(e,i),cootModule.getNormalsFromSimpleMesh2(e,c),cootModule.getColoursFromSimpleMesh2(e,l),performance.now();var _=n,u=i,d=c,m=l;return r.delete(),t.delete(),a?{prim_types:[["NORMALLINES"]],useIndices:[[!0]],idx_tri:[[_]],vert_tri:[[u]],additional_norm_tri:[[d]],norm_tri:[[d]],col_tri:[[m]]}:{prim_types:[["LINES"]],useIndices:[[!0]],idx_tri:[[_]],vert_tri:[[u]],norm_tri:[[d]],col_tri:[[m]]}},auto_open_mtz=function(e){var a=guid(),r=new Uint8Array(e);cootModule.FS_createDataFile(".","".concat(a,".mtz"),r,!0,!0);var t="./".concat(a,".mtz"),o=molecules_container.auto_read_mtz(t);return cootModule.FS_unlink(t),o},replace_map_by_mtz_from_file=function(e,a,r){var t=guid(),o="./".concat(t,".mtz"),s=new Uint8Array(a);cootModule.FS_createDataFile(".",o,s,!0,!0);var n=[e,o,r.F,r.PHI,"",!1],i=molecules_container.replace_map_by_mtz_from_file.apply(molecules_container,n);return cootModule.FS_unlink(o),i},new_positions_for_residue_atoms=function(e,a){var r=0,t=new cootModule.Vectormoved_residue_t;return a.forEach((function(e){if(e.length>0){var a=e[0],r=new cootModule.moved_residue_t(a.chain_id,parseInt(a.res_no),"");e.forEach((function(e){var a=new cootModule.moved_atom_t(e.name,e.alt_loc,e.x,e.y,e.z,-1);r.add_atom(a),a.delete()})),t.push_back(r),r.delete()}})),r+=molecules_container.new_positions_for_atoms_in_residues(e,t),t.delete(),r},read_mtz=function(e,a,r){var t=guid(),o=new Uint8Array(e);cootModule.FS_createDataFile(".","".concat(t,".mtz"),o,!0,!0);var s="./".concat(t,".mtz"),n=[s,r.F,r.PHI,"",!1,r.isDifference],i=molecules_container.read_mtz.apply(molecules_container,n);return cootModule.FS_unlink(s),i},associate_data_mtz_file_with_map=function(e,a,r,t,o){var s=new Uint8Array(a.data);cootModule.FS_createDataFile(".","".concat(a.fileName,".mtz"),s,!0,!0);var n="./".concat(a.fileName,".mtz"),i=[e,n,r,t,o];return molecules_container.associate_data_mtz_file_with_map.apply(molecules_container,i),n},read_ccp4_map=function(e,a,r){var t=guid(),o=new Uint8Array(e),s="";a.endsWith(".map.gz")?s="map.gz":a.endsWith(".mrc.gz")&&(s="mrc.gz"),cootModule.FS_createDataFile(".","".concat(t).concat(s),o,!0,!0);var n="./".concat(t).concat(s),i=[n,r],c=-1;try{c=molecules_container.read_ccp4_map.apply(molecules_container,i)}catch(e){console.warn(e)}finally{cootModule.FS_unlink(n)}return c},setUserDefinedBondColours=function(e,a,r){void 0===r&&(r=!1);var t=new cootModule.MapIntFloat3,o=new cootModule.VectorStringUInt_pair;a.forEach((function(e,a){t.set(a+51,e.rgb);var r={first:e.cid,second:a+51};o.push_back(r)})),molecules_container.set_user_defined_bond_colours(e,t),molecules_container.set_user_defined_atom_colour_by_selection(e,o,r),o.delete(),t.delete()},privateerValidationToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){for(var o=e.get(t),s=[],n=o.torsions,i=n.size(),c=0;c<i;c++)s.push(n.get(c));n.delete();var l={torsions:s,svg:o.svg.replace(/: *32/g,""),id:o.id.replace(/: *32/g,""),chain:o.chain,wurcs:o.wurcs,glyconnect_id:o.glyconnect_id,glytoucan_id:o.glytoucan_id,torsion_err:o.torsion_err,anomer_err:o.anomer_err,conformation_err:o.conformation_err,puckering_err:o.puckering_err,chirality_err:o.chirality_err};a.push(l)}return e.delete(),a},doCootCommand=function(e){var a=e.returnType,r=e.command,t=e.commandArgs,o=e.messageId,s=e.myTimeStamp,n=e.message;try{var i=void 0;switch(r){case"shim_new_positions_for_residue_atoms":i=new_positions_for_residue_atoms.apply(void 0,t);break;case"shim_read_mtz":i=read_mtz.apply(void 0,t);break;case"shim_auto_open_mtz":i=auto_open_mtz.apply(void 0,t);break;case"shim_read_ccp4_map":i=read_ccp4_map.apply(void 0,t);break;case"shim_associate_data_mtz_file_with_map":i=associate_data_mtz_file_with_map.apply(void 0,t);break;case"shim_replace_map_by_mtz_from_file":i=replace_map_by_mtz_from_file.apply(void 0,t);break;case"shim_set_bond_colours":i=setUserDefinedBondColours.apply(void 0,t);break;case"shim_export_map_as_gltf":i=export_map_as_gltf.apply(void 0,t);break;case"shim_export_molecule_as_gltf":i=export_molecule_as_gltf.apply(void 0,t);break;default:i=molecules_container[r].apply(molecules_container,t)}var c=void 0;switch(a){case"fit_ligand_info_array":c=fitLigandInfoArrayToJSArray(i);break;case"string_array_array":c=stringArrayArrayToJSArray(i);break;case"instanced_mesh_perm":c=instancedMeshToMeshData(i,!0);break;case"histogram_info_t":c=histogramInfoToJSData(i);break;case"symmetry":c=symmetryToJSData(i);break;case"mmrrcc_stats":c=mmrrccStatsToJSArray(i);break;case"colour_rules":c=colourRulesToJSArray(i);break;case"instanced_mesh_perfect_spheres":c=instancedMeshToMeshData(i,!1,!0);break;case"instanced_mesh":c=instancedMeshToMeshData(i,!1,!1,5);break;case"mesh_perm":c=simpleMeshToMeshData(i,!0);break;case"mesh":c=simpleMeshToMeshData(i);break;case"lit_lines_mesh":c=simpleMeshToLineMeshData(i,!0);break;case"lines_mesh":c=simpleMeshToLineMeshData(i,!1);break;case"float_array":c=floatArrayToJSArray(i);break;case"int_array":c=intArrayToJSArray(i);break;case"auto_read_mtz_info_array":c=autoReadMtzInfoVectToJSArray(i);break;case"map_molecule_centre_info_t":c=mapMoleculeCentreInfoToJSObject(i);break;case"string_array":c=stringArrayToJSArray(i);break;case"residue_specs":c=residueSpecToJSArray(i);break;case"atom_specs":c=atomSpecToJSArray(i);break;case"ramachandran_data":c=ramachandranDataToJSArray(i,e.chainID);break;case"validation_data":c=validationDataToJSArray(i,e.chainID);break;case"interesting_places_data":c=interestingPlaceDataToJSArray(i);break;case"superpose_results":c=SuperposeResultsToJSArray(i);break;case"generic_3d_lines_bonds_box":c=linesBoxToJSArray(i);break;case"vector_hbond":c=vectorHBondToJSArray(i);break;case"status_instanced_mesh_pair":c={status:i.first,mesh:instancedMeshToMeshData(i.second,!1,!1,5)};break;case"string_string_pair_vector":c=stringPairVectorToJSArray(i);break;case"void":c=null;break;case"vector_pair_clipper_coord_float":c=vectorPairClipperCoordFloatToJSArray(i);break;case"vector_pair_string_int":c=vectorPairStringIntToJSArray(i);break;case"privateer_results":c=privateerValidationToJSArray(i);break;default:c=i}try{i.delete()}catch(e){}return{messageId:o,messageSendTime:Date.now(),command:r,consoleMessage:"Completed ".concat(r," in ").concat(Date.now()-s," ms"),result:{status:"Completed",result:c}}}catch(e){return console.log(e),{messageId:o,myTimeStamp:s,message:n,consoleMessage:"EXCEPTION RAISED IN ".concat(r,", ").concat(e),result:{status:"Exception"}}}};onmessage=function(e){if("CootInitialize"===e.data.message)createRSRModule({locateFile:function(e){return"./wasm/".concat(e)},onRuntimeInitialized:function(){},mainScriptUrlOrBlob:"moorhen.js",print,printErr:print}).then((function(a){postMessage({consoleMessage:"Initialized molecules_container",message:e.data.message,messageId:e.data.messageId}),(molecules_container=new(cootModule=a).molecules_container_js(!1)).set_use_gemmi(!1),molecules_container.set_show_timings(!1),molecules_container.set_refinement_is_verbose(!1),molecules_container.fill_rotamer_probability_tables(),molecules_container.set_map_sampling_rate(1.7),molecules_container.set_map_is_contoured_with_thread_pool(!0),molecules_container.set_max_number_of_threads(3),cootModule.FS.mkdir("COOT_BACKUP")})).catch((function(e){console.log(e),print(e)})),createCCP4Module({locateFile:function(e){return"./wasm/".concat(e)},onRuntimeInitialized:function(){},mainScriptUrlOrBlob:"web_example.js",print,printErr:print}).then((function(e){ccp4Module=e})).catch((function(e){console.log(e),print(e)}));else if("close"===e.data.message)null==molecules_container||molecules_container.delete(),postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Closed molecules container",message:e.data.message,result:{}});else if("get_mtz_data"===e.data.message){var a=cootModule.FS.readFile(e.data.fileName,{encoding:"binary"});postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Fetched mtz data for map ".concat(e.data.molNo),message:e.data.message,result:{molNo:e.data.molNo,mtzData:a}})}else if("get_map"===e.data.message){var r=guid(),t="./".concat(r,".map");molecules_container.writeCCP4Map(e.data.molNo,t);var o=cootModule.FS.readFile(t,{encoding:"binary"});cootModule.FS_unlink(t),postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Fetched map of map ".concat(e.data.molNo),message:e.data.message,result:{molNo:e.data.molNo,mapData:o.buffer}})}else if("delete_file_name"===e.data.message){var s=cootModule.FS_unlink(e.data.fileName);postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,messageTag:"result",result:s})}else if("coot_command_list"===e.data.message){var n=e.data.commandList.map((function(a){return doCootCommand(__assign(__assign({},e.data),a))}));postMessage({messageId:e.data.messageId,resultList:n})}"coot_command"===e.data.message&&(s=doCootCommand(e.data),postMessage(s))};
|
|
1
|
+
var cootModule,molecules_container,ccp4Module,__assign=this&&this.__assign||function(){return __assign=Object.assign||function(e){for(var a,r=1,t=arguments.length;r<t;r++)for(var o in a=arguments[r])Object.prototype.hasOwnProperty.call(a,o)&&(e[o]=a[o]);return e},__assign.apply(this,arguments)};importScripts("./wasm/moorhen.js"),importScripts("./wasm/web_example.js");var guid=function(){var e=Date.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(a){var r=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"===a?r:3&r|8).toString(16)}))},print=function(e){console.log(e),postMessage({consoleMessage:JSON.stringify(e)})},instancedMeshToMeshData=function(e,a,r,t){void 0===r&&(r=!1),void 0===t&&(t=1e4);for(var o=[],s=[],n=[],i=[],c=[],_=[],l=[],u=[],d=[],m=e.geom,p=e.markup,g=m.size(),h=0;h<g;h++){var f=r,v=[],y=[],S=[],b=[],M=[],z=[],T=[],x=m.get(h);"spherical-atoms"===x.name&&(f=!0);for(var A=x.vertices,F=x.triangles,w=F.size(),k=0;k<w;k++){var I=F.get(k).point_id;a?(v.push(I[0]),v.push(I[2]),v.push(I[1])):(v.push(I[0]),v.push(I[1]),v.push(I[2]))}F.delete();for(var J=A.size(),D=0;D<J;D++){var C=A.get(D),N=C.pos;y.push(N[0]),y.push(N[1]),y.push(N[2]);var R=C.normal;S.push(R[0]),S.push(R[1]),S.push(R[2])}A.delete();var P=x.instancing_data_A,E=P.size();if(E>0)for(var U=0;U<E;U++){var L=(q=P.get(U)).position;z.push(L[0]),z.push(L[1]),z.push(L[2]);var O=q.colour;M.push(O[0]),M.push(O[1]),M.push(O[2]),M.push(O[3]);var B=q.size;b.push(B[0]),b.push(B[1]),b.push(B[2]),T.push.apply(T,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])}P.delete();var j=x.instancing_data_B,V=j.size();if(V>0)for(U=0;U<V;U++){var q;if(!((B=(q=j.get(U)).size)[2]>t)){b.push(B[0]),b.push(B[1]),b.push(B[2]),L=q.position,z.push(L[0]),z.push(L[1]),z.push(L[2]),O=q.colour,M.push(O[0]),M.push(O[1]),M.push(O[2]),M.push(O[3]);var H=q.orientation;T.push(H[0][0]),T.push(H[0][1]),T.push(H[0][2]),T.push(H[0][3]),T.push(H[1][0]),T.push(H[1][1]),T.push(H[1][2]),T.push(H[1][3]),T.push(H[2][0]),T.push(H[2][1]),T.push(H[2][2]),T.push(H[2][3]),T.push(H[3][0]),T.push(H[3][1]),T.push(H[3][2]),T.push(H[3][3])}}j.delete(),n.push(S),s.push(y),o.push(v),i.push(b),_.push(z),l.push(T),c.push(M),u.push(!0),f?d.push("PERFECT_SPHERES"):d.push("TRIANGLES")}m.delete();var K=simpleMeshToMeshData(p);return K.idx_tri.length>0&&K.idx_tri[0].length>0&&K.idx_tri[0][0].length>0?r?{prim_types:[d,K.prim_types[0]],idx_tri:[o,K.idx_tri[0]],vert_tri:[_,K.vert_tri[0]],norm_tri:[n,K.norm_tri[0]],col_tri:[c,K.col_tri[0]],instance_use_colors:[u,null],instance_sizes:[i,null],instance_origins:[_,null],instance_orientations:[l,null]}:{prim_types:[d,K.prim_types[0]],idx_tri:[o,K.idx_tri[0]],vert_tri:[s,K.vert_tri[0]],norm_tri:[n,K.norm_tri[0]],col_tri:[c,K.col_tri[0]],instance_use_colors:[u,null],instance_sizes:[i,null],instance_origins:[_,null],instance_orientations:[l,null]}:{prim_types:[d],idx_tri:[o],vert_tri:[s],norm_tri:[n],col_tri:[c],instance_use_colors:[u],instance_sizes:[i],instance_origins:[_],instance_orientations:[l]}},simpleMeshToMeshData=function(e,a){void 0===a&&(a=!1),performance.now();var r=e.vertices,t=e.triangles,o=r.size(),s=t.size(),n=new Uint32Array(3*s),i=new Float32Array(3*o),c=new Float32Array(3*o),_=new Float32Array(4*o);cootModule.getPositionsFromSimpleMesh2(e,i),cootModule.getColoursFromSimpleMesh2(e,_),a?(cootModule.getReversedNormalsFromSimpleMesh2(e,c),cootModule.getPermutedTriangleIndicesFromSimpleMesh2(e,n)):(cootModule.getNormalsFromSimpleMesh2(e,c),cootModule.getTriangleIndicesFromSimpleMesh2(e,n)),performance.now();var l=i,u=_,d=c,m=n;return r.delete(),t.delete(),{prim_types:[["TRIANGLES"]],idx_tri:[[m]],vert_tri:[[l]],norm_tri:[[d]],col_tri:[[u]]}},SuperposeResultsToJSArray=function(e){for(var a=e.aligned_pairs,r=a.size(),t=[],o=0;o<r;o++){var s=a.get(o),n=s.first,i=n.residue_spec,c=s.second,_=c.residue_spec,l={reference:{chainId:i.chain_id,insCode:i.ins_code,seqNum:i.res_no,restype:"UNK",value:n.function_value,label:n.label},moving:{chainId:_.chain_id,insCode:_.ins_code,seqNum:_.res_no,restype:"UNK",value:c.function_value,label:c.label}};t.push(l)}return a.delete(),{referenceSequence:e.alignment.first,movingSequence:e.alignment.second,supperposeInfo:e.superpose_info,alignedPairsData:t}},colourRulesToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},stringArrayArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){for(var o=e.get(t),s=o.size(),n=[],i=0;i<s;i++){var c=o.get(i);n.push(c)}a.push(n),o.delete()}return e.delete(),a},floatArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},mapMoleculeCentreInfoToJSObject=function(e){var a=e.updated_centre,r={updated_centre:[a.x(),a.y(),a.z()],success:e.success,suggested_radius:e.suggested_radius,suggested_contour_level:e.suggested_contour_level};return a.delete(),r},textureAsFloatsToJSTextureAsFloats=function(e){var a=[],r=e.image_data.size();console.log(r);for(var t=0;t<r;t++){var o=e.image_data.get(t);a.push(o)}return e.image_data.delete(),{width:e.width,height:e.height,x_size:e.x_size,y_size:e.y_size,z_position:e.z_position,image_data:a}},fitLigandInfoArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(__assign({},o))}return e.delete(),a},intArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},stringArrayToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push(o)}return e.delete(),a},export_map_as_gltf=function(e,a,r,t,o,s){var n="".concat(guid(),".glb");molecules_container.export_map_molecule_as_gltf(e,a,r,t,o,s,n);var i=cootModule.FS.readFile(n,{encoding:"binary"});return cootModule.FS_unlink(n),i.buffer},export_molecule_as_gltf=function(e,a,r,t,o,s,n,i,c){var _="".concat(guid(),".glb");molecules_container.export_model_molecule_as_gltf(e,a,r,t,o,s,n,i,c,_);var l=cootModule.FS.readFile(_,{encoding:"binary"});return cootModule.FS_unlink(_),l.buffer},symmetryToJSData=function(e){for(var a=[],r=e.first,t=e.second,o=r.symm_trans,s=o.size(),n=0;n<s;n++){var i=o.get(n),c=i.first,_=i.second,l=t.get(n);a.push({x:c.x(),y:c.y(),z:c.z(),asString:c.symm_as_string,isym:c.isym(),us:_.us,ws:_.ws,vs:_.vs,matrix:l}),c.delete()}return o.delete(),t.delete(),a},mmrrccStatsToJSArray=function(e){var a=function(e){for(var a=[],r=e.keys(),t=r.size(),o=0;o<t;o++){var s=r.get(o),n=e.get(s);a.push({resNum:s.res_no,insCode:s.ins_code,modelNumber:s.model_number,chainId:s.chain_id,n:n.n,correlation:n.correlation()}),n.delete()}return r.delete(),a},r=e.first,t=e.second,o={"All atoms":a(r),"Side-chains":a(t)};return r.delete(),t.delete(),o},atomSpecToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({chain_id:o.chain_id,res_no:o.res_no,ins_code:o.ins_code,atom_name:o.atom_name,alt_conf:o.alt_conf,int_user_data:o.int_user_data,float_user_data:o.float_user_data,string_user_data:o.string_user_data,model_number:o.model_number})}return e.delete(),a},residueSpecToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({resNum:o.res_no,insCode:o.ins_code,modelNumber:o.model_number,chainId:o.chain_id,intUserData:o.int_user_data})}return e.delete(),a},stringPairVectorToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({first:o.first,second:o.second})}return e.delete(),a},validationDataToJSArray=function(e,a){void 0===a&&(a=null);for(var r=[],t=e.cviv,o=t.size(),s=0;s<o;s++){var n=t.get(s);if(null!==a&&n.chain_id!==a);else{for(var i=n.rviv,c=i.size(),_=0;_<c;_++){var l=i.get(_),u=l.residue_spec;r.push({chainId:u.chain_id,insCode:u.ins_code,seqNum:u.res_no,restype:"UNK",value:l.function_value})}i.delete()}}return t.delete(),e.delete(),r},linesBoxToJSArray=function(e){for(var a=[],r=e.line_segments,t=r.size(),o=0;o<t;o++){for(var s=[],n=r.get(o),i=n.size(),c=0;c<i;c++){var _=n.get(c),l=_.getStart(),u=_.getFinish(),d=_.amplitude(),m={x:l.x(),y:l.y(),z:l.z()},p={x:u.x(),y:u.y(),z:u.z()};s.push({start:m,end:p,dist:d}),l.delete(),u.delete(),_.delete()}n.delete(),a.push(s)}return r.delete(),a},vectorHBondToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({hb_hydrogen:o.hb_hydrogen,donor:o.donor,acceptor:o.acceptor,donor_neigh:o.donor_neigh,acceptor_neigh:o.acceptor_neigh,angle_1:o.angle_1,angle_2:o.angle_2,angle_3:o.angle_3,dist:o.dist,ligand_atom_is_donor:o.ligand_atom_is_donor,hydrogen_is_ligand_atom:o.hydrogen_is_ligand_atom,bond_has_hydrogen_flag:o.bond_has_hydrogen_flag})}return e.delete(),a},interestingPlaceDataToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s=o.residue_spec;a.push({intUserData:s.int_user_data,modelNumber:s.model_number,chainId:s.chain_id,insCode:s.ins_code,resNum:s.res_no,featureType:o.feature_type,featureValue:o.feature_value,buttonLabel:o.button_label,badness:o.badness,coordX:o.x,coordY:o.y,coordZ:o.z})}return e.delete(),a},histogramInfoToJSData=function(e){var a=e.counts;return{counts:intArrayToJSArray(a),bin_width:e.bin_width,base:e.base}},autoReadMtzInfoVectToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t);a.push({idx:o.idx,F:o.F,phi:o.phi,w:o.w,weights_used:o.weights_used,Rfree:o.Rfree?o.Rfree.split("/")[3]:"",F_obs:o.F_obs?o.F_obs.split("/")[3]:"",sigF_obs:o.sigF_obs?o.sigF_obs.split("/")[3]:""})}if(e.delete(),a.some((function(e){return-1===e.idx}))){var s=a.find((function(e){return-1===e.idx}));s&&s.F_obs&&s.Rfree&&s.sigF_obs&&a.forEach((function(e){e.F_obs=s.F_obs,e.sigF_obs=s.sigF_obs,e.Rfree=s.Rfree})),a=a.filter((function(e){return-1!==e.idx}))}return a},ramachandranDataToJSArray=function(e,a){for(var r=[],t=e.size(),o=0;o<t;o++){var s=e.get(o),n=s.phi_psi;n.chain_id===a&&r.push({chainId:n.chain_id,insCode:n.ins_code,seqNum:n.residue_number,restype:s.residue_name(),isOutlier:!s.is_allowed_flag,phi:n.phi(),psi:n.psi(),is_pre_pro:"PRO"===s.residue_name()}),s.delete(),n.delete()}return e.delete(),r},vectorPairStringIntToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s={residue:o.first,slice:o.second};a.push(s)}return e.delete(),a},vectorPairClipperCoordFloatToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){var o=e.get(t),s=o.second,n=o.first,i={x:n.x(),y:n.y(),z:n.z()};n.delete(),a.push({value:s,coord:i})}return e.delete(),a},simpleMeshToLineMeshData=function(e,a){performance.now();var r=e.vertices,t=e.triangles,o=t.size(),s=r.size(),n=new Uint32Array(6*o),i=new Float32Array(3*s),c=new Float32Array(3*s),_=new Float32Array(4*s);cootModule.getLineIndicesFromSimpleMesh2(e,n),cootModule.getPositionsFromSimpleMesh2(e,i),cootModule.getNormalsFromSimpleMesh2(e,c),cootModule.getColoursFromSimpleMesh2(e,_),performance.now();var l=n,u=i,d=c,m=_;return r.delete(),t.delete(),a?{prim_types:[["NORMALLINES"]],useIndices:[[!0]],idx_tri:[[l]],vert_tri:[[u]],additional_norm_tri:[[d]],norm_tri:[[d]],col_tri:[[m]]}:{prim_types:[["LINES"]],useIndices:[[!0]],idx_tri:[[l]],vert_tri:[[u]],norm_tri:[[d]],col_tri:[[m]]}},auto_open_mtz=function(e){var a=guid(),r=new Uint8Array(e);cootModule.FS_createDataFile(".","".concat(a,".mtz"),r,!0,!0);var t="./".concat(a,".mtz"),o=molecules_container.auto_read_mtz(t);return cootModule.FS_unlink(t),o},replace_map_by_mtz_from_file=function(e,a,r){var t=guid(),o="./".concat(t,".mtz"),s=new Uint8Array(a);cootModule.FS_createDataFile(".",o,s,!0,!0);var n=[e,o,r.F,r.PHI,"",!1],i=molecules_container.replace_map_by_mtz_from_file.apply(molecules_container,n);return cootModule.FS_unlink(o),i},new_positions_for_residue_atoms=function(e,a){var r=0,t=new cootModule.Vectormoved_residue_t;return a.forEach((function(e){if(e.length>0){var a=e[0],r=new cootModule.moved_residue_t(a.chain_id,parseInt(a.res_no),"");e.forEach((function(e){var a=new cootModule.moved_atom_t(e.name,e.alt_loc,e.x,e.y,e.z,-1);r.add_atom(a),a.delete()})),t.push_back(r),r.delete()}})),r+=molecules_container.new_positions_for_atoms_in_residues(e,t),t.delete(),r},read_mtz=function(e,a,r){var t=guid(),o=new Uint8Array(e);cootModule.FS_createDataFile(".","".concat(t,".mtz"),o,!0,!0);var s="./".concat(t,".mtz"),n=[s,r.F,r.PHI,"",!1,r.isDifference],i=molecules_container.read_mtz.apply(molecules_container,n);return cootModule.FS_unlink(s),i},associate_data_mtz_file_with_map=function(e,a,r,t,o){var s=new Uint8Array(a.data);cootModule.FS_createDataFile(".","".concat(a.fileName,".mtz"),s,!0,!0);var n="./".concat(a.fileName,".mtz"),i=[e,n,r,t,o];return molecules_container.associate_data_mtz_file_with_map.apply(molecules_container,i),n},read_ccp4_map=function(e,a,r){var t=guid(),o=new Uint8Array(e),s="";a.endsWith(".map.gz")?s="map.gz":a.endsWith(".mrc.gz")&&(s="mrc.gz"),cootModule.FS_createDataFile(".","".concat(t).concat(s),o,!0,!0);var n="./".concat(t).concat(s),i=[n,r],c=-1;try{c=molecules_container.read_ccp4_map.apply(molecules_container,i)}catch(e){console.warn(e)}finally{cootModule.FS_unlink(n)}return c},setUserDefinedBondColours=function(e,a,r){void 0===r&&(r=!1);var t=new cootModule.MapIntFloat3,o=new cootModule.VectorStringUInt_pair;a.forEach((function(e,a){t.set(a+51,e.rgb);var r={first:e.cid,second:a+51};o.push_back(r)})),molecules_container.set_user_defined_bond_colours(e,t),molecules_container.set_user_defined_atom_colour_by_selection(e,o,r),o.delete(),t.delete()},privateerValidationToJSArray=function(e){for(var a=[],r=e.size(),t=0;t<r;t++){for(var o=e.get(t),s=[],n=o.torsions,i=n.size(),c=0;c<i;c++)s.push(n.get(c));n.delete();var _={torsions:s,svg:o.svg.replace(/: *32/g,""),id:o.id.replace(/: *32/g,""),chain:o.chain,wurcs:o.wurcs,glyconnect_id:o.glyconnect_id,glytoucan_id:o.glytoucan_id,torsion_err:o.torsion_err,anomer_err:o.anomer_err,conformation_err:o.conformation_err,puckering_err:o.puckering_err,chirality_err:o.chirality_err};a.push(_)}return e.delete(),a},doCootCommand=function(e){var a=e.returnType,r=e.command,t=e.commandArgs,o=e.messageId,s=e.myTimeStamp,n=e.message;try{var i=void 0;switch(r){case"shim_new_positions_for_residue_atoms":i=new_positions_for_residue_atoms.apply(void 0,t);break;case"shim_read_mtz":i=read_mtz.apply(void 0,t);break;case"shim_auto_open_mtz":i=auto_open_mtz.apply(void 0,t);break;case"shim_read_ccp4_map":i=read_ccp4_map.apply(void 0,t);break;case"shim_associate_data_mtz_file_with_map":i=associate_data_mtz_file_with_map.apply(void 0,t);break;case"shim_replace_map_by_mtz_from_file":i=replace_map_by_mtz_from_file.apply(void 0,t);break;case"shim_set_bond_colours":i=setUserDefinedBondColours.apply(void 0,t);break;case"shim_export_map_as_gltf":i=export_map_as_gltf.apply(void 0,t);break;case"shim_export_molecule_as_gltf":i=export_molecule_as_gltf.apply(void 0,t);break;default:i=molecules_container[r].apply(molecules_container,t)}var c=void 0;switch(a){case"texture_as_floats_t":c=textureAsFloatsToJSTextureAsFloats(i);break;case"fit_ligand_info_array":c=fitLigandInfoArrayToJSArray(i);break;case"string_array_array":c=stringArrayArrayToJSArray(i);break;case"instanced_mesh_perm":c=instancedMeshToMeshData(i,!0);break;case"histogram_info_t":c=histogramInfoToJSData(i);break;case"symmetry":c=symmetryToJSData(i);break;case"mmrrcc_stats":c=mmrrccStatsToJSArray(i);break;case"colour_rules":c=colourRulesToJSArray(i);break;case"instanced_mesh_perfect_spheres":c=instancedMeshToMeshData(i,!1,!0);break;case"instanced_mesh":c=instancedMeshToMeshData(i,!1,!1,5);break;case"mesh_perm":c=simpleMeshToMeshData(i,!0);break;case"mesh":c=simpleMeshToMeshData(i);break;case"lit_lines_mesh":c=simpleMeshToLineMeshData(i,!0);break;case"lines_mesh":c=simpleMeshToLineMeshData(i,!1);break;case"float_array":c=floatArrayToJSArray(i);break;case"int_array":c=intArrayToJSArray(i);break;case"auto_read_mtz_info_array":c=autoReadMtzInfoVectToJSArray(i);break;case"map_molecule_centre_info_t":c=mapMoleculeCentreInfoToJSObject(i);break;case"string_array":c=stringArrayToJSArray(i);break;case"residue_specs":c=residueSpecToJSArray(i);break;case"atom_specs":c=atomSpecToJSArray(i);break;case"ramachandran_data":c=ramachandranDataToJSArray(i,e.chainID);break;case"validation_data":c=validationDataToJSArray(i,e.chainID);break;case"interesting_places_data":c=interestingPlaceDataToJSArray(i);break;case"superpose_results":c=SuperposeResultsToJSArray(i);break;case"generic_3d_lines_bonds_box":c=linesBoxToJSArray(i);break;case"vector_hbond":c=vectorHBondToJSArray(i);break;case"status_instanced_mesh_pair":c={status:i.first,mesh:instancedMeshToMeshData(i.second,!1,!1,5)};break;case"string_string_pair_vector":c=stringPairVectorToJSArray(i);break;case"void":c=null;break;case"vector_pair_clipper_coord_float":c=vectorPairClipperCoordFloatToJSArray(i);break;case"vector_pair_string_int":c=vectorPairStringIntToJSArray(i);break;case"privateer_results":c=privateerValidationToJSArray(i);break;default:c=i}try{i.delete()}catch(e){}return{messageId:o,messageSendTime:Date.now(),command:r,consoleMessage:"Completed ".concat(r," in ").concat(Date.now()-s," ms"),result:{status:"Completed",result:c}}}catch(e){return console.log(e),{messageId:o,myTimeStamp:s,message:n,consoleMessage:"EXCEPTION RAISED IN ".concat(r,", ").concat(e),result:{status:"Exception"}}}};onmessage=function(e){if("CootInitialize"===e.data.message)createRSRModule({locateFile:function(e){return"./wasm/".concat(e)},onRuntimeInitialized:function(){},mainScriptUrlOrBlob:"moorhen.js",print,printErr:print}).then((function(a){postMessage({consoleMessage:"Initialized molecules_container",message:e.data.message,messageId:e.data.messageId}),(molecules_container=new(cootModule=a).molecules_container_js(!1)).set_use_gemmi(!1),molecules_container.set_show_timings(!1),molecules_container.set_refinement_is_verbose(!1),molecules_container.fill_rotamer_probability_tables(),molecules_container.set_map_sampling_rate(1.7),molecules_container.set_map_is_contoured_with_thread_pool(!0),molecules_container.set_max_number_of_threads(3),cootModule.FS.mkdir("COOT_BACKUP")})).catch((function(e){console.log(e),print(e)})),createCCP4Module({locateFile:function(e){return"./wasm/".concat(e)},onRuntimeInitialized:function(){},mainScriptUrlOrBlob:"web_example.js",print,printErr:print}).then((function(e){ccp4Module=e})).catch((function(e){console.log(e),print(e)}));else if("close"===e.data.message)null==molecules_container||molecules_container.delete(),postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Closed molecules container",message:e.data.message,result:{}});else if("get_mtz_data"===e.data.message){var a=cootModule.FS.readFile(e.data.fileName,{encoding:"binary"});postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Fetched mtz data for map ".concat(e.data.molNo),message:e.data.message,result:{molNo:e.data.molNo,mtzData:a}})}else if("get_map"===e.data.message){var r=guid(),t="./".concat(r,".map");molecules_container.writeCCP4Map(e.data.molNo,t);var o=cootModule.FS.readFile(t,{encoding:"binary"});cootModule.FS_unlink(t),postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,consoleMessage:"Fetched map of map ".concat(e.data.molNo),message:e.data.message,result:{molNo:e.data.molNo,mapData:o.buffer}})}else if("delete_file_name"===e.data.message){var s=cootModule.FS_unlink(e.data.fileName);postMessage({messageId:e.data.messageId,myTimeStamp:e.data.myTimeStamp,messageTag:"result",result:s})}else if("coot_command_list"===e.data.message){var n=e.data.commandList.map((function(a){return doCootCommand(__assign(__assign({},e.data),a))}));postMessage({messageId:e.data.messageId,resultList:n})}"coot_command"===e.data.message&&(s=doCootCommand(e.data),postMessage(s))};
|
package/baby-gru/CootWorker.ts
CHANGED
|
@@ -379,6 +379,29 @@ const mapMoleculeCentreInfoToJSObject = (mapMoleculeCentreInfo: libcootApi.MapMo
|
|
|
379
379
|
return returnResult;
|
|
380
380
|
}
|
|
381
381
|
|
|
382
|
+
const textureAsFloatsToJSTextureAsFloats = (data:libcootApi.textureAsFloats): libcootApi.textureAsFloatsJS => {
|
|
383
|
+
|
|
384
|
+
let image_data = []
|
|
385
|
+
|
|
386
|
+
const imageDataVecSize = data.image_data.size()
|
|
387
|
+
console.log(imageDataVecSize);
|
|
388
|
+
for (let i = 0; i < imageDataVecSize; i++) {
|
|
389
|
+
const texVal = data.image_data.get(i)
|
|
390
|
+
image_data.push(texVal)
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
data.image_data.delete()
|
|
394
|
+
|
|
395
|
+
return {
|
|
396
|
+
width:data.width,
|
|
397
|
+
height:data.height,
|
|
398
|
+
x_size:data.x_size,
|
|
399
|
+
y_size:data.y_size,
|
|
400
|
+
z_position:data.z_position,
|
|
401
|
+
image_data:image_data,
|
|
402
|
+
};
|
|
403
|
+
}
|
|
404
|
+
|
|
382
405
|
const fitLigandInfoArrayToJSArray = (fitLigandInfoVec: emscriptem.vector<libcootApi.fitLigandInfo>): libcootApi.fitLigandInfo[] => {
|
|
383
406
|
const result: libcootApi.fitLigandInfo[] = []
|
|
384
407
|
|
|
@@ -768,7 +791,7 @@ const ramachandranDataToJSArray = (ramachandraData: emscriptem.vector<libcootApi
|
|
|
768
791
|
const vectorPairStringIntToJSArray = (vectorData: emscriptem.vector<{first: string; second: number}>) => {
|
|
769
792
|
let result: {residue: string; slice: number; }[] = []
|
|
770
793
|
const vectorSize = vectorData.size()
|
|
771
|
-
for(let i = 0; i < vectorSize; i++) {
|
|
794
|
+
for (let i = 0; i < vectorSize; i++) {
|
|
772
795
|
const pair = vectorData.get(i)
|
|
773
796
|
const residue = pair.first
|
|
774
797
|
const slice = pair.second
|
|
@@ -1040,6 +1063,9 @@ const doCootCommand = (messageData: {
|
|
|
1040
1063
|
|
|
1041
1064
|
let returnResult;
|
|
1042
1065
|
switch (returnType) {
|
|
1066
|
+
case 'texture_as_floats_t':
|
|
1067
|
+
returnResult = textureAsFloatsToJSTextureAsFloats(cootResult)
|
|
1068
|
+
break;
|
|
1043
1069
|
case 'fit_ligand_info_array':
|
|
1044
1070
|
returnResult = fitLigandInfoArrayToJSArray(cootResult)
|
|
1045
1071
|
break;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var initRDKitModule=(()=>{var r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0;return"undefined"!=typeof __filename&&(r=r||__filename),function(t={}){var e,n,o=t;o.ready=new Promise(((r,t)=>{e=r,n=t}));var a,i,s,u=Object.assign({},o),c="./this.program",l="object"==typeof window,h="function"==typeof importScripts,d="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,f="";if(d){var p=require("fs"),m=require("path");f=h?m.dirname(f)+"/":__dirname+"/",a=(r,t)=>(r=U(r)?new URL(r):m.normalize(r),p.readFileSync(r,t?void 0:"utf8")),s=r=>{var t=a(r,!0);return t.buffer||(t=new Uint8Array(t)),t},i=(r,t,e,n=!0)=>{r=U(r)?new URL(r):m.normalize(r),p.readFile(r,n?void 0:"utf8",((r,o)=>{r?e(r):t(n?o.buffer:o)}))},!o.thisProgram&&process.argv.length>1&&(c=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),o.inspect=()=>"[Emscripten Module object]"}else(l||h)&&(h?f=self.location.href:"undefined"!=typeof document&&document.currentScript&&(f=document.currentScript.src),r&&(f=r),f=0!==f.indexOf("blob:")?f.substr(0,f.replace(/[?#].*/,"").lastIndexOf("/")+1):"",a=r=>{var t=new XMLHttpRequest;return t.open("GET",r,!1),t.send(null),t.responseText},h&&(s=r=>{var t=new XMLHttpRequest;return t.open("GET",r,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),i=(r,t,e)=>{var n=new XMLHttpRequest;n.open("GET",r,!0),n.responseType="arraybuffer",n.onload=()=>{200==n.status||0==n.status&&n.response?t(n.response):e()},n.onerror=e,n.send(null)});var v,y=o.print||console.log.bind(console),w=o.printErr||console.error.bind(console);Object.assign(o,u),u=null,o.arguments&&o.arguments,o.thisProgram&&(c=o.thisProgram),o.quit&&o.quit,o.wasmBinary&&(v=o.wasmBinary),"object"!=typeof WebAssembly&&x("no native wasm support detected");var g,b,E,_,k,$,P,C,T=!1,D=[],F=[],S=[],A=0,j=null,M=null;function O(r){A++,o.monitorRunDependencies&&o.monitorRunDependencies(A)}function R(r){if(A--,o.monitorRunDependencies&&o.monitorRunDependencies(A),0==A&&(null!==j&&(clearInterval(j),j=null),M)){var t=M;M=null,t()}}function x(r){o.onAbort&&o.onAbort(r),w(r="Aborted("+r+")"),T=!0,r+=". Build with -sASSERTIONS for more info.";var t=new WebAssembly.RuntimeError(r);throw n(t),t}var z,W,N,H,L=r=>r.startsWith("data:application/octet-stream;base64,"),U=r=>r.startsWith("file://");function B(r){if(r==z&&v)return new Uint8Array(v);if(s)return s(r);throw"both async and sync fetching of the wasm failed"}function I(r,t,e){return function(r){if(!v&&(l||h)){if("function"==typeof fetch&&!U(r))return fetch(r,{credentials:"same-origin"}).then((t=>{if(!t.ok)throw"failed to load wasm binary file at '"+r+"'";return t.arrayBuffer()})).catch((()=>B(r)));if(i)return new Promise(((t,e)=>{i(r,(r=>t(new Uint8Array(r))),e)}))}return Promise.resolve().then((()=>B(r)))}(r).then((r=>WebAssembly.instantiate(r,t))).then((r=>r)).then(e,(r=>{w(`failed to asynchronously prepare wasm: ${r}`),x(r)}))}L(z="RDKit_minimal.wasm")||(W=z,z=o.locateFile?o.locateFile(W,f):f+W);var V=r=>{for(;r.length>0;)r.shift()(o)},Y=(o.noExitRuntime,[]),q=0,X=0;function G(r){this.excPtr=r,this.ptr=r-24,this.set_type=function(r){$[this.ptr+4>>2]=r},this.get_type=function(){return $[this.ptr+4>>2]},this.set_destructor=function(r){$[this.ptr+8>>2]=r},this.get_destructor=function(){return $[this.ptr+8>>2]},this.set_caught=function(r){r=r?1:0,g[this.ptr+12>>0]=r},this.get_caught=function(){return 0!=g[this.ptr+12>>0]},this.set_rethrown=function(r){r=r?1:0,g[this.ptr+13>>0]=r},this.get_rethrown=function(){return 0!=g[this.ptr+13>>0]},this.init=function(r,t){this.set_adjusted_ptr(0),this.set_type(r),this.set_destructor(t)},this.set_adjusted_ptr=function(r){$[this.ptr+16>>2]=r},this.get_adjusted_ptr=function(){return $[this.ptr+16>>2]},this.get_exception_ptr=function(){if(ee(this.get_type()))return $[this.excPtr>>2];var r=this.get_adjusted_ptr();return 0!==r?r:this.excPtr}}var K=r=>{var t=X;if(!t)return Xt(0),0;var e=new G(t);e.set_adjusted_ptr(t);var n=e.get_type();if(!n)return Xt(0),t;for(var o in r){var a=r[o];if(0===a||a===n)break;var i=e.ptr+16;if(te(a,n,i))return Xt(a),t}return Xt(n),t},J={isAbs:r=>"/"===r.charAt(0),splitPath:r=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(r).slice(1),normalizeArray:(r,t)=>{for(var e=0,n=r.length-1;n>=0;n--){var o=r[n];"."===o?r.splice(n,1):".."===o?(r.splice(n,1),e++):e&&(r.splice(n,1),e--)}if(t)for(;e;e--)r.unshift("..");return r},normalize:r=>{var t=J.isAbs(r),e="/"===r.substr(-1);return(r=J.normalizeArray(r.split("/").filter((r=>!!r)),!t).join("/"))||t||(r="."),r&&e&&(r+="/"),(t?"/":"")+r},dirname:r=>{var t=J.splitPath(r),e=t[0],n=t[1];return e||n?(n&&(n=n.substr(0,n.length-1)),e+n):"."},basename:r=>{if("/"===r)return"/";var t=(r=(r=J.normalize(r)).replace(/\/$/,"")).lastIndexOf("/");return-1===t?r:r.substr(t+1)},join:function(){var r=Array.prototype.slice.call(arguments);return J.normalize(r.join("/"))},join2:(r,t)=>J.normalize(r+"/"+t)},Z=r=>(Z=(()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return r=>crypto.getRandomValues(r);if(d)try{var r=require("crypto");if(r.randomFillSync)return t=>r.randomFillSync(t);var t=r.randomBytes;return r=>(r.set(t(r.byteLength)),r)}catch(r){}x("initRandomDevice")})())(r),Q={resolve:function(){for(var r="",t=!1,e=arguments.length-1;e>=-1&&!t;e--){var n=e>=0?arguments[e]:pr.cwd();if("string"!=typeof n)throw new TypeError("Arguments to path.resolve must be strings");if(!n)return"";r=n+"/"+r,t=J.isAbs(n)}return(t?"/":"")+(r=J.normalizeArray(r.split("/").filter((r=>!!r)),!t).join("/"))||"."},relative:(r,t)=>{function e(r){for(var t=0;t<r.length&&""===r[t];t++);for(var e=r.length-1;e>=0&&""===r[e];e--);return t>e?[]:r.slice(t,e-t+1)}r=Q.resolve(r).substr(1),t=Q.resolve(t).substr(1);for(var n=e(r.split("/")),o=e(t.split("/")),a=Math.min(n.length,o.length),i=a,s=0;s<a;s++)if(n[s]!==o[s]){i=s;break}var u=[];for(s=i;s<n.length;s++)u.push("..");return(u=u.concat(o.slice(i))).join("/")}},rr="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,tr=(r,t,e)=>{for(var n=t+e,o=t;r[o]&&!(o>=n);)++o;if(o-t>16&&r.buffer&&rr)return rr.decode(r.subarray(t,o));for(var a="";t<o;){var i=r[t++];if(128&i){var s=63&r[t++];if(192!=(224&i)){var u=63&r[t++];if((i=224==(240&i)?(15&i)<<12|s<<6|u:(7&i)<<18|s<<12|u<<6|63&r[t++])<65536)a+=String.fromCharCode(i);else{var c=i-65536;a+=String.fromCharCode(55296|c>>10,56320|1023&c)}}else a+=String.fromCharCode((31&i)<<6|s)}else a+=String.fromCharCode(i)}return a},er=[],nr=r=>{for(var t=0,e=0;e<r.length;++e){var n=r.charCodeAt(e);n<=127?t++:n<=2047?t+=2:n>=55296&&n<=57343?(t+=4,++e):t+=3}return t},or=(r,t,e,n)=>{if(!(n>0))return 0;for(var o=e,a=e+n-1,i=0;i<r.length;++i){var s=r.charCodeAt(i);if(s>=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&r.charCodeAt(++i)),s<=127){if(e>=a)break;t[e++]=s}else if(s<=2047){if(e+1>=a)break;t[e++]=192|s>>6,t[e++]=128|63&s}else if(s<=65535){if(e+2>=a)break;t[e++]=224|s>>12,t[e++]=128|s>>6&63,t[e++]=128|63&s}else{if(e+3>=a)break;t[e++]=240|s>>18,t[e++]=128|s>>12&63,t[e++]=128|s>>6&63,t[e++]=128|63&s}}return t[e]=0,e-o};function ar(r,t,e){var n=e>0?e:nr(r)+1,o=new Array(n),a=or(r,o,0,o.length);return t&&(o.length=a),o}var ir,sr,ur,cr={ttys:[],init(){},shutdown(){},register(r,t){cr.ttys[r]={input:[],output:[],ops:t},pr.registerDevice(r,cr.stream_ops)},stream_ops:{open(r){var t=cr.ttys[r.node.rdev];if(!t)throw new pr.ErrnoError(43);r.tty=t,r.seekable=!1},close(r){r.tty.ops.fsync(r.tty)},fsync(r){r.tty.ops.fsync(r.tty)},read(r,t,e,n,o){if(!r.tty||!r.tty.ops.get_char)throw new pr.ErrnoError(60);for(var a=0,i=0;i<n;i++){var s;try{s=r.tty.ops.get_char(r.tty)}catch(r){throw new pr.ErrnoError(29)}if(void 0===s&&0===a)throw new pr.ErrnoError(6);if(null==s)break;a++,t[e+i]=s}return a&&(r.node.timestamp=Date.now()),a},write(r,t,e,n,o){if(!r.tty||!r.tty.ops.put_char)throw new pr.ErrnoError(60);try{for(var a=0;a<n;a++)r.tty.ops.put_char(r.tty,t[e+a])}catch(r){throw new pr.ErrnoError(29)}return n&&(r.node.timestamp=Date.now()),a}},default_tty_ops:{get_char:r=>(()=>{if(!er.length){var r=null;if(d){var t=Buffer.alloc(256),e=0,n=process.stdin.fd;try{e=p.readSync(n,t)}catch(r){if(!r.toString().includes("EOF"))throw r;e=0}r=e>0?t.slice(0,e).toString("utf-8"):null}else"undefined"!=typeof window&&"function"==typeof window.prompt?null!==(r=window.prompt("Input: "))&&(r+="\n"):"function"==typeof readline&&null!==(r=readline())&&(r+="\n");if(!r)return null;er=ar(r,!0)}return er.shift()})(),put_char(r,t){null===t||10===t?(y(tr(r.output,0)),r.output=[]):0!=t&&r.output.push(t)},fsync(r){r.output&&r.output.length>0&&(y(tr(r.output,0)),r.output=[])},ioctl_tcgets:r=>({c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}),ioctl_tcsets:(r,t,e)=>0,ioctl_tiocgwinsz:r=>[24,80]},default_tty1_ops:{put_char(r,t){null===t||10===t?(w(tr(r.output,0)),r.output=[]):0!=t&&r.output.push(t)},fsync(r){r.output&&r.output.length>0&&(w(tr(r.output,0)),r.output=[])}}},lr=r=>{x()},hr={ops_table:null,mount:r=>hr.createNode(null,"/",16895,0),createNode(r,t,e,n){if(pr.isBlkdev(e)||pr.isFIFO(e))throw new pr.ErrnoError(63);hr.ops_table||(hr.ops_table={dir:{node:{getattr:hr.node_ops.getattr,setattr:hr.node_ops.setattr,lookup:hr.node_ops.lookup,mknod:hr.node_ops.mknod,rename:hr.node_ops.rename,unlink:hr.node_ops.unlink,rmdir:hr.node_ops.rmdir,readdir:hr.node_ops.readdir,symlink:hr.node_ops.symlink},stream:{llseek:hr.stream_ops.llseek}},file:{node:{getattr:hr.node_ops.getattr,setattr:hr.node_ops.setattr},stream:{llseek:hr.stream_ops.llseek,read:hr.stream_ops.read,write:hr.stream_ops.write,allocate:hr.stream_ops.allocate,mmap:hr.stream_ops.mmap,msync:hr.stream_ops.msync}},link:{node:{getattr:hr.node_ops.getattr,setattr:hr.node_ops.setattr,readlink:hr.node_ops.readlink},stream:{}},chrdev:{node:{getattr:hr.node_ops.getattr,setattr:hr.node_ops.setattr},stream:pr.chrdev_stream_ops}});var o=pr.createNode(r,t,e,n);return pr.isDir(o.mode)?(o.node_ops=hr.ops_table.dir.node,o.stream_ops=hr.ops_table.dir.stream,o.contents={}):pr.isFile(o.mode)?(o.node_ops=hr.ops_table.file.node,o.stream_ops=hr.ops_table.file.stream,o.usedBytes=0,o.contents=null):pr.isLink(o.mode)?(o.node_ops=hr.ops_table.link.node,o.stream_ops=hr.ops_table.link.stream):pr.isChrdev(o.mode)&&(o.node_ops=hr.ops_table.chrdev.node,o.stream_ops=hr.ops_table.chrdev.stream),o.timestamp=Date.now(),r&&(r.contents[t]=o,r.timestamp=o.timestamp),o},getFileDataAsTypedArray:r=>r.contents?r.contents.subarray?r.contents.subarray(0,r.usedBytes):new Uint8Array(r.contents):new Uint8Array(0),expandFileStorage(r,t){var e=r.contents?r.contents.length:0;if(!(e>=t)){t=Math.max(t,e*(e<1048576?2:1.125)>>>0),0!=e&&(t=Math.max(t,256));var n=r.contents;r.contents=new Uint8Array(t),r.usedBytes>0&&r.contents.set(n.subarray(0,r.usedBytes),0)}},resizeFileStorage(r,t){if(r.usedBytes!=t)if(0==t)r.contents=null,r.usedBytes=0;else{var e=r.contents;r.contents=new Uint8Array(t),e&&r.contents.set(e.subarray(0,Math.min(t,r.usedBytes))),r.usedBytes=t}},node_ops:{getattr(r){var t={};return t.dev=pr.isChrdev(r.mode)?r.id:1,t.ino=r.id,t.mode=r.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=r.rdev,pr.isDir(r.mode)?t.size=4096:pr.isFile(r.mode)?t.size=r.usedBytes:pr.isLink(r.mode)?t.size=r.link.length:t.size=0,t.atime=new Date(r.timestamp),t.mtime=new Date(r.timestamp),t.ctime=new Date(r.timestamp),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(r,t){void 0!==t.mode&&(r.mode=t.mode),void 0!==t.timestamp&&(r.timestamp=t.timestamp),void 0!==t.size&&hr.resizeFileStorage(r,t.size)},lookup(r,t){throw pr.genericErrors[44]},mknod:(r,t,e,n)=>hr.createNode(r,t,e,n),rename(r,t,e){if(pr.isDir(r.mode)){var n;try{n=pr.lookupNode(t,e)}catch(r){}if(n)for(var o in n.contents)throw new pr.ErrnoError(55)}delete r.parent.contents[r.name],r.parent.timestamp=Date.now(),r.name=e,t.contents[e]=r,t.timestamp=r.parent.timestamp,r.parent=t},unlink(r,t){delete r.contents[t],r.timestamp=Date.now()},rmdir(r,t){var e=pr.lookupNode(r,t);for(var n in e.contents)throw new pr.ErrnoError(55);delete r.contents[t],r.timestamp=Date.now()},readdir(r){var t=[".",".."];for(var e in r.contents)r.contents.hasOwnProperty(e)&&t.push(e);return t},symlink(r,t,e){var n=hr.createNode(r,t,41471,0);return n.link=e,n},readlink(r){if(!pr.isLink(r.mode))throw new pr.ErrnoError(28);return r.link}},stream_ops:{read(r,t,e,n,o){var a=r.node.contents;if(o>=r.node.usedBytes)return 0;var i=Math.min(r.node.usedBytes-o,n);if(i>8&&a.subarray)t.set(a.subarray(o,o+i),e);else for(var s=0;s<i;s++)t[e+s]=a[o+s];return i},write(r,t,e,n,o,a){if(!n)return 0;var i=r.node;if(i.timestamp=Date.now(),t.subarray&&(!i.contents||i.contents.subarray)){if(a)return i.contents=t.subarray(e,e+n),i.usedBytes=n,n;if(0===i.usedBytes&&0===o)return i.contents=t.slice(e,e+n),i.usedBytes=n,n;if(o+n<=i.usedBytes)return i.contents.set(t.subarray(e,e+n),o),n}if(hr.expandFileStorage(i,o+n),i.contents.subarray&&t.subarray)i.contents.set(t.subarray(e,e+n),o);else for(var s=0;s<n;s++)i.contents[o+s]=t[e+s];return i.usedBytes=Math.max(i.usedBytes,o+n),n},llseek(r,t,e){var n=t;if(1===e?n+=r.position:2===e&&pr.isFile(r.node.mode)&&(n+=r.node.usedBytes),n<0)throw new pr.ErrnoError(28);return n},allocate(r,t,e){hr.expandFileStorage(r.node,t+e),r.node.usedBytes=Math.max(r.node.usedBytes,t+e)},mmap(r,t,e,n,o){if(!pr.isFile(r.node.mode))throw new pr.ErrnoError(43);var a,i,s=r.node.contents;if(2&o||s.buffer!==g.buffer){if((e>0||e+t<s.length)&&(s=s.subarray?s.subarray(e,e+t):Array.prototype.slice.call(s,e,e+t)),i=!0,!(a=lr()))throw new pr.ErrnoError(48);g.set(s,a)}else i=!1,a=s.byteOffset;return{ptr:a,allocated:i}},msync:(r,t,e,n,o)=>(hr.stream_ops.write(r,t,0,n,e,!1),0)}},dr=o.preloadPlugins||[],fr=(r,t)=>{var e=0;return r&&(e|=365),t&&(e|=146),e},pr={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath(r,t={}){if(!(r=Q.resolve(r)))return{path:"",node:null};if((t=Object.assign({follow_mount:!0,recurse_count:0},t)).recurse_count>8)throw new pr.ErrnoError(32);for(var e=r.split("/").filter((r=>!!r)),n=pr.root,o="/",a=0;a<e.length;a++){var i=a===e.length-1;if(i&&t.parent)break;if(n=pr.lookupNode(n,e[a]),o=J.join2(o,e[a]),pr.isMountpoint(n)&&(!i||i&&t.follow_mount)&&(n=n.mounted.root),!i||t.follow)for(var s=0;pr.isLink(n.mode);){var u=pr.readlink(o);if(o=Q.resolve(J.dirname(o),u),n=pr.lookupPath(o,{recurse_count:t.recurse_count+1}).node,s++>40)throw new pr.ErrnoError(32)}}return{path:o,node:n}},getPath(r){for(var t;;){if(pr.isRoot(r)){var e=r.mount.mountpoint;return t?"/"!==e[e.length-1]?`${e}/${t}`:e+t:e}t=t?`${r.name}/${t}`:r.name,r=r.parent}},hashName(r,t){for(var e=0,n=0;n<t.length;n++)e=(e<<5)-e+t.charCodeAt(n)|0;return(r+e>>>0)%pr.nameTable.length},hashAddNode(r){var t=pr.hashName(r.parent.id,r.name);r.name_next=pr.nameTable[t],pr.nameTable[t]=r},hashRemoveNode(r){var t=pr.hashName(r.parent.id,r.name);if(pr.nameTable[t]===r)pr.nameTable[t]=r.name_next;else for(var e=pr.nameTable[t];e;){if(e.name_next===r){e.name_next=r.name_next;break}e=e.name_next}},lookupNode(r,t){var e=pr.mayLookup(r);if(e)throw new pr.ErrnoError(e,r);for(var n=pr.hashName(r.id,t),o=pr.nameTable[n];o;o=o.name_next){var a=o.name;if(o.parent.id===r.id&&a===t)return o}return pr.lookup(r,t)},createNode(r,t,e,n){var o=new pr.FSNode(r,t,e,n);return pr.hashAddNode(o),o},destroyNode(r){pr.hashRemoveNode(r)},isRoot:r=>r===r.parent,isMountpoint:r=>!!r.mounted,isFile:r=>32768==(61440&r),isDir:r=>16384==(61440&r),isLink:r=>40960==(61440&r),isChrdev:r=>8192==(61440&r),isBlkdev:r=>24576==(61440&r),isFIFO:r=>4096==(61440&r),isSocket:r=>49152==(49152&r),flagsToPermissionString(r){var t=["r","w","rw"][3&r];return 512&r&&(t+="w"),t},nodePermissions:(r,t)=>pr.ignorePermissions||(!t.includes("r")||292&r.mode)&&(!t.includes("w")||146&r.mode)&&(!t.includes("x")||73&r.mode)?0:2,mayLookup:r=>pr.nodePermissions(r,"x")||(r.node_ops.lookup?0:2),mayCreate(r,t){try{return pr.lookupNode(r,t),20}catch(r){}return pr.nodePermissions(r,"wx")},mayDelete(r,t,e){var n;try{n=pr.lookupNode(r,t)}catch(r){return r.errno}var o=pr.nodePermissions(r,"wx");if(o)return o;if(e){if(!pr.isDir(n.mode))return 54;if(pr.isRoot(n)||pr.getPath(n)===pr.cwd())return 10}else if(pr.isDir(n.mode))return 31;return 0},mayOpen:(r,t)=>r?pr.isLink(r.mode)?32:pr.isDir(r.mode)&&("r"!==pr.flagsToPermissionString(t)||512&t)?31:pr.nodePermissions(r,pr.flagsToPermissionString(t)):44,MAX_OPEN_FDS:4096,nextfd(){for(var r=0;r<=pr.MAX_OPEN_FDS;r++)if(!pr.streams[r])return r;throw new pr.ErrnoError(33)},getStreamChecked(r){var t=pr.getStream(r);if(!t)throw new pr.ErrnoError(8);return t},getStream:r=>pr.streams[r],createStream:(r,t=-1)=>(pr.FSStream||(pr.FSStream=function(){this.shared={}},pr.FSStream.prototype={},Object.defineProperties(pr.FSStream.prototype,{object:{get(){return this.node},set(r){this.node=r}},isRead:{get(){return 1!=(2097155&this.flags)}},isWrite:{get(){return 0!=(2097155&this.flags)}},isAppend:{get(){return 1024&this.flags}},flags:{get(){return this.shared.flags},set(r){this.shared.flags=r}},position:{get(){return this.shared.position},set(r){this.shared.position=r}}})),r=Object.assign(new pr.FSStream,r),-1==t&&(t=pr.nextfd()),r.fd=t,pr.streams[t]=r,r),closeStream(r){pr.streams[r]=null},chrdev_stream_ops:{open(r){var t=pr.getDevice(r.node.rdev);r.stream_ops=t.stream_ops,r.stream_ops.open&&r.stream_ops.open(r)},llseek(){throw new pr.ErrnoError(70)}},major:r=>r>>8,minor:r=>255&r,makedev:(r,t)=>r<<8|t,registerDevice(r,t){pr.devices[r]={stream_ops:t}},getDevice:r=>pr.devices[r],getMounts(r){for(var t=[],e=[r];e.length;){var n=e.pop();t.push(n),e.push.apply(e,n.mounts)}return t},syncfs(r,t){"function"==typeof r&&(t=r,r=!1),pr.syncFSRequests++,pr.syncFSRequests>1&&w(`warning: ${pr.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var e=pr.getMounts(pr.root.mount),n=0;function o(r){return pr.syncFSRequests--,t(r)}function a(r){if(r)return a.errored?void 0:(a.errored=!0,o(r));++n>=e.length&&o(null)}e.forEach((t=>{if(!t.type.syncfs)return a(null);t.type.syncfs(t,r,a)}))},mount(r,t,e){var n,o="/"===e,a=!e;if(o&&pr.root)throw new pr.ErrnoError(10);if(!o&&!a){var i=pr.lookupPath(e,{follow_mount:!1});if(e=i.path,n=i.node,pr.isMountpoint(n))throw new pr.ErrnoError(10);if(!pr.isDir(n.mode))throw new pr.ErrnoError(54)}var s={type:r,opts:t,mountpoint:e,mounts:[]},u=r.mount(s);return u.mount=s,s.root=u,o?pr.root=u:n&&(n.mounted=s,n.mount&&n.mount.mounts.push(s)),u},unmount(r){var t=pr.lookupPath(r,{follow_mount:!1});if(!pr.isMountpoint(t.node))throw new pr.ErrnoError(28);var e=t.node,n=e.mounted,o=pr.getMounts(n);Object.keys(pr.nameTable).forEach((r=>{for(var t=pr.nameTable[r];t;){var e=t.name_next;o.includes(t.mount)&&pr.destroyNode(t),t=e}})),e.mounted=null;var a=e.mount.mounts.indexOf(n);e.mount.mounts.splice(a,1)},lookup:(r,t)=>r.node_ops.lookup(r,t),mknod(r,t,e){var n=pr.lookupPath(r,{parent:!0}).node,o=J.basename(r);if(!o||"."===o||".."===o)throw new pr.ErrnoError(28);var a=pr.mayCreate(n,o);if(a)throw new pr.ErrnoError(a);if(!n.node_ops.mknod)throw new pr.ErrnoError(63);return n.node_ops.mknod(n,o,t,e)},create:(r,t)=>(t=void 0!==t?t:438,t&=4095,t|=32768,pr.mknod(r,t,0)),mkdir:(r,t)=>(t=void 0!==t?t:511,t&=1023,t|=16384,pr.mknod(r,t,0)),mkdirTree(r,t){for(var e=r.split("/"),n="",o=0;o<e.length;++o)if(e[o]){n+="/"+e[o];try{pr.mkdir(n,t)}catch(r){if(20!=r.errno)throw r}}},mkdev:(r,t,e)=>(void 0===e&&(e=t,t=438),t|=8192,pr.mknod(r,t,e)),symlink(r,t){if(!Q.resolve(r))throw new pr.ErrnoError(44);var e=pr.lookupPath(t,{parent:!0}).node;if(!e)throw new pr.ErrnoError(44);var n=J.basename(t),o=pr.mayCreate(e,n);if(o)throw new pr.ErrnoError(o);if(!e.node_ops.symlink)throw new pr.ErrnoError(63);return e.node_ops.symlink(e,n,r)},rename(r,t){var e,n,o=J.dirname(r),a=J.dirname(t),i=J.basename(r),s=J.basename(t);if(e=pr.lookupPath(r,{parent:!0}).node,n=pr.lookupPath(t,{parent:!0}).node,!e||!n)throw new pr.ErrnoError(44);if(e.mount!==n.mount)throw new pr.ErrnoError(75);var u,c=pr.lookupNode(e,i),l=Q.relative(r,a);if("."!==l.charAt(0))throw new pr.ErrnoError(28);if("."!==(l=Q.relative(t,o)).charAt(0))throw new pr.ErrnoError(55);try{u=pr.lookupNode(n,s)}catch(r){}if(c!==u){var h=pr.isDir(c.mode),d=pr.mayDelete(e,i,h);if(d)throw new pr.ErrnoError(d);if(d=u?pr.mayDelete(n,s,h):pr.mayCreate(n,s))throw new pr.ErrnoError(d);if(!e.node_ops.rename)throw new pr.ErrnoError(63);if(pr.isMountpoint(c)||u&&pr.isMountpoint(u))throw new pr.ErrnoError(10);if(n!==e&&(d=pr.nodePermissions(e,"w")))throw new pr.ErrnoError(d);pr.hashRemoveNode(c);try{e.node_ops.rename(c,n,s)}catch(r){throw r}finally{pr.hashAddNode(c)}}},rmdir(r){var t=pr.lookupPath(r,{parent:!0}).node,e=J.basename(r),n=pr.lookupNode(t,e),o=pr.mayDelete(t,e,!0);if(o)throw new pr.ErrnoError(o);if(!t.node_ops.rmdir)throw new pr.ErrnoError(63);if(pr.isMountpoint(n))throw new pr.ErrnoError(10);t.node_ops.rmdir(t,e),pr.destroyNode(n)},readdir(r){var t=pr.lookupPath(r,{follow:!0}).node;if(!t.node_ops.readdir)throw new pr.ErrnoError(54);return t.node_ops.readdir(t)},unlink(r){var t=pr.lookupPath(r,{parent:!0}).node;if(!t)throw new pr.ErrnoError(44);var e=J.basename(r),n=pr.lookupNode(t,e),o=pr.mayDelete(t,e,!1);if(o)throw new pr.ErrnoError(o);if(!t.node_ops.unlink)throw new pr.ErrnoError(63);if(pr.isMountpoint(n))throw new pr.ErrnoError(10);t.node_ops.unlink(t,e),pr.destroyNode(n)},readlink(r){var t=pr.lookupPath(r).node;if(!t)throw new pr.ErrnoError(44);if(!t.node_ops.readlink)throw new pr.ErrnoError(28);return Q.resolve(pr.getPath(t.parent),t.node_ops.readlink(t))},stat(r,t){var e=pr.lookupPath(r,{follow:!t}).node;if(!e)throw new pr.ErrnoError(44);if(!e.node_ops.getattr)throw new pr.ErrnoError(63);return e.node_ops.getattr(e)},lstat:r=>pr.stat(r,!0),chmod(r,t,e){var n;if(!(n="string"==typeof r?pr.lookupPath(r,{follow:!e}).node:r).node_ops.setattr)throw new pr.ErrnoError(63);n.node_ops.setattr(n,{mode:4095&t|-4096&n.mode,timestamp:Date.now()})},lchmod(r,t){pr.chmod(r,t,!0)},fchmod(r,t){var e=pr.getStreamChecked(r);pr.chmod(e.node,t)},chown(r,t,e,n){var o;if(!(o="string"==typeof r?pr.lookupPath(r,{follow:!n}).node:r).node_ops.setattr)throw new pr.ErrnoError(63);o.node_ops.setattr(o,{timestamp:Date.now()})},lchown(r,t,e){pr.chown(r,t,e,!0)},fchown(r,t,e){var n=pr.getStreamChecked(r);pr.chown(n.node,t,e)},truncate(r,t){if(t<0)throw new pr.ErrnoError(28);var e;if(!(e="string"==typeof r?pr.lookupPath(r,{follow:!0}).node:r).node_ops.setattr)throw new pr.ErrnoError(63);if(pr.isDir(e.mode))throw new pr.ErrnoError(31);if(!pr.isFile(e.mode))throw new pr.ErrnoError(28);var n=pr.nodePermissions(e,"w");if(n)throw new pr.ErrnoError(n);e.node_ops.setattr(e,{size:t,timestamp:Date.now()})},ftruncate(r,t){var e=pr.getStreamChecked(r);if(0==(2097155&e.flags))throw new pr.ErrnoError(28);pr.truncate(e.node,t)},utime(r,t,e){var n=pr.lookupPath(r,{follow:!0}).node;n.node_ops.setattr(n,{timestamp:Math.max(t,e)})},open(r,t,e){if(""===r)throw new pr.ErrnoError(44);var n;if(e=void 0===e?438:e,e=64&(t="string"==typeof t?(r=>{var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[r];if(void 0===t)throw new Error(`Unknown file open mode: ${r}`);return t})(t):t)?4095&e|32768:0,"object"==typeof r)n=r;else{r=J.normalize(r);try{n=pr.lookupPath(r,{follow:!(131072&t)}).node}catch(r){}}var a=!1;if(64&t)if(n){if(128&t)throw new pr.ErrnoError(20)}else n=pr.mknod(r,e,0),a=!0;if(!n)throw new pr.ErrnoError(44);if(pr.isChrdev(n.mode)&&(t&=-513),65536&t&&!pr.isDir(n.mode))throw new pr.ErrnoError(54);if(!a){var i=pr.mayOpen(n,t);if(i)throw new pr.ErrnoError(i)}512&t&&!a&&pr.truncate(n,0),t&=-131713;var s=pr.createStream({node:n,path:pr.getPath(n),flags:t,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return s.stream_ops.open&&s.stream_ops.open(s),!o.logReadFiles||1&t||(pr.readFiles||(pr.readFiles={}),r in pr.readFiles||(pr.readFiles[r]=1)),s},close(r){if(pr.isClosed(r))throw new pr.ErrnoError(8);r.getdents&&(r.getdents=null);try{r.stream_ops.close&&r.stream_ops.close(r)}catch(r){throw r}finally{pr.closeStream(r.fd)}r.fd=null},isClosed:r=>null===r.fd,llseek(r,t,e){if(pr.isClosed(r))throw new pr.ErrnoError(8);if(!r.seekable||!r.stream_ops.llseek)throw new pr.ErrnoError(70);if(0!=e&&1!=e&&2!=e)throw new pr.ErrnoError(28);return r.position=r.stream_ops.llseek(r,t,e),r.ungotten=[],r.position},read(r,t,e,n,o){if(n<0||o<0)throw new pr.ErrnoError(28);if(pr.isClosed(r))throw new pr.ErrnoError(8);if(1==(2097155&r.flags))throw new pr.ErrnoError(8);if(pr.isDir(r.node.mode))throw new pr.ErrnoError(31);if(!r.stream_ops.read)throw new pr.ErrnoError(28);var a=void 0!==o;if(a){if(!r.seekable)throw new pr.ErrnoError(70)}else o=r.position;var i=r.stream_ops.read(r,t,e,n,o);return a||(r.position+=i),i},write(r,t,e,n,o,a){if(n<0||o<0)throw new pr.ErrnoError(28);if(pr.isClosed(r))throw new pr.ErrnoError(8);if(0==(2097155&r.flags))throw new pr.ErrnoError(8);if(pr.isDir(r.node.mode))throw new pr.ErrnoError(31);if(!r.stream_ops.write)throw new pr.ErrnoError(28);r.seekable&&1024&r.flags&&pr.llseek(r,0,2);var i=void 0!==o;if(i){if(!r.seekable)throw new pr.ErrnoError(70)}else o=r.position;var s=r.stream_ops.write(r,t,e,n,o,a);return i||(r.position+=s),s},allocate(r,t,e){if(pr.isClosed(r))throw new pr.ErrnoError(8);if(t<0||e<=0)throw new pr.ErrnoError(28);if(0==(2097155&r.flags))throw new pr.ErrnoError(8);if(!pr.isFile(r.node.mode)&&!pr.isDir(r.node.mode))throw new pr.ErrnoError(43);if(!r.stream_ops.allocate)throw new pr.ErrnoError(138);r.stream_ops.allocate(r,t,e)},mmap(r,t,e,n,o){if(0!=(2&n)&&0==(2&o)&&2!=(2097155&r.flags))throw new pr.ErrnoError(2);if(1==(2097155&r.flags))throw new pr.ErrnoError(2);if(!r.stream_ops.mmap)throw new pr.ErrnoError(43);return r.stream_ops.mmap(r,t,e,n,o)},msync:(r,t,e,n,o)=>r.stream_ops.msync?r.stream_ops.msync(r,t,e,n,o):0,munmap:r=>0,ioctl(r,t,e){if(!r.stream_ops.ioctl)throw new pr.ErrnoError(59);return r.stream_ops.ioctl(r,t,e)},readFile(r,t={}){if(t.flags=t.flags||0,t.encoding=t.encoding||"binary","utf8"!==t.encoding&&"binary"!==t.encoding)throw new Error(`Invalid encoding type "${t.encoding}"`);var e,n=pr.open(r,t.flags),o=pr.stat(r).size,a=new Uint8Array(o);return pr.read(n,a,0,o,0),"utf8"===t.encoding?e=tr(a,0):"binary"===t.encoding&&(e=a),pr.close(n),e},writeFile(r,t,e={}){e.flags=e.flags||577;var n=pr.open(r,e.flags,e.mode);if("string"==typeof t){var o=new Uint8Array(nr(t)+1),a=or(t,o,0,o.length);pr.write(n,o,0,a,void 0,e.canOwn)}else{if(!ArrayBuffer.isView(t))throw new Error("Unsupported data type");pr.write(n,t,0,t.byteLength,void 0,e.canOwn)}pr.close(n)},cwd:()=>pr.currentPath,chdir(r){var t=pr.lookupPath(r,{follow:!0});if(null===t.node)throw new pr.ErrnoError(44);if(!pr.isDir(t.node.mode))throw new pr.ErrnoError(54);var e=pr.nodePermissions(t.node,"x");if(e)throw new pr.ErrnoError(e);pr.currentPath=t.path},createDefaultDirectories(){pr.mkdir("/tmp"),pr.mkdir("/home"),pr.mkdir("/home/web_user")},createDefaultDevices(){pr.mkdir("/dev"),pr.registerDevice(pr.makedev(1,3),{read:()=>0,write:(r,t,e,n,o)=>n}),pr.mkdev("/dev/null",pr.makedev(1,3)),cr.register(pr.makedev(5,0),cr.default_tty_ops),cr.register(pr.makedev(6,0),cr.default_tty1_ops),pr.mkdev("/dev/tty",pr.makedev(5,0)),pr.mkdev("/dev/tty1",pr.makedev(6,0));var r=new Uint8Array(1024),t=0,e=()=>(0===t&&(t=Z(r).byteLength),r[--t]);pr.createDevice("/dev","random",e),pr.createDevice("/dev","urandom",e),pr.mkdir("/dev/shm"),pr.mkdir("/dev/shm/tmp")},createSpecialDirectories(){pr.mkdir("/proc");var r=pr.mkdir("/proc/self");pr.mkdir("/proc/self/fd"),pr.mount({mount(){var t=pr.createNode(r,"fd",16895,73);return t.node_ops={lookup(r,t){var e=+t,n=pr.getStreamChecked(e),o={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>n.path}};return o.parent=o,o}},t}},{},"/proc/self/fd")},createStandardStreams(){o.stdin?pr.createDevice("/dev","stdin",o.stdin):pr.symlink("/dev/tty","/dev/stdin"),o.stdout?pr.createDevice("/dev","stdout",null,o.stdout):pr.symlink("/dev/tty","/dev/stdout"),o.stderr?pr.createDevice("/dev","stderr",null,o.stderr):pr.symlink("/dev/tty1","/dev/stderr"),pr.open("/dev/stdin",0),pr.open("/dev/stdout",1),pr.open("/dev/stderr",1)},ensureErrnoError(){pr.ErrnoError||(pr.ErrnoError=function(r,t){this.name="ErrnoError",this.node=t,this.setErrno=function(r){this.errno=r},this.setErrno(r),this.message="FS error"},pr.ErrnoError.prototype=new Error,pr.ErrnoError.prototype.constructor=pr.ErrnoError,[44].forEach((r=>{pr.genericErrors[r]=new pr.ErrnoError(r),pr.genericErrors[r].stack="<generic error, no stack>"})))},staticInit(){pr.ensureErrnoError(),pr.nameTable=new Array(4096),pr.mount(hr,{},"/"),pr.createDefaultDirectories(),pr.createDefaultDevices(),pr.createSpecialDirectories(),pr.filesystems={MEMFS:hr}},init(r,t,e){pr.init.initialized=!0,pr.ensureErrnoError(),o.stdin=r||o.stdin,o.stdout=t||o.stdout,o.stderr=e||o.stderr,pr.createStandardStreams()},quit(){pr.init.initialized=!1;for(var r=0;r<pr.streams.length;r++){var t=pr.streams[r];t&&pr.close(t)}},findObject(r,t){var e=pr.analyzePath(r,t);return e.exists?e.object:null},analyzePath(r,t){try{r=(n=pr.lookupPath(r,{follow:!t})).path}catch(r){}var e={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var n=pr.lookupPath(r,{parent:!0});e.parentExists=!0,e.parentPath=n.path,e.parentObject=n.node,e.name=J.basename(r),n=pr.lookupPath(r,{follow:!t}),e.exists=!0,e.path=n.path,e.object=n.node,e.name=n.node.name,e.isRoot="/"===n.path}catch(r){e.error=r.errno}return e},createPath(r,t,e,n){r="string"==typeof r?r:pr.getPath(r);for(var o=t.split("/").reverse();o.length;){var a=o.pop();if(a){var i=J.join2(r,a);try{pr.mkdir(i)}catch(r){}r=i}}return i},createFile(r,t,e,n,o){var a=J.join2("string"==typeof r?r:pr.getPath(r),t),i=fr(n,o);return pr.create(a,i)},createDataFile(r,t,e,n,o,a){var i=t;r&&(r="string"==typeof r?r:pr.getPath(r),i=t?J.join2(r,t):r);var s=fr(n,o),u=pr.create(i,s);if(e){if("string"==typeof e){for(var c=new Array(e.length),l=0,h=e.length;l<h;++l)c[l]=e.charCodeAt(l);e=c}pr.chmod(u,146|s);var d=pr.open(u,577);pr.write(d,e,0,e.length,0,a),pr.close(d),pr.chmod(u,s)}},createDevice(r,t,e,n){var o=J.join2("string"==typeof r?r:pr.getPath(r),t),a=fr(!!e,!!n);pr.createDevice.major||(pr.createDevice.major=64);var i=pr.makedev(pr.createDevice.major++,0);return pr.registerDevice(i,{open(r){r.seekable=!1},close(r){n&&n.buffer&&n.buffer.length&&n(10)},read(r,t,n,o,a){for(var i=0,s=0;s<o;s++){var u;try{u=e()}catch(r){throw new pr.ErrnoError(29)}if(void 0===u&&0===i)throw new pr.ErrnoError(6);if(null==u)break;i++,t[n+s]=u}return i&&(r.node.timestamp=Date.now()),i},write(r,t,e,o,a){for(var i=0;i<o;i++)try{n(t[e+i])}catch(r){throw new pr.ErrnoError(29)}return o&&(r.node.timestamp=Date.now()),i}}),pr.mkdev(o,a,i)},forceLoadFile(r){if(r.isDevice||r.isFolder||r.link||r.contents)return!0;if("undefined"!=typeof XMLHttpRequest)throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");if(!a)throw new Error("Cannot load without read() or XMLHttpRequest.");try{r.contents=ar(a(r.url),!0),r.usedBytes=r.contents.length}catch(r){throw new pr.ErrnoError(29)}},createLazyFile(r,t,e,n,o){function a(){this.lengthKnown=!1,this.chunks=[]}if(a.prototype.get=function(r){if(!(r>this.length-1||r<0)){var t=r%this.chunkSize,e=r/this.chunkSize|0;return this.getter(e)[t]}},a.prototype.setDataGetter=function(r){this.getter=r},a.prototype.cacheLength=function(){var r=new XMLHttpRequest;if(r.open("HEAD",e,!1),r.send(null),!(r.status>=200&&r.status<300||304===r.status))throw new Error("Couldn't load "+e+". Status: "+r.status);var t,n=Number(r.getResponseHeader("Content-length")),o=(t=r.getResponseHeader("Accept-Ranges"))&&"bytes"===t,a=(t=r.getResponseHeader("Content-Encoding"))&&"gzip"===t,i=1048576;o||(i=n);var s=this;s.setDataGetter((r=>{var t=r*i,o=(r+1)*i-1;if(o=Math.min(o,n-1),void 0===s.chunks[r]&&(s.chunks[r]=((r,t)=>{if(r>t)throw new Error("invalid range ("+r+", "+t+") or no bytes requested!");if(t>n-1)throw new Error("only "+n+" bytes available! programmer error!");var o=new XMLHttpRequest;if(o.open("GET",e,!1),n!==i&&o.setRequestHeader("Range","bytes="+r+"-"+t),o.responseType="arraybuffer",o.overrideMimeType&&o.overrideMimeType("text/plain; charset=x-user-defined"),o.send(null),!(o.status>=200&&o.status<300||304===o.status))throw new Error("Couldn't load "+e+". Status: "+o.status);return void 0!==o.response?new Uint8Array(o.response||[]):ar(o.responseText||"",!0)})(t,o)),void 0===s.chunks[r])throw new Error("doXHR failed!");return s.chunks[r]})),!a&&n||(i=n=1,n=this.getter(0).length,i=n,y("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=n,this._chunkSize=i,this.lengthKnown=!0},"undefined"!=typeof XMLHttpRequest){if(!h)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var i=new a;Object.defineProperties(i,{length:{get:function(){return this.lengthKnown||this.cacheLength(),this._length}},chunkSize:{get:function(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}});var s={isDevice:!1,contents:i}}else s={isDevice:!1,url:e};var u=pr.createFile(r,t,s,n,o);s.contents?u.contents=s.contents:s.url&&(u.contents=null,u.url=s.url),Object.defineProperties(u,{usedBytes:{get:function(){return this.contents.length}}});var c={};function l(r,t,e,n,o){var a=r.node.contents;if(o>=a.length)return 0;var i=Math.min(a.length-o,n);if(a.slice)for(var s=0;s<i;s++)t[e+s]=a[o+s];else for(s=0;s<i;s++)t[e+s]=a.get(o+s);return i}return Object.keys(u.stream_ops).forEach((r=>{var t=u.stream_ops[r];c[r]=function(){return pr.forceLoadFile(u),t.apply(null,arguments)}})),c.read=(r,t,e,n,o)=>(pr.forceLoadFile(u),l(r,t,e,n,o)),c.mmap=(r,t,e,n,o)=>{pr.forceLoadFile(u);var a=lr();if(!a)throw new pr.ErrnoError(48);return l(r,g,a,t,e),{ptr:a,allocated:!0}},u.stream_ops=c,u}},mr=(r,t)=>r?tr(b,r,t):"",vr={DEFAULT_POLLMASK:5,calculateAt(r,t,e){if(J.isAbs(t))return t;var n;if(n=-100===r?pr.cwd():vr.getStreamFromFD(r).path,0==t.length){if(!e)throw new pr.ErrnoError(44);return n}return J.join2(n,t)},doStat(r,t,e){try{var n=r(t)}catch(r){if(r&&r.node&&J.normalize(t)!==J.normalize(pr.getPath(r.node)))return-54;throw r}k[e>>2]=n.dev,k[e+4>>2]=n.mode,$[e+8>>2]=n.nlink,k[e+12>>2]=n.uid,k[e+16>>2]=n.gid,k[e+20>>2]=n.rdev,H=[n.size>>>0,(N=n.size,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[e+24>>2]=H[0],k[e+28>>2]=H[1],k[e+32>>2]=4096,k[e+36>>2]=n.blocks;var o=n.atime.getTime(),a=n.mtime.getTime(),i=n.ctime.getTime();return H=[Math.floor(o/1e3)>>>0,(N=Math.floor(o/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[e+40>>2]=H[0],k[e+44>>2]=H[1],$[e+48>>2]=o%1e3*1e3,H=[Math.floor(a/1e3)>>>0,(N=Math.floor(a/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[e+56>>2]=H[0],k[e+60>>2]=H[1],$[e+64>>2]=a%1e3*1e3,H=[Math.floor(i/1e3)>>>0,(N=Math.floor(i/1e3),+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[e+72>>2]=H[0],k[e+76>>2]=H[1],$[e+80>>2]=i%1e3*1e3,H=[n.ino>>>0,(N=n.ino,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[e+88>>2]=H[0],k[e+92>>2]=H[1],0},doMsync(r,t,e,n,o){if(!pr.isFile(t.node.mode))throw new pr.ErrnoError(43);if(2&n)return 0;var a=b.slice(r,r+e);pr.msync(t,a,o,e,n)},varargs:void 0,get(){var r=k[+vr.varargs>>2];return vr.varargs+=4,r},getp:()=>vr.get(),getStr:r=>mr(r),getStreamFromFD:r=>pr.getStreamChecked(r)},yr=r=>{for(var t="",e=r;b[e];)t+=ir[b[e++]];return t},wr={},gr={},br={},Er=r=>{throw new sr(r)},_r=r=>{throw new ur(r)},kr=(r,t,e)=>{function n(t){var n=e(t);n.length!==r.length&&_r("Mismatched type converter count");for(var o=0;o<r.length;++o)$r(r[o],n[o])}r.forEach((function(r){br[r]=t}));var o=new Array(t.length),a=[],i=0;t.forEach(((r,t)=>{gr.hasOwnProperty(r)?o[t]=gr[r]:(a.push(r),wr.hasOwnProperty(r)||(wr[r]=[]),wr[r].push((()=>{o[t]=gr[r],++i===a.length&&n(o)})))})),0===a.length&&n(o)};function $r(r,t,e={}){if(!("argPackAdvance"in t))throw new TypeError("registerType registeredInstance requires argPackAdvance");return function(r,t,e={}){var n=t.name;if(r||Er(`type "${n}" must have a positive integer typeid pointer`),gr.hasOwnProperty(r)){if(e.ignoreDuplicateRegistrations)return;Er(`Cannot register type '${n}' twice`)}if(gr[r]=t,delete br[r],wr.hasOwnProperty(r)){var o=wr[r];delete wr[r],o.forEach((r=>r()))}}(r,t,e)}var Pr,Cr=r=>{Er(r.$$.ptrType.registeredClass.name+" instance already deleted")},Tr=!1,Dr=r=>{},Fr=r=>{r.count.value-=1,0===r.count.value&&(r=>{r.smartPtr?r.smartPtrType.rawDestructor(r.smartPtr):r.ptrType.registeredClass.rawDestructor(r.ptr)})(r)},Sr=(r,t,e)=>{if(t===e)return r;if(void 0===e.baseClass)return null;var n=Sr(r,t,e.baseClass);return null===n?null:e.downcast(n)},Ar={},jr=[],Mr=()=>{for(;jr.length;){var r=jr.pop();r.$$.deleteScheduled=!1,r.delete()}},Or={},Rr=(r,t)=>(t.ptrType&&t.ptr||_r("makeClassHandle requires ptr and ptrType"),!!t.smartPtrType!=!!t.smartPtr&&_r("Both smartPtrType and smartPtr must be specified"),t.count={value:1},xr(Object.create(r,{$$:{value:t}})));var xr=r=>"undefined"==typeof FinalizationRegistry?(xr=r=>r,r):(Tr=new FinalizationRegistry((r=>{Fr(r.$$)})),xr=r=>{var t=r.$$;if(t.smartPtr){var e={$$:t};Tr.register(r,e,r)}return r},Dr=r=>Tr.unregister(r),xr(r));function zr(){}var Wr=(r,t)=>Object.defineProperty(t,"name",{value:r}),Nr=(r,t,e)=>{if(void 0===r[t].overloadTable){var n=r[t];r[t]=function(){return r[t].overloadTable.hasOwnProperty(arguments.length)||Er(`Function '${e}' called with an invalid number of arguments (${arguments.length}) - expects one of (${r[t].overloadTable})!`),r[t].overloadTable[arguments.length].apply(this,arguments)},r[t].overloadTable=[],r[t].overloadTable[n.argCount]=n}},Hr=(r,t,e)=>{o.hasOwnProperty(r)?((void 0===e||void 0!==o[r].overloadTable&&void 0!==o[r].overloadTable[e])&&Er(`Cannot register public name '${r}' twice`),Nr(o,r,r),o.hasOwnProperty(e)&&Er(`Cannot register multiple overloads of a function with the same number of arguments (${e})!`),o[r].overloadTable[e]=t):(o[r]=t,void 0!==e&&(o[r].numArguments=e))};function Lr(r,t,e,n,o,a,i,s){this.name=r,this.constructor=t,this.instancePrototype=e,this.rawDestructor=n,this.baseClass=o,this.getActualType=a,this.upcast=i,this.downcast=s,this.pureVirtualFunctions=[]}var Ur=(r,t,e)=>{for(;t!==e;)t.upcast||Er(`Expected null or instance of ${e.name}, got an instance of ${t.name}`),r=t.upcast(r),t=t.baseClass;return r};function Br(r,t){if(null===t)return this.isReference&&Er(`null is not a valid ${this.name}`),0;t.$$||Er(`Cannot pass "${pt(t)}" as a ${this.name}`),t.$$.ptr||Er(`Cannot pass deleted object as a pointer of type ${this.name}`);var e=t.$$.ptrType.registeredClass;return Ur(t.$$.ptr,e,this.registeredClass)}function Ir(r,t){var e;if(null===t)return this.isReference&&Er(`null is not a valid ${this.name}`),this.isSmartPointer?(e=this.rawConstructor(),null!==r&&r.push(this.rawDestructor,e),e):0;t.$$||Er(`Cannot pass "${pt(t)}" as a ${this.name}`),t.$$.ptr||Er(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&t.$$.ptrType.isConst&&Er(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);var n=t.$$.ptrType.registeredClass;if(e=Ur(t.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(void 0===t.$$.smartPtr&&Er("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?e=t.$$.smartPtr:Er(`Cannot convert argument of type ${t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:e=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)e=t.$$.smartPtr;else{var o=t.clone();e=this.rawShare(e,lt.toHandle((()=>o.delete()))),null!==r&&r.push(this.rawDestructor,e)}break;default:Er("Unsupporting sharing policy")}return e}function Vr(r,t){if(null===t)return this.isReference&&Er(`null is not a valid ${this.name}`),0;t.$$||Er(`Cannot pass "${pt(t)}" as a ${this.name}`),t.$$.ptr||Er(`Cannot pass deleted object as a pointer of type ${this.name}`),t.$$.ptrType.isConst&&Er(`Cannot convert argument of type ${t.$$.ptrType.name} to parameter type ${this.name}`);var e=t.$$.ptrType.registeredClass;return Ur(t.$$.ptr,e,this.registeredClass)}function Yr(r){return this.fromWireType($[r>>2])}function qr(r,t,e,n,o,a,i,s,u,c,l){this.name=r,this.registeredClass=t,this.isReference=e,this.isConst=n,this.isSmartPointer=o,this.pointeeType=a,this.sharingPolicy=i,this.rawGetPointee=s,this.rawConstructor=u,this.rawShare=c,this.rawDestructor=l,o||void 0!==t.baseClass?this.toWireType=Ir:n?(this.toWireType=Br,this.destructorFunction=null):(this.toWireType=Vr,this.destructorFunction=null)}var Xr,Gr,Kr=(r,t,e)=>{o.hasOwnProperty(r)||_r("Replacing nonexistant public symbol"),void 0!==o[r].overloadTable&&void 0!==e?o[r].overloadTable[e]=t:(o[r]=t,o[r].argCount=e)},Jr=[],Zr=r=>{var t=Jr[r];return t||(r>=Jr.length&&(Jr.length=r+1),Jr[r]=t=Xr.get(r)),t},Qr=(r,t)=>{var e,n,a,i=(r=yr(r)).includes("j")?(e=r,n=t,a=[],function(){return a.length=0,Object.assign(a,arguments),((r,t,e)=>r.includes("j")?((r,t,e)=>{var n=o["dynCall_"+r];return e&&e.length?n.apply(null,[t].concat(e)):n.call(null,t)})(r,t,e):Zr(t).apply(null,e))(e,n,a)}):Zr(t);return"function"!=typeof i&&Er(`unknown function pointer with signature ${r}: ${t}`),i},rt=r=>{var t=Gt(r),e=yr(t);return Yt(t),e},tt=(r,t)=>{var e=[],n={};throw t.forEach((function r(t){n[t]||gr[t]||(br[t]?br[t].forEach(r):(e.push(t),n[t]=!0))})),new Gr(`${r}: `+e.map(rt).join([", "]))},et=(r,t)=>{for(var e=[],n=0;n<r;n++)e.push($[t+4*n>>2]);return e},nt=r=>{for(;r.length;){var t=r.pop();r.pop()(t)}};function ot(r,t){if(!(r instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof r} which is not a function`);var e=Wr(r.name||"unknownFunctionName",(function(){}));e.prototype=r.prototype;var n=new e,o=r.apply(n,t);return o instanceof Object?o:n}function at(r,t,e,n,o,a){var i=t.length;i<2&&Er("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var s=null!==t[1]&&null!==e,u=!1,c=1;c<t.length;++c)if(null!==t[c]&&void 0===t[c].destructorFunction){u=!0;break}var l="void"!==t[0].name,h="",d="";for(c=0;c<i-2;++c)h+=(0!==c?", ":"")+"arg"+c,d+=(0!==c?", ":"")+"arg"+c+"Wired";var f=`\n return function (${h}) {\n if (arguments.length !== ${i-2}) {\n throwBindingError('function ${r} called with ' + arguments.length + ' arguments, expected ${i-2}');\n }`;u&&(f+="var destructors = [];\n");var p=u?"destructors":"null",m=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],v=[Er,n,o,nt,t[0],t[1]];for(s&&(f+="var thisWired = classParam.toWireType("+p+", this);\n"),c=0;c<i-2;++c)f+="var arg"+c+"Wired = argType"+c+".toWireType("+p+", arg"+c+"); // "+t[c+2].name+"\n",m.push("argType"+c),v.push(t[c+2]);if(s&&(d="thisWired"+(d.length>0?", ":"")+d),f+=(l||a?"var rv = ":"")+"invoker(fn"+(d.length>0?", ":"")+d+");\n",u)f+="runDestructors(destructors);\n";else for(c=s?1:2;c<t.length;++c){var y=1===c?"thisWired":"arg"+(c-2)+"Wired";null!==t[c].destructorFunction&&(f+=y+"_dtor("+y+"); // "+t[c].name+"\n",m.push(y+"_dtor"),v.push(t[c].destructorFunction))}l&&(f+="var ret = retType.fromWireType(rv);\nreturn ret;\n"),f+="}\n",m.push(f);var w=ot(Function,m).apply(null,v);return Wr(r,w)}var it=r=>{const t=(r=r.trim()).indexOf("(");return-1!==t?r.substr(0,t):r};function st(){this.allocated=[void 0],this.freelist=[]}var ut=new st,ct=r=>{r>=ut.reserved&&0==--ut.get(r).refcount&&ut.free(r)},lt={toValue:r=>(r||Er("Cannot use deleted val. handle = "+r),ut.get(r).value),toHandle:r=>{switch(r){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:return ut.allocate({refcount:1,value:r})}}};function ht(r){return this.fromWireType(k[r>>2])}var dt,ft,pt=r=>{if(null===r)return"null";var t=typeof r;return"object"===t||"array"===t||"function"===t?r.toString():""+r},mt=(r,t)=>{switch(t){case 4:return function(r){return this.fromWireType(P[r>>2])};case 8:return function(r){return this.fromWireType(C[r>>3])};default:throw new TypeError(`invalid float width (${t}): ${r}`)}},vt=(r,t,e)=>{switch(t){case 1:return e?r=>g[r>>0]:r=>b[r>>0];case 2:return e?r=>E[r>>1]:r=>_[r>>1];case 4:return e?r=>k[r>>2]:r=>$[r>>2];default:throw new TypeError(`invalid integer width (${t}): ${r}`)}},yt=(r,t,e)=>or(r,b,t,e),wt="undefined"!=typeof TextDecoder?new TextDecoder("utf-16le"):void 0,gt=(r,t)=>{for(var e=r,n=e>>1,o=n+t/2;!(n>=o)&&_[n];)++n;if((e=n<<1)-r>32&&wt)return wt.decode(b.subarray(r,e));for(var a="",i=0;!(i>=t/2);++i){var s=E[r+2*i>>1];if(0==s)break;a+=String.fromCharCode(s)}return a},bt=(r,t,e)=>{if(void 0===e&&(e=2147483647),e<2)return 0;for(var n=t,o=(e-=2)<2*r.length?e/2:r.length,a=0;a<o;++a){var i=r.charCodeAt(a);E[t>>1]=i,t+=2}return E[t>>1]=0,t-n},Et=r=>2*r.length,_t=(r,t)=>{for(var e=0,n="";!(e>=t/4);){var o=k[r+4*e>>2];if(0==o)break;if(++e,o>=65536){var a=o-65536;n+=String.fromCharCode(55296|a>>10,56320|1023&a)}else n+=String.fromCharCode(o)}return n},kt=(r,t,e)=>{if(void 0===e&&(e=2147483647),e<4)return 0;for(var n=t,o=n+e-4,a=0;a<r.length;++a){var i=r.charCodeAt(a);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&r.charCodeAt(++a)),k[t>>2]=i,(t+=4)+4>o)break}return k[t>>2]=0,t-n},$t=r=>{for(var t=0,e=0;e<r.length;++e){var n=r.charCodeAt(e);n>=55296&&n<=57343&&++e,t+=4}return t},Pt=(r,t)=>{var e=gr[r];return void 0===e&&Er(t+" has unknown type "+rt(r)),e},Ct=(r,t,e)=>{var n=[],o=r.toWireType(n,e);return n.length&&($[t>>2]=lt.toHandle(n)),o},Tt=[],Dt={},Ft=r=>{var t=Dt[r];return void 0===t?yr(r):t},St=()=>"object"==typeof globalThis?globalThis:Function("return this")(),At=(Reflect.construct,r=>r%4==0&&(r%100!=0||r%400==0)),jt=[0,31,60,91,121,152,182,213,244,274,305,335],Mt=[0,31,59,90,120,151,181,212,243,273,304,334],Ot=(r,t)=>t+2097152>>>0<4194305-!!r?(r>>>0)+4294967296*t:NaN,Rt=r=>{var t=nr(r)+1,e=Vt(t);return e&&yt(r,e,t),e},xt={},zt=()=>{if(!zt.strings){var r={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",_:c||"./this.program"};for(var t in xt)void 0===xt[t]?delete r[t]:r[t]=xt[t];var e=[];for(var t in r)e.push(`${t}=${r[t]}`);zt.strings=e}return zt.strings},Wt=[31,29,31,30,31,30,31,31,30,31,30,31],Nt=[31,28,31,30,31,30,31,31,30,31,30,31],Ht=(r,t,e,n)=>{var o=$[n+40>>2],a={tm_sec:k[n>>2],tm_min:k[n+4>>2],tm_hour:k[n+8>>2],tm_mday:k[n+12>>2],tm_mon:k[n+16>>2],tm_year:k[n+20>>2],tm_wday:k[n+24>>2],tm_yday:k[n+28>>2],tm_isdst:k[n+32>>2],tm_gmtoff:k[n+36>>2],tm_zone:o?mr(o):""},i=mr(e),s={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var u in s)i=i.replace(new RegExp(u,"g"),s[u]);var c=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],l=["January","February","March","April","May","June","July","August","September","October","November","December"];function h(r,t,e){for(var n="number"==typeof r?r.toString():r||"";n.length<t;)n=e[0]+n;return n}function d(r,t){return h(r,t,"0")}function f(r,t){function e(r){return r<0?-1:r>0?1:0}var n;return 0===(n=e(r.getFullYear()-t.getFullYear()))&&0===(n=e(r.getMonth()-t.getMonth()))&&(n=e(r.getDate()-t.getDate())),n}function p(r){switch(r.getDay()){case 0:return new Date(r.getFullYear()-1,11,29);case 1:return r;case 2:return new Date(r.getFullYear(),0,3);case 3:return new Date(r.getFullYear(),0,2);case 4:return new Date(r.getFullYear(),0,1);case 5:return new Date(r.getFullYear()-1,11,31);case 6:return new Date(r.getFullYear()-1,11,30)}}function m(r){var t=((r,t)=>{for(var e=new Date(r.getTime());t>0;){var n=At(e.getFullYear()),o=e.getMonth(),a=(n?Wt:Nt)[o];if(!(t>a-e.getDate()))return e.setDate(e.getDate()+t),e;t-=a-e.getDate()+1,e.setDate(1),o<11?e.setMonth(o+1):(e.setMonth(0),e.setFullYear(e.getFullYear()+1))}return e})(new Date(r.tm_year+1900,0,1),r.tm_yday),e=new Date(t.getFullYear(),0,4),n=new Date(t.getFullYear()+1,0,4),o=p(e),a=p(n);return f(o,t)<=0?f(a,t)<=0?t.getFullYear()+1:t.getFullYear():t.getFullYear()-1}var v={"%a":r=>c[r.tm_wday].substring(0,3),"%A":r=>c[r.tm_wday],"%b":r=>l[r.tm_mon].substring(0,3),"%B":r=>l[r.tm_mon],"%C":r=>d((r.tm_year+1900)/100|0,2),"%d":r=>d(r.tm_mday,2),"%e":r=>h(r.tm_mday,2," "),"%g":r=>m(r).toString().substring(2),"%G":r=>m(r),"%H":r=>d(r.tm_hour,2),"%I":r=>{var t=r.tm_hour;return 0==t?t=12:t>12&&(t-=12),d(t,2)},"%j":r=>d(r.tm_mday+((r,t)=>{for(var e=0,n=0;n<=t;e+=r[n++]);return e})(At(r.tm_year+1900)?Wt:Nt,r.tm_mon-1),3),"%m":r=>d(r.tm_mon+1,2),"%M":r=>d(r.tm_min,2),"%n":()=>"\n","%p":r=>r.tm_hour>=0&&r.tm_hour<12?"AM":"PM","%S":r=>d(r.tm_sec,2),"%t":()=>"\t","%u":r=>r.tm_wday||7,"%U":r=>{var t=r.tm_yday+7-r.tm_wday;return d(Math.floor(t/7),2)},"%V":r=>{var t=Math.floor((r.tm_yday+7-(r.tm_wday+6)%7)/7);if((r.tm_wday+371-r.tm_yday-2)%7<=2&&t++,t){if(53==t){var e=(r.tm_wday+371-r.tm_yday)%7;4==e||3==e&&At(r.tm_year)||(t=1)}}else{t=52;var n=(r.tm_wday+7-r.tm_yday-1)%7;(4==n||5==n&&At(r.tm_year%400-1))&&t++}return d(t,2)},"%w":r=>r.tm_wday,"%W":r=>{var t=r.tm_yday+7-(r.tm_wday+6)%7;return d(Math.floor(t/7),2)},"%y":r=>(r.tm_year+1900).toString().substring(2),"%Y":r=>r.tm_year+1900,"%z":r=>{var t=r.tm_gmtoff,e=t>=0;return t=(t=Math.abs(t)/60)/60*100+t%60,(e?"+":"-")+String("0000"+t).slice(-4)},"%Z":r=>r.tm_zone,"%%":()=>"%"};for(var u in i=i.replace(/%%/g,"\0\0"),v)i.includes(u)&&(i=i.replace(new RegExp(u,"g"),v[u](a)));var y,w,b=ar(i=i.replace(/\0\0/g,"%"),!1);return b.length>t?0:(y=b,w=r,g.set(y,w),b.length-1)},Lt=function(r,t,e,n){r||(r=this),this.parent=r,this.mount=r.mount,this.mounted=null,this.id=pr.nextInode++,this.name=t,this.mode=e,this.node_ops={},this.stream_ops={},this.rdev=n};Object.defineProperties(Lt.prototype,{read:{get:function(){return 365==(365&this.mode)},set:function(r){r?this.mode|=365:this.mode&=-366}},write:{get:function(){return 146==(146&this.mode)},set:function(r){r?this.mode|=146:this.mode&=-147}},isFolder:{get:function(){return pr.isDir(this.mode)}},isDevice:{get:function(){return pr.isChrdev(this.mode)}}}),pr.FSNode=Lt,pr.createPreloadedFile=(r,t,e,n,o,a,s,u,c,l)=>{var h=t?Q.resolve(J.join2(r,t)):r;function d(e){function i(e){l&&l(),u||((r,t,e,n,o,a)=>{pr.createDataFile(r,t,e,n,o,a)})(r,t,e,n,o,c),a&&a(),R()}((r,t,e,n)=>{"undefined"!=typeof Browser&&Browser.init();var o=!1;return dr.forEach((a=>{o||a.canHandle(t)&&(a.handle(r,t,e,n),o=!0)})),o})(e,h,i,(()=>{s&&s(),R()}))||i(e)}O(),"string"==typeof e?((r,t,e,n)=>{var o=n?"":`al ${r}`;i(r,(e=>{e||x(`Loading data file "${r}" failed (no arrayBuffer).`),t(new Uint8Array(e)),o&&R()}),(t=>{if(!e)throw`Loading data file "${r}" failed.`;e()})),o&&O()})(e,(r=>d(r)),s):d(e)},pr.staticInit(),(()=>{for(var r=new Array(256),t=0;t<256;++t)r[t]=String.fromCharCode(t);ir=r})(),sr=o.BindingError=class extends Error{constructor(r){super(r),this.name="BindingError"}},ur=o.InternalError=class extends Error{constructor(r){super(r),this.name="InternalError"}},Object.assign(zr.prototype,{isAliasOf(r){if(!(this instanceof zr))return!1;if(!(r instanceof zr))return!1;var t=this.$$.ptrType.registeredClass,e=this.$$.ptr;r.$$=r.$$;for(var n=r.$$.ptrType.registeredClass,o=r.$$.ptr;t.baseClass;)e=t.upcast(e),t=t.baseClass;for(;n.baseClass;)o=n.upcast(o),n=n.baseClass;return t===n&&e===o},clone(){if(this.$$.ptr||Cr(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var r,t=xr(Object.create(Object.getPrototypeOf(this),{$$:{value:(r=this.$$,{count:r.count,deleteScheduled:r.deleteScheduled,preservePointerOnDelete:r.preservePointerOnDelete,ptr:r.ptr,ptrType:r.ptrType,smartPtr:r.smartPtr,smartPtrType:r.smartPtrType})}}));return t.$$.count.value+=1,t.$$.deleteScheduled=!1,t},delete(){this.$$.ptr||Cr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Er("Object already scheduled for deletion"),Dr(this),Fr(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||Cr(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Er("Object already scheduled for deletion"),jr.push(this),1===jr.length&&Pr&&Pr(Mr),this.$$.deleteScheduled=!0,this}}),o.getInheritedInstanceCount=()=>Object.keys(Or).length,o.getLiveInheritedInstances=()=>{var r=[];for(var t in Or)Or.hasOwnProperty(t)&&r.push(Or[t]);return r},o.flushPendingDeletes=Mr,o.setDelayFunction=r=>{Pr=r,jr.length&&Pr&&Pr(Mr)},Object.assign(qr.prototype,{getPointee(r){return this.rawGetPointee&&(r=this.rawGetPointee(r)),r},destructor(r){this.rawDestructor&&this.rawDestructor(r)},argPackAdvance:8,readValueFromPointer:Yr,deleteObject(r){null!==r&&r.delete()},fromWireType:function(r){var t=this.getPointee(r);if(!t)return this.destructor(r),null;var e=((r,t)=>(t=((r,t)=>{for(void 0===t&&Er("ptr should not be undefined");r.baseClass;)t=r.upcast(t),r=r.baseClass;return t})(r,t),Or[t]))(this.registeredClass,t);if(void 0!==e){if(0===e.$$.count.value)return e.$$.ptr=t,e.$$.smartPtr=r,e.clone();var n=e.clone();return this.destructor(r),n}function o(){return this.isSmartPointer?Rr(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:r}):Rr(this.registeredClass.instancePrototype,{ptrType:this,ptr:r})}var a,i=this.registeredClass.getActualType(t),s=Ar[i];if(!s)return o.call(this);a=this.isConst?s.constPointerType:s.pointerType;var u=Sr(t,this.registeredClass,a.registeredClass);return null===u?o.call(this):this.isSmartPointer?Rr(a.registeredClass.instancePrototype,{ptrType:a,ptr:u,smartPtrType:this,smartPtr:r}):Rr(a.registeredClass.instancePrototype,{ptrType:a,ptr:u})}}),Gr=o.UnboundTypeError=(dt=Error,(ft=Wr("UnboundTypeError",(function(r){this.name="UnboundTypeError",this.message=r;var t=new Error(r).stack;void 0!==t&&(this.stack=this.toString()+"\n"+t.replace(/^Error(:[^\n]*)?\n/,""))}))).prototype=Object.create(dt.prototype),ft.prototype.constructor=ft,ft.prototype.toString=function(){return void 0===this.message?this.name:`${this.name}: ${this.message}`},ft),Object.assign(st.prototype,{get(r){return this.allocated[r]},has(r){return void 0!==this.allocated[r]},allocate(r){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=r,t},free(r){this.allocated[r]=void 0,this.freelist.push(r)}}),ut.allocated.push({value:void 0},{value:null},{value:!0},{value:!1}),ut.reserved=ut.allocated.length,o.count_emval_handles=()=>{for(var r=0,t=ut.reserved;t<ut.allocated.length;++t)void 0!==ut.allocated[t]&&++r;return r};var Ut,Bt={o:r=>{var t=new G(r);return t.get_caught()||(t.set_caught(!0),q--),t.set_rethrown(!1),Y.push(t),re(t.excPtr),t.get_exception_ptr()},y:()=>{Kt(0,0);var r=Y.pop();Qt(r.excPtr),X=0},a:()=>K([]),i:r=>K([r]),E:(r,t)=>K([r,t]),Ja:()=>{var r=Y.pop();r||x("no exception to throw");var t=r.excPtr;throw r.get_rethrown()||(Y.push(r),r.set_rethrown(!0),r.set_caught(!1),q++),X=t},q:(r,t,e)=>{throw new G(r).init(t,e),q++,X=r},xb:()=>q,f:r=>{throw X||(X=r),X},Ra:function(r,t,e){vr.varargs=e;try{var n=vr.getStreamFromFD(r);switch(t){case 0:if((o=vr.get())<0)return-28;for(;pr.streams[o];)o++;return pr.createStream(n,o).fd;case 1:case 2:case 6:case 7:return 0;case 3:return n.flags;case 4:var o=vr.get();return n.flags|=o,0;case 5:return o=vr.getp(),E[o+0>>1]=2,0;case 16:case 8:default:return-28;case 9:return 28,k[qt()>>2]=28,-1}}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return-r.errno}},Gb:function(r,t,e){vr.varargs=e;try{var n=vr.getStreamFromFD(r);switch(t){case 21509:case 21510:case 21511:case 21512:case 21524:case 21515:return n.tty?0:-59;case 21505:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcgets){var o=n.tty.ops.ioctl_tcgets(n),a=vr.getp();k[a>>2]=o.c_iflag||0,k[a+4>>2]=o.c_oflag||0,k[a+8>>2]=o.c_cflag||0,k[a+12>>2]=o.c_lflag||0;for(var i=0;i<32;i++)g[a+i+17>>0]=o.c_cc[i]||0;return 0}return 0;case 21506:case 21507:case 21508:if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){a=vr.getp();var s=k[a>>2],u=k[a+4>>2],c=k[a+8>>2],l=k[a+12>>2],h=[];for(i=0;i<32;i++)h.push(g[a+i+17>>0]);return n.tty.ops.ioctl_tcsets(n.tty,t,{c_iflag:s,c_oflag:u,c_cflag:c,c_lflag:l,c_cc:h})}return 0;case 21519:return n.tty?(a=vr.getp(),k[a>>2]=0,0):-59;case 21520:return n.tty?-28:-59;case 21531:return a=vr.getp(),pr.ioctl(n,t,a);case 21523:if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var d=n.tty.ops.ioctl_tiocgwinsz(n.tty);a=vr.getp(),E[a>>1]=d[0],E[a+2>>1]=d[1]}return 0;default:return-28}}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return-r.errno}},Hb:function(r,t,e,n){vr.varargs=n;try{t=vr.getStr(t),t=vr.calculateAt(r,t);var o=n?vr.get():0;return pr.open(t,e,o).fd}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return-r.errno}},ob:(r,t,e,n,o)=>{},Lb:(r,t,e,n)=>{$r(r,{name:t=yr(t),fromWireType:function(r){return!!r},toWireType:function(r,t){return t?e:n},argPackAdvance:8,readValueFromPointer:function(r){return this.fromWireType(b[r])},destructorFunction:null})},_:(r,t,e,n,o,a,i,s,u,c,l,h,d)=>{l=yr(l),a=Qr(o,a),s&&(s=Qr(i,s)),c&&(c=Qr(u,c)),d=Qr(h,d);var f=(r=>{if(void 0===r)return"_unknown";var t=(r=r.replace(/[^a-zA-Z0-9_]/g,"$")).charCodeAt(0);return t>=48&&t<=57?`_${r}`:r})(l);Hr(f,(function(){tt(`Cannot construct ${l} due to unbound types`,[n])})),kr([r,t,e],n?[n]:[],(function(t){var e,o;t=t[0],o=n?(e=t.registeredClass).instancePrototype:zr.prototype;var i=Wr(l,(function(){if(Object.getPrototypeOf(this)!==u)throw new sr("Use 'new' to construct "+l);if(void 0===h.constructor_body)throw new sr(l+" has no accessible constructor");var r=h.constructor_body[arguments.length];if(void 0===r)throw new sr(`Tried to invoke ctor of ${l} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(h.constructor_body).toString()}) parameters instead!`);return r.apply(this,arguments)})),u=Object.create(o,{constructor:{value:i}});i.prototype=u;var h=new Lr(l,i,u,d,e,a,s,c);h.baseClass&&(void 0===h.baseClass.__derivedClasses&&(h.baseClass.__derivedClasses=[]),h.baseClass.__derivedClasses.push(h));var p=new qr(l,h,!0,!1,!1),m=new qr(l+"*",h,!1,!1,!1),v=new qr(l+" const*",h,!1,!0,!1);return Ar[r]={pointerType:m,constPointerType:v},Kr(f,i),[p,m,v]}))},ka:(r,t,e,n,o,a)=>{var i=et(t,e);o=Qr(n,o),kr([],[r],(function(r){var e=`constructor ${(r=r[0]).name}`;if(void 0===r.registeredClass.constructor_body&&(r.registeredClass.constructor_body=[]),void 0!==r.registeredClass.constructor_body[t-1])throw new sr(`Cannot register multiple constructors with identical number of parameters (${t-1}) for class '${r.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return r.registeredClass.constructor_body[t-1]=()=>{tt(`Cannot construct ${r.name} due to unbound types`,i)},kr([],i,(n=>(n.splice(1,0,null),r.registeredClass.constructor_body[t-1]=at(e,n,null,o,a),[]))),[]}))},r:(r,t,e,n,o,a,i,s,u)=>{var c=et(e,n);t=yr(t),t=it(t),a=Qr(o,a),kr([],[r],(function(r){var n=`${(r=r[0]).name}.${t}`;function o(){tt(`Cannot call ${n} due to unbound types`,c)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]),s&&r.registeredClass.pureVirtualFunctions.push(t);var l=r.registeredClass.instancePrototype,h=l[t];return void 0===h||void 0===h.overloadTable&&h.className!==r.name&&h.argCount===e-2?(o.argCount=e-2,o.className=r.name,l[t]=o):(Nr(l,t,n),l[t].overloadTable[e-2]=o),kr([],c,(function(o){var s=at(n,o,r,a,i,u);return void 0===l[t].overloadTable?(s.argCount=e-2,l[t]=s):l[t].overloadTable[e-2]=s,[]})),[]}))},Jb:(r,t)=>{$r(r,{name:t=yr(t),fromWireType:r=>{var t=lt.toValue(r);return ct(r),t},toWireType:(r,t)=>lt.toHandle(t),argPackAdvance:8,readValueFromPointer:ht,destructorFunction:null})},Ta:(r,t,e)=>{$r(r,{name:t=yr(t),fromWireType:r=>r,toWireType:(r,t)=>t,argPackAdvance:8,readValueFromPointer:mt(t,e),destructorFunction:null})},K:(r,t,e,n,o,a,i)=>{var s=et(t,e);r=yr(r),r=it(r),o=Qr(n,o),Hr(r,(function(){tt(`Cannot call ${r} due to unbound types`,s)}),t-1),kr([],s,(function(e){var n=[e[0],null].concat(e.slice(1));return Kr(r,at(r,n,null,o,a,i),t-1),[]}))},T:(r,t,e,n,o)=>{t=yr(t),-1===o&&(o=4294967295);var a=r=>r;if(0===n){var i=32-8*e;a=r=>r<<i>>>i}var s=t.includes("unsigned");$r(r,{name:t,fromWireType:a,toWireType:s?function(r,t){return this.name,t>>>0}:function(r,t){return this.name,t},argPackAdvance:8,readValueFromPointer:vt(t,e,0!==n),destructorFunction:null})},J:(r,t,e)=>{var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][t];function o(r){var t=$[r>>2],e=$[r+4>>2];return new n(g.buffer,e,t)}$r(r,{name:e=yr(e),fromWireType:o,argPackAdvance:8,readValueFromPointer:o},{ignoreDuplicateRegistrations:!0})},Sa:(r,t)=>{var e="std::string"===(t=yr(t));$r(r,{name:t,fromWireType(r){var t,n=$[r>>2],o=r+4;if(e)for(var a=o,i=0;i<=n;++i){var s=o+i;if(i==n||0==b[s]){var u=mr(a,s-a);void 0===t?t=u:(t+=String.fromCharCode(0),t+=u),a=s+1}}else{var c=new Array(n);for(i=0;i<n;++i)c[i]=String.fromCharCode(b[o+i]);t=c.join("")}return Yt(r),t},toWireType(r,t){var n;t instanceof ArrayBuffer&&(t=new Uint8Array(t));var o="string"==typeof t;o||t instanceof Uint8Array||t instanceof Uint8ClampedArray||t instanceof Int8Array||Er("Cannot pass non-string to std::string"),n=e&&o?nr(t):t.length;var a=Vt(4+n+1),i=a+4;if($[a>>2]=n,e&&o)yt(t,i,n+1);else if(o)for(var s=0;s<n;++s){var u=t.charCodeAt(s);u>255&&(Yt(i),Er("String has UTF-16 code units that do not fit in 8 bits")),b[i+s]=u}else for(s=0;s<n;++s)b[i+s]=t[s];return null!==r&&r.push(Yt,a),a},argPackAdvance:8,readValueFromPointer:Yr,destructorFunction(r){Yt(r)}})},xa:(r,t,e)=>{var n,o,a,i,s;e=yr(e),2===t?(n=gt,o=bt,i=Et,a=()=>_,s=1):4===t&&(n=_t,o=kt,i=$t,a=()=>$,s=2),$r(r,{name:e,fromWireType:r=>{for(var e,o=$[r>>2],i=a(),u=r+4,c=0;c<=o;++c){var l=r+4+c*t;if(c==o||0==i[l>>s]){var h=n(u,l-u);void 0===e?e=h:(e+=String.fromCharCode(0),e+=h),u=l+t}}return Yt(r),e},toWireType:(r,n)=>{"string"!=typeof n&&Er(`Cannot pass non-string to C++ string type ${e}`);var a=i(n),u=Vt(4+a+t);return $[u>>2]=a>>s,o(n,u+4,a+t),null!==r&&r.push(Yt,u),u},argPackAdvance:8,readValueFromPointer:ht,destructorFunction(r){Yt(r)}})},Mb:(r,t)=>{$r(r,{isVoid:!0,name:t=yr(t),argPackAdvance:0,fromWireType:()=>{},toWireType:(r,t)=>{}})},zb:()=>{throw 1/0},Ma:(r,t,e)=>(r=lt.toValue(r),t=Pt(t,"emval::as"),Ct(t,e,r)),gb:(r,t,e,n)=>(r=Tt[r])(null,t=lt.toValue(t),e,n),X:(r,t,e,n,o)=>(r=Tt[r])(t=lt.toValue(t),t[e=Ft(e)],n,o),yb:ct,hb:r=>0===r?lt.toHandle(St()):(r=Ft(r),lt.toHandle(St()[r])),Y:(r,t,e)=>{var n=((r,t)=>{for(var e=new Array(r),n=0;n<r;++n)e[n]=Pt($[t+4*n>>2],"parameter "+n);return e})(r,t),o=n.shift();r--;var a="return function (obj, func, destructorsRef, args) {\n",i=0,s=[];0===e&&s.push("obj");for(var u=["retType"],c=[o],l=0;l<r;++l)s.push("arg"+l),u.push("argType"+l),c.push(n[l]),a+=` var arg${l} = argType${l}.readValueFromPointer(args${i?"+"+i:""});\n`,i+=n[l].argPackAdvance;for(a+=` var rv = ${1===e?"new func":"func.call"}(${s.join(", ")});\n`,l=0;l<r;++l)n[l].deleteObject&&(a+=` argType${l}.deleteObject(arg${l});\n`);o.isVoid||(u.push("emval_returnValue"),c.push(Ct),a+=" return emval_returnValue(retType, destructorsRef, rv);\n"),a+="};\n",u.push(a);var h,d,f=ot(Function,u).apply(null,c),p=`methodCaller<(${n.map((r=>r.name)).join(", ")}) => ${o.name}>`;return h=Wr(p,f),d=Tt.length,Tt.push(h),d},Kb:(r,t)=>(r=lt.toValue(r),t=lt.toValue(t),lt.toHandle(r[t])),jb:r=>{r>4&&(ut.get(r).refcount+=1)},oa:r=>lt.toHandle(Ft(r)),ib:()=>lt.toHandle({}),kb:r=>{var t=lt.toValue(r);nt(t),ct(r)},fb:(r,t,e)=>{r=lt.toValue(r),t=lt.toValue(t),e=lt.toValue(e),r[t]=e},ta:(r,t)=>{var e=(r=Pt(r,"_emval_take_value")).readValueFromPointer(t);return lt.toHandle(e)},Ka:r=>(r=lt.toValue(r),lt.toHandle(typeof r)),mb:function(r,t,e){var n=Ot(r,t),o=new Date(1e3*n);k[e>>2]=o.getSeconds(),k[e+4>>2]=o.getMinutes(),k[e+8>>2]=o.getHours(),k[e+12>>2]=o.getDate(),k[e+16>>2]=o.getMonth(),k[e+20>>2]=o.getFullYear()-1900,k[e+24>>2]=o.getDay();var a=0|(r=>(At(r.getFullYear())?jt:Mt)[r.getMonth()]+r.getDate()-1)(o);k[e+28>>2]=a,k[e+36>>2]=-60*o.getTimezoneOffset();var i=new Date(o.getFullYear(),0,1),s=new Date(o.getFullYear(),6,1).getTimezoneOffset(),u=i.getTimezoneOffset(),c=0|(s!=u&&o.getTimezoneOffset()==Math.min(u,s));k[e+32>>2]=c},Bb:(r,t,e)=>{var n=(new Date).getFullYear(),o=new Date(n,0,1),a=new Date(n,6,1),i=o.getTimezoneOffset(),s=a.getTimezoneOffset(),u=Math.max(i,s);function c(r){var t=r.toTimeString().match(/\(([A-Za-z ]+)\)$/);return t?t[1]:"GMT"}$[r>>2]=60*u,k[t>>2]=Number(i!=s);var l=c(o),h=c(a),d=Rt(l),f=Rt(h);s<i?($[e>>2]=d,$[e+4>>2]=f):($[e>>2]=f,$[e+4>>2]=d)},la:()=>{x("")},wa:()=>Date.now(),Ib:(r,t,e)=>b.copyWithin(r,t,t+e),Ab:r=>{b.length,x("OOM")},Db:(r,t)=>{var e=0;return zt().forEach(((n,o)=>{var a=t+e;$[r+4*o>>2]=a,((r,t)=>{for(var e=0;e<r.length;++e)g[t++>>0]=r.charCodeAt(e);g[t>>0]=0})(n,a),e+=n.length+1})),0},Eb:(r,t)=>{var e=zt();$[r>>2]=e.length;var n=0;return e.forEach((r=>n+=r.length+1)),$[t>>2]=n,0},Pa:function(r){try{var t=vr.getStreamFromFD(r);return pr.close(t),0}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return r.errno}},Cb:function(r,t){try{var e=vr.getStreamFromFD(r),n=e.tty?2:pr.isDir(e.mode)?3:pr.isLink(e.mode)?7:4;return g[t>>0]=n,E[t+2>>1]=0,H=[0,(N=0,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[t+8>>2]=H[0],k[t+12>>2]=H[1],H=[0,(N=0,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[t+16>>2]=H[0],k[t+20>>2]=H[1],0}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return r.errno}},Fb:function(r,t,e,n){try{var o=((r,t,e,n)=>{for(var o=0,a=0;a<e;a++){var i=$[t>>2],s=$[t+4>>2];t+=8;var u=pr.read(r,g,i,s,n);if(u<0)return-1;if(o+=u,u<s)break;void 0!==n&&(n+=u)}return o})(vr.getStreamFromFD(r),t,e);return $[n>>2]=o,0}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return r.errno}},nb:function(r,t,e,n,o){var a=Ot(t,e);try{if(isNaN(a))return 61;var i=vr.getStreamFromFD(r);return pr.llseek(i,a,n),H=[i.position>>>0,(N=i.position,+Math.abs(N)>=1?N>0?+Math.floor(N/4294967296)>>>0:~~+Math.ceil((N-+(~~N>>>0))/4294967296)>>>0:0)],k[o>>2]=H[0],k[o+4>>2]=H[1],i.getdents&&0===a&&0===n&&(i.getdents=null),0}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return r.errno}},Qa:function(r,t,e,n){try{var o=((r,t,e,n)=>{for(var o=0,a=0;a<e;a++){var i=$[t>>2],s=$[t+4>>2];t+=8;var u=pr.write(r,g,i,s,n);if(u<0)return-1;o+=u,void 0!==n&&(n+=u)}return o})(vr.getStreamFromFD(r),t,e);return $[n>>2]=o,0}catch(r){if(void 0===pr||"ErrnoError"!==r.name)throw r;return r.errno}},w:function(r,t){var e=Jt();try{return Zr(r)(t)}catch(r){if(Zt(e),r!==r+0)throw r;Kt(1,0)}},D:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},Aa:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},C:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},na:function(r,t,e,n,o){var a=Jt();try{return Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},A:function(r,t,e,n,o,a){var i=Jt();try{return Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},Tb:function(r,t,e,n,o,a,i){var s=Jt();try{return Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},Wa:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},Ba:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},Sb:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},Xa:function(r,t,e,n,o,a,i,s,u,c,l,h,d){var f=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d)}catch(r){if(Zt(f),r!==r+0)throw r;Kt(1,0)}},ma:function(r,t){var e=Jt();try{return Zr(r)(t)}catch(r){if(Zt(e),r!==r+0)throw r;Kt(1,0)}},Ua:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},ja:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},Na:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},Rb:function(r,t,e,n,o){var a=Jt();try{return Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},Ob:function(r,t,e,n,o,a,i){var s=Jt();try{return Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},u:function(r){var t=Jt();try{return Zr(r)()}catch(r){if(Zt(t),r!==r+0)throw r;Kt(1,0)}},b:function(r,t){var e=Jt();try{return Zr(r)(t)}catch(r){if(Zt(e),r!==r+0)throw r;Kt(1,0)}},L:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},Ca:function(r,t,e,n,o){var a=Jt();try{return Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},sa:function(r,t,e,n,o,a){var i=Jt();try{return Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},bb:function(r,t,e,n,o,a,i){var s=Jt();try{return Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},da:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},fa:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},c:function(r,t,e){var n=Jt();try{return Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},R:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},Fa:function(r,t,e,n,o,a){var i=Jt();try{return Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},Ga:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},ba:function(r,t,e,n,o,a,i,s){var u=Jt();try{return Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},ia:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},_a:function(r,t,e,n,o,a,i,s,u,c,l,h){var d=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l,h)}catch(r){if(Zt(d),r!==r+0)throw r;Kt(1,0)}},W:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},d:function(r,t,e,n){var o=Jt();try{return Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},ra:function(r,t,e,n,o){var a=Jt();try{return Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},k:function(r,t,e,n,o){var a=Jt();try{return Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},Oa:function(r,t,e,n,o,a){var i=Jt();try{return Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},O:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},n:function(r,t,e,n,o,a){var i=Jt();try{return Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},$a:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},l:function(r,t,e,n,o,a,i){var s=Jt();try{return Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},ab:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},z:function(r,t,e,n,o,a,i,s){var u=Jt();try{return Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},Q:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},F:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},ga:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},$:function(r,t,e,n,o,a,i,s,u,c,l,h){var d=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l,h)}catch(r){if(Zt(d),r!==r+0)throw r;Kt(1,0)}},eb:function(r,t,e,n,o,a,i,s,u,c,l,h,d){var f=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d)}catch(r){if(Zt(f),r!==r+0)throw r;Kt(1,0)}},Ia:function(r,t,e,n,o,a,i,s,u,c,l,h,d,f,p,m,v){var y=Jt();try{return Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d,f,p,m,v)}catch(r){if(Zt(y),r!==r+0)throw r;Kt(1,0)}},qb:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{return ue(r,t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},rb:function(r,t,e,n,o,a){var i=Jt();try{return se(r,t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},ub:function(r,t,e,n,o){var a=Jt();try{return ae(r,t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},wb:function(r,t){var e=Jt();try{return ne(r,t)}catch(r){if(Zt(e),r!==r+0)throw r;Kt(1,0)}},tb:function(r,t,e){var n=Jt();try{return ce(r,t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},lb:function(r,t,e,n,o){var a=Jt();try{return he(r,t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},pb:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{return le(r,t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},j:function(r){var t=Jt();try{Zr(r)()}catch(r){if(Zt(t),r!==r+0)throw r;Kt(1,0)}},h:function(r,t){var e=Jt();try{Zr(r)(t)}catch(r){if(Zt(e),r!==r+0)throw r;Kt(1,0)}},x:function(r,t,e){var n=Jt();try{Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},Ha:function(r,t,e,n){var o=Jt();try{Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},ea:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},ha:function(r,t,e,n){var o=Jt();try{Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},Ea:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},qa:function(r,t,e,n,o,a,i,s){var u=Jt();try{Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},za:function(r,t,e){var n=Jt();try{Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},Qb:function(r,t,e,n,o,a,i,s){var u=Jt();try{Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},P:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},Pb:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},g:function(r,t,e){var n=Jt();try{Zr(r)(t,e)}catch(r){if(Zt(n),r!==r+0)throw r;Kt(1,0)}},s:function(r,t,e,n){var o=Jt();try{Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},V:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},ca:function(r,t,e,n,o,a){var i=Jt();try{Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},Va:function(r,t,e,n){var o=Jt();try{Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},Nb:function(r,t,e,n,o,a){var i=Jt();try{Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},e:function(r,t,e,n){var o=Jt();try{Zr(r)(t,e,n)}catch(r){if(Zt(o),r!==r+0)throw r;Kt(1,0)}},H:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},Da:function(r,t,e,n,o,a,i){var s=Jt();try{Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},Z:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},cb:function(r,t,e,n,o,a){var i=Jt();try{Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},m:function(r,t,e,n,o){var a=Jt();try{Zr(r)(t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},Ya:function(r,t,e,n,o,a){var i=Jt();try{Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},Vb:function(r,t,e,n,o,a,i){var s=Jt();try{Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},db:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{Zr(r)(t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},ya:function(r,t,e,n,o,a,i,s,u,c,l,h){var d=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h)}catch(r){if(Zt(d),r!==r+0)throw r;Kt(1,0)}},p:function(r,t,e,n,o,a){var i=Jt();try{Zr(r)(t,e,n,o,a)}catch(r){if(Zt(i),r!==r+0)throw r;Kt(1,0)}},U:function(r,t,e,n,o,a,i){var s=Jt();try{Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},Za:function(r,t,e,n,o,a,i,s){var u=Jt();try{Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},aa:function(r,t,e,n,o,a,i,s){var u=Jt();try{Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},v:function(r,t,e,n,o,a,i){var s=Jt();try{Zr(r)(t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},B:function(r,t,e,n,o,a,i,s){var u=Jt();try{Zr(r)(t,e,n,o,a,i,s)}catch(r){if(Zt(u),r!==r+0)throw r;Kt(1,0)}},G:function(r,t,e,n,o,a,i,s,u){var c=Jt();try{Zr(r)(t,e,n,o,a,i,s,u)}catch(r){if(Zt(c),r!==r+0)throw r;Kt(1,0)}},I:function(r,t,e,n,o,a,i,s,u,c){var l=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c)}catch(r){if(Zt(l),r!==r+0)throw r;Kt(1,0)}},N:function(r,t,e,n,o,a,i,s,u,c,l){var h=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l)}catch(r){if(Zt(h),r!==r+0)throw r;Kt(1,0)}},pa:function(r,t,e,n,o,a,i,s,u,c,l,h){var d=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h)}catch(r){if(Zt(d),r!==r+0)throw r;Kt(1,0)}},ua:function(r,t,e,n,o,a,i,s,u,c,l,h,d){var f=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d)}catch(r){if(Zt(f),r!==r+0)throw r;Kt(1,0)}},va:function(r,t,e,n,o,a,i,s,u,c,l,h,d,f,p){var m=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d,f,p)}catch(r){if(Zt(m),r!==r+0)throw r;Kt(1,0)}},S:function(r,t,e,n,o,a,i,s,u,c,l,h,d,f,p,m){var v=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d,f,p,m)}catch(r){if(Zt(v),r!==r+0)throw r;Kt(1,0)}},La:function(r,t,e,n,o,a,i,s,u,c,l,h,d,f,p,m,v,y){var w=Jt();try{Zr(r)(t,e,n,o,a,i,s,u,c,l,h,d,f,p,m,v,y)}catch(r){if(Zt(w),r!==r+0)throw r;Kt(1,0)}},vb:function(r,t,e,n,o,a,i){var s=Jt();try{oe(r,t,e,n,o,a,i)}catch(r){if(Zt(s),r!==r+0)throw r;Kt(1,0)}},sb:function(r,t,e,n,o){var a=Jt();try{ie(r,t,e,n,o)}catch(r){if(Zt(a),r!==r+0)throw r;Kt(1,0)}},t:r=>r,Ub:Ht,M:(r,t,e,n,o)=>Ht(r,t,e,n)},It=function(){var r,t,e,a,i={a:Bt};function s(r,t){var e,n;return It=r.exports,e=It.Wb.buffer,o.HEAP8=g=new Int8Array(e),o.HEAP16=E=new Int16Array(e),o.HEAPU8=b=new Uint8Array(e),o.HEAPU16=_=new Uint16Array(e),o.HEAP32=k=new Int32Array(e),o.HEAPU32=$=new Uint32Array(e),o.HEAPF32=P=new Float32Array(e),o.HEAPF64=C=new Float64Array(e),Xr=It.Zb,n=It.Xb,F.unshift(n),R(),It}if(O(),o.instantiateWasm)try{return o.instantiateWasm(i,s)}catch(r){w(`Module.instantiateWasm callback failed with error: ${r}`),n(r)}return(r=v,t=z,e=i,a=function(r){s(r.instance)},r||"function"!=typeof WebAssembly.instantiateStreaming||L(t)||U(t)||d||"function"!=typeof fetch?I(t,e,a):fetch(t,{credentials:"same-origin"}).then((r=>WebAssembly.instantiateStreaming(r,e).then(a,(function(r){return w(`wasm streaming compile failed: ${r}`),w("falling back to ArrayBuffer instantiation"),I(t,e,a)}))))).catch(n),{}}(),Vt=r=>(Vt=It.Yb)(r),Yt=r=>(Yt=It._b)(r),qt=()=>(qt=It.$b)(),Xt=r=>(Xt=It.ac)(r),Gt=r=>(Gt=It.bc)(r),Kt=(r,t)=>(Kt=It.cc)(r,t),Jt=()=>(Jt=It.dc)(),Zt=r=>(Zt=It.ec)(r),Qt=r=>(Qt=It.fc)(r),re=r=>(re=It.gc)(r),te=(r,t,e)=>(te=It.hc)(r,t,e),ee=r=>(ee=It.ic)(r),ne=o.dynCall_ji=(r,t)=>(ne=o.dynCall_ji=It.jc)(r,t),oe=o.dynCall_viijii=(r,t,e,n,a,i,s)=>(oe=o.dynCall_viijii=It.kc)(r,t,e,n,a,i,s),ae=o.dynCall_iiji=(r,t,e,n,a)=>(ae=o.dynCall_iiji=It.lc)(r,t,e,n,a),ie=o.dynCall_viji=(r,t,e,n,a)=>(ie=o.dynCall_viji=It.mc)(r,t,e,n,a),se=o.dynCall_iiiij=(r,t,e,n,a,i)=>(se=o.dynCall_iiiij=It.nc)(r,t,e,n,a,i),ue=o.dynCall_iiiiiiij=(r,t,e,n,a,i,s,u,c)=>(ue=o.dynCall_iiiiiiij=It.oc)(r,t,e,n,a,i,s,u,c),ce=o.dynCall_jii=(r,t,e)=>(ce=o.dynCall_jii=It.pc)(r,t,e),le=o.dynCall_jiiiiiij=(r,t,e,n,a,i,s,u,c)=>(le=o.dynCall_jiiiiiij=It.qc)(r,t,e,n,a,i,s,u,c),he=(o.dynCall_jiji=(r,t,e,n,a)=>(o.dynCall_jiji=It.rc)(r,t,e,n,a),o.dynCall_jiiii=(r,t,e,n,a)=>(he=o.dynCall_jiiii=It.sc)(r,t,e,n,a));function de(){function r(){Ut||(Ut=!0,o.calledRun=!0,T||(o.noFSInit||pr.init.initialized||pr.init(),pr.ignorePermissions=!1,cr.init(),V(F),e(o),o.onRuntimeInitialized&&o.onRuntimeInitialized(),function(){if(o.postRun)for("function"==typeof o.postRun&&(o.postRun=[o.postRun]);o.postRun.length;)r=o.postRun.shift(),S.unshift(r);var r;V(S)}()))}A>0||(function(){if(o.preRun)for("function"==typeof o.preRun&&(o.preRun=[o.preRun]);o.preRun.length;)r=o.preRun.shift(),D.unshift(r);var r;V(D)}(),A>0||(o.setStatus?(o.setStatus("Running..."),setTimeout((function(){setTimeout((function(){o.setStatus("")}),1),r()}),1)):r()))}if(o.dynCall_iiiiij=(r,t,e,n,a,i,s)=>(o.dynCall_iiiiij=It.tc)(r,t,e,n,a,i,s),o.dynCall_iiiiijj=(r,t,e,n,a,i,s,u,c)=>(o.dynCall_iiiiijj=It.uc)(r,t,e,n,a,i,s,u,c),o.dynCall_iiiiiijj=(r,t,e,n,a,i,s,u,c,l)=>(o.dynCall_iiiiiijj=It.vc)(r,t,e,n,a,i,s,u,c,l),M=function r(){Ut||de(),Ut||(M=r)},o.preInit)for("function"==typeof o.preInit&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();return de(),t.ready}})();"object"==typeof exports&&"object"==typeof module?module.exports=initRDKitModule:"function"==typeof define&&define.amd&&define([],(()=>initRDKitModule));
|
|
Binary file
|