UNPKG

@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.

544 lines • 7.44 MB
import { Texture as mI, WebGLRenderTarget as $E, RepeatWrapping as ig, LinearFilter as MB, LinearMipMapLinearFilter as HB, FloatType as AG, RGBAFormat as IG, PlaneGeometry as JB, OrthographicCamera as gG, ShaderMaterial as FB, Scene as BG, Mesh as Dg, EquirectangularReflectionMapping as CG, Vector3 as eA, Quaternion as QG, Color as EG, Uniform$1 as GG, LinearSRGBColorSpace as iG, Cache as KA, MirroredRepeatWrapping as DG, ClampToEdgeWrapping as YG, NearestMipMapNearestFilter as NG, NearestFilter as hG, MeshBasicMaterial as wG, PMREMGenerator$1 as oG, cloneUniforms as RG, cloneUniformsGroups as ZG, GLSL3 as bG, Matrix4 as cI, UniformsLib as SG, Matrix3 as MG, MeshStandardMaterial as yI, DoubleSide as HG, FrontSide as JG } from "./three.js"; import "./three-examples.js"; var dI = (function() { var J = typeof document < "u" ? document.currentScript?.src : void 0; return typeof __filename < "u" && (J = J || __filename), (function(N) { N = N || {}; var R, D = N, H, l, M = new Promise((A, I) => { H = A, l = I; }), L = typeof window == "object", F = typeof WorkerGlobalScope < "u", s = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string" && process.type != "renderer"; D.expectedDataFileDownloads ??= 0, D.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(C) { 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", G = "JsMaterialXGenShader.data", i = D.locateFile ? D.locateFile(G, "") : G, Y = C.remote_package_size; function h(o, d, f, K) { if (g) { require("fs").readFile(o, (X, z) => { X ? K(X) : f(z.buffer); }); return; } D.dataFileDownloads ??= {}, fetch(o).catch((X) => Promise.reject(new Error(`Network Error: ${o}`, { cause: X }))).then((X) => { if (!X.ok) return Promise.reject(new Error(`${X.status}: ${X.url}`)); if (!X.body && X.arrayBuffer) return X.arrayBuffer().then(f); const z = X.body.getReader(), BA = () => z.read().then(a).catch((c) => Promise.reject(new Error(`Unexpected error while handling : ${X.url} ${c}`, { cause: c }))), _ = [], NA = X.headers, U = Number(NA.get("Content-Length") ?? d); let k = 0; const a = ({ done: c, value: V }) => { if (c) { const AA = new Uint8Array(_.map((P) => P.length).reduce((P, RA) => P + RA, 0)); let CA = 0; for (const P of _) AA.set(P, CA), CA += P.length; f(AA.buffer); } else { _.push(V), k += V.length, D.dataFileDownloads[o] = { loaded: k, total: U }; let AA = 0, CA = 0; for (const P of Object.values(D.dataFileDownloads)) AA += P.loaded, CA += P.total; return D.setStatus?.(`Downloading data... (${AA}/${CA})`), BA(); } }; return D.setStatus?.("Downloading data..."), BA(); }); } function w(o) { console.error("package error:", o); } var Z = null, b = D.getPreloadedPackage ? D.getPreloadedPackage(i, Y) : null; b || h(i, Y, (o) => { Z ? (Z(o), Z = null) : b = o; }, w); function S(o) { function d(BA, _) { if (!BA) throw _ + 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 f(BA, _, NA) { this.start = BA, this.end = _, this.audio = NA; } f.prototype = { requests: {}, open: function(BA, _) { this.name = _, this.requests[_] = this, o.addRunDependency(`fp ${this.name}`); }, send: function() { }, onload: function() { var BA = this.byteArray.subarray(this.start, this.end); this.finish(BA); }, finish: function(BA) { var _ = this; o.FS_createDataFile(this.name, null, BA, !0, !0, !0), o.removeRunDependency(`fp ${_.name}`), this.requests[this.name] = null; } }; for (var K = C.files, X = 0; X < K.length; ++X) new f(K[X].start, K[X].end, K[X].audio || 0).open("GET", K[X].filename); function z(BA) { d(BA, "Loading data file failed."), d(BA.constructor.name === ArrayBuffer.name, "bad input to processPackageData"); var _ = new Uint8Array(BA); f.prototype.byteArray = _; for (var NA = C.files, U = 0; U < NA.length; ++U) f.prototype.requests[NA[U].filename].onload(); o.removeRunDependency("datafile_bin/JsMaterialXGenShader.data"); } o.addRunDependency("datafile_bin/JsMaterialXGenShader.data"), o.preloadResults ??= {}, o.preloadResults[E] = { fromCache: !1 }, b ? (z(b), b = null) : Z = z; } D.calledRun ? S(D) : (D.preRun ??= []).push(S); } 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 W = Object.assign({}, D), $ = "./this.program", gA = (A, I) => { throw I; }, t = ""; function e(A) { return D.locateFile ? D.locateFile(A, t) : t + A; } var wA, lA; if (s) { var UA = require("fs"); require("path"), t = __dirname + "/", lA = (A) => { A = iI(A) ? new URL(A) : A; var I = UA.readFileSync(A); return I; }, wA = async (A, I = !0) => { A = iI(A) ? new URL(A) : A; var g = UA.readFileSync(A, I ? void 0 : "utf8"); return g; }, !D.thisProgram && process.argv.length > 1 && ($ = process.argv[1].replace(/\\/g, "/")), process.argv.slice(2), gA = (A, I) => { throw process.exitCode = A, I; }; } else (L || F) && (F ? t = self.location.href : typeof document < "u" && document.currentScript && (t = document.currentScript.src), J && (t = J), t.startsWith("blob:") ? t = "" : t = t.substr(0, t.replace(/[?#].*/, "").lastIndexOf("/") + 1), F && (lA = (A) => { var I = new XMLHttpRequest(); return I.open("GET", A, !1), I.responseType = "arraybuffer", I.send(null), new Uint8Array(I.response); }), wA = async (A) => { if (iI(A)) return new Promise((g, B) => { var C = new XMLHttpRequest(); C.open("GET", A, !0), C.responseType = "arraybuffer", C.onload = () => { if (C.status == 200 || C.status == 0 && C.response) { g(C.response); return; } B(C.status); }, C.onerror = B, C.send(null); }); var I = await fetch(A, { credentials: "same-origin" }); if (I.ok) return I.arrayBuffer(); throw new Error(I.status + " : " + I.url); }); var kA = D.print || console.log.bind(console), bA = D.printErr || console.error.bind(console); Object.assign(D, W), W = null, D.arguments && D.arguments, D.thisProgram && ($ = D.thisProgram); var mA = D.wasmBinary, XA, jA = !1, O, YA, oA, MA, rA, T, n, Ng, fI; function hg() { var A = XA.buffer; D.HEAP8 = YA = new Int8Array(A), D.HEAP16 = MA = new Int16Array(A), D.HEAPU8 = oA = new Uint8Array(A), D.HEAPU16 = rA = new Uint16Array(A), D.HEAP32 = T = new Int32Array(A), D.HEAPU32 = n = new Uint32Array(A), D.HEAPF32 = Ng = new Float32Array(A), D.HEAPF64 = fI = new Float64Array(A); } var wg = [], og = [], Rg = []; function yB() { if (D.preRun) for (typeof D.preRun == "function" && (D.preRun = [D.preRun]); D.preRun.length; ) KB(D.preRun.shift()); PI(wg); } function dB() { !D.noFSInit && !Q.initialized && Q.init(), Q.ignorePermissions = !1, PI(og); } function sB() { if (D.postRun) for (typeof D.postRun == "function" && (D.postRun = [D.postRun]); D.postRun.length; ) XB(D.postRun.shift()); PI(Rg); } function KB(A) { wg.unshift(A); } function mB(A) { og.unshift(A); } function XB(A) { Rg.unshift(A); } var VA = 0, OA = null; function jI(A) { VA++, D.monitorRunDependencies?.(VA); } function GI(A) { if (VA--, D.monitorRunDependencies?.(VA), VA == 0 && OA) { var I = OA; OA = null, I(); } } function xA(A) { D.onAbort?.(A), A = "Aborted(" + A + ")", bA(A), jA = !0, A += ". Build with -sASSERTIONS for more info."; var I = new WebAssembly.RuntimeError(A); throw l(I), I; } var VB = "data:application/octet-stream;base64,", Zg = (A) => A.startsWith(VB), iI = (A) => A.startsWith("file://"); function LB() { var A = "JsMaterialXGenShader.wasm"; return Zg(A) ? A : e(A); } var xI; function TB(A) { if (A == xI && mA) return new Uint8Array(mA); if (lA) return lA(A); throw "both async and sync fetching of the wasm failed"; } async function fB(A) { if (!mA) try { var I = await wA(A); return new Uint8Array(I); } catch { } return TB(A); } async function jB(A, I) { try { var g = await fB(A), B = await WebAssembly.instantiate(g, I); return B; } catch (C) { bA(`failed to asynchronously prepare wasm: ${C}`), xA(C); } } async function xB(A, I, g) { if (!A && typeof WebAssembly.instantiateStreaming == "function" && !Zg(I) && !iI(I) && !s && typeof fetch == "function") try { var B = fetch(I, { credentials: "same-origin" }), C = await WebAssembly.instantiateStreaming(B, g); return C; } catch (E) { bA(`wasm streaming compile failed: ${E}`), bA("falling back to ArrayBuffer instantiation"); } return jB(I, g); } function PB() { return { a: YE }; } async function uB() { function A(C, E) { return EA = C.exports, XA = EA._a, hg(), Kg = EA.cb, mB(EA.$a), GI(), EA; } jI(); function I(C) { A(C.instance); } var g = PB(); if (D.instantiateWasm) try { return D.instantiateWasm(g, A); } catch (C) { bA(`Module.instantiateWasm callback failed with error: ${C}`), l(C); } xI ??= LB(); try { var B = await xB(mA, xI, g); return I(B), B; } catch (C) { l(C); return; } } var y, QA, vB = { 188048: () => { D.TreeIterator.prototype[Symbol.iterator] = function() { return this; }; }, 188132: () => { D.GraphIterator.prototype[Symbol.iterator] = function() { return this; }; }, 188217: () => { D.InheritanceIterator.prototype[Symbol.iterator] = function() { return this; }; } }; class bg { name = "ExitStatus"; constructor(I) { this.message = `Program terminated with exit(${I})`, this.status = I; } } var PI = (A) => { for (; A.length > 0; ) A.shift()(D); }, Sg = D.noExitRuntime || !0, u = (A) => qg(A), v = () => eg(), Mg = typeof TextDecoder < "u" ? new TextDecoder() : void 0, PA = (A, I = 0, g = NaN) => { for (var B = I + g, C = I; A[C] && !(C >= B); ) ++C; if (C - I > 16 && A.buffer && Mg) return Mg.decode(A.subarray(I, C)); for (var E = ""; I < C; ) { var G = A[I++]; if (!(G & 128)) { E += String.fromCharCode(G); continue; } var i = A[I++] & 63; if ((G & 224) == 192) { E += String.fromCharCode((G & 31) << 6 | i); continue; } var Y = A[I++] & 63; if ((G & 240) == 224 ? G = (G & 15) << 12 | i << 6 | Y : G = (G & 7) << 18 | i << 12 | Y << 6 | A[I++] & 63, G < 65536) E += String.fromCharCode(G); else { var h = G - 65536; E += String.fromCharCode(55296 | h >> 10, 56320 | h & 1023); } } return E; }, _A = (A, I) => A ? PA(oA, A, I) : "", tB = (A, I, g, B) => xA(`Assertion failed: ${_A(A)}, at: ` + [I ? _A(I) : "unknown filename", g, B ? _A(B) : "unknown function"]), DI = [], YI = 0, pB = (A) => { var I = new uI(A); return I.get_caught() || (I.set_caught(!0), YI--), I.set_rethrown(!1), DI.push(I), Og(A), $g(A); }, aA = 0, nB = () => { j(0, 0); var A = DI.pop(); rg(A.excPtr), aA = 0; }; class uI { 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, YA[this.ptr + 12] = I; } get_caught() { return YA[this.ptr + 12] != 0; } set_rethrown(I) { I = I ? 1 : 0, YA[this.ptr + 13] = I; } get_rethrown() { return YA[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 zB = (A) => { throw aA || (aA = A), aA; }, NI = (A) => zg(A), vI = (A) => { var I = aA; if (!I) return NI(0), 0; var g = new uI(I); g.set_adjusted_ptr(I); var B = g.get_type(); if (!B) return NI(0), I; for (var C of A) { if (C === 0 || C === B) break; var E = g.ptr + 16; if (_g(C, B, E)) return NI(C), I; } return NI(B), I; }, qB = () => vI([]), eB = (A) => vI([A]), rB = (A, I) => vI([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++), aA = I, aA; }, _B = (A, I, g) => { var B = new uI(A); throw B.init(I, g), aA = A, YI++, aA; }, $B = () => YI, hI = () => { var A = T[+hA.varargs >> 2]; return hA.varargs += 4, A; }, uA = hI, IA = { 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 C = A[B]; C === "." ? A.splice(B, 1) : C === ".." ? (A.splice(B, 1), g++) : g && (A.splice(B, 1), g--); } if (I) for (; g; g--) A.unshift(".."); return A; }, normalize: (A) => { var I = IA.isAbs(A), g = A.substr(-1) === "/"; return A = IA.normalizeArray(A.split("/").filter((B) => !!B), !I).join("/"), !A && !I && (A = "."), A && g && (A += "/"), (I ? "/" : "") + A; }, dirname: (A) => { var I = IA.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 = IA.normalize(A), A = A.replace(/\/$/, ""); var I = A.lastIndexOf("/"); return I === -1 ? A : A.substr(I + 1); }, join: (...A) => IA.normalize(A.join("/")), join2: (A, I) => IA.normalize(A + "/" + I) }, AC = () => { if (typeof crypto == "object" && typeof crypto.getRandomValues == "function") return (B) => crypto.getRandomValues(B); if (s) 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"); }, Hg = (A) => (Hg = AC())(A), vA = { resolve: (...A) => { for (var I = "", g = !1, B = A.length - 1; B >= -1 && !g; B--) { var C = B >= 0 ? A[B] : Q.cwd(); if (typeof C != "string") throw new TypeError("Arguments to path.resolve must be strings"); if (!C) return ""; I = C + "/" + I, g = IA.isAbs(C); } return I = IA.normalizeArray(I.split("/").filter((E) => !!E), !g).join("/"), (g ? "/" : "") + I || "."; }, relative: (A, I) => { A = vA.resolve(A).substr(1), I = vA.resolve(I).substr(1); function g(h) { for (var w = 0; w < h.length && h[w] === ""; w++) ; for (var Z = h.length - 1; Z >= 0 && h[Z] === ""; Z--) ; return w > Z ? [] : h.slice(w, Z - w + 1); } for (var B = g(A.split("/")), C = g(I.split("/")), E = Math.min(B.length, C.length), G = E, i = 0; i < E; i++) if (B[i] !== C[i]) { G = i; break; } for (var Y = [], i = G; i < B.length; i++) Y.push(".."); return Y = Y.concat(C.slice(G)), 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 C = g, E = g + B - 1, G = 0; G < A.length; ++G) { var i = A.charCodeAt(G); if (i >= 55296 && i <= 57343) { var Y = A.charCodeAt(++G); i = 65536 + ((i & 1023) << 10) | Y & 1023; } if (i <= 127) { if (g >= E) break; I[g++] = i; } else if (i <= 2047) { if (g + 1 >= E) break; I[g++] = 192 | i >> 6, I[g++] = 128 | i & 63; } else if (i <= 65535) { if (g + 2 >= E) break; I[g++] = 224 | i >> 12, I[g++] = 128 | i >> 6 & 63, I[g++] = 128 | i & 63; } else { if (g + 3 >= E) break; I[g++] = 240 | i >> 18, I[g++] = 128 | i >> 12 & 63, I[g++] = 128 | i >> 6 & 63, I[g++] = 128 | i & 63; } } return I[g] = 0, g - C; }; function Jg(A, I, g) { var B = pI(A) + 1, C = new Array(B), E = nI(A, C, 0, C.length); return C.length = E, C; } var IC = () => { if (!tI.length) { var A = null; if (s) { var I = 256, g = Buffer.alloc(I), B = 0, C = process.stdin.fd; try { B = UA.readSync(C, 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 = Jg(A); } return tI.shift(); }, LA = { ttys: [], init() { }, shutdown() { }, register(A, I) { LA.ttys[A] = { input: [], output: [], ops: I }, Q.registerDevice(A, LA.stream_ops); }, stream_ops: { open(A) { var I = LA.ttys[A.node.rdev]; if (!I) throw new Q.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, C) { if (!A.tty || !A.tty.ops.get_char) throw new Q.ErrnoError(60); for (var E = 0, G = 0; G < B; G++) { var i; try { i = A.tty.ops.get_char(A.tty); } catch { throw new Q.ErrnoError(29); } if (i === void 0 && E === 0) throw new Q.ErrnoError(6); if (i == null) break; E++, I[g + G] = i; } return E && (A.node.atime = Date.now()), E; }, write(A, I, g, B, C) { if (!A.tty || !A.tty.ops.put_char) throw new Q.ErrnoError(60); try { for (var E = 0; E < B; E++) A.tty.ops.put_char(A.tty, I[g + E]); } catch { throw new Q.ErrnoError(29); } return B && (A.node.mtime = A.node.ctime = Date.now()), E; } }, default_tty_ops: { get_char(A) { return IC(); }, put_char(A, I) { I === null || I === 10 ? (kA(PA(A.output)), A.output = []) : I != 0 && A.output.push(I); }, fsync(A) { A.output && A.output.length > 0 && (kA(PA(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 ? (bA(PA(A.output)), A.output = []) : I != 0 && A.output.push(I); }, fsync(A) { A.output && A.output.length > 0 && (bA(PA(A.output)), A.output = []); } } }, gC = (A, I) => Math.ceil(A / I) * I, Fg = (A) => { xA(); }, m = { ops_table: null, mount(A) { return m.createNode(null, "/", 16895, 0); }, createNode(A, I, g, B) { if (Q.isBlkdev(g) || Q.isFIFO(g)) throw new Q.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: { g