@needle-tools/engine
Version:
Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.
543 lines • 7.51 MB
JavaScript
import { Texture as KI, WebGLRenderTarget as $E, RepeatWrapping as Gg, LinearFilter as hB, LinearMipMapLinearFilter as cB, FloatType as Ai, RGBAFormat as Ii, PlaneGeometry as FB, OrthographicCamera as gi, ShaderMaterial as UB, Scene as Bi, Mesh as Dg, EquirectangularReflectionMapping as Qi, Vector3 as qA, Quaternion as Ci, Color as Ei, Uniform$1 as ii, LinearSRGBColorSpace as Gi, Cache as KA, MirroredRepeatWrapping as Di, ClampToEdgeWrapping as Yi, NearestMipMapNearestFilter as wi, NearestFilter as Ni, MeshBasicMaterial as li, PMREMGenerator$1 as oi, cloneUniforms as Ji, cloneUniformsGroups as Ri, GLSL3 as Zi, Matrix4 as WI, UniformsLib as bi, Matrix3 as hi, MeshStandardMaterial as XI, DoubleSide as ci, FrontSide as Fi } from "./three.js";
var kI = (function() {
var F = typeof document < "u" ? document.currentScript?.src : void 0;
return typeof __filename < "u" && (F = F || __filename), (function(w) {
w = w || {};
var J, G = w, c, M, h = new Promise((A, I) => {
c = A, M = I;
}), s = typeof window == "object", U = typeof WorkerGlobalScope < "u", H = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string" && process.type != "renderer";
G.expectedDataFileDownloads ??= 0, G.expectedDataFileDownloads++, (() => {
var A = typeof ENVIRONMENT_IS_PTHREAD < "u" && ENVIRONMENT_IS_PTHREAD, I = typeof ENVIRONMENT_IS_WASM_WORKER < "u" && ENVIRONMENT_IS_WASM_WORKER;
if (A || I) return;
var g = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string";
function B(Q) {
typeof window == "object" ? window.encodeURIComponent(window.location.pathname.substring(0, window.location.pathname.lastIndexOf("/")) + "/") : typeof process > "u" && typeof location < "u" && encodeURIComponent(location.pathname.substring(0, location.pathname.lastIndexOf("/")) + "/");
var E = "bin/JsMaterialXGenShader.data", i = "JsMaterialXGenShader.data", D = G.locateFile ? G.locateFile(i, "") : i, Y = Q.remote_package_size;
function N(o, d, x, K) {
if (g) {
require("fs").readFile(o, (V, q) => {
V ? K(V) : x(q.buffer);
});
return;
}
G.dataFileDownloads ??= {}, fetch(o).catch((V) => Promise.reject(new Error(`Network Error: ${o}`, { cause: V }))).then((V) => {
if (!V.ok)
return Promise.reject(new Error(`${V.status}: ${V.url}`));
if (!V.body && V.arrayBuffer)
return V.arrayBuffer().then(x);
const q = V.body.getReader(), QA = () => q.read().then(S).catch((W) => Promise.reject(new Error(`Unexpected error while handling : ${V.url} ${W}`, { cause: W }))), r = [], JA = V.headers, y = Number(JA.get("Content-Length") ?? d);
let a = 0;
const S = ({ done: W, value: L }) => {
if (W) {
const AA = new Uint8Array(r.map((u) => u.length).reduce((u, bA) => u + bA, 0));
let EA = 0;
for (const u of r)
AA.set(u, EA), EA += u.length;
x(AA.buffer);
} else {
r.push(L), a += L.length, G.dataFileDownloads[o] = { loaded: a, total: y };
let AA = 0, EA = 0;
for (const u of Object.values(G.dataFileDownloads))
AA += u.loaded, EA += u.total;
return G.setStatus?.(`Downloading data... (${AA}/${EA})`), QA();
}
};
return G.setStatus?.("Downloading data..."), QA();
});
}
function l(o) {
console.error("package error:", o);
}
var R = null, Z = G.getPreloadedPackage ? G.getPreloadedPackage(D, Y) : null;
Z || N(D, Y, (o) => {
R ? (R(o), R = null) : Z = o;
}, l);
function b(o) {
function d(QA, r) {
if (!QA) throw r + new Error().stack;
}
o.FS_createPath("/", "libraries", !0, !0), o.FS_createPath("/libraries", "bxdf", !0, !0), o.FS_createPath("/libraries/bxdf", "genglsl", !0, !0), o.FS_createPath("/libraries/bxdf", "genmdl", !0, !0), o.FS_createPath("/libraries/bxdf", "lama", !0, !0), o.FS_createPath("/libraries/bxdf", "translation", !0, !0), o.FS_createPath("/libraries", "cmlib", !0, !0), o.FS_createPath("/libraries", "lights", !0, !0), o.FS_createPath("/libraries/lights", "genglsl", !0, !0), o.FS_createPath("/libraries/lights", "genmsl", !0, !0), o.FS_createPath("/libraries", "nprlib", !0, !0), o.FS_createPath("/libraries/nprlib", "genglsl", !0, !0), o.FS_createPath("/libraries/nprlib", "genmdl", !0, !0), o.FS_createPath("/libraries/nprlib", "genmsl", !0, !0), o.FS_createPath("/libraries/nprlib", "genosl", !0, !0), o.FS_createPath("/libraries", "pbrlib", !0, !0), o.FS_createPath("/libraries/pbrlib", "genglsl", !0, !0), o.FS_createPath("/libraries/pbrlib/genglsl", "lib", !0, !0), o.FS_createPath("/libraries/pbrlib", "genmdl", !0, !0), o.FS_createPath("/libraries/pbrlib", "genmsl", !0, !0), o.FS_createPath("/libraries/pbrlib", "genosl", !0, !0), o.FS_createPath("/libraries/pbrlib/genosl", "lib", !0, !0), o.FS_createPath("/libraries", "stdlib", !0, !0), o.FS_createPath("/libraries/stdlib", "genglsl", !0, !0), o.FS_createPath("/libraries/stdlib/genglsl", "lib", !0, !0), o.FS_createPath("/libraries/stdlib", "genmdl", !0, !0), o.FS_createPath("/libraries/stdlib", "genmsl", !0, !0), o.FS_createPath("/libraries/stdlib/genmsl", "lib", !0, !0), o.FS_createPath("/libraries/stdlib", "genosl", !0, !0), o.FS_createPath("/libraries/stdlib/genosl", "include", !0, !0), o.FS_createPath("/libraries/stdlib/genosl", "lib", !0, !0), o.FS_createPath("/libraries", "targets", !0, !0);
function x(QA, r, JA) {
this.start = QA, this.end = r, this.audio = JA;
}
x.prototype = { requests: {}, open: function(QA, r) {
this.name = r, this.requests[r] = this, o.addRunDependency(`fp ${this.name}`);
}, send: function() {
}, onload: function() {
var QA = this.byteArray.subarray(this.start, this.end);
this.finish(QA);
}, finish: function(QA) {
var r = this;
o.FS_createDataFile(this.name, null, QA, !0, !0, !0), o.removeRunDependency(`fp ${r.name}`), this.requests[this.name] = null;
} };
for (var K = Q.files, V = 0; V < K.length; ++V)
new x(K[V].start, K[V].end, K[V].audio || 0).open("GET", K[V].filename);
function q(QA) {
d(QA, "Loading data file failed."), d(QA.constructor.name === ArrayBuffer.name, "bad input to processPackageData");
var r = new Uint8Array(QA);
x.prototype.byteArray = r;
for (var JA = Q.files, y = 0; y < JA.length; ++y)
x.prototype.requests[JA[y].filename].onload();
o.removeRunDependency("datafile_bin/JsMaterialXGenShader.data");
}
o.addRunDependency("datafile_bin/JsMaterialXGenShader.data"), o.preloadResults ??= {}, o.preloadResults[E] = { fromCache: !1 }, Z ? (q(Z), Z = null) : R = q;
}
G.calledRun ? b(G) : (G.preRun ??= []).push(b);
}
B({ files: [{ filename: "/libraries/CMakeLists.txt", start: 0, end: 1923 }, { filename: "/libraries/README.md", start: 1923, end: 6916 }, { filename: "/libraries/bxdf/disney_principled.mtlx", start: 6916, end: 14224 }, { filename: "/libraries/bxdf/genglsl/gltf_pbr.mtlx", start: 14224, end: 29039 }, { filename: "/libraries/bxdf/genglsl/open_pbr_surface.mtlx", start: 29039, end: 60246 }, { filename: "/libraries/bxdf/genglsl/standard_surface.mtlx", start: 60246, end: 78019 }, { filename: "/libraries/bxdf/genmdl/open_pbr_surface.mtlx", start: 78019, end: 109045 }, { filename: "/libraries/bxdf/gltf_pbr.mtlx", start: 109045, end: 153938 }, { filename: "/libraries/bxdf/lama/lama_add.mtlx", start: 153938, end: 156592 }, { filename: "/libraries/bxdf/lama/lama_conductor.mtlx", start: 156592, end: 164592 }, { filename: "/libraries/bxdf/lama/lama_dielectric.mtlx", start: 164592, end: 175511 }, { filename: "/libraries/bxdf/lama/lama_diffuse.mtlx", start: 175511, end: 178457 }, { filename: "/libraries/bxdf/lama/lama_emission.mtlx", start: 178457, end: 179206 }, { filename: "/libraries/bxdf/lama/lama_generalized_schlick.mtlx", start: 179206, end: 191060 }, { filename: "/libraries/bxdf/lama/lama_iridescence.mtlx", start: 191060, end: 197023 }, { filename: "/libraries/bxdf/lama/lama_layer.mtlx", start: 197023, end: 198767 }, { filename: "/libraries/bxdf/lama/lama_mix.mtlx", start: 198767, end: 200854 }, { filename: "/libraries/bxdf/lama/lama_sheen.mtlx", start: 200854, end: 202977 }, { filename: "/libraries/bxdf/lama/lama_sss.mtlx", start: 202977, end: 209752 }, { filename: "/libraries/bxdf/lama/lama_surface.mtlx", start: 209752, end: 211420 }, { filename: "/libraries/bxdf/lama/lama_translucent.mtlx", start: 211420, end: 213057 }, { filename: "/libraries/bxdf/open_pbr_surface.mtlx", start: 213057, end: 254343 }, { filename: "/libraries/bxdf/standard_surface.mtlx", start: 254343, end: 282426 }, { filename: "/libraries/bxdf/translation/open_pbr_to_standard_surface.mtlx", start: 282426, end: 299893 }, { filename: "/libraries/bxdf/translation/standard_surface_to_gltf_pbr.mtlx", start: 299893, end: 310073 }, { filename: "/libraries/bxdf/translation/standard_surface_to_open_pbr.mtlx", start: 310073, end: 325182 }, { filename: "/libraries/bxdf/translation/standard_surface_to_usd.mtlx", start: 325182, end: 331063 }, { filename: "/libraries/bxdf/usd_preview_surface.mtlx", start: 331063, end: 354055 }, { filename: "/libraries/cmlib/cmlib_defs.mtlx", start: 354055, end: 358901 }, { filename: "/libraries/cmlib/cmlib_ng.mtlx", start: 358901, end: 376376 }, { filename: "/libraries/lights/genglsl/lights_genglsl_impl.mtlx", start: 376376, end: 376980 }, { filename: "/libraries/lights/genglsl/mx_directional_light.glsl", start: 376980, end: 377161 }, { filename: "/libraries/lights/genglsl/mx_point_light.glsl", start: 377161, end: 377531 }, { filename: "/libraries/lights/genglsl/mx_spot_light.glsl", start: 377531, end: 378155 }, { filename: "/libraries/lights/genmsl/lights_genmsl_impl.mtlx", start: 378155, end: 378756 }, { filename: "/libraries/lights/genmsl/mx_directional_light.metal", start: 378756, end: 378943 }, { filename: "/libraries/lights/genmsl/mx_point_light.metal", start: 378943, end: 379319 }, { filename: "/libraries/lights/genmsl/mx_spot_light.metal", start: 379319, end: 379949 }, { filename: "/libraries/lights/lights_defs.mtlx", start: 379949, end: 382361 }, { filename: "/libraries/nprlib/genglsl/nprlib_genglsl_impl.mtlx", start: 382361, end: 383025 }, { filename: "/libraries/nprlib/genmdl/nprlib_genmdl_impl.mtlx", start: 383025, end: 383787 }, { filename: "/libraries/nprlib/genmsl/nprlib_genmsl_impl.mtlx", start: 383787, end: 384448 }, { filename: "/libraries/nprlib/genosl/nprlib_genosl_impl.mtlx", start: 384448, end: 385146 }, { filename: "/libraries/nprlib/nprlib_defs.mtlx", start: 385146, end: 387781 }, { filename: "/libraries/nprlib/nprlib_ng.mtlx", start: 387781, end: 392630 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_closure_type.glsl", start: 392630, end: 393047 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_environment_fis.glsl", start: 393047, end: 395841 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_environment_none.glsl", start: 395841, end: 396076 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_environment_prefilter.glsl", start: 396076, end: 397162 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_generate_albedo_table.glsl", start: 397162, end: 397534 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_generate_prefilter_env.glsl", start: 397534, end: 399881 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_microfacet.glsl", start: 399881, end: 402873 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_microfacet_diffuse.glsl", start: 402873, end: 410337 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_microfacet_sheen.glsl", start: 410337, end: 417090 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_microfacet_specular.glsl", start: 417090, end: 433540 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_shadow.glsl", start: 433540, end: 434296 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_transmission_opacity.glsl", start: 434296, end: 434467 }, { filename: "/libraries/pbrlib/genglsl/lib/mx_transmission_refract.glsl", start: 434467, end: 434978 }, { filename: "/libraries/pbrlib/genglsl/mx_add_bsdf.glsl", start: 434978, end: 435560 }, { filename: "/libraries/pbrlib/genglsl/mx_add_edf.glsl", start: 435560, end: 435700 }, { filename: "/libraries/pbrlib/genglsl/mx_anisotropic_vdf.glsl", start: 435700, end: 435928 }, { filename: "/libraries/pbrlib/genglsl/mx_artistic_ior.glsl", start: 435928, end: 436501 }, { filename: "/libraries/pbrlib/genglsl/mx_blackbody.glsl", start: 436501, end: 438237 }, { filename: "/libraries/pbrlib/genglsl/mx_burley_diffuse_bsdf.glsl", start: 438237, end: 439284 }, { filename: "/libraries/pbrlib/genglsl/mx_chiang_hair_bsdf.glsl", start: 439284, end: 448292 }, { filename: "/libraries/pbrlib/genglsl/mx_conductor_bsdf.glsl", start: 448292, end: 450049 }, { filename: "/libraries/pbrlib/genglsl/mx_dielectric_bsdf.glsl", start: 450049, end: 452691 }, { filename: "/libraries/pbrlib/genglsl/mx_displacement_float.glsl", start: 452691, end: 452836 }, { filename: "/libraries/pbrlib/genglsl/mx_displacement_vector3.glsl", start: 452836, end: 452976 }, { filename: "/libraries/pbrlib/genglsl/mx_generalized_schlick_bsdf.glsl", start: 452976, end: 456145 }, { filename: "/libraries/pbrlib/genglsl/mx_generalized_schlick_edf.glsl", start: 456145, end: 456657 }, { filename: "/libraries/pbrlib/genglsl/mx_layer_bsdf.glsl", start: 456657, end: 456907 }, { filename: "/libraries/pbrlib/genglsl/mx_layer_vdf.glsl", start: 456907, end: 457139 }, { filename: "/libraries/pbrlib/genglsl/mx_mix_bsdf.glsl", start: 457139, end: 457405 }, { filename: "/libraries/pbrlib/genglsl/mx_mix_edf.glsl", start: 457405, end: 457571 }, { filename: "/libraries/pbrlib/genglsl/mx_multiply_bsdf_color3.glsl", start: 457571, end: 457824 }, { filename: "/libraries/pbrlib/genglsl/mx_multiply_bsdf_float.glsl", start: 457824, end: 458082 }, { filename: "/libraries/pbrlib/genglsl/mx_multiply_edf_color3.glsl", start: 458082, end: 458235 }, { filename: "/libraries/pbrlib/genglsl/mx_multiply_edf_float.glsl", start: 458235, end: 458388 }, { filename: "/libraries/pbrlib/genglsl/mx_oren_nayar_diffuse_bsdf.glsl", start: 458388, end: 459763 }, { filename: "/libraries/pbrlib/genglsl/mx_roughness_anisotropy.glsl", start: 459763, end: 460208 }, { filename: "/libraries/pbrlib/genglsl/mx_roughness_dual.glsl", start: 460208, end: 460476 }, { filename: "/libraries/pbrlib/genglsl/mx_sheen_bsdf.glsl", start: 460476, end: 462562 }, { filename: "/libraries/pbrlib/genglsl/mx_subsurface_bsdf.glsl", start: 462562, end: 463615 }, { filename: "/libraries/pbrlib/genglsl/mx_translucent_bsdf.glsl", start: 463615, end: 464341 }, { filename: "/libraries/pbrlib/genglsl/mx_uniform_edf.glsl", start: 464341, end: 464549 }, { filename: "/libraries/pbrlib/genglsl/pbrlib_genglsl_impl.mtlx", start: 464549, end: 470654 }, { filename: "/libraries/pbrlib/genmdl/pbrlib_genmdl_impl.mtlx", start: 470654, end: 482039 }, { filename: "/libraries/pbrlib/genmsl/pbrlib_genmsl_impl.mtlx", start: 482039, end: 482306 }, { filename: "/libraries/pbrlib/genosl/lib/mx_microfacet.osl", start: 482306, end: 484038 }, { filename: "/libraries/pbrlib/genosl/mx_anisotropic_vdf.osl", start: 484038, end: 484409 }, { filename: "/libraries/pbrlib/genosl/mx_artistic_ior.osl", start: 484409, end: 485001 }, { filename: "/libraries/pbrlib/genosl/mx_blackbody.osl", start: 485001, end: 486773 }, { filename: "/libraries/pbrlib/genosl/mx_chiang_hair_bsdf.osl", start: 486773, end: 487465 }, { filename: "/libraries/pbrlib/genosl/mx_chiang_hair_roughness.osl", start: 487465, end: 487822 }, { filename: "/libraries/pbrlib/genosl/mx_dielectric_bsdf.osl", start: 487822, end: 488372 }, { filename: "/libraries/pbrlib/genosl/mx_generalized_schlick_bsdf.osl", start: 488372, end: 489011 }, { filename: "/libraries/pbrlib/genosl/mx_generalized_schlick_edf.osl", start: 489011, end: 489281 }, { filename: "/libraries/pbrlib/genosl/mx_roughness_anisotropy.osl", start: 489281, end: 489732 }, { filename: "/libraries/pbrlib/genosl/mx_roughness_dual.osl", start: 489732, end: 490028 }, { filename: "/libraries/pbrlib/genosl/mx_subsurface_bsdf.osl", start: 490028, end: 490356 }, { filename: "/libraries/pbrlib/genosl/mx_surface.osl", start: 490356, end: 490557 }, { filename: "/libraries/pbrlib/genosl/pbrlib_genosl_impl.mtlx", start: 490557, end: 496402 }, { filename: "/libraries/pbrlib/pbrlib_defs.mtlx", start: 496402, end: 520720 }, { filename: "/libraries/pbrlib/pbrlib_ng.mtlx", start: 520720, end: 521514 }, { filename: "/libraries/stdlib/genglsl/lib/mx_geometry.glsl", start: 521514, end: 522875 }, { filename: "/libraries/stdlib/genglsl/lib/mx_hextile.glsl", start: 522875, end: 527376 }, { filename: "/libraries/stdlib/genglsl/lib/mx_hsv.glsl", start: 527376, end: 530855 }, { filename: "/libraries/stdlib/genglsl/lib/mx_math.glsl", start: 530855, end: 531490 }, { filename: "/libraries/stdlib/genglsl/lib/mx_noise.glsl", start: 531490, end: 554429 }, { filename: "/libraries/stdlib/genglsl/lib/mx_transform_uv.glsl", start: 554429, end: 554545 }, { filename: "/libraries/stdlib/genglsl/lib/mx_transform_uv_vflip.glsl", start: 554545, end: 554681 }, { filename: "/libraries/stdlib/genglsl/mx_aastep.glsl", start: 554681, end: 554881 }, { filename: "/libraries/stdlib/genglsl/mx_burn_color3.glsl", start: 554881, end: 555166 }, { filename: "/libraries/stdlib/genglsl/mx_burn_color4.glsl", start: 555166, end: 555507 }, { filename: "/libraries/stdlib/genglsl/mx_burn_float.glsl", start: 555507, end: 555730 }, { filename: "/libraries/stdlib/genglsl/mx_cellnoise2d_float.glsl", start: 555730, end: 555867 }, { filename: "/libraries/stdlib/genglsl/mx_cellnoise3d_float.glsl", start: 555867, end: 556004 }, { filename: "/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix33.glsl", start: 556004, end: 556211 }, { filename: "/libraries/stdlib/genglsl/mx_creatematrix_vector3_matrix44.glsl", start: 556211, end: 556487 }, { filename: "/libraries/stdlib/genglsl/mx_creatematrix_vector4_matrix44.glsl", start: 556487, end: 556771 }, { filename: "/libraries/stdlib/genglsl/mx_disjointover_color4.glsl", start: 556771, end: 557365 }, { filename: "/libraries/stdlib/genglsl/mx_dodge_color3.glsl", start: 557365, end: 557655 }, { filename: "/libraries/stdlib/genglsl/mx_dodge_color4.glsl", start: 557655, end: 558004 }, { filename: "/libraries/stdlib/genglsl/mx_dodge_float.glsl", start: 558004, end: 558226 }, { filename: "/libraries/stdlib/genglsl/mx_fractal2d_float.glsl", start: 558226, end: 558498 }, { filename: "/libraries/stdlib/genglsl/mx_fractal2d_vector2.glsl", start: 558498, end: 558768 }, { filename: "/libraries/stdlib/genglsl/mx_fractal2d_vector3.glsl", start: 558768, end: 559038 }, { filename: "/libraries/stdlib/genglsl/mx_fractal2d_vector4.glsl", start: 559038, end: 559308 }, { filename: "/libraries/stdlib/genglsl/mx_fractal3d_float.glsl", start: 559308, end: 559580 }, { filename: "/libraries/stdlib/genglsl/mx_fractal3d_vector2.glsl", start: 559580, end: 559850 }, { filename: "/libraries/stdlib/genglsl/mx_fractal3d_vector3.glsl", start: 559850, end: 560120 }, { filename: "/libraries/stdlib/genglsl/mx_fractal3d_vector4.glsl", start: 560120, end: 560390 }, { filename: "/libraries/stdlib/genglsl/mx_heighttonormal_vector3.glsl", start: 560390, end: 561343 }, { filename: "/libraries/stdlib/genglsl/mx_hextiledimage.glsl", start: 561343, end: 564493 }, { filename: "/libraries/stdlib/genglsl/mx_hextilednormalmap.glsl", start: 564493, end: 566999 }, { filename: "/libraries/stdlib/genglsl/mx_hsvtorgb_color3.glsl", start: 566999, end: 567113 }, { filename: "/libraries/stdlib/genglsl/mx_hsvtorgb_color4.glsl", start: 567113, end: 567242 }, { filename: "/libraries/stdlib/genglsl/mx_image_color3.glsl", start: 567242, end: 567632 }, { filename: "/libraries/stdlib/genglsl/mx_image_color4.glsl", start: 567632, end: 568018 }, { filename: "/libraries/stdlib/genglsl/mx_image_float.glsl", start: 568018, end: 568407 }, { filename: "/libraries/stdlib/genglsl/mx_image_vector2.glsl", start: 568407, end: 568797 }, { filename: "/libraries/stdlib/genglsl/mx_image_vector3.glsl", start: 568797, end: 569188 }, { filename: "/libraries/stdlib/genglsl/mx_image_vector4.glsl", start: 569188, end: 569575 }, { filename: "/libraries/stdlib/genglsl/mx_luminance_color3.glsl", start: 569575, end: 569689 }, { filename: "/libraries/stdlib/genglsl/mx_luminance_color4.glsl", start: 569689, end: 569820 }, { filename: "/libraries/stdlib/genglsl/mx_mix_surfaceshader.glsl", start: 569820, end: 570054 }, { filename: "/libraries/stdlib/genglsl/mx_noise2d_float.glsl", start: 570054, end: 570264 }, { filename: "/libraries/stdlib/genglsl/mx_noise2d_vector2.glsl", start: 570264, end: 570475 }, { filename: "/libraries/stdlib/genglsl/mx_noise2d_vector3.glsl", start: 570475, end: 570683 }, { filename: "/libraries/stdlib/genglsl/mx_noise2d_vector4.glsl", start: 570683, end: 570958 }, { filename: "/libraries/stdlib/genglsl/mx_noise3d_float.glsl", start: 570958, end: 571168 }, { filename: "/libraries/stdlib/genglsl/mx_noise3d_vector2.glsl", start: 571168, end: 571379 }, { filename: "/libraries/stdlib/genglsl/mx_noise3d_vector3.glsl", start: 571379, end: 571587 }, { filename: "/libraries/stdlib/genglsl/mx_noise3d_vector4.glsl", start: 571587, end: 571866 }, { filename: "/libraries/stdlib/genglsl/mx_normalmap.glsl", start: 571866, end: 572364 }, { filename: "/libraries/stdlib/genglsl/mx_premult_color4.glsl", start: 572364, end: 572461 }, { filename: "/libraries/stdlib/genglsl/mx_ramplr_float.glsl", start: 572461, end: 572612 }, { filename: "/libraries/stdlib/genglsl/mx_ramplr_vector2.glsl", start: 572612, end: 572762 }, { filename: "/libraries/stdlib/genglsl/mx_ramplr_vector3.glsl", start: 572762, end: 572912 }, { filename: "/libraries/stdlib/genglsl/mx_ramplr_vector4.glsl", start: 572912, end: 573062 }, { filename: "/libraries/stdlib/genglsl/mx_ramptb_float.glsl", start: 573062, end: 573213 }, { filename: "/libraries/stdlib/genglsl/mx_ramptb_vector2.glsl", start: 573213, end: 573363 }, { filename: "/libraries/stdlib/genglsl/mx_ramptb_vector3.glsl", start: 573363, end: 573513 }, { filename: "/libraries/stdlib/genglsl/mx_ramptb_vector4.glsl", start: 573513, end: 573663 }, { filename: "/libraries/stdlib/genglsl/mx_rgbtohsv_color3.glsl", start: 573663, end: 573777 }, { filename: "/libraries/stdlib/genglsl/mx_rgbtohsv_color4.glsl", start: 573777, end: 573906 }, { filename: "/libraries/stdlib/genglsl/mx_rotate_vector2.glsl", start: 573906, end: 574164 }, { filename: "/libraries/stdlib/genglsl/mx_rotate_vector3.glsl", start: 574164, end: 575065 }, { filename: "/libraries/stdlib/genglsl/mx_smoothstep_float.glsl", start: 575065, end: 575290 }, { filename: "/libraries/stdlib/genglsl/mx_splitlr_float.glsl", start: 575290, end: 575483 }, { filename: "/libraries/stdlib/genglsl/mx_splitlr_vector2.glsl", start: 575483, end: 575675 }, { filename: "/libraries/stdlib/genglsl/mx_splitlr_vector3.glsl", start: 575675, end: 575867 }, { filename: "/libraries/stdlib/genglsl/mx_splitlr_vector4.glsl", start: 575867, end: 576059 }, { filename: "/libraries/stdlib/genglsl/mx_splittb_float.glsl", start: 576059, end: 576252 }, { filename: "/libraries/stdlib/genglsl/mx_splittb_vector2.glsl", start: 576252, end: 576444 }, { filename: "/libraries/stdlib/genglsl/mx_splittb_vector3.glsl", start: 576444, end: 576636 }, { filename: "/libraries/stdlib/genglsl/mx_splittb_vector4.glsl", start: 576636, end: 576828 }, { filename: "/libraries/stdlib/genglsl/mx_surface_unlit.glsl", start: 576828, end: 577120 }, { filename: "/libraries/stdlib/genglsl/mx_transformmatrix_vector2M3.glsl", start: 577120, end: 577261 }, { filename: "/libraries/stdlib/genglsl/mx_transformmatrix_vector3M4.glsl", start: 577261, end: 577403 }, { filename: "/libraries/stdlib/genglsl/mx_unpremult_color4.glsl", start: 577403, end: 577502 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise2d_float.glsl", start: 577502, end: 577686 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise2d_vector2.glsl", start: 577686, end: 577870 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise2d_vector3.glsl", start: 577870, end: 578054 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise3d_float.glsl", start: 578054, end: 578238 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise3d_vector2.glsl", start: 578238, end: 578422 }, { filename: "/libraries/stdlib/genglsl/mx_worleynoise3d_vector3.glsl", start: 578422, end: 578606 }, { filename: "/libraries/stdlib/genglsl/stdlib_genglsl_impl.mtlx", start: 578606, end: 655400 }, { filename: "/libraries/stdlib/genmdl/stdlib_genmdl_impl.mtlx", start: 655400, end: 749690 }, { filename: "/libraries/stdlib/genmsl/lib/mx_math.metal", start: 749690, end: 753979 }, { filename: "/libraries/stdlib/genmsl/lib/mx_matscalaroperators.metal", start: 753979, end: 754988 }, { filename: "/libraries/stdlib/genmsl/lib/mx_texture.metal", start: 754988, end: 755726 }, { filename: "/libraries/stdlib/genmsl/stdlib_genmsl_impl.mtlx", start: 755726, end: 765452 }, { filename: "/libraries/stdlib/genosl/include/color4.h", start: 765452, end: 771290 }, { filename: "/libraries/stdlib/genosl/include/matrix33.h", start: 771290, end: 773910 }, { filename: "/libraries/stdlib/genosl/include/mx_funcs.h", start: 773910, end: 795701 }, { filename: "/libraries/stdlib/genosl/include/vector2.h", start: 795701, end: 801367 }, { filename: "/libraries/stdlib/genosl/include/vector4.h", start: 801367, end: 810365 }, { filename: "/libraries/stdlib/genosl/lib/mx_transform_uv.osl", start: 810365, end: 810432 }, { filename: "/libraries/stdlib/genosl/lib/mx_transform_uv_vflip.osl", start: 810432, end: 810528 }, { filename: "/libraries/stdlib/genosl/lib/vector4_extra_ops.osl", start: 810528, end: 811402 }, { filename: "/libraries/stdlib/genosl/mx_burn_color3.osl", start: 811402, end: 811655 }, { filename: "/libraries/stdlib/genosl/mx_burn_color4.osl", start: 811655, end: 811993 }, { filename: "/libraries/stdlib/genosl/mx_burn_float.osl", start: 811993, end: 812210 }, { filename: "/libraries/stdlib/genosl/mx_cellnoise2d_float.osl", start: 812210, end: 812327 }, { filename: "/libraries/stdlib/genosl/mx_cellnoise3d_float.osl", start: 812327, end: 812429 }, { filename: "/libraries/stdlib/genosl/mx_creatematrix.osl", start: 812429, end: 813334 }, { filename: "/libraries/stdlib/genosl/mx_disjointover_color4.osl", start: 813334, end: 813912 }, { filename: "/libraries/stdlib/genosl/mx_dodge_color3.osl", start: 813912, end: 814170 }, { filename: "/libraries/stdlib/genosl/mx_dodge_color4.osl", start: 814170, end: 814517 }, { filename: "/libraries/stdlib/genosl/mx_dodge_float.osl", start: 814517, end: 814724 }, { filename: "/libraries/stdlib/genosl/mx_fractal2d_float.osl", start: 814724, end: 814970 }, { filename: "/libraries/stdlib/genosl/mx_fractal2d_vector2.osl", start: 814970, end: 815224 }, { filename: "/libraries/stdlib/genosl/mx_fractal2d_vector3.osl", start: 815224, end: 815475 }, { filename: "/libraries/stdlib/genosl/mx_fractal2d_vector4.osl", start: 815475, end: 815729 }, { filename: "/libraries/stdlib/genosl/mx_fractal3d_float.osl", start: 815729, end: 815960 }, { filename: "/libraries/stdlib/genosl/mx_fractal3d_vector2.osl", start: 815960, end: 816199 }, { filename: "/libraries/stdlib/genosl/mx_fractal3d_vector3.osl", start: 816199, end: 816435 }, { filename: "/libraries/stdlib/genosl/mx_fractal3d_vector4.osl", start: 816435, end: 816674 }, { filename: "/libraries/stdlib/genosl/mx_frame_float.osl", start: 816674, end: 816843 }, { filename: "/libraries/stdlib/genosl/mx_geomcolor_color3.osl", start: 816843, end: 816939 }, { filename: "/libraries/stdlib/genosl/mx_geomcolor_color4.osl", start: 816939, end: 817170 }, { filename: "/libraries/stdlib/genosl/mx_geomcolor_float.osl", start: 817170, end: 817265 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_boolean.osl", start: 817265, end: 817416 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_color3.osl", start: 817416, end: 817569 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_color4.osl", start: 817569, end: 817937 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_float.osl", start: 817937, end: 818111 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_integer.osl", start: 818111, end: 818262 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_string.osl", start: 818262, end: 818418 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_vector2.osl", start: 818418, end: 818684 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_vector3.osl", start: 818684, end: 818840 }, { filename: "/libraries/stdlib/genosl/mx_geompropvalue_vector4.osl", start: 818840, end: 819158 }, { filename: "/libraries/stdlib/genosl/mx_heighttonormal_vector3.osl", start: 819158, end: 820132 }, { filename: "/libraries/stdlib/genosl/mx_hsvtorgb_color3.osl", start: 820132, end: 820237 }, { filename: "/libraries/stdlib/genosl/mx_hsvtorgb_color4.osl", start: 820237, end: 820359 }, { filename: "/libraries/stdlib/genosl/mx_image_color3.osl", start: 820359, end: 821304 }, { filename: "/libraries/stdlib/genosl/mx_image_color4.osl", start: 821304, end: 822427 }, { filename: "/libraries/stdlib/genosl/mx_image_float.osl", start: 822427, end: 823290 }, { filename: "/libraries/stdlib/genosl/mx_image_vector2.osl", start: 823290, end: 824205 }, { filename: "/libraries/stdlib/genosl/mx_image_vector3.osl", start: 824205, end: 825023 }, { filename: "/libraries/stdlib/genosl/mx_image_vector4.osl", start: 825023, end: 826066 }, { filename: "/libraries/stdlib/genosl/mx_luminance_color3.osl", start: 826066, end: 826178 }, { filename: "/libraries/stdlib/genosl/mx_luminance_color4.osl", start: 826178, end: 826310 }, { filename: "/libraries/stdlib/genosl/mx_mix_surfaceshader.osl", start: 826310, end: 826552 }, { filename: "/libraries/stdlib/genosl/mx_noise2d_float.osl", start: 826552, end: 826746 }, { filename: "/libraries/stdlib/genosl/mx_noise2d_vector2.osl", start: 826746, end: 826951 }, { filename: "/libraries/stdlib/genosl/mx_noise2d_vector3.osl", start: 826951, end: 827150 }, { filename: "/libraries/stdlib/genosl/mx_noise2d_vector4.osl", start: 827150, end: 827355 }, { filename: "/libraries/stdlib/genosl/mx_noise3d_float.osl", start: 827355, end: 827534 }, { filename: "/libraries/stdlib/genosl/mx_noise3d_vector2.osl", start: 827534, end: 827724 }, { filename: "/libraries/stdlib/genosl/mx_noise3d_vector3.osl", start: 827724, end: 827908 }, { filename: "/libraries/stdlib/genosl/mx_noise3d_vector4.osl", start: 827908, end: 828098 }, { filename: "/libraries/stdlib/genosl/mx_normalmap.osl", start: 828098, end: 829010 }, { filename: "/libraries/stdlib/genosl/mx_premult_color4.osl", start: 829010, end: 829112 }, { filename: "/libraries/stdlib/genosl/mx_rgbtohsv_color3.osl", start: 829112, end: 829217 }, { filename: "/libraries/stdlib/genosl/mx_rgbtohsv_color4.osl", start: 829217, end: 829339 }, { filename: "/libraries/stdlib/genosl/mx_rotate_vector2.osl", start: 829339, end: 829600 }, { filename: "/libraries/stdlib/genosl/mx_rotate_vector3.osl", start: 829600, end: 830670 }, { filename: "/libraries/stdlib/genosl/mx_surface_unlit.osl", start: 830670, end: 831084 }, { filename: "/libraries/stdlib/genosl/mx_surfacematerial.osl", start: 831084, end: 831367 }, { filename: "/libraries/stdlib/genosl/mx_time_float.osl", start: 831367, end: 831545 }, { filename: "/libraries/stdlib/genosl/mx_transformmatrix_vector2M3.osl", start: 831545, end: 831731 }, { filename: "/libraries/stdlib/genosl/mx_unpremult_color4.osl", start: 831731, end: 831835 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise2d_float.osl", start: 831835, end: 831995 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise2d_vector2.osl", start: 831995, end: 832161 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise2d_vector3.osl", start: 832161, end: 832326 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise3d_float.osl", start: 832326, end: 832485 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise3d_vector2.osl", start: 832485, end: 832650 }, { filename: "/libraries/stdlib/genosl/mx_worleynoise3d_vector3.osl", start: 832650, end: 832814 }, { filename: "/libraries/stdlib/genosl/stdlib_genosl_impl.mtlx", start: 832814, end: 909860 }, { filename: "/libraries/stdlib/stdlib_defs.mtlx", start: 909860, end: 1187069 }, { filename: "/libraries/stdlib/stdlib_ng.mtlx", start: 1187069, end: 1509715 }, { filename: "/libraries/targets/essl.mtlx", start: 1509715, end: 1510177 }, { filename: "/libraries/targets/genglsl.mtlx", start: 1510177, end: 1510630 }, { filename: "/libraries/targets/genmdl.mtlx", start: 1510630, end: 1511082 }, { filename: "/libraries/targets/genmsl.mtlx", start: 1511082, end: 1511552 }, { filename: "/libraries/targets/genosl.mtlx", start: 1511552, end: 1512004 }], remote_package_size: 1512004 });
})();
var X = Object.assign({}, G), O = "./this.program", BA = (A, I) => {
throw I;
}, $ = "";
function IA(A) {
return G.locateFile ? G.locateFile(A, $) : $ + A;
}
var cA, CA;
if (H) {
var _ = require("fs");
require("path"), $ = __dirname + "/", CA = (A) => {
A = GI(A) ? new URL(A) : A;
var I = _.readFileSync(A);
return I;
}, cA = async (A, I = !0) => {
A = GI(A) ? new URL(A) : A;
var g = _.readFileSync(A, I ? void 0 : "utf8");
return g;
}, !G.thisProgram && process.argv.length > 1 && (O = process.argv[1].replace(/\\/g, "/")), process.argv.slice(2), BA = (A, I) => {
throw process.exitCode = A, I;
};
} else (s || U) && (U ? $ = self.location.href : typeof document < "u" && document.currentScript && ($ = document.currentScript.src), F && ($ = F), $.startsWith("blob:") ? $ = "" : $ = $.substr(0, $.replace(/[?#].*/, "").lastIndexOf("/") + 1), U && (CA = (A) => {
var I = new XMLHttpRequest();
return I.open("GET", A, !1), I.responseType = "arraybuffer", I.send(null), new Uint8Array(I.response);
}), cA = async (A) => {
if (GI(A))
return new Promise((g, B) => {
var Q = new XMLHttpRequest();
Q.open("GET", A, !0), Q.responseType = "arraybuffer", Q.onload = () => {
if (Q.status == 200 || Q.status == 0 && Q.response) {
g(Q.response);
return;
}
B(Q.status);
}, Q.onerror = B, Q.send(null);
});
var I = await fetch(A, { credentials: "same-origin" });
if (I.ok)
return I.arrayBuffer();
throw new Error(I.status + " : " + I.url);
});
var lA = G.print || console.log.bind(console), YA = G.printErr || console.error.bind(console);
Object.assign(G, X), X = null, G.arguments && G.arguments, G.thisProgram && (O = G.thisProgram);
var kA = G.wasmBinary, e, CI = !1, EI, oA, ZA, UA, zA, j, n, wg, xI;
function Ng() {
var A = e.buffer;
G.HEAP8 = oA = new Int8Array(A), G.HEAP16 = UA = new Int16Array(A), G.HEAPU8 = ZA = new Uint8Array(A), G.HEAPU16 = zA = new Uint16Array(A), G.HEAP32 = j = new Int32Array(A), G.HEAPU32 = n = new Uint32Array(A), G.HEAPF32 = wg = new Float32Array(A), G.HEAPF64 = xI = new Float64Array(A);
}
var lg = [], og = [], Jg = [];
function XB() {
if (G.preRun)
for (typeof G.preRun == "function" && (G.preRun = [G.preRun]); G.preRun.length; )
sB(G.preRun.shift());
uI(lg);
}
function kB() {
!G.noFSInit && !C.initialized && C.init(), C.ignorePermissions = !1, uI(og);
}
function dB() {
if (G.postRun)
for (typeof G.postRun == "function" && (G.postRun = [G.postRun]); G.postRun.length; )
mB(G.postRun.shift());
uI(Jg);
}
function sB(A) {
lg.unshift(A);
}
function KB(A) {
og.unshift(A);
}
function mB(A) {
Jg.unshift(A);
}
var mA = 0, eA = null;
function TI(A) {
mA++, G.monitorRunDependencies?.(mA);
}
function iI(A) {
if (mA--, G.monitorRunDependencies?.(mA), mA == 0 && eA) {
var I = eA;
eA = null, I();
}
}
function xA(A) {
G.onAbort?.(A), A = "Aborted(" + A + ")", YA(A), CI = !0, A += ". Build with -sASSERTIONS for more info.";
var I = new WebAssembly.RuntimeError(A);
throw M(I), I;
}
var VB = "data:application/octet-stream;base64,", Rg = (A) => A.startsWith(VB), GI = (A) => A.startsWith("file://");
function LB() {
var A = "JsMaterialXGenShader.wasm";
return Rg(A) ? A : IA(A);
}
var PI;
function jB(A) {
if (A == PI && kA)
return new Uint8Array(kA);
if (CA)
return CA(A);
throw "both async and sync fetching of the wasm failed";
}
async function xB(A) {
if (!kA)
try {
var I = await cA(A);
return new Uint8Array(I);
} catch {
}
return jB(A);
}
async function TB(A, I) {
try {
var g = await xB(A), B = await WebAssembly.instantiate(g, I);
return B;
} catch (Q) {
YA(`failed to asynchronously prepare wasm: ${Q}`), xA(Q);
}
}
async function PB(A, I, g) {
if (!A && typeof WebAssembly.instantiateStreaming == "function" && !Rg(I) && !GI(I) && !H && typeof fetch == "function")
try {
var B = fetch(I, { credentials: "same-origin" }), Q = await WebAssembly.instantiateStreaming(B, g);
return Q;
} catch (E) {
YA(`wasm streaming compile failed: ${E}`), YA("falling back to ArrayBuffer instantiation");
}
return TB(I, g);
}
function uB() {
return { a: YE };
}
async function vB() {
function A(Q, E) {
return GA = Q.exports, e = GA._a, Ng(), sg = GA.cb, KB(GA.$a), iI(), GA;
}
TI();
function I(Q) {
A(Q.instance);
}
var g = uB();
if (G.instantiateWasm)
try {
return G.instantiateWasm(g, A);
} catch (Q) {
YA(`Module.instantiateWasm callback failed with error: ${Q}`), M(Q);
}
PI ??= LB();
try {
var B = await PB(kA, PI, g);
return I(B), B;
} catch (Q) {
M(Q);
return;
}
}
var k, iA, fB = { 189824: () => {
G.TreeIterator.prototype[Symbol.iterator] = function() {
return this;
};
}, 189908: () => {
G.GraphIterator.prototype[Symbol.iterator] = function() {
return this;
};
}, 189993: () => {
G.InheritanceIterator.prototype[Symbol.iterator] = function() {
return this;
};
} };
class Zg {
name = "ExitStatus";
constructor(I) {
this.message = `Program terminated with exit(${I})`, this.status = I;
}
}
var uI = (A) => {
for (; A.length > 0; )
A.shift()(G);
}, bg = G.noExitRuntime || !0, v = (A) => zg(A), f = () => eg(), hg = typeof TextDecoder < "u" ? new TextDecoder() : void 0, TA = (A, I = 0, g = NaN) => {
for (var B = I + g, Q = I; A[Q] && !(Q >= B); ) ++Q;
if (Q - I > 16 && A.buffer && hg)
return hg.decode(A.subarray(I, Q));
for (var E = ""; I < Q; ) {
var i = A[I++];
if (!(i & 128)) {
E += String.fromCharCode(i);
continue;
}
var D = A[I++] & 63;
if ((i & 224) == 192) {
E += String.fromCharCode((i & 31) << 6 | D);
continue;
}
var Y = A[I++] & 63;
if ((i & 240) == 224 ? i = (i & 15) << 12 | D << 6 | Y : i = (i & 7) << 18 | D << 12 | Y << 6 | A[I++] & 63, i < 65536)
E += String.fromCharCode(i);
else {
var N = i - 65536;
E += String.fromCharCode(55296 | N >> 10, 56320 | N & 1023);
}
}
return E;
}, rA = (A, I) => A ? TA(ZA, A, I) : "", tB = (A, I, g, B) => xA(`Assertion failed: ${rA(A)}, at: ` + [I ? rA(I) : "unknown filename", g, B ? rA(B) : "unknown function"]), DI = [], YI = 0, pB = (A) => {
var I = new vI(A);
return I.get_caught() || (I.set_caught(!0), YI--), I.set_rethrown(!1), DI.push(I), Og(A), $g(A);
}, SA = 0, nB = () => {
T(0, 0);
var A = DI.pop();
rg(A.excPtr), SA = 0;
};
class vI {
constructor(I) {
this.excPtr = I, this.ptr = I - 24;
}
set_type(I) {
n[this.ptr + 4 >> 2] = I;
}
get_type() {
return n[this.ptr + 4 >> 2];
}
set_destructor(I) {
n[this.ptr + 8 >> 2] = I;
}
get_destructor() {
return n[this.ptr + 8 >> 2];
}
set_caught(I) {
I = I ? 1 : 0, oA[this.ptr + 12] = I;
}
get_caught() {
return oA[this.ptr + 12] != 0;
}
set_rethrown(I) {
I = I ? 1 : 0, oA[this.ptr + 13] = I;
}
get_rethrown() {
return oA[this.ptr + 13] != 0;
}
init(I, g) {
this.set_adjusted_ptr(0), this.set_type(I), this.set_destructor(g);
}
set_adjusted_ptr(I) {
n[this.ptr + 16 >> 2] = I;
}
get_adjusted_ptr() {
return n[this.ptr + 16 >> 2];
}
}
var qB = (A) => {
throw SA || (SA = A), SA;
}, wI = (A) => qg(A), fI = (A) => {
var I = SA;
if (!I)
return wI(0), 0;
var g = new vI(I);
g.set_adjusted_ptr(I);
var B = g.get_type();
if (!B)
return wI(0), I;
for (var Q of A) {
if (Q === 0 || Q === B)
break;
var E = g.ptr + 16;
if (_g(Q, B, E))
return wI(Q), I;
}
return wI(B), I;
}, zB = () => fI([]), eB = (A) => fI([A]), rB = (A, I) => fI([A, I]), OB = () => {
var A = DI.pop();
A || xA("no exception to throw");
var I = A.excPtr;
throw A.get_rethrown() || (DI.push(A), A.set_rethrown(!0), A.set_caught(!1), YI++), SA = I, SA;
}, _B = (A, I, g) => {
var B = new vI(A);
throw B.init(I, g), SA = A, YI++, SA;
}, $B = () => YI, NI = () => {
var A = j[+RA.varargs >> 2];
return RA.varargs += 4, A;
}, PA = NI, gA = { isAbs: (A) => A.charAt(0) === "/", splitPath: (A) => {
var I = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
return I.exec(A).slice(1);
}, normalizeArray: (A, I) => {
for (var g = 0, B = A.length - 1; B >= 0; B--) {
var Q = A[B];
Q === "." ? A.splice(B, 1) : Q === ".." ? (A.splice(B, 1), g++) : g && (A.splice(B, 1), g--);
}
if (I)
for (; g; g--)
A.unshift("..");
return A;
}, normalize: (A) => {
var I = gA.isAbs(A), g = A.substr(-1) === "/";
return A = gA.normalizeArray(A.split("/").filter((B) => !!B), !I).join("/"), !A && !I && (A = "."), A && g && (A += "/"), (I ? "/" : "") + A;
}, dirname: (A) => {
var I = gA.splitPath(A), g = I[0], B = I[1];
return !g && !B ? "." : (B && (B = B.substr(0, B.length - 1)), g + B);
}, basename: (A) => {
if (A === "/") return "/";
A = gA.normalize(A), A = A.replace(/\/$/, "");
var I = A.lastIndexOf("/");
return I === -1 ? A : A.substr(I + 1);
}, join: (...A) => gA.normalize(A.join("/")), join2: (A, I) => gA.normalize(A + "/" + I) }, AQ = () => {
if (typeof crypto == "object" && typeof crypto.getRandomValues == "function")
return (B) => crypto.getRandomValues(B);
if (H)
try {
var A = require("crypto"), I = A.randomFillSync;
if (I)
return (B) => A.randomFillSync(B);
var g = A.randomBytes;
return (B) => (B.set(g(B.byteLength)), B);
} catch {
}
xA("initRandomDevice");
}, cg = (A) => (cg = AQ())(A), uA = { resolve: (...A) => {
for (var I = "", g = !1, B = A.length - 1; B >= -1 && !g; B--) {
var Q = B >= 0 ? A[B] : C.cwd();
if (typeof Q != "string")
throw new TypeError("Arguments to path.resolve must be strings");
if (!Q)
return "";
I = Q + "/" + I, g = gA.isAbs(Q);
}
return I = gA.normalizeArray(I.split("/").filter((E) => !!E), !g).join("/"), (g ? "/" : "") + I || ".";
}, relative: (A, I) => {
A = uA.resolve(A).substr(1), I = uA.resolve(I).substr(1);
function g(N) {
for (var l = 0; l < N.length && N[l] === ""; l++)
;
for (var R = N.length - 1; R >= 0 && N[R] === ""; R--)
;
return l > R ? [] : N.slice(l, R - l + 1);
}
for (var B = g(A.split("/")), Q = g(I.split("/")), E = Math.min(B.length, Q.length), i = E, D = 0; D < E; D++)
if (B[D] !== Q[D]) {
i = D;
break;
}
for (var Y = [], D = i; D < B.length; D++)
Y.push("..");
return Y = Y.concat(Q.slice(i)), Y.join("/");
} }, tI = [], pI = (A) => {
for (var I = 0, g = 0; g < A.length; ++g) {
var B = A.charCodeAt(g);
B <= 127 ? I++ : B <= 2047 ? I += 2 : B >= 55296 && B <= 57343 ? (I += 4, ++g) : I += 3;
}
return I;
}, nI = (A, I, g, B) => {
if (!(B > 0)) return 0;
for (var Q = g, E = g + B - 1, i = 0; i < A.length; ++i) {
var D = A.charCodeAt(i);
if (D >= 55296 && D <= 57343) {
var Y = A.charCodeAt(++i);
D = 65536 + ((D & 1023) << 10) | Y & 1023;
}
if (D <= 127) {
if (g >= E) break;
I[g++] = D;
} else if (D <= 2047) {
if (g + 1 >= E) break;
I[g++] = 192 | D >> 6, I[g++] = 128 | D & 63;
} else if (D <= 65535) {
if (g + 2 >= E) break;
I[g++] = 224 | D >> 12, I[g++] = 128 | D >> 6 & 63, I[g++] = 128 | D & 63;
} else {
if (g + 3 >= E) break;
I[g++] = 240 | D >> 18, I[g++] = 128 | D >> 12 & 63, I[g++] = 128 | D >> 6 & 63, I[g++] = 128 | D & 63;
}
}
return I[g] = 0, g - Q;
};
function Fg(A, I, g) {
var B = pI(A) + 1, Q = new Array(B), E = nI(A, Q, 0, Q.length);
return Q.length = E, Q;
}
var IQ = () => {
if (!tI.length) {
var A = null;
if (H) {
var I = 256, g = Buffer.alloc(I), B = 0, Q = process.stdin.fd;
try {
B = _.readSync(Q, g, 0, I);
} catch (E) {
if (E.toString().includes("EOF")) B = 0;
else throw E;
}
B > 0 && (A = g.slice(0, B).toString("utf-8"));
} else typeof window < "u" && typeof window.prompt == "function" && (A = window.prompt("Input: "), A !== null && (A += `
`));
if (!A)
return null;
tI = Fg(A);
}
return tI.shift();
}, VA = { ttys: [], init() {
}, shutdown() {
}, register(A, I) {
VA.ttys[A] = { input: [], output: [], ops: I }, C.registerDevice(A, VA.stream_ops);
}, stream_ops: { open(A) {
var I = VA.ttys[A.node.rdev];
if (!I)
throw new C.ErrnoError(43);
A.tty = I, A.seekable = !1;
}, close(A) {
A.tty.ops.fsync(A.tty);
}, fsync(A) {
A.tty.ops.fsync(A.tty);
}, read(A, I, g, B, Q) {
if (!A.tty || !A.tty.ops.get_char)
throw new C.ErrnoError(60);
for (var E = 0, i = 0; i < B; i++) {
var D;
try {
D = A.tty.ops.get_char(A.tty);
} catch {
throw new C.ErrnoError(29);
}
if (D === void 0 && E === 0)
throw new C.ErrnoError(6);
if (D == null) break;
E++, I[g + i] = D;
}
return E && (A.node.atime = Date.now()), E;
}, write(A, I, g, B, Q) {
if (!A.tty || !A.tty.ops.put_char)
throw new C.ErrnoError(60);
try {
for (var E = 0; E < B; E++)
A.tty.ops.put_char(A.tty, I[g + E]);
} catch {
throw new C.ErrnoError(29);
}
return B && (A.node.mtime = A.node.ctime = Date.now()), E;
} }, default_tty_ops: { get_char(A) {
return IQ();
}, put_char(A, I) {
I === null || I === 10 ? (lA(TA(A.output)), A.output = []) : I != 0 && A.output.push(I);
}, fsync(A) {
A.output && A.output.length > 0 && (lA(TA(A.output)), A.output = []);
}, ioctl_tcgets(A) {
return { 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(A, I, g) {
return 0;
}, ioctl_tiocgwinsz(A) {
return [24, 80];
} }, default_tty1_ops: { put_char(A, I) {
I === null || I === 10 ? (YA(TA(A.output)), A.output = []) : I != 0 && A.output.push(I);
}, fsync(A) {
A.output && A.output.length > 0 && (YA(TA(A.output)), A.output = []);
} } }, gQ = (A, I) => Math.ceil(A / I) * I, Ug = (A) => {
xA();
}, m = { ops_table: null, mount(A) {
return m.createNode(null, "/", 16895, 0);
}, createNode(A, I, g, B) {
if (C.isBlkdev(g) || C.isFIFO(g))
throw new C.ErrnoError(63);
m.ops_table ||= { dir: { node: { getattr: m.node_ops.getattr, setattr: m.node_ops.setattr, lookup: m.node_ops.lookup, mknod: m.node_ops.mknod, rename: m.node_ops.rename, unlink: m.node_ops.unlink, rmdir: m.node_ops.rmdir, readdir: m.node_ops.readdir, symlink: m.node_ops.symlink }, stream: { llseek: m.stream_ops.llseek } }, file: { node: { getattr: m.node_ops.getattr, setattr: m.node_ops.setattr }, stream: { llseek: m.stream_ops.llseek, read: m.stream_ops.read, write: m.stream_ops.write, allocate: m.stream_ops.allocate, mmap: m.stream_ops.mmap, msync: m.stream_ops.msync } }, link: { node: { getattr: m.node_ops.getattr, setattr: m.node_ops.setattr, readlink: m.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: m.node_ops.getattr, setatt