From bf540f84c24b325dec1a30f561b92ff22499da63 Mon Sep 17 00:00:00 2001 From: Universe Date: Sun, 19 Oct 2025 16:05:37 +0900 Subject: [PATCH 01/38] wip layout --- crates/grida-canvas/CHANGELOG.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/crates/grida-canvas/CHANGELOG.md b/crates/grida-canvas/CHANGELOG.md index 52ce74a16b..dbc0429ef4 100644 --- a/crates/grida-canvas/CHANGELOG.md +++ b/crates/grida-canvas/CHANGELOG.md @@ -4,6 +4,16 @@ All notable changes to the grida-canvas crate will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +## [0.0.0-local.2] - 2025-10-19 + +### Added (WIP) + +- layout pipeline +- container padding property +- container layout_mode property + + + ## [0.0.0-local.1] - 2025-10-16 ### Added From e599792db3f661511e62273734731967e2c8f433 Mon Sep 17 00:00:00 2001 From: Universe Date: Sun, 19 Oct 2025 16:47:24 +0900 Subject: [PATCH 02/38] chore --- editor/target/rust-analyzer/flycheck0/stderr | 1 - editor/target/rust-analyzer/flycheck0/stdout | 536 ------------------- 2 files changed, 537 deletions(-) delete mode 100644 editor/target/rust-analyzer/flycheck0/stderr delete mode 100644 editor/target/rust-analyzer/flycheck0/stdout diff --git a/editor/target/rust-analyzer/flycheck0/stderr b/editor/target/rust-analyzer/flycheck0/stderr deleted file mode 100644 index d7d3223042..0000000000 --- a/editor/target/rust-analyzer/flycheck0/stderr +++ /dev/null @@ -1 +0,0 @@ - Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.36s diff --git a/editor/target/rust-analyzer/flycheck0/stdout b/editor/target/rust-analyzer/flycheck0/stdout deleted file mode 100644 index b8ceed356e..0000000000 --- a/editor/target/rust-analyzer/flycheck0/stdout +++ /dev/null @@ -1,536 +0,0 @@ -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/proc-macro2-8f1324697c38ee12/build-script-build"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","linked_libs":[],"linked_paths":[],"cfgs":["wrap_proc_macro"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/proc-macro2-537fc1d0baee93a8/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.18","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"unicode_ident","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/unicode-ident-1.0.18/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libunicode_ident-c4cd5a2669b29311.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libunicode_ident-c4cd5a2669b29311.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_core-42adac7a2066ef64/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.172","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/libc-33ab280744fa361b/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcfg_if-3ea039d505aa1160.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitoa-b141a2c1bfb8942a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmemchr-c38ae2293baf146a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde-3528903edf729725/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libryu-1dd09d7a7fb89c2a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_json-5911ff7ce6495308/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["rlib"],"crate_types":["rlib"],"name":"math2","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmath2-d187bd0fad809146.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbitflags-f80a468c8d7e14e5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.95","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"proc_macro2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/proc-macro2-1.0.95/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libproc_macro2-3386915ef7d9fd4a.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libproc_macro2-3386915ef7d9fd4a.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.226","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_core-626a4866dff41536/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.172","linked_libs":[],"linked_paths":[],"cfgs":["freebsd11","libc_const_extern_fn"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/libc-0d92e3ea9798052e/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde-058efecf0fe581fa/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","linked_libs":[],"linked_paths":[],"cfgs":["fast_arithmetic=\"64\""],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_json-83716ae885565737/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#half@2.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/half-2.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"half","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/half-2.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhalf-b432914225509d1e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#autocfg@1.4.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.4.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"autocfg","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/autocfg-1.4.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libautocfg-0322980e80f4dda5.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libautocfg-0322980e80f4dda5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-project-lite@0.2.16","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_project_lite","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpin_project_lite-0ad3f8f64efb15a1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#stable_deref_trait@1.2.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stable_deref_trait-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"stable_deref_trait","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/stable_deref_trait-1.2.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libstable_deref_trait-3c263c1ad42cb58f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-core@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-core-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_core-60091296dafbae20.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#once_cell@1.21.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"once_cell","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/once_cell-1.21.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","race","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libonce_cell-3841e49f26db0e12.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#core-foundation-sys@0.8.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-foundation-sys-0.8.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"core_foundation_sys","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-foundation-sys-0.8.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","link"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcore_foundation_sys-d39f11151a37a4fd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#quote@1.0.40","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"quote","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/quote-1.0.40/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libquote-841a9a4244c6c801.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libquote-841a9a4244c6c801.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_core-5820a89033b16235.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.172","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibc-5b988fdaf9c788c1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytes@1.10.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytes","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbytes-1a4cd11f2c5a8822.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.9","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.9/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.9/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/slab-fbb07541f5e3404a/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-encode@4.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-encode-4.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_encode","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-encode-4.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_encode-8fda1f050be3e799.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-sink@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_sink","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-sink-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_sink-9753b3f29dbbaf4d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libc@0.2.172","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libc","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libc-0.2.172/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibc-f9caea571495837d.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibc-f9caea571495837d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"memchr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/memchr-2.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmemchr-6fd9eb7b66b59bfc.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmemchr-6fd9eb7b66b59bfc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_if","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg-if-1.0.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcfg_if-7a12fbb0d237a647.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcfg_if-7a12fbb0d237a647.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_core@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_core-1.0.226/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","result","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_core-429007958529ab0b.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_core-429007958529ab0b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glob@0.3.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glob-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glob","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glob-0.3.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libglob-db86b854f5f5c113.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libglob-db86b854f5f5c113.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#syn@2.0.101","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.101/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"syn","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/syn-2.0.101/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clone-impls","default","derive","extra-traits","fold","full","parsing","printing","proc-macro","visit","visit-mut"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsyn-08267739849918d1.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsyn-08267739849918d1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#core-foundation@0.9.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-foundation-0.9.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"core_foundation","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-foundation-0.9.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","link"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcore_foundation-4bc569b3e851e5df.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.9","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/slab-ea836004af215ca7/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mio@1.0.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mio","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mio-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["net","os-ext","os-poll"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmio-6947782c874ae74c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#socket2@0.5.10","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.5.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"socket2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/socket2-0.5.10/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["all"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsocket2-063ec9599851d1eb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-channel@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_channel","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","futures-sink","sink","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_channel-bcc3697e579e0e50.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-task@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_task","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-task-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_task-aed7aaca397a24bf.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cfg_aliases@0.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cfg_aliases","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cfg_aliases-0.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcfg_aliases-65eb1861e9bbf802.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcfg_aliases-65eb1861e9bbf802.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fnv@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fnv","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fnv-1.0.7/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfnv-ab6a868ad09099e8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-io@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_io","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-io-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_io-684857e5ce107c04.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.27","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.27/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.27/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblog-3517456658e6cd35.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblog-3517456658e6cd35.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smallvec@1.15.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smallvec","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smallvec-1.15.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["const_generics","const_new"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsmallvec-85b0efb747f6c5f8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.226/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"serde_derive","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_derive-1.0.226/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_derive-6935730ce6998407.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#synstructure@0.13.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/synstructure-0.13.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"synstructure","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/synstructure-0.13.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","proc-macro"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsynstructure-ab799abd4e65f7a4.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsynstructure-ab799abd4e65f7a4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerovec-derive@0.11.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerovec-derive-0.11.1/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zerovec_derive","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerovec-derive-0.11.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzerovec_derive-f4d949ed46109125.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#displaydoc@0.2.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/displaydoc-0.2.5/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"displaydoc","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/displaydoc-0.2.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdisplaydoc-e1f1ceac5b160ec9.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slab@0.4.9","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.9/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slab","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slab-0.4.9/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libslab-f6b0f24932fa19d0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-macros@2.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"tokio_macros","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-macros-2.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtokio_macros-95d3502e18b92e09.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-macro@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"futures_macro","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-macro-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_macro-fb5d4552037dfaa4.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pin-utils@0.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pin_utils","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pin-utils-0.1.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpin_utils-1e1e60022b642216.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http@1.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-1.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-1.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhttp-b005fa15d18ddf54.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clang-sys@1.8.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clang-sys-1.8.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clang-sys-1.8.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clang_10_0","clang_11_0","clang_3_5","clang_3_6","clang_3_7","clang_3_8","clang_3_9","clang_4_0","clang_5_0","clang_6_0","clang_7_0","clang_8_0","clang_9_0","libloading","runtime"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/clang-sys-640ea9f5ae6f9059/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing-core@0.1.33","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-core-0.1.33/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["once_cell","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtracing_core-f521a26282dc11c8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2@0.6.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.6.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.6.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/objc2-578333b419003d4e/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","derive","serde_derive","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde-63603982ba05c456.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerofrom-derive@0.1.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerofrom-derive-0.1.6/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"zerofrom_derive","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerofrom-derive-0.1.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzerofrom_derive-f110a397678722bf.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#yoke-derive@0.8.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/yoke-derive-0.8.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"yoke_derive","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/yoke-derive-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libyoke_derive-3db0f4ef214c25c0.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio@1.45.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.45.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["bytes","default","io-util","libc","macros","mio","net","rt","rt-multi-thread","socket2","sync","time","tokio-macros"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtokio-49c01997af7b60f8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-util@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_util","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-util-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","async-await-macro","channel","futures-channel","futures-io","futures-macro","futures-sink","io","memchr","sink","slab","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_util-7474d9e790c6f9a1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc-sys@0.3.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc-sys-0.3.5/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc-sys-0.3.5/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/objc-sys-05c62d98db954434/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","fs","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rustix-f4c0ee6da4fceaa8/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.33","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.33/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.33/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["verbatim"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/prettyplease-0d8f0d5bd144c0ff/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@2.9.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-2.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbitflags-b1bc5799604c1c06.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbitflags-b1bc5799604c1c06.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/getrandom-9438c74db13c4f71/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#writeable@0.6.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/writeable-0.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"writeable","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/writeable-0.6.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwriteable-878311b3fe7c1021.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#litemap@0.8.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/litemap-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"litemap","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/litemap-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblitemap-5aab37e87e868e23.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_json-f56cf8d1999ae846.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerofrom@0.1.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerofrom-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerofrom","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerofrom-0.1.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","derive"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzerofrom-01f90c3af2d7ba10.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc-sys@0.3.5","linked_libs":["dylib=objc"],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/objc-sys-60cd04404206703f/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","linked_libs":[],"linked_paths":[],"cfgs":["static_assertions","libc","apple","bsd"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rustix-b408943a720df680/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/getrandom-15f2d954b149bc87/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.33","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/prettyplease-036f3dcf71415217/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#clang-sys@1.8.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/clang-sys-217a26e1e7bd0e6a/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tracing@0.1.41","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tracing","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tracing-0.1.41/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtracing-e885bfbddb276b36.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2@0.6.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/objc2-f49d3a03cc3e4d77/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#errno@0.3.12","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/errno-0.3.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"errno","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/errno-0.3.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liberrno-e2d5f1957274fdd4.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liberrno-e2d5f1957274fdd4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"aho_corasick","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/aho-corasick-1.1.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["perf-literal","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libaho_corasick-24d393942443cd71.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libaho_corasick-24d393942443cd71.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer_data-2.0.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer_data-2.0.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/icu_normalizer_data-29ac264c10a585be/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#yoke@0.8.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/yoke-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"yoke","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/yoke-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","derive","zerofrom"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libyoke-1bcf34670a6c547d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.0.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties_data-2.0.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties_data-2.0.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/icu_properties_data-c8428b0a303c1490/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#percent-encoding@2.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/percent-encoding-2.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"percent_encoding","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/percent-encoding-2.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpercent_encoding-563bc03f8dd808ea.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde-c7076cc3f98d1425/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rustix-a3bf03d6235b223f/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heck@0.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heck","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heck-0.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libheck-6bb8706c8a3cd1f3.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libheck-6bb8706c8a3cd1f3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#minimal-lexical@0.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/minimal-lexical-0.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"minimal_lexical","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/minimal-lexical-0.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libminimal_lexical-31495ba2e33dd72d.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libminimal_lexical-31495ba2e33dd72d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_syntax-6d75e88f8ab16b64.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_syntax-6d75e88f8ab16b64.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustix","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","fs","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustix-854bf259cd534a2e.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustix-854bf259cd534a2e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#getrandom@0.3.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"getrandom","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/getrandom-0.3.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgetrandom-3815da1e13626e70.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2@0.6.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.6.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2-e8606b12e9ba2d93.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc-sys@0.3.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc-sys-0.3.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc_sys","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc-sys-0.3.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc_sys-8d3be0216404b3a7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerovec@0.11.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerovec-0.11.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerovec","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerovec-0.11.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","derive","yoke"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzerovec-8c9de79d02fafd21.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zerotrie@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerotrie-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zerotrie","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zerotrie-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["yoke","zerofrom"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzerotrie-dce1997fcf533df0.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde-b756b1f230f4d58b/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.0.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/icu_properties_data-5dc0a050917235ca/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","linked_libs":[],"linked_paths":[],"cfgs":["static_assertions","libc","apple","bsd"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rustix-59d3c31119c57713/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#nom@7.1.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nom-7.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"nom","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/nom-7.1.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libnom-35c3040dac9c2240.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libnom-35c3040dac9c2240.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.9","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.9/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.9/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","dfa-onepass","hybrid","meta","nfa-backtrack","nfa-pikevm","nfa-thompson","perf-inline","perf-literal","perf-literal-multisubstring","perf-literal-substring","std","syntax","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment","unicode-word-boundary"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_automata-6e948b6619503307.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_automata-6e948b6619503307.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.0.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/icu_normalizer_data-40ce2e3a4050f663/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body@1.0.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-1.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-1.0.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhttp_body-24f7f2fd5adfb08f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#errno@0.3.12","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/errno-0.3.12/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"errno","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/errno-0.3.12/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liberrno-20b40793ad24c62e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libloading@0.8.8","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libloading","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.8/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibloading-9c1a059e05b3e87c.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibloading-9c1a059e05b3e87c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_json-9ae25996604b0bfa/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tinystr@0.8.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tinystr-0.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tinystr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tinystr-0.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","zerovec"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtinystr-3e6c6415d6b58cda.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#potential_utf@0.1.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/potential_utf-0.1.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"potential_utf","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/potential_utf-0.1.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zerovec"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpotential_utf-87aab0e65e84921f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#system-configuration-sys@0.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-sys-0.6.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-sys-0.6.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/system-configuration-sys-7338eaa588cc20b6/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#shlex@1.3.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/shlex-1.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"shlex","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/shlex-1.3.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libshlex-0dc44f95a1c7286e.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libshlex-0dc44f95a1c7286e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.15","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libm-0.2.15/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libm-0.2.15/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["arch","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/libm-1d23098ef7202561/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"equivalent","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/equivalent-1.0.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libequivalent-0497d13dba3deb75.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bindgen@0.72.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bindgen-0.72.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bindgen-0.72.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","logging","prettyplease","runtime"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/bindgen-19c2babeb254944c/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/httparse-96cd156fc688f9c8/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#either@1.15.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"either","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libeither-2a71260e4ba27e81.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libeither-2a71260e4ba27e81.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.15.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hashbrown","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.15.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhashbrown-b023ea75591dad7a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/khronos_api-3.1.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/khronos_api-3.1.0/build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/khronos_api-043444c532918fb8/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winnow@0.7.13","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winnow","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winnow-0.7.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwinnow-34b8cc528cba7ae0.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwinnow-34b8cc528cba7ae0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_locale_core@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_locale_core-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_locale_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_locale_core-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["zerovec"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_locale_core-40a5b51b2e304015.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_collections@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_collections-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_collections","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_collections-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_collections-f4de52530aac69b0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#adler2@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/adler2-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"adler2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/adler2-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libadler2-2d48a8ddf4654333.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libadler2-2d48a8ddf4654333.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itertools@0.13.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.13.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itertools","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.13.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitertools-32d37dc59530fc45.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitertools-32d37dc59530fc45.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#system-configuration-sys@0.6.0","linked_libs":["framework=SystemConfiguration"],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/system-configuration-sys-46fb6d64d46ef91d/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#bindgen@0.72.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/bindgen-176edc029cc7bc14/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_parser@1.0.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_parser","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_parser-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_parser-828900457f64265b.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_parser-828900457f64265b.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.15","linked_libs":[],"linked_paths":[],"cfgs":["arch_enabled"],"env":[["CFG_CARGO_FEATURES","[\"arch\", \"default\"]"],["CFG_OPT_LEVEL","0"],["CFG_TARGET_FEATURES","[\"aes\", \"crc\", \"dit\", \"dotprod\", \"dpb\", \"dpb2\", \"fcma\", \"fhm\", \"flagm\", \"fp16\", \"frintts\", \"jsconv\", \"lor\", \"lse\", \"neon\", \"paca\", \"pacg\", \"pan\", \"pmuv3\", \"ras\", \"rcpc\", \"rcpc2\", \"rdm\", \"sb\", \"sha2\", \"sha3\", \"ssbs\", \"vh\"]"]],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/libm-f254b01a9b06c066/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#indexmap@2.11.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.11.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"indexmap","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/indexmap-2.11.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libindexmap-3ffa8d9719471a84.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","linked_libs":[],"linked_paths":[],"cfgs":["httparse_simd_neon_intrinsics","httparse_simd"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/httparse-e008b1379e937e9f/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/khronos_api-19c5f259a7fac546/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustix@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustix","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustix-1.0.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","fs","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustix-f6cb2635e57507ce.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_provider@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_provider-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_provider","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_provider-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["baked","zerotrie"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_provider-80194e9ffa8b59bc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#miniz_oxide@0.8.8","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/miniz_oxide-0.8.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"miniz_oxide","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/miniz_oxide-0.8.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["with-alloc"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libminiz_oxide-fdd783a7b1635456.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libminiz_oxide-fdd783a7b1635456.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","linked_libs":[],"linked_paths":[],"cfgs":["fast_arithmetic=\"64\""],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/serde_json-1fd4b2149bb2ad6c/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde@1.0.226","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde-1.0.226/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde-64b95966ed9ecfbc.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde-64b95966ed9ecfbc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cexpr@0.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cexpr-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cexpr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cexpr-0.6.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcexpr-d35f154a185434d3.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcexpr-d35f154a185434d3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clang-sys@1.8.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clang-sys-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clang_sys","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clang-sys-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["clang_10_0","clang_11_0","clang_3_5","clang_3_6","clang_3_7","clang_3_8","clang_3_9","clang_4_0","clang_5_0","clang_6_0","clang_7_0","clang_8_0","clang_9_0","libloading","runtime"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclang_sys-62d22a7340287687.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclang_sys-62d22a7340287687.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties_data@2.0.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties_data-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_properties_data","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties_data-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_properties_data-35625385bb5f3977.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","perf","perf-backtrack","perf-cache","perf-dfa","perf-inline","perf-literal","perf-onepass","std","unicode","unicode-age","unicode-bool","unicode-case","unicode-gencat","unicode-perl","unicode-script","unicode-segment"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex-5214345ecc10b79d.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex-5214345ecc10b79d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer_data@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer_data-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_normalizer_data","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer_data-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_normalizer_data-5253d5d6e886fa4d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2@0.5.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-0.5.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2-c029ab00ef44e670.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#xattr@1.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/xattr-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"xattr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/xattr-1.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","unsupported"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libxattr-71ce72e8f28e8a84.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libxattr-71ce72e8f28e8a84.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.33","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.33/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"prettyplease","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/prettyplease-0.2.33/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["verbatim"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libprettyplease-572d16aab36bdf81.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libprettyplease-572d16aab36bdf81.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-util@0.7.15","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_util","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-util-0.7.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["codec","default","io"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtokio_util-6322337faf12d4fb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#filetime@0.2.25","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/filetime-0.2.25/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"filetime","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/filetime-0.2.25/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfiletime-4c81757416c8087b.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfiletime-4c81757416c8087b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_spanned@1.0.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_spanned","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_spanned-1.0.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_spanned-f935b631d5a6ce0a.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_spanned-f935b631d5a6ce0a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#security-framework-sys@2.14.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/security-framework-sys-2.14.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"security_framework_sys","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/security-framework-sys-2.14.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["OSX_10_10","OSX_10_11","OSX_10_12","OSX_10_9","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsecurity_framework_sys-cbfd2bbe80d63c60.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_datetime@0.7.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_datetime","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_datetime-0.7.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","serde","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_datetime-5709341ba3201010.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_datetime-5709341ba3201010.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crc32fast@1.4.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crc32fast-1.4.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crc32fast","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crc32fast-1.4.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcrc32fast-53dfe06bd74cb5f9.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcrc32fast-53dfe06bd74cb5f9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num-traits-0.2.19/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num-traits-0.2.19/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","libm","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/num-traits-ab297e4abc0a7844/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#try-lock@0.2.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/try-lock-0.2.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"try_lock","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/try-lock-0.2.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtry_lock-c2ff8b3af4e39ced.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#atomic-waker@1.1.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atomic-waker-1.1.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"atomic_waker","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/atomic-waker-1.1.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libatomic_waker-560e88804dbe1b1a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-service@0.3.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-service-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_service","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-service-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtower_service-3bd024fdc95722f9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustc-hash@2.1.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-hash-2.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustc_hash","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustc-hash-2.1.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustc_hash-f3e59987eed0856e.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustc_hash-f3e59987eed0856e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#native-tls@0.2.14","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/native-tls-0.2.14/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/native-tls-0.2.14/build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/native-tls-95b420aa6bfbb82b/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itoa@1.0.15","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itoa","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itoa-1.0.15/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitoa-a52c6d8384faf9f5.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitoa-a52c6d8384faf9f5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fastrand@2.3.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fastrand","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fastrand-2.3.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfastrand-aa51436b3bc0817a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml_writer@1.0.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_writer-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml_writer","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml_writer-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_writer-3eef74ad73a13c89.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml_writer-3eef74ad73a13c89.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ryu@1.0.20","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ryu","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ryu-1.0.20/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libryu-253388850880998b.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libryu-253388850880998b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#want@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/want-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"want","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/want-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwant-9c11f8f38d2b990e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#security-framework@2.11.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/security-framework-2.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"security_framework","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/security-framework-2.11.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["OSX_10_10","OSX_10_11","OSX_10_12","OSX_10_9","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsecurity_framework-9c2f3e3c3fb5e53e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tar@0.4.44","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tar-0.4.44/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tar","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tar-0.4.44/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","xattr"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtar-6b7e2b35fdb33bad.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtar-6b7e2b35fdb33bad.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#h2@0.4.10","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.4.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"h2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/h2-0.4.10/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libh2-5847cf2661c2393e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bindgen@0.72.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bindgen-0.72.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bindgen","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bindgen-0.72.0/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","logging","prettyplease","runtime"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbindgen-ff7c30040c371d36.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbindgen-ff7c30040c371d36.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","linked_libs":[],"linked_paths":[],"cfgs":["has_total_cmp"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/num-traits-849db47e8828859b/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#flate2@1.1.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/flate2-1.1.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"flate2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/flate2-1.1.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["any_impl","default","miniz_oxide","rust_backend"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libflate2-570087a13e0b6830.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libflate2-570087a13e0b6830.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#native-tls@0.2.14","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/native-tls-9473871b788e1754/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tempfile@3.20.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tempfile","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tempfile-3.20.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","getrandom"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtempfile-3226f06e56fcd984.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_json@1.0.140","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_json","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.140/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_json-b17dff6e8de72318.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_json-b17dff6e8de72318.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#toml@0.9.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"toml","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/toml-0.9.7/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","display","parse","serde","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml-8666e6383bc28dc7.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtoml-8666e6383bc28dc7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_properties@2.0.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties-2.0.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_properties","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_properties-2.0.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_properties-d3d38ac4b7a23ff6.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#block2@0.5.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block2-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"block2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/block2-0.5.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libblock2-9a6426f42a1453f8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#icu_normalizer@2.0.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer-2.0.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"icu_normalizer","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/icu_normalizer-2.0.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libicu_normalizer-32276d860b089bee.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#system-configuration-sys@0.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-sys-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"system_configuration_sys","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-sys-0.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsystem_configuration_sys-8cd7e4e3da75cf33.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libm@0.2.15","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libm-0.2.15/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libm","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libm-0.2.15/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["arch","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibm-810c0772a9696a62.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#httparse@1.10.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"httparse","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/httparse-1.10.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhttparse-63a91a1cc30a7f1a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#khronos_api@3.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/khronos_api-3.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"khronos_api","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/khronos_api-3.1.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libkhronos_api-3e572bee76a852dd.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libkhronos_api-3e572bee76a852dd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cc@1.2.25","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cc-1.2.25/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cc","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cc-1.2.25/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcc-c0c41d247f70afbd.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcc-c0c41d247f70afbd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-core-foundation@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-core-foundation-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_core_foundation","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-core-foundation-0.3.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["CFBase","CFBundle","CFCGTypes","CFRunLoop","CFString","alloc","bitflags","objc2","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_core_foundation-9e7c525c90f4f059.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foreign-types-macros@0.2.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-macros-0.2.3/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"foreign_types_macros","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-macros-0.2.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libforeign_types_macros-44bc50ac58373327.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dispatch@0.2.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dispatch-0.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dispatch","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dispatch-0.2.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdispatch-8f58679dea79450c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#pkg-config@0.3.32","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pkg-config-0.3.32/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"pkg_config","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pkg-config-0.3.32/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpkg_config-19a89d7d579c3fed.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpkg_config-19a89d7d579c3fed.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bitflags@1.3.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bitflags","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bitflags-1.3.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbitflags-b978c9d150eee173.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#xml-rs@0.8.26","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/xml-rs-0.8.26/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"xml","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/xml-rs-0.8.26/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libxml-330e931d38072f51.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libxml-330e931d38072f51.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#version_check@0.9.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"version_check","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/version_check-0.9.5/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libversion_check-8c067b92ae3aff85.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libversion_check-8c067b92ae3aff85.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#base64@0.22.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/base64-0.22.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"base64","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/base64-0.22.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbase64-3eab2d053e410ae7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foreign-types-shared@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-shared-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foreign_types_shared","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-shared-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libforeign_types_shared-57d4920d55beb1f5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crossbeam-utils@0.8.21","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-utils-0.8.21/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-utils-0.8.21/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/crossbeam-utils-ab14ddd4f538c0b3/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper@1.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-1.6.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["client","default","http1","http2"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhyper-8d45bcb01b2018a7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num-traits-0.2.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"num_traits","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/num-traits-0.2.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","libm","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libnum_traits-d8972a7c9474438e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-foundation@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-foundation-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_foundation","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-foundation-0.3.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["NSArray","NSAttributedString","NSCoder","NSData","NSDate","NSDictionary","NSError","NSException","NSGeometry","NSNotification","NSObjCRuntime","NSObject","NSRange","NSString","NSThread","NSURL","NSUndoManager","NSUserActivity","NSValue","alloc","bitflags","objc2-core-foundation","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_foundation-877d35cb7a386097.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#crossbeam-utils@0.8.21","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/crossbeam-utils-04a0eddab0f7201b/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gl_generator@0.14.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl_generator-0.14.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gl_generator","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl_generator-0.14.0/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgl_generator-638ea2237729c9f6.rlib","/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgl_generator-638ea2237729c9f6.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#foreign-types@0.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"foreign_types","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.5.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libforeign_types-277d4b877b56623e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#core-graphics-types@0.1.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-graphics-types-0.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"core_graphics_types","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-graphics-types-0.1.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["link"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcore_graphics_types-223617d6658a2a16.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skia-bindings@0.89.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-bindings-0.89.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-bindings-0.89.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["binary-cache","embed-icudtl","gl","pdf","svg","textlayout"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/skia-bindings-8777eef1b578b859/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slotmap-1.0.7/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slotmap-1.0.7/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/slotmap-fe11637ff383b7eb/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-foundation@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-foundation-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_foundation","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-foundation-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["NSArray","NSAttributedString","NSBundle","NSCoder","NSData","NSDate","NSDictionary","NSDistributedNotificationCenter","NSEnumerator","NSError","NSException","NSFileWrapper","NSFormatter","NSGeometry","NSItemProvider","NSKeyValueObserving","NSLocale","NSNotification","NSObjCRuntime","NSObject","NSPathUtilities","NSProcessInfo","NSRange","NSRunLoop","NSScriptCommand","NSScriptStandardSuiteCommands","NSSet","NSString","NSThread","NSURL","NSUndoManager","NSUserActivity","NSValue","NSZone","alloc","bitflags","block2","default","dispatch","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_foundation-2fb504d015b4cc1f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#native-tls@0.2.14","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/native-tls-0.2.14/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"native_tls","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/native-tls-0.2.14/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libnative_tls-f21adddeea0a89c5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#system-configuration@0.6.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-0.6.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"system_configuration","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/system-configuration-0.6.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsystem_configuration-9486cb9ffffef1da.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#idna_adapter@1.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/idna_adapter-1.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"idna_adapter","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/idna_adapter-1.2.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["compiled_data"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libidna_adapter-3af42a70abde4446.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#form_urlencoded@1.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/form_urlencoded-1.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"form_urlencoded","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/form_urlencoded-1.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libform_urlencoded-eed5abcbc7c7b502.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.11","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.30.11/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.30.11/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","bytemuck","default","memmap2","percent-encoding","rwh_06","sctk","sctk-adwaita","wayland","wayland-backend","wayland-client","wayland-csd-adwaita","wayland-dlopen","wayland-protocols","wayland-protocols-plasma","x11","x11-dl","x11rb"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/winit-8cba5c642b4252a0/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin@0.32.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-0.32.3/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-0.32.3/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","egl","glutin_egl_sys","glutin_glx_sys","glutin_wgl_sys","glx","libloading","wayland","wayland-sys","wgl","windows-sys","x11","x11-dl"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/glutin-79862dd5ac644586/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#sync_wrapper@1.0.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sync_wrapper-1.0.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"sync_wrapper","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sync_wrapper-1.0.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["futures","futures-core"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsync_wrapper-10cd8e41f420e778.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ipnet@2.11.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ipnet","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ipnet-2.11.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libipnet-54cbe92f108ffda3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8_iter@1.0.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8_iter-1.0.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8_iter","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8_iter-1.0.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libutf8_iter-a8682e95abf7ed0b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#byteorder@1.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/byteorder-1.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"byteorder","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/byteorder-1.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbyteorder-962bd68ec7952a3f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/thiserror-1b1520b5f9e2ff21/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#raw-window-handle@0.6.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/raw-window-handle-0.6.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"raw_window_handle","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/raw-window-handle-0.6.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libraw_window_handle-fb9ead8683688c61.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heapless@0.8.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heapless-0.8.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heapless-0.8.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/heapless-4d65e358483934dd/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-layer@0.3.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-layer-0.3.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_layer","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-layer-0.3.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtower_layer-e1f0721ff7ab5d82.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-app-kit@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-app-kit-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_app_kit","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-app-kit-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["NSAppearance","NSApplication","NSBitmapImageRep","NSButton","NSColor","NSControl","NSCursor","NSDragging","NSEvent","NSGraphics","NSGraphicsContext","NSImage","NSImageRep","NSMenu","NSMenuItem","NSOpenGLView","NSPasteboard","NSResponder","NSRunningApplication","NSScreen","NSTextInputClient","NSTextInputContext","NSView","NSWindow","NSWindowScripting","NSWindowTabGroup","alloc","bitflags","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_app_kit-ac16211d6857a4d1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gl@0.14.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl-0.14.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl-0.14.0/build.rs","edition":"2015","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/gl-b9c050bc0d3557a7/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#core-graphics@0.23.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-graphics-0.23.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"core_graphics","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/core-graphics-0.23.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","link"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcore_graphics-0c0e7df7db412ed8.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/thiserror-1841112df2392c68/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin@0.32.3","linked_libs":[],"linked_paths":[],"cfgs":["macos_platform","apple","cgl_backend"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/glutin-edb8e93031a448c3/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper-util@0.1.13","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_util","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-util-0.1.13/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["client","client-legacy","client-proxy","client-proxy-system","default","http1","http2","tokio"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhyper_util-a2dc7dfa719106d9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hash32@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hash32-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hash32","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hash32-0.3.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhash32-c4e6e21cf8ba9e7d.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#heapless@0.8.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/heapless-0d72bc78e922aa0c/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower@0.5.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-0.5.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["__common","futures-core","futures-util","pin-project-lite","sync_wrapper","timeout","tokio","util"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtower-747eac7b7eed78eb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#idna@1.0.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/idna-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"idna","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/idna-1.0.3/src/lib.rs","edition":"2018","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","compiled_data","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libidna-21c21a68f577b66f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crossbeam-utils@0.8.21","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-utils-0.8.21/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crossbeam_utils","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-utils-0.8.21/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcrossbeam_utils-125bde21ecd037bc.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#skia-bindings@0.89.0","linked_libs":["static=skparagraph","static=skshaper","static=skunicode_core","static=skunicode_icu","static=svg","static=skresources","static=skia","static=skia-bindings","c++","framework=ApplicationServices","framework=OpenGL"],"linked_paths":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/skia-bindings-77035e88c0635d4e/out/skia"],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/skia-bindings-77035e88c0635d4e/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tokio-native-tls@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-native-tls-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tokio_native_tls","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-native-tls-0.3.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtokio_native_tls-fa051f3b768b439a.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.11","linked_libs":[],"linked_paths":[],"cfgs":["macos_platform","apple"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/winit-8dec85442c6ac1e4/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.0.7","linked_libs":[],"linked_paths":[],"cfgs":["has_min_const_generics"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/slotmap-be16ad5e941b4cb1/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#objc2-app-kit@0.3.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-app-kit-0.3.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"objc2_app_kit","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/objc2-app-kit-0.3.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["NSApplication","NSOpenGL","NSOpenGLView","NSResponder","NSView","NSWindow","alloc","bitflags","objc2-core-foundation","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libobjc2_app_kit-7ec76cf36c83c88a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#http-body-util@0.1.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-util-0.1.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"http_body_util","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/http-body-util-0.1.3/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhttp_body_util-b8ca574e064e0e77.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dispatch2@0.3.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dispatch2-0.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dispatch2","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dispatch2-0.3.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","objc2","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdispatch2-fd0ef7f5f2b2eb29.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror-impl@1.0.69","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"thiserror_impl","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-impl-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libthiserror_impl-2564391a78e52665.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin-winit@0.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-winit-0.5.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-winit-0.5.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","egl","glx","wayland","wgl","x11"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/glutin-winit-4acf19873e946580/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cgl@0.3.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cgl-0.3.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cgl","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cgl-0.3.2/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcgl-d84299f80dc89cf0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#libloading@0.8.8","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"libloading","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/libloading-0.8.8/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblibloading-e557218f1338ab10.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#iri-string@0.7.8","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/iri-string-0.7.8/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"iri_string","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/iri-string-0.7.8/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libiri_string-52109ec540670845.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#dpi@0.1.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dpi-0.1.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"dpi","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/dpi-0.1.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdpi-25efd944cbc44600.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cursor-icon@1.2.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cursor-icon-1.2.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cursor_icon","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cursor-icon-1.2.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcursor_icon-9cb6ea1f59ce826f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#smol_str@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smol_str-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"smol_str","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/smol_str-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsmol_str-f3585375ac4fb455.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#zeroize@1.8.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"zeroize","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zeroize-1.8.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzeroize-fd5f10ec7082d800.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#utf8parse@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"utf8parse","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/utf8parse-0.2.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libutf8parse-a98e3fdfb5b8c858.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#hyper-tls@0.6.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-tls-0.6.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"hyper_tls","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/hyper-tls-0.6.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhyper_tls-52e4f550f875fc3b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rustls-pki-types@1.12.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-pki-types-1.12.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rustls_pki_types","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rustls-pki-types-1.12.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librustls_pki_types-a33a13bb1010a7f7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin@0.32.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-0.32.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glutin","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-0.32.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","egl","glutin_egl_sys","glutin_glx_sys","glutin_wgl_sys","glx","libloading","wayland","wayland-sys","wgl","windows-sys","x11","x11-dl"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libglutin-1a8724e20ec08e98.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tower-http@0.6.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-http-0.6.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tower_http","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tower-http-0.6.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["follow-redirect","futures-util","iri-string","tower"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtower_http-d7bf51bbdef0cf1f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#thiserror@1.0.69","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"thiserror","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/thiserror-1.0.69/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libthiserror-0197263b84ed1770.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin-winit@0.5.0","linked_libs":[],"linked_paths":[],"cfgs":["macos_platform","apple","cgl_backend"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/glutin-winit-2e18d12a8aa4d92f/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#winit@0.30.11","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.30.11/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"winit","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/winit-0.30.11/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["ahash","bytemuck","default","memmap2","percent-encoding","rwh_06","sctk","sctk-adwaita","wayland","wayland-backend","wayland-client","wayland-csd-adwaita","wayland-dlopen","wayland-protocols","wayland-protocols-plasma","x11","x11-dl","x11rb"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwinit-d37942d8b2e233c1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#heapless@0.8.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heapless-0.8.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"heapless","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/heapless-0.8.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libheapless-5f909037ccd7c299.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#url@2.5.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/url-2.5.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"url","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/url-2.5.4/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liburl-f786e1856bddf843.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crossbeam-epoch@0.9.18","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-epoch-0.9.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crossbeam_epoch","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-epoch-0.9.18/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcrossbeam_epoch-7b755c3f1ef812c9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skia-bindings@0.89.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-bindings-0.89.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"skia_bindings","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-bindings-0.89.0/src/lib.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["binary-cache","embed-icudtl","gl","pdf","svg","textlayout"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libskia_bindings-55ca0141cd344005.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-parse@0.2.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_parse","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-parse-0.2.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","utf8"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libanstyle_parse-6635ac0b86e14638.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#slotmap@1.0.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slotmap-1.0.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"slotmap","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/slotmap-1.0.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libslotmap-d2d47e23e3ee0ec5.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#gl@0.14.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/gl-5c86f5871b8be483/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#serde_urlencoded@0.7.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_urlencoded-0.7.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"serde_urlencoded","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/serde_urlencoded-0.7.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libserde_urlencoded-36d0a112c0fc73df.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#jsonptr@0.7.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jsonptr-0.7.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"jsonptr","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/jsonptr-0.7.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["assign","default","delete","json","resolve","serde","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libjsonptr-cb3f8a5aca501b6c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures-executor@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures_executor","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-executor-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures_executor-144d56c67cc14517.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skia-svg-macros@0.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-svg-macros-0.1.0/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"skia_svg_macros","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-svg-macros-0.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libskia_svg_macros-59a86caac84b7650.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#encoding_rs@0.8.35","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/encoding_rs-0.8.35/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"encoding_rs","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/encoding_rs-0.8.35/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libencoding_rs-5a0ddc2052e2f9a2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rayon-core@1.12.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-core-1.12.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-core-1.12.1/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rayon-core-16af5a03700a55ce/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#log@0.4.27","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.27/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"log","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/log-0.4.27/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblog-563788974cecb9c3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#mime@0.3.17","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mime-0.3.17/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"mime","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/mime-0.3.17/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmime-cbc391770e670a70.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#colorchoice@1.0.3","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.3/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"colorchoice","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/colorchoice-1.0.3/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcolorchoice-ba6e274cf54c1177.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle@1.0.10","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.10/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-1.0.10/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libanstyle-5c4071ec3996fa27.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#either@1.15.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"either","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/either-1.15.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std","use_std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libeither-a3b8866fbf3bf9e3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is_terminal_polyfill@1.70.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal_polyfill","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is_terminal_polyfill-1.70.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libis_terminal_polyfill-016bf6330bafeec2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstyle-query@1.1.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstyle_query","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstyle-query-1.1.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libanstyle_query-839c49eb23c46d68.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#grid@0.18.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/grid-0.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"grid","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/grid-0.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgrid-88b6a570c8231cab.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#arrayvec@0.7.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/arrayvec-0.7.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"arrayvec","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/arrayvec-0.7.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libarrayvec-5395d73a7093f167.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#reqwest@0.12.19","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.19/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"reqwest","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/reqwest-0.12.19/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["__tls","charset","default","default-tls","h2","http2","system-proxy"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libreqwest-4dc508c629e48a65.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#json-patch@4.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/json-patch-4.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"json_patch","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/json-patch-4.1.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","diff"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libjson_patch-0089a5f69f6f868a.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#rayon-core@1.12.1","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/rayon-core-eed30920747273d6/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#gl@0.14.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl-0.14.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"gl","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/gl-0.14.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgl-f9a617d7653eb0e5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#futures@0.3.31","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"futures","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/futures-0.3.31/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","async-await","default","executor","futures-executor","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfutures-e64346b3ddc9b1b7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#skia-safe@0.89.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-safe-0.89.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"skia_safe","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/skia-safe-0.89.0/src/lib.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["binary-cache","default","embed-icudtl","gl","gpu","pdf","skia-svg-macros","svg","textlayout"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libskia_safe-644b3c795e70d80a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anstream@0.6.18","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.18/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anstream","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anstream-0.6.18/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["auto","default","wincon"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libanstream-ec2aca1dc9950f73.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#taffy@0.9.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/taffy-0.9.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"taffy","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/taffy-0.9.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","block_layout","calc","content_size","default","detailed_layout_info","flexbox","grid","std","taffy_tree"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtaffy-b77a5c4fd6a5f36b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rstar@0.12.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rstar-0.12.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rstar","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rstar-0.12.2/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librstar-454abcd51e97cd63.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#crossbeam-deque@0.8.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-deque-0.8.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"crossbeam_deque","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/crossbeam-deque-0.8.6/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcrossbeam_deque-3c0644e414e5ba3d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#glutin-winit@0.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-winit-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"glutin_winit","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/glutin-winit-0.5.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","egl","glx","wayland","wgl","x11"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libglutin_winit-dfc7b52bbfb93494.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#uuid@1.17.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.17.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"uuid","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/uuid-1.17.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","js","rng","std","v4"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libuuid-5678335def1e89b6.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#async-trait@0.1.88","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-trait-0.1.88/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"async_trait","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/async-trait-0.1.88/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libasync_trait-357953e0e1e1e2aa.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ciborium-io@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-io-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ciborium_io","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-io-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libciborium_io-4e77b76d198b7c0f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_syntax","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-syntax-0.8.5/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_syntax-6e00175a61c3c353.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#seahash@4.1.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/seahash-4.1.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"seahash","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/seahash-4.1.0/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libseahash-acfb22b5a9a16793.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#plotters-backend@0.3.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-backend-0.3.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"plotters_backend","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-backend-0.3.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libplotters_backend-24ee5265f6a8c92b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#strsim@0.11.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"strsim","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/strsim-0.11.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libstrsim-7a1924ce8233b0a4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_lex@0.7.4","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.4/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_lex","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_lex-0.7.4/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclap_lex-5a1ecd0bc8099279.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rayon-core@1.12.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-core-1.12.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rayon_core","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-core-1.12.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librayon_core-935de161ed32fb7c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ciborium-ll@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-ll-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ciborium_ll","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-ll-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libciborium_ll-b6760805b038ba88.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#plotters-svg@0.3.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-svg-0.3.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"plotters_svg","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-svg-0.3.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libplotters_svg-ae088fcbd28e7f53.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.9","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.9/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex_automata","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-automata-0.4.9/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["alloc","meta","nfa-pikevm","nfa-thompson","std","syntax"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex_automata-ee6ca1f76c637406.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#itertools@0.10.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.10.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"itertools","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/itertools-0.10.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","use_alloc","use_std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitertools-0cb0c2f98059e3f7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_derive@4.5.32","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_derive-4.5.32/Cargo.toml","target":{"kind":["proc-macro"],"crate_types":["proc-macro"],"name":"clap_derive","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_derive-4.5.32/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclap_derive-70f9a89d65376f57.dylib"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#cast@0.3.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cast-0.3.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"cast","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/cast-0.3.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcast-13a5bb79ba00a115.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#same-file@1.0.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/same-file-1.0.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"same_file","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/same-file-1.0.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsame_file-e3332ef40c63ae11.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/fps_overlay.rs","byte_start":483,"byte_end":491,"line_start":20,"line_end":20,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 36.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/fps_overlay.rs:20:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m20\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 36.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/hit_overlay.rs","byte_start":736,"byte_end":744,"line_start":25,"line_end":25,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/hit_overlay.rs:25:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m25\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/ruler_overlay.rs","byte_start":841,"byte_end":849,"line_start":33,"line_end":33,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 10.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/ruler_overlay.rs:33:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m33\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 10.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/stats_overlay.rs","byte_start":518,"byte_end":526,"line_start":21,"line_end":21,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 16.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/stats_overlay.rs:21:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m21\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 16.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/stroke_overlay.rs","byte_start":709,"byte_end":717,"line_start":27,"line_end":27,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/stroke_overlay.rs:27:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m27\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/fonts/embedded/mod.rs","byte_start":128,"byte_end":136,"line_start":7,"line_end":7,"column_start":41,"column_end":49,"is_primary":true,"text":[{"text":" pub static TYPEFACE_GEIST: Typeface = typeface(geist::BYTES);","highlight_start":41,"highlight_end":49}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/fonts/embedded/mod.rs:7:41\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m7\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub static TYPEFACE_GEIST: Typeface = typeface(geist::BYTES);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/fonts/embedded/mod.rs","byte_start":196,"byte_end":204,"line_start":8,"line_end":8,"column_start":45,"column_end":53,"is_primary":true,"text":[{"text":" pub static TYPEFACE_GEISTMONO: Typeface = typeface(geistmono::BYTES);","highlight_start":45,"highlight_end":53}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/fonts/embedded/mod.rs:8:45\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m8\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub static TYPEFACE_GEISTMONO: Typeface = typeface(geistmono::BYTES);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":15918,"byte_end":15944,"line_start":519,"line_end":519,"column_start":9,"column_end":35,"is_primary":true,"text":[{"text":" build_rrect_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:519:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m519\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_rrect_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":17925,"byte_end":17951,"line_start":607,"line_end":607,"column_start":9,"column_end":35,"is_primary":true,"text":[{"text":" build_rrect_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:607:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m607\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_rrect_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":31616,"byte_end":31651,"line_start":1114,"line_end":1114,"column_start":9,"column_end":44,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":44}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:1114:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m1114\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":38463,"byte_end":38488,"line_start":1347,"line_end":1347,"column_start":9,"column_end":34,"is_primary":true,"text":[{"text":" build_star_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":34}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:1347:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m1347\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_star_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":1795,"byte_end":1821,"line_start":61,"line_end":61,"column_start":36,"column_end":62,"is_primary":true,"text":[{"text":" Shape::RRect(shape) => build_rrect_vector_network(shape),","highlight_start":36,"highlight_end":62}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:61:36\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m61\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::RRect(shape) => build_rrect_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":1873,"byte_end":1908,"line_start":62,"line_end":62,"column_start":44,"column_end":79,"is_primary":true,"text":[{"text":" Shape::SimplePolygon(shape) => build_simple_polygon_vector_network(shape),","highlight_start":44,"highlight_end":79}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:62:44\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m62\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::SimplePolygon(shape) => build_simple_polygon_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":2415,"byte_end":2440,"line_start":71,"line_end":71,"column_start":49,"column_end":74,"is_primary":true,"text":[{"text":" Shape::RegularStarPolygon(shape) => build_star_vector_network(shape),","highlight_start":49,"highlight_end":74}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:71:49\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m71\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::RegularStarPolygon(shape) => build_star_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/regular_polygon.rs","byte_start":1386,"byte_end":1421,"line_start":45,"line_end":45,"column_start":5,"column_end":40,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&SimplePolygonShape {","highlight_start":5,"highlight_end":40}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/regular_polygon.rs:45:5\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m45\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&SimplePolygonShape {\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/regular_star.rs","byte_start":2221,"byte_end":2256,"line_start":77,"line_end":77,"column_start":5,"column_end":40,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&SimplePolygonShape {","highlight_start":5,"highlight_end":40}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/regular_star.rs:77:5\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m77\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&SimplePolygonShape {\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcg-206d04aeada1eb39.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#tinytemplate@1.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tinytemplate-1.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"tinytemplate","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tinytemplate-1.2.1/src/lib.rs","edition":"2015","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtinytemplate-de65cdba14bd8772.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#is-terminal@0.4.16","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is-terminal-0.4.16/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"is_terminal","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/is-terminal-0.4.16/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libis_terminal-29ac684c9f3a5e55.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap_builder@4.5.39","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.39/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap_builder","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap_builder-4.5.39/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","error-context","help","std","suggestions","usage"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclap_builder-af6fd69288f112db.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#walkdir@2.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/walkdir-2.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"walkdir","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/walkdir-2.5.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libwalkdir-9b6e036ac67fa529.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#rayon@1.10.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.10.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"rayon","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.10.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librayon-4fc7953cbf4ca762.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ciborium@0.2.2","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-0.2.2/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ciborium","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ciborium-0.2.2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libciborium-70ce8fa708fb1098.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#plotters@0.3.7","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-0.3.7/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"plotters","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/plotters-0.3.7/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["area_series","line_series","plotters-svg","svg_backend"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libplotters-04094e37c7fbc6e5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#regex@1.11.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"regex","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/regex-1.11.1/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["std"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregex-7e413eb5a4dfe295.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#criterion-plot@0.5.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/criterion-plot-0.5.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"criterion_plot","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/criterion-plot-0.5.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcriterion_plot-e3b93702ef6fd741.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#anes@0.1.6","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anes-0.1.6/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"anes","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/anes-0.1.6/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libanes-25bcd22287345e33.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#oorandom@11.1.5","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/oorandom-11.1.5/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"oorandom","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/oorandom-11.1.5/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liboorandom-c7658fc06c0f2d02.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/typenum-8aa4ed9de6d3c41f/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#az@1.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/az-1.2.1/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/az-1.2.1/build.rs","edition":"2018","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/az-8a5280526b736f67/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fixed@1.29.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixed-1.29.0/Cargo.toml","target":{"kind":["custom-build"],"crate_types":["bin"],"name":"build-script-build","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixed-1.29.0/build.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":0,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/fixed-11918d9868fa89a8/build-script-build"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#clap@4.5.39","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.39/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"clap","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/clap-4.5.39/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["color","default","derive","error-context","help","std","suggestions","usage"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libclap-ca351669a10bf183.rmeta"],"executable":null,"fresh":true} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#az@1.2.1","linked_libs":[],"linked_paths":[],"cfgs":["track_caller"],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/az-aeaaba5100041465/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/typenum-b6ace1f022cb5bd9/out"} -{"reason":"build-script-executed","package_id":"registry+https://github.com/rust-lang/crates.io-index#fixed@1.29.0","linked_libs":[],"linked_paths":[],"cfgs":[],"env":[],"out_dir":"/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/build/fixed-5be2e77ee2a7d4f4/out"} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#bytemuck@1.23.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytemuck-1.23.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"bytemuck","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/bytemuck-1.23.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbytemuck-6346621017e7e258.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#ttf-parser@0.25.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ttf-parser-0.25.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"ttf_parser","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ttf-parser-0.25.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["apple-layout","default","glyph-names","opentype-layout","std","variable-fonts"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libttf_parser-0b646e779e618983.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"transform","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/transform.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtransform-d773c62381e391c3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"raster","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/raster.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libraster-74500af49c865925.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"measurement","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/measurement.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmeasurement-b1506903a4e7778e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"raster_extended","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/raster_extended.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libraster_extended-180d3324b9e86bba.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"packing","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/packing.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libpacking-6a0bd7288ebcd78f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"vector2","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/vector2.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libvector2-6a851b48349d75b8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#criterion@0.5.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/criterion-0.5.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"criterion","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/criterion-0.5.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["cargo_bench_support","default","plotters","rayon"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcriterion-727eb062b3d20820.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#typenum@1.18.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"typenum","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/typenum-1.18.0/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtypenum-1fe6a8967e0ce0f1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#az@1.2.1","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/az-1.2.1/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"az","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/az-1.2.1/src/lib.rs","edition":"2018","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libaz-3f77fde8ee9d0455.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"rect","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/rect.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librect-064a8700067a583a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"snap_canvas","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/snap_canvas.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsnap_canvas-5910212523bc8294.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"tile","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/tile.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libtile-0c2eea6ad1d87290.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"range","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/range.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librange-c8b1b613bf68a3e9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"delta","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/delta.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdelta-a7749bd3af2cf750.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"snap_spacing","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/snap_spacing.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsnap_spacing-9fe0d404dc0e4837.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"bezier","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/bezier.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbezier-2f5ab7c8fb7d3050.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"ui","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/ui.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libui-20140835478eb968.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"align","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/align.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libalign-8eea0aa396a573f5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"registry+https://github.com/rust-lang/crates.io-index#fixed@1.29.0","manifest_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixed-1.29.0/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fixed","src_path":"/Users/softmarshmallow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/fixed-1.29.0/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfixed-3eb4d8329a44b123.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_gradients","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_gradients.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_gradients-74e63e7142a4ee90.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_corner_radius","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_corner_radius.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_corner_radius-e6be8aec58da049a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_variable_width","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_variable_width.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_variable_width-86e0cde12c454177.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"shape_to_vector_network","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/shape_to_vector_network.rs","edition":"2021","doc":false,"doctest":false,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::shape::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/tests/shape_to_vector_network.rs","byte_start":617,"byte_end":643,"line_start":24,"line_end":24,"column_start":14,"column_end":40,"is_primary":true,"text":[{"text":" let vn = build_rrect_vector_network(&shape);","highlight_start":14,"highlight_end":40}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::shape::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/tests/shape_to_vector_network.rs:24:14\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m24\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m let vn = build_rrect_vector_network(&shape);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"shape_to_vector_network","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/shape_to_vector_network.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libshape_to_vector_network-49bf3562d4396ecf.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_curve","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_curve.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_curve-5ce2168d6cb6d8ad.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_regions","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_regions.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_regions-cce4f8a81393823d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["bench"],"crate_types":["bin"],"name":"bench_mipmap","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/benches/bench_mipmap.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbench_mipmap-c02b02c390634690.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"scene_cache","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/scene_cache.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libscene_cache-407c96d5b12e4086.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"sys_camera","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/sys_camera.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libsys_camera-74917ae2ed7de676.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_emoji_placeholder","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_emoji_placeholder.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_emoji_placeholder-e9ebcab9f1aaec7d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/fps_overlay.rs","byte_start":483,"byte_end":491,"line_start":20,"line_end":20,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 36.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/fps_overlay.rs:20:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m20\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 36.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/hit_overlay.rs","byte_start":736,"byte_end":744,"line_start":25,"line_end":25,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/hit_overlay.rs:25:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m25\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/ruler_overlay.rs","byte_start":841,"byte_end":849,"line_start":33,"line_end":33,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 10.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/ruler_overlay.rs:33:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m33\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 10.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/stats_overlay.rs","byte_start":518,"byte_end":526,"line_start":21,"line_end":21,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 16.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/stats_overlay.rs:21:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m21\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 16.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/devtools/stroke_overlay.rs","byte_start":709,"byte_end":717,"line_start":27,"line_end":27,"column_start":59,"column_end":67,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);","highlight_start":59,"highlight_end":67}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/devtools/stroke_overlay.rs:27:59\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m27\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(crate::fonts::embedded::typeface(crate::fonts::embedded::geistmono::BYTES), 20.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/fonts/embedded/mod.rs","byte_start":128,"byte_end":136,"line_start":7,"line_end":7,"column_start":41,"column_end":49,"is_primary":true,"text":[{"text":" pub static TYPEFACE_GEIST: Typeface = typeface(geist::BYTES);","highlight_start":41,"highlight_end":49}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/fonts/embedded/mod.rs:7:41\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m7\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub static TYPEFACE_GEIST: Typeface = typeface(geist::BYTES);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/fonts/embedded/mod.rs","byte_start":196,"byte_end":204,"line_start":8,"line_end":8,"column_start":45,"column_end":53,"is_primary":true,"text":[{"text":" pub static TYPEFACE_GEISTMONO: Typeface = typeface(geistmono::BYTES);","highlight_start":45,"highlight_end":53}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/fonts/embedded/mod.rs:8:45\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m8\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m pub static TYPEFACE_GEISTMONO: Typeface = typeface(geistmono::BYTES);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":15918,"byte_end":15944,"line_start":519,"line_end":519,"column_start":9,"column_end":35,"is_primary":true,"text":[{"text":" build_rrect_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:519:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m519\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_rrect_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":17925,"byte_end":17951,"line_start":607,"line_end":607,"column_start":9,"column_end":35,"is_primary":true,"text":[{"text":" build_rrect_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":35}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:607:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m607\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_rrect_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":31616,"byte_end":31651,"line_start":1114,"line_end":1114,"column_start":9,"column_end":44,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":44}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:1114:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m1114\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/node/schema.rs","byte_start":38463,"byte_end":38488,"line_start":1347,"line_end":1347,"column_start":9,"column_end":34,"is_primary":true,"text":[{"text":" build_star_vector_network(&self.to_own_shape())","highlight_start":9,"highlight_end":34}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/node/schema.rs:1347:9\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m1347\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_star_vector_network(&self.to_own_shape())\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":1795,"byte_end":1821,"line_start":61,"line_end":61,"column_start":36,"column_end":62,"is_primary":true,"text":[{"text":" Shape::RRect(shape) => build_rrect_vector_network(shape),","highlight_start":36,"highlight_end":62}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::rrect::build_rrect_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:61:36\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m61\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::RRect(shape) => build_rrect_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":1873,"byte_end":1908,"line_start":62,"line_end":62,"column_start":44,"column_end":79,"is_primary":true,"text":[{"text":" Shape::SimplePolygon(shape) => build_simple_polygon_vector_network(shape),","highlight_start":44,"highlight_end":79}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:62:44\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m62\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::SimplePolygon(shape) => build_simple_polygon_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/mod.rs","byte_start":2415,"byte_end":2440,"line_start":71,"line_end":71,"column_start":49,"column_end":74,"is_primary":true,"text":[{"text":" Shape::RegularStarPolygon(shape) => build_star_vector_network(shape),","highlight_start":49,"highlight_end":74}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::regular_star::build_star_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/mod.rs:71:49\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m71\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m Shape::RegularStarPolygon(shape) => build_star_vector_network(shape),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/regular_polygon.rs","byte_start":1386,"byte_end":1421,"line_start":45,"line_end":45,"column_start":5,"column_end":40,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&SimplePolygonShape {","highlight_start":5,"highlight_end":40}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/regular_polygon.rs:45:5\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m45\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&SimplePolygonShape {\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"message":{"$message_type":"diagnostic","message":"use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/src/shape/regular_star.rs","byte_start":2221,"byte_end":2256,"line_start":77,"line_end":77,"column_start":5,"column_end":40,"is_primary":true,"text":[{"text":" build_simple_polygon_vector_network(&SimplePolygonShape {","highlight_start":5,"highlight_end":40}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `shape::polygon::build_simple_polygon_vector_network`: use VectorGeometryShape instead\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/src/shape/regular_star.rs:77:5\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m77\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m build_simple_polygon_vector_network(&SimplePolygonShape {\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["cdylib","rlib"],"crate_types":["cdylib","rlib"],"name":"cg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcg-8f2da469258060a2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfonts-1931acda6daa18fc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["lib"],"crate_types":["lib"],"name":"fonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfonts-f74163539a8fb4f4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_inner_shadow","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_inner_shadow.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_inner_shadow-63d88df1646801cc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sector","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sector.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sector-6c79cf4402f5ec29.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_decoration_color","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_decoration_color.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_decoration_color-3ab9ececcf35dd9d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_text_backdrop_blur_path","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_text_backdrop_blur_path.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_text_backdrop_blur_path-0277c37181cd838e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_tint","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_tint.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_tint.rs","byte_start":836,"byte_end":844,"line_start":25,"line_end":25,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_tint.rs:25:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m25\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_tint","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_tint.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_tint-e6ce6bd768b03472.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_shapes","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_shapes.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_shapes-d7aee80c986100df.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_font_features","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_font_features.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_font_features-7c8e32bdb24dfe67.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"fonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/fonts.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libfonts-48329c94acb89659.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["bench"],"crate_types":["bin"],"name":"bench_rectangles","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/benches/bench_rectangles.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libbench_rectangles-9258a5927e33abf3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_var_opsz","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_var_opsz.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_var_opsz-a8ce95e22b8ea05e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_4_two_variable_fonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_4_two_variable_fonts.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_4_two_variable_fonts-8c5c85ceafcbda5b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"parse_fvar","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/parse_fvar.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libparse_fvar-7b4b63dd04addd5b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"get_romans_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/get_romans_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libget_romans_test-607f306dd5da500b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_3_one_variable_ital","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_3_one_variable_ital.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_3_one_variable_ital-807d489b119cf520.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"parse_features","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/parse_features.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libparse_features-e7d92303dde75f9c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm#0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"grida-canvas-wasm","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm/src/main.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgrida_canvas_wasm-6ee6e869dd13e25e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"resolution_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/resolution_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libresolution_test-c86ee5c42b0f7535.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"parse4ui","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/examples/parse4ui.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libparse4ui-b44c0b2920743999.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_2_many_static","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_2_many_static.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_2_many_static-b01fdc0fa98361cc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"resolution_verify","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/resolution_verify.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libresolution_verify-7155280a54933bd9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_level1","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_level1.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_level1-fb2a9637c74735d7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_level2_placeholder","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_level2_placeholder.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_level2_placeholder-66675b54bbdeca69.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"roboto_flex","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/examples/roboto_flex.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libroboto_flex-b54632fd04b8bda8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"get_faces_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/get_faces_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libget_faces_test-66ddbc96f26762a2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_1_one_static","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_1_one_static.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_1_one_static-a0c37ca79d8da2c7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"zero_copy","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/zero_copy.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libzero_copy-4679e642972b9975.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"ttf_parser_chained_sequence_features","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/examples/ttf_parser_chained_sequence_features.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libttf_parser_chained_sequence_features-67e57bf0446e8252.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_name_checking","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_name_checking.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_name_checking-679463f52dc4b5ce.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"resolution_doc","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/resolution_doc.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libresolution_doc-1d66e23c98377a23.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm#0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm/Cargo.toml","target":{"kind":["bin"],"crate_types":["bin"],"name":"grida-canvas-wasm","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-wasm/src/main.rs","edition":"2021","doc":true,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgrida_canvas_wasm-8a560c27fccbd07e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"parse_ui_styles","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/parse_ui_styles.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libparse_ui_styles-b3ff4d7d40d63369.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"get_italics_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/get_italics_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libget_italics_test-bb1e8d89b7bdb1a1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_level2_failures","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_level2_failures.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_level2_failures-54541bd5a5fa3555.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"parse_stat","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/parse_stat.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libparse_stat-b493b6c4bee0fffc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"get_romans_simple_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/get_romans_simple_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libget_romans_simple_test-bb32a7f69879529e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"e2e_round_trip_simple_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/e2e_round_trip_simple_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libe2e_round_trip_simple_test-e2f7792ec027c694.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"italic_scenario_3_1_variable_slnt_instances","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/italic_scenario_3_1_variable_slnt_instances.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libitalic_scenario_3_1_variable_slnt_instances-f7890d9380644848.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"parse_ui","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/tests/parse_ui.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libparse_ui-a7fdd8df405c7404.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts#fonts@0.2.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"zero_copy","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas-fonts/examples/zero_copy.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","serde"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libzero_copy-5eb1892ae7b95407.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_fonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_fonts.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_fonts-fe38c78fba662da1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_var_wght","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_var_wght.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_var_wght-c7ee572e5a973f90.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_paragraph_layout_width_auto","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_paragraph_layout_width_auto.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_paragraph_layout_width_auto-d933d336844b7219.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"hit_test","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/hit_test.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libhit_test-9699becf034ddd92.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_vector","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_vector.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_vector-2bcd0aad43f5da8f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_saturation","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_saturation.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_saturation.rs","byte_start":1016,"byte_end":1024,"line_start":30,"line_end":30,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_saturation.rs:30:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m30\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_saturation","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_saturation.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_saturation-4939cf66344af5cd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_text_shadow","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_text_shadow.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_sk_text_shadow.rs","byte_start":953,"byte_end":961,"line_start":26,"line_end":26,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 48.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_sk_text_shadow.rs:26:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m26\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 48.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_text_shadow","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_text_shadow.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_text_shadow-56571587de3525bc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"resources","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/resources.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libresources-fc2b6d8f9879ff2d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_font_fallback_cjk_noto","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_font_fallback_cjk_noto.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_font_fallback_cjk_noto-ae5619ca945b9da8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_srcset","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_srcset.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_srcset-b130fa67aeb91653.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_line_height","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_line_height.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_line_height-2705ba161e11868f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_shadows_highlights","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_shadows_highlights.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_shadows_highlights.rs","byte_start":1092,"byte_end":1100,"line_start":24,"line_end":24,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_shadows_highlights.rs:24:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m24\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_shadows_highlights","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_shadows_highlights.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_shadows_highlights-74ec10125e222582.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_paint","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_paint.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_paint-6a3fdd33ae4cfece.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_polygon","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_polygon.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_polygon-a89a1ec00443d867.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_paragraph_linemetrics","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_paragraph_linemetrics.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_paragraph_linemetrics-22c750d931f7e434.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_container","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_container.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_container-4c5cc1fef8606b47.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_paragraph_path_vector","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_paragraph_path_vector.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_paragraph_path_vector-a20fa07686d8ba49.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_temperature","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_temperature.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_temperature.rs","byte_start":932,"byte_end":940,"line_start":27,"line_end":27,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_temperature.rs:27:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m27\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_temperature","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_temperature.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_temperature-45e18e47074e5913.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_cache_picture","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_cache_picture.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_cache_picture-698ecd65d165e221.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_effects","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_effects.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_effects-901d1fa71a001482.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_var_slnt","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_var_slnt.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_var_slnt-179e293f034e658f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_sweep_transform","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_sweep_transform.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_sweep_transform-2037e8f97954389e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_image","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_image.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_image-5125c74e47fca28f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_booleans","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_booleans.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_booleans-dbecd5e83615945d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_boolop","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_boolop.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_boolop-cfed803a0f705c17.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_decoration","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_decoration.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_decoration-5e7b91f44a5dfa9e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_triangle","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_triangle.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_triangle-9fe5dc40c594e26f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sksvg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sksvg.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sksvg-aabab5db742da7c6.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_text_inner_shadow","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_text_inner_shadow.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_sk_text_inner_shadow.rs","byte_start":992,"byte_end":1000,"line_start":26,"line_end":26,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 48.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_sk_text_inner_shadow.rs:26:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m26\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 48.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_text_inner_shadow","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_text_inner_shadow.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_text_inner_shadow-103acfdc5c952631.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_diamond","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_diamond.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_diamond-7c6f6f6685d95962.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_skpdf","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_skpdf.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_skpdf-62467cc1367b5816.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_webfonts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_webfonts.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_webfonts-5753365f2f1d112c.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_tiling","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_tiling.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_tiling-057a9c400d3eacdb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_shapes_ellipse","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_shapes_ellipse.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_shapes_ellipse-7683e1ce9cf3fbce.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_liquid_glass","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_liquid_glass.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_liquid_glass-44acc2d4ec283015.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bug_text_deocration_mode_skip_ink","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bug_text_deocration_mode_skip_ink.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbug_text_deocration_mode_skip_ink-a4330d969bcaca88.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"export_as_pdf","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/export_as_pdf.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libexport_as_pdf-e4886c73f8c1f8ad.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_font_fallback_script","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_font_fallback_script.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_font_fallback_script-92e79a0f2750055e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_progressive_blur","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_progressive_blur.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_progressive_blur-dd66ddabdf6d9422.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"vector_corner_radius","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/vector_corner_radius.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libvector_corner_radius-ebfeb5f5410e5a98.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"mipmap","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/mipmap.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmipmap-83ea2ca9763aedab.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_word_spacing","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_word_spacing.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_word_spacing-a0cf7898382f5fd9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_strokes","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_strokes.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_strokes-9d77fae5646ca3ef.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_fills","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_fills.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_fills-ab297e038de53c54.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_texts","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_texts.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_texts-29b5edab5ddaee7a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_images","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_images.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_images-a4a081c776b21293.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"geometry_cache","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/geometry_cache.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libgeometry_cache-7eb85425abbb06e9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"dashed_stroke","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/dashed_stroke.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libdashed_stroke-c4bbb0468309cad3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_svg","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_svg.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_svg-52ffd3c1ebdd05d8.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_radial_transform","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_radial_transform.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_radial_transform-eebf7e091b0b3e57.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_path_discrete","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_path_discrete.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_path_discrete-b3f83cadb4c000e4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_line","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_line.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_line-aed4d20b1fd88ecc.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_contrast","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_contrast.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_contrast.rs","byte_start":899,"byte_end":907,"line_start":30,"line_end":30,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_contrast.rs:30:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m30\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_contrast","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_contrast.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_contrast-3ed7b10336a6c4b4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_mask","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_mask.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_mask-a17af4033028608e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"camera","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/camera.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcamera-6e67f80b6ea5127b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"open_path_stroke_align","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/open_path_stroke_align.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libopen_path_stroke_align-6c9fb5f1ade4741d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_var_casl","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_var_casl.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_var_casl-69837b799f03c359.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"sys_winit_raf","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/sys_winit_raf.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libsys_winit_raf-e4a7240fb0adcbfa.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_progressive_blur_backdrop_multipass","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_progressive_blur_backdrop_multipass.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_progressive_blur_backdrop_multipass-b52b720f12f500e1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_sweep","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_sweep.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_sweep-9d4c85084a96bb68.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_arc","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_arc.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_arc-4e1002cf9470b7c9.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_colors","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_colors.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_colors-b3e99151343384ae.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_mask","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_mask.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_mask-7c1a7a32dfc5c98a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_linear_transform","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_linear_transform.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_linear_transform-0f1c782c03cc604b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_diamond_transform","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_diamond_transform.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_diamond_transform-16d72af6b2f831e5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"clitool_font","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/clitool_font.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libclitool_font-e17da9e2d4b72f50.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_cache_text_picture","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_cache_text_picture.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_cache_text_picture-afc8c172cd914f3a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_path_corner","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_path_corner.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_path_corner-c8a149143fb08e5b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"wd_animation","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/wd_animation.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libwd_animation-d4c3fdd90a5bc82f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_cache_image","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_cache_image.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_cache_image-2f3067ee5466898a.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_progressive_blur_multipass","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_progressive_blur_multipass.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_progressive_blur_multipass-600445fb99219db3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"render_bounds","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/render_bounds.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librender_bounds-554f3dc8a357f469.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_paints","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_paints.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_sk_paints.rs","byte_start":2037,"byte_end":2045,"line_start":49,"line_end":49,"column_start":30,"column_end":38,"is_primary":true,"text":[{"text":" cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES),","highlight_start":30,"highlight_end":38}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_sk_paints.rs:49:30\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m49\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES),\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_paints","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_paints.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_paints-d06e9e0cc0c161a7.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_type_stroke","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_type_stroke.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_type_stroke-e586d6b9afbe3501.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"sys_timer","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/sys_timer.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libsys_timer-6d40f05b5d8b8523.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"app_grida","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/app_grida.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libapp_grida-548167c8fb090e70.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_container_stroke","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_container_stroke.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_container_stroke-d751844a08a7144e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_fillrule_evenodd","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_fillrule_evenodd.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_fillrule_evenodd-45ed3eab081b2016.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_radial","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_radial.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_radial-a6246847ea35cef1.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_nested","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_nested.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_nested-5569d658e088dcf3.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_blendmode","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_blendmode.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_blendmode-131dee25bb7e24b0.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_fillrule","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_fillrule.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_fillrule-df1b8e80f0ac085e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_pdf","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_pdf.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_pdf-d5ccb482e331318b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"vn_path","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/tests/vn_path.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libvn_path-84cfe426e0d1c90e.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_perlin_noise","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_perlin_noise.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_perlin_noise-68903f83a93cfb00.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_image","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_image.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_sk_image.rs","byte_start":1626,"byte_end":1634,"line_start":41,"line_end":41,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_sk_image.rs:41:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m41\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_sk_image","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_sk_image.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_sk_image-d9dc8ba076ac6c64.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_regions_strokes","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_regions_strokes.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_regions_strokes-882e45cf920ee8e4.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-message","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_exposure","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_exposure.rs","edition":"2021","doc":false,"doctest":false,"test":false},"message":{"$message_type":"diagnostic","message":"use of deprecated function `cg::fonts::embedded::typeface`: will be removed","code":{"code":"deprecated","explanation":null},"level":"warning","spans":[{"file_name":"crates/grida-canvas/examples/golden_image_filters_exposure.rs","byte_start":879,"byte_end":887,"line_start":25,"line_end":25,"column_start":56,"column_end":64,"is_primary":true,"text":[{"text":" static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);","highlight_start":56,"highlight_end":64}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[{"message":"`#[warn(deprecated)]` on by default","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":"\u001b[0m\u001b[1m\u001b[33mwarning\u001b[0m\u001b[0m\u001b[1m: use of deprecated function `cg::fonts::embedded::typeface`: will be removed\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m--> \u001b[0m\u001b[0mcrates/grida-canvas/examples/golden_image_filters_exposure.rs:25:56\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m\u001b[1m\u001b[38;5;12m25\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m static FONT: Font = Font::new(cg::fonts::embedded::typeface(cg::fonts::embedded::geistmono::BYTES), 12.0);\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[33m^^^^^^^^\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m|\u001b[0m\n\u001b[0m \u001b[0m\u001b[0m\u001b[1m\u001b[38;5;12m= \u001b[0m\u001b[0m\u001b[1mnote\u001b[0m\u001b[0m: `#[warn(deprecated)]` on by default\u001b[0m\n\n"}} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_image_filters_exposure","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_image_filters_exposure.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_image_filters_exposure-d4eba4732c34912d.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_basic","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_basic.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_basic-106bf2ecae66ea40.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"bench_100k","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/bench_100k.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libbench_100k-6955e4fd5ce43453.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"grida_lines","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/grida_lines.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgrida_lines-b03e1343105eb1dd.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_gradient_linear","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_gradient_linear.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_gradient_linear-090a522733a5dd4f.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_vector_regions_fills","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_vector_regions_fills.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_vector_regions_fills-e1910f6369debe97.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas#cg@0.0.0","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/Cargo.toml","target":{"kind":["example"],"crate_types":["bin"],"name":"golden_ring","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/grida-canvas/examples/golden_ring.rs","edition":"2021","doc":false,"doctest":false,"test":false},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":false},"features":["default","web"],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/examples/libgolden_ring-ab81b200e6c68d76.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"viewport","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/viewport.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libviewport-7674cf748ce202bb.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"utils","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/utils.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libutils-eb707877207caab2.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"layout","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/layout.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/liblayout-ecbc847e43637cb5.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"rect_boolean","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/rect_boolean.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/librect_boolean-3f585b99e99f5b25.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"snap_advanced","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/snap_advanced.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libsnap_advanced-18184a1182e87471.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"color","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/color.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libcolor-2aa98f29f3779b8b.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["test"],"crate_types":["bin"],"name":"region","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/tests/region.rs","edition":"2021","doc":false,"doctest":false,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libregion-fe8541647146f977.rmeta"],"executable":null,"fresh":true} -{"reason":"compiler-artifact","package_id":"path+file:///Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2#0.0.2","manifest_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/Cargo.toml","target":{"kind":["rlib"],"crate_types":["rlib"],"name":"math2","src_path":"/Users/softmarshmallow/Documents/Apps/grida/grida/crates/math2/src/lib.rs","edition":"2021","doc":true,"doctest":true,"test":true},"profile":{"opt_level":"0","debuginfo":2,"debug_assertions":true,"overflow_checks":true,"test":true},"features":[],"filenames":["/Users/softmarshmallow/Documents/Apps/grida/grida/target/debug/deps/libmath2-1ec693c6277ac0a7.rmeta"],"executable":null,"fresh":true} -{"reason":"build-finished","success":true} From b6501dec3e2eb0ffcfc80de2c9520a755c432ad8 Mon Sep 17 00:00:00 2001 From: Universe Date: Sun, 19 Oct 2025 18:43:17 +0900 Subject: [PATCH 03/38] polygon node geo trait --- crates/grida-canvas/src/node/schema.rs | 47 +++++++++++++++++++++++++- editor/.gitignore | 2 ++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/crates/grida-canvas/src/node/schema.rs b/crates/grida-canvas/src/node/schema.rs index 00a63a325a..05a7d7bac9 100644 --- a/crates/grida-canvas/src/node/schema.rs +++ b/crates/grida-canvas/src/node/schema.rs @@ -77,7 +77,7 @@ pub struct StrokeStyle { pub stroke_dash_array: Option>, } -#[derive(Debug, Clone)] +#[derive(Debug, Clone, Copy, PartialEq)] pub struct Size { pub width: f32, pub height: f32, @@ -1009,6 +1009,51 @@ impl NodeStrokesMixin for PolygonNodeRec { } } +impl NodeGeometryMixin for PolygonNodeRec { + fn rect(&self) -> Rectangle { + // Compute bounding box from points + let mut min_x = f32::INFINITY; + let mut min_y = f32::INFINITY; + let mut max_x = f32::NEG_INFINITY; + let mut max_y = f32::NEG_INFINITY; + + for p in &self.points { + min_x = min_x.min(p.x); + min_y = min_y.min(p.y); + max_x = max_x.max(p.x); + max_y = max_y.max(p.y); + } + + if self.points.is_empty() { + Rectangle { + x: 0.0, + y: 0.0, + width: 0.0, + height: 0.0, + } + } else { + Rectangle { + x: min_x, + y: min_y, + width: max_x - min_x, + height: max_y - min_y, + } + } + } + + fn has_stroke_geometry(&self) -> bool { + self.stroke_width > 0.0 && self.strokes.iter().any(|s| s.opacity() > 0.0) + } + + fn render_bounds_stroke_width(&self) -> f32 { + if self.has_stroke_geometry() { + self.stroke_width + } else { + 0.0 + } + } +} + impl PolygonNodeRec { pub fn to_own_shape(&self) -> SimplePolygonShape { SimplePolygonShape { diff --git a/editor/.gitignore b/editor/.gitignore index c2a9083dde..e3c653e318 100644 --- a/editor/.gitignore +++ b/editor/.gitignore @@ -46,3 +46,5 @@ supabase/.temp # Playwright node_modules/ + +target/ \ No newline at end of file From bf027a2591a5e7ad16f2f394865c61b076199e05 Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 20 Oct 2025 16:42:18 +0900 Subject: [PATCH 04/38] position and constraints type --- crates/grida-canvas/src/cg/types.rs | 88 ++++++++++++++++++++++++++++- 1 file changed, 87 insertions(+), 1 deletion(-) diff --git a/crates/grida-canvas/src/cg/types.rs b/crates/grida-canvas/src/cg/types.rs index 324ac79a4c..9ef3729b21 100644 --- a/crates/grida-canvas/src/cg/types.rs +++ b/crates/grida-canvas/src/cg/types.rs @@ -1,7 +1,7 @@ use core::str; use math2::{box_fit::BoxFit, transform::AffineTransform}; use serde::Deserialize; -use std::hash::Hash; +use std::{default, hash::Hash}; use super::alignment::Alignment; @@ -546,6 +546,92 @@ impl Default for LayoutMode { } } +#[derive(Debug, Clone, Copy, PartialEq, Deserialize)] +pub enum LayoutPositioning { + Relative, + Absolute, +} + +impl Default for LayoutPositioning { + fn default() -> Self { + LayoutPositioning::Absolute + } +} + +/// Constraint positioning specifier for constraints layout. +/// +/// Defines how a node is anchored along an axis (horizontal or vertical) relative to its parent container. +/// +/// ## Horizontal Positioning +/// - [`Start`](LayoutConstraintAnchor::Start): Anchored to the left edge +/// - [`End`](LayoutConstraintAnchor::End): Anchored to the right edge +/// - [`Center`](LayoutConstraintAnchor::Center): Centered horizontally +/// - [`Stretch`](LayoutConstraintAnchor::Stretch): Anchored to both left and right edges +/// +/// ## Vertical Positioning +/// - [`Start`](LayoutConstraintAnchor::Start): Anchored to the top edge +/// - [`End`](LayoutConstraintAnchor::End): Anchored to the bottom edge +/// - [`Center`](LayoutConstraintAnchor::Center): Centered vertically +/// - [`Stretch`](LayoutConstraintAnchor::Stretch): Anchored to both top and bottom edges +#[derive(Debug, Clone, Copy, PartialEq, Deserialize)] +pub enum LayoutConstraintAnchor { + /// Start anchor (left for horizontal, top for vertical) + Start, + /// End anchor (right for horizontal, bottom for vertical) + End, + /// Center anchor (centered along the axis) + Center, + /// Stretch anchor (anchored to both edges of the axis) + Stretch, +} + +impl Default for LayoutConstraintAnchor { + fn default() -> Self { + LayoutConstraintAnchor::Start + } +} + +/// Defines how a node is constrained relative to its parent container. +/// +/// Specifies the constraint positioning behavior for both horizontal and vertical axes, +/// determining how the node will be resized and positioned when its parent's size changes. +/// +/// ## Fields +/// - `x`: Horizontal constraint anchor (left, right, center, or stretch) +/// - `y`: Vertical constraint anchor (top, bottom, center, or stretch) +/// +/// ## Examples +/// +/// Fixed to top-left corner: +/// ```ignore +/// LayoutConstraints { +/// x: LayoutConstraintAnchor::Start, // left +/// y: LayoutConstraintAnchor::Start, // top +/// } +/// ``` +/// +/// Centered in parent: +/// ```ignore +/// LayoutConstraints { +/// x: LayoutConstraintAnchor::Center, // horizontally centered +/// y: LayoutConstraintAnchor::Center, // vertically centered +/// } +/// ``` +/// +/// Stretched to fill parent: +/// ```ignore +/// LayoutConstraints { +/// x: LayoutConstraintAnchor::Stretch, // left and right edges +/// y: LayoutConstraintAnchor::Stretch, // top and bottom edges +/// } +/// ``` +pub struct LayoutConstraints { + /// Horizontal constraint anchor determining how the node is positioned/resized along the x-axis + pub x: LayoutConstraintAnchor, + /// Vertical constraint anchor determining how the node is positioned/resized along the y-axis + pub y: LayoutConstraintAnchor, +} + /// Defines whether flex items are forced into a single line or can wrap onto multiple lines. /// /// `LayoutWrap` controls the wrapping behavior of flex items within a flex container. From 4cea5a14e38a98df07818df3ebd06afc149adffb Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 20 Oct 2025 16:44:26 +0900 Subject: [PATCH 05/38] default for LayoutConstraints --- crates/grida-canvas/src/cg/types.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/crates/grida-canvas/src/cg/types.rs b/crates/grida-canvas/src/cg/types.rs index 9ef3729b21..2466d0a025 100644 --- a/crates/grida-canvas/src/cg/types.rs +++ b/crates/grida-canvas/src/cg/types.rs @@ -625,6 +625,7 @@ impl Default for LayoutConstraintAnchor { /// y: LayoutConstraintAnchor::Stretch, // top and bottom edges /// } /// ``` +#[derive(Debug, Clone, Copy, PartialEq, Deserialize)] pub struct LayoutConstraints { /// Horizontal constraint anchor determining how the node is positioned/resized along the x-axis pub x: LayoutConstraintAnchor, @@ -632,6 +633,15 @@ pub struct LayoutConstraints { pub y: LayoutConstraintAnchor, } +impl Default for LayoutConstraints { + fn default() -> Self { + LayoutConstraints { + x: LayoutConstraintAnchor::Start, + y: LayoutConstraintAnchor::Start, + } + } +} + /// Defines whether flex items are forced into a single line or can wrap onto multiple lines. /// /// `LayoutWrap` controls the wrapping behavior of flex items within a flex container. From 0410ee3994bc5db63bc95c79a642acf7d993d995 Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 20 Oct 2025 17:01:59 +0900 Subject: [PATCH 06/38] layoutstyle --- crates/grida-canvas/src/node/schema.rs | 181 +++++++++++++++++++++++++ 1 file changed, 181 insertions(+) diff --git a/crates/grida-canvas/src/node/schema.rs b/crates/grida-canvas/src/node/schema.rs index 05a7d7bac9..1c45850320 100644 --- a/crates/grida-canvas/src/node/schema.rs +++ b/crates/grida-canvas/src/node/schema.rs @@ -162,6 +162,187 @@ pub struct UnknownNodeProperties { pub text_align_vertical: Option, } +/// Universal **Layout Model** — geometry-first, with layout as an optional feature. +/// +/// This structure defines a flexible, engine-agnostic layout model designed for +/// 2D scene graphs, editors, and design tools (like Grida). +/// It treats **geometry** (`x`, `y`, `width`, `height`) as the source of truth, +/// while **layout behavior** (constraints, flexbox, etc.) acts as a secondary feature. +/// +/// +/// ## Design Philosophy +/// +/// - **Geometry-first:** +/// Direct manipulation (drag, resize) writes to explicit coordinates. +/// Layout only runs when explicitly enabled or attached. +/// +/// - **Layout as a feature:** +/// Layout engines (constraint, flexbox, grid, etc.) are *plugins* rather than the primary model. +/// +/// - **Universal 2D:** +/// Designed to accommodate constraint layout (AutoLayout-style), +/// flow-based layout (CSS/Flexbox), and manual placement (absolute/anchored). +/// +/// +/// ## Supported Concepts +/// +/// - **Relative positioning** +/// - Child elements positioned relative to their parent or constraints. +/// - **Inset / constraint layout** +/// - Anchors and offsets similar to Android’s ConstraintLayout or iOS AutoLayout. +/// - Auto-resizing between opposing constraints (e.g., `left + right`). +/// - **Min/Max size** +/// - Optional bounds to clamp final computed size. +/// - **Flexbox model** +/// - Horizontal or vertical layout direction, wrapping, and alignment. +/// - **Padding and gap** +/// - Internal spacing and inter-item gaps (like CSS `padding` and `gap`). +/// +/// +/// ## Why not just the CSS Box Model? +/// +/// The CSS box model is layout-first — every element participates in flow, +/// and geometry is derived from layout. +/// This model is **the inverse**: geometry exists independently, and layout +/// is applied *optionally* as a feature. +/// +/// This allows: +/// - Direct manipulation on canvas (like Figma, Sketch, Grida Canvas) +/// - Partial layout (only certain containers auto-layout) +/// - Constraint-based resizing (anchors, aspect ratios) +/// - More intuitive runtime control for graphics tools +/// +#[derive(Debug, Clone)] +pub struct LayoutStyle { + pub layout_mode: LayoutMode, + pub layout_position: LayoutPositioning, + pub layout_constraints: LayoutConstraints, + + pub x: Option, + pub y: Option, + + pub width: Option, + pub height: Option, + pub min_width: Option, + pub max_width: Option, + pub min_height: Option, + pub max_height: Option, + + pub layout_direction: Axis, + pub layout_wrap: Option, + pub layout_main_axis_alignment: Option, + pub layout_cross_axis_alignment: Option, + pub layout_padding: Option, + pub layout_gap: Option, + pub layout_grow: Option, +} + +impl LayoutStyle { + /// Creates a new `LayoutStyle` with default values. + pub fn new() -> Self { + Self { + layout_mode: LayoutMode::Normal, + layout_position: LayoutPositioning::Absolute, + layout_constraints: LayoutConstraints::default(), + x: None, + y: None, + width: None, + height: None, + min_width: None, + max_width: None, + min_height: None, + max_height: None, + layout_direction: Axis::Horizontal, + layout_wrap: None, + layout_main_axis_alignment: None, + layout_cross_axis_alignment: None, + layout_padding: None, + layout_gap: None, + layout_grow: None, + } + } + + /// Sets the layout mode. + pub fn with_layout_mode(mut self, mode: LayoutMode) -> Self { + self.layout_mode = mode; + self + } + + /// Sets the layout positioning. + pub fn with_layout_position(mut self, position: LayoutPositioning) -> Self { + self.layout_position = position; + self + } + + /// Sets the layout constraints. + pub fn with_layout_constraints(mut self, constraints: LayoutConstraints) -> Self { + self.layout_constraints = constraints; + self + } + + /// Sets both x and y position. + pub fn with_position(mut self, x: f32, y: f32) -> Self { + self.x = Some(x); + self.y = Some(y); + self + } + + /// Sets both width and height. + pub fn with_size(mut self, width: f32, height: f32) -> Self { + self.width = Some(width); + self.height = Some(height); + self + } + + /// Sets the layout direction. + pub fn with_layout_direction(mut self, direction: Axis) -> Self { + self.layout_direction = direction; + self + } + + /// Sets the layout wrap behavior. + pub fn with_layout_wrap(mut self, wrap: LayoutWrap) -> Self { + self.layout_wrap = Some(wrap); + self + } + + /// Sets the main axis alignment. + pub fn with_layout_main_axis_alignment(mut self, alignment: MainAxisAlignment) -> Self { + self.layout_main_axis_alignment = Some(alignment); + self + } + + /// Sets the cross axis alignment. + pub fn with_layout_cross_axis_alignment(mut self, alignment: CrossAxisAlignment) -> Self { + self.layout_cross_axis_alignment = Some(alignment); + self + } + + /// Sets the layout padding. + pub fn with_padding(mut self, padding: EdgeInsets) -> Self { + self.layout_padding = Some(padding); + self + } + + /// Sets the layout gap. + pub fn with_gap(mut self, gap: LayoutGap) -> Self { + self.layout_gap = Some(gap); + self + } + + /// Sets the layout grow factor. + pub fn with_layout_grow(mut self, grow: f32) -> Self { + self.layout_grow = Some(grow); + self + } +} + +impl Default for LayoutStyle { + fn default() -> Self { + Self::new() + } +} + #[derive(Debug, Clone)] pub enum Node { Error(ErrorNodeRec), From 817468a093701b39c5bfa8ee94f594cf8448c3bf Mon Sep 17 00:00:00 2001 From: Universe Date: Wed, 22 Oct 2025 14:35:46 +0900 Subject: [PATCH 07/38] chore - add `end` in main axis select --- editor/scaffolds/sidecontrol/controls/main-axis-alignment.tsx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/editor/scaffolds/sidecontrol/controls/main-axis-alignment.tsx b/editor/scaffolds/sidecontrol/controls/main-axis-alignment.tsx index 41acbba543..1844ac9382 100644 --- a/editor/scaffolds/sidecontrol/controls/main-axis-alignment.tsx +++ b/editor/scaffolds/sidecontrol/controls/main-axis-alignment.tsx @@ -22,6 +22,10 @@ export function MainAxisAlignmentControl({ label: "Center", value: "center", }, + { + label: "End", + value: "end", + }, { label: "Space Between", value: "space-between", From bdb138cd22d185123a2deb97a7f8396a94b8b9b9 Mon Sep 17 00:00:00 2001 From: Universe Date: Wed, 22 Oct 2025 16:25:10 +0900 Subject: [PATCH 08/38] flex align ui --- .../components/controls-flex-align/page.tsx | 202 ++++++++++++++ .../sidecontrol/controls/flex-align.tsx | 251 ++++++++++++++++++ .../sidecontrol-node-selection.tsx | 67 +++-- 3 files changed, 492 insertions(+), 28 deletions(-) create mode 100644 editor/app/(dev)/ui/components/controls-flex-align/page.tsx create mode 100644 editor/scaffolds/sidecontrol/controls/flex-align.tsx diff --git a/editor/app/(dev)/ui/components/controls-flex-align/page.tsx b/editor/app/(dev)/ui/components/controls-flex-align/page.tsx new file mode 100644 index 0000000000..5448c07b0f --- /dev/null +++ b/editor/app/(dev)/ui/components/controls-flex-align/page.tsx @@ -0,0 +1,202 @@ +"use client"; + +import React, { useState } from "react"; +import { FlexAlignControl } from "@/scaffolds/sidecontrol/controls/flex-align"; +import { ArrowRight, ArrowDown } from "lucide-react"; +import type cg from "@grida/cg"; + +type MainAxisAlignment = cg.MainAxisAlignment; +type CrossAxisAlignment = cg.CrossAxisAlignment; +type Axis = cg.Axis; + +interface FlexAlignValue { + direction: Axis; + mainAxisAlignment: MainAxisAlignment; + crossAxisAlignment: CrossAxisAlignment; +} + +export default function FlexAlignControlPage() { + const [flexAlignValue, setFlexAlignValue] = useState({ + direction: "horizontal", + mainAxisAlignment: "start", + crossAxisAlignment: "start", + }); + + return ( +
+
+

Flex Align Control

+

+ Interactive 3x3 grid for selecting flex alignment properties +

+
+ +
+ {/* Direction Toggle */} +
+ +
+ + +
+
+ + {/* Flex Align Control */} +
+ +
+ + setFlexAlignValue((prev) => ({ + ...prev, + ...value, + })) + } + /> +
+
+ + {/* Preview Section */} +
+ + + {/* Preview with varying heights */} +
+

+ Children with varying heights + + • Best for horizontal (row) direction + +

+
+
+
+
+
+
+ + {/* Preview with varying widths */} +
+

+ Children with varying widths + + • Best for vertical (column) direction + +

+
+
+
+
+
+
+
+ + {/* Current Values Display */} +
+ +
+
+ Direction:{" "} + {flexAlignValue.direction} +
+
+ Main Axis:{" "} + {flexAlignValue.mainAxisAlignment} +
+
+ Cross Axis:{" "} + {flexAlignValue.crossAxisAlignment} +
+
+
+ + {/* CSS Output */} +
+ +
+ + {`flex-direction: ${flexAlignValue.direction === "horizontal" ? "row" : "column"};`} +
+ {`justify-content: ${flexAlignValue.mainAxisAlignment};`} +
+ {`align-items: ${flexAlignValue.crossAxisAlignment};`} +
+
+
+
+
+ ); +} diff --git a/editor/scaffolds/sidecontrol/controls/flex-align.tsx b/editor/scaffolds/sidecontrol/controls/flex-align.tsx new file mode 100644 index 0000000000..1d1cc7b020 --- /dev/null +++ b/editor/scaffolds/sidecontrol/controls/flex-align.tsx @@ -0,0 +1,251 @@ +/** + * @fileoverview + * @module flex-align + * + * Flex Alignment Control Component + * + * This component provides a unified, interactive UI for selecting flex layout alignment properties. + * It combines both main-axis (justify-content) and cross-axis (align-items) alignment controls + * into a single, intuitive 3x3 grid interface. + * + * ## Features + * - **Unified Interface**: Single UI component for selecting both main and cross axis alignment + * - **3x3 Grid Layout**: Visual representation of 9 possible alignment combinations + * - **Smart Spacing Handling**: When spacing properties (space-between, space-around, space-evenly) + * are set externally, the UI adapts to show only 3 relevant alignment options + * - **Interactive Selection**: Users can easily select alignment combinations with visual feedback + * + * ## Alignment Combinations + * The component supports all 9 combinations of flex alignment: + * - **Main Axis**: start, center, end, space-between, space-around, space-evenly + * - **Cross Axis**: start, center, end, stretch + * + * ## Usage Context + * This component is used in the side control panel for flex containers, providing a more + * intuitive alternative to separate main-axis and cross-axis alignment controls. + * + * ## Related Components + * - `MainAxisAlignmentControl`: Handles main axis alignment (justify-content) + * - `CrossAxisAlignmentControl`: Handles cross axis alignment (align-items) + * + * ## Visual Design + * The component displays a 3x3 grid where: + * - Each cell represents a combination of main and cross axis alignment + * - Selected combinations are highlighted + * - The grid adapts based on external spacing properties + * - Icons and visual indicators help users understand the alignment behavior + * + * @see {@link ./main-axis-alignment.tsx} - Main axis alignment control + * @see {@link ./cross-axis-alignment.tsx} - Cross axis alignment control + */ + +import React from "react"; +import { cn } from "@/components/lib/utils"; +import type cg from "@grida/cg"; +import grida from "@grida/schema"; + +type MainAxisAlignment = cg.MainAxisAlignment; +type CrossAxisAlignment = cg.CrossAxisAlignment; +type Axis = cg.Axis; + +interface AlignmentCellIconProps { + direction: Axis; + mainAxisAlignment: MainAxisAlignment; + crossAxisAlignment: CrossAxisAlignment; + className?: string; +} + +/** + * AlignmentCellIcon - Flexbox icon representing flex alignment + * + * Renders 3 bars with varying sizes to represent flex alignment: + * - Main axis alignment controls bar distribution (justifyContent: start/center/end) + * - Cross axis alignment controls bar positioning (alignItems: start/center/end) + * - Direction determines if bars are horizontal or vertical + * - For horizontal: bars are vertical (1px wide), distributed left-right, aligned top/center/bottom + * - For vertical: bars are horizontal (1px tall), distributed top-bottom, aligned left/center/right + */ +export function AlignmentCellIcon({ + direction, + mainAxisAlignment, + crossAxisAlignment, + className, +}: AlignmentCellIconProps) { + const isHorizontal = direction === "horizontal"; + + const barWidth = 2; + const barLengths = [10, 14, 7]; // Varying sizes for visual distinction + const flexDirection = isHorizontal ? "row" : "column"; + + return ( +
+ {barLengths.map((length, index) => ( +
+ ))} +
+ ); +} + +type TMixed = typeof grida.mixed | T; + +interface FlexAlignValue { + mainAxisAlignment: MainAxisAlignment; + crossAxisAlignment: CrossAxisAlignment; +} + +interface FlexAlignControlProps { + direction?: Axis; + value?: TMixed; + onValueChange?: (value: FlexAlignValue) => void; + className?: string; +} + +// Pre-defined grid orders for each direction +// Key format: "mainAxis-crossAxis" +const GRID_ORDERS = { + horizontal: { + // Horizontal: rows=cross-axis, columns=main-axis + "start-start": 0, + "center-start": 1, + "end-start": 2, + "start-center": 3, + "center-center": 4, + "end-center": 5, + "start-end": 6, + "center-end": 7, + "end-end": 8, + }, + vertical: { + // Vertical: rows=main-axis, columns=cross-axis + "start-start": 0, + "start-center": 1, + "start-end": 2, + "center-start": 3, + "center-center": 4, + "center-end": 5, + "end-start": 6, + "end-center": 7, + "end-end": 8, + }, +} as const; + +/** + * FlexAlignControl - 3x3 grid interface for selecting flex alignment + * + * Provides a unified interface for selecting both main-axis and cross-axis alignment + * through a visual 3x3 grid where each cell represents a combination of alignments. + */ +export function FlexAlignControl({ + direction = "horizontal", + value, + onValueChange, + className, +}: FlexAlignControlProps) { + const isMixed = value === grida.mixed; + const hasValue = value && value !== grida.mixed; + + const mainAxisAlignment = hasValue ? value.mainAxisAlignment : undefined; + const crossAxisAlignment = hasValue ? value.crossAxisAlignment : undefined; + const isHorizontal = direction === "horizontal"; + + // Define the 3x3 grid combinations + const mainAxisOptions: MainAxisAlignment[] = ["start", "center", "end"]; + const crossAxisOptions: CrossAxisAlignment[] = ["start", "center", "end"]; + + const handleCellClick = ( + mainAxis: MainAxisAlignment, + crossAxis: CrossAxisAlignment + ) => { + onValueChange?.({ + mainAxisAlignment: mainAxis, + crossAxisAlignment: crossAxis, + }); + }; + + const isSelected = ( + mainAxis: MainAxisAlignment, + crossAxis: CrossAxisAlignment + ) => { + if (!hasValue) return false; + return mainAxisAlignment === mainAxis && crossAxisAlignment === crossAxis; + }; + + const getGridOrder = ( + mainAxis: MainAxisAlignment, + crossAxis: CrossAxisAlignment + ) => { + const key = + `${mainAxis}-${crossAxis}` as keyof typeof GRID_ORDERS.horizontal; + return GRID_ORDERS[direction][key]; + }; + + return ( +
+ {mainAxisOptions.flatMap((mainAxis) => + crossAxisOptions.map((crossAxis) => { + const selected = isSelected(mainAxis, crossAxis); + + return ( + + ); + }) + )} +
+ ); +} diff --git a/editor/scaffolds/sidecontrol/sidecontrol-node-selection.tsx b/editor/scaffolds/sidecontrol/sidecontrol-node-selection.tsx index 7e29bd1249..33b33c18b6 100644 --- a/editor/scaffolds/sidecontrol/sidecontrol-node-selection.tsx +++ b/editor/scaffolds/sidecontrol/sidecontrol-node-selection.tsx @@ -20,8 +20,7 @@ import { import { BorderControl } from "./controls/border"; import { PaddingControl } from "./controls/padding"; import { GapControl } from "./controls/gap"; -import { CrossAxisAlignmentControl } from "./controls/cross-axis-alignment"; -import { MainAxisAlignmentControl } from "./controls/main-axis-alignment"; +import { FlexAlignControl } from "./controls/flex-align"; import { TemplateControl } from "./controls/template"; import { CursorControl } from "./controls/cursor"; import { PropertyLine, PropertyLineLabel } from "./ui"; @@ -616,22 +615,29 @@ function ModeMixedNodeProperties({ /> - {/* */} - - {types.has("container") && ( - @@ -928,7 +1009,6 @@ function ModeNodeProperties({ {config.position !== "off" && } - {config.size !== "off" && }
@@ -117,8 +122,9 @@ export function PaddingControl({ step={1} className="w-full h-7 rounded-none rounded-l-md border-r-0" onValueCommit={(v) => handleIndividualChange("left", v)} + aria-label="Padding left" /> - L +
{/* Separator */}
@@ -133,8 +139,9 @@ export function PaddingControl({ step={1} className="w-full h-7 rounded-none border-x-0" onValueCommit={(v) => handleIndividualChange("top", v)} + aria-label="Padding top" /> - T +
{/* Separator */}
@@ -149,8 +156,9 @@ export function PaddingControl({ step={1} className="w-full h-7 rounded-none border-x-0" onValueCommit={(v) => handleIndividualChange("right", v)} + aria-label="Padding right" /> - R +
{/* Separator */}
@@ -165,11 +173,23 @@ export function PaddingControl({ step={1} className="w-full h-7 rounded-none rounded-r-md border-l-0" onValueCommit={(v) => handleIndividualChange("bottom", v)} + aria-label="Padding bottom" /> - B +
)}
); } + +const Label = ({ children }: React.PropsWithChildren) => { + return ( + + ); +}; From 8207f684c75a9c0271d1f5c2187dc55e94263310 Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 27 Oct 2025 03:19:58 +0900 Subject: [PATCH 34/38] Refactor geometry handling in canvas: replace path_bounds function with NodeRectMixin for SVGPathNode, enhance layout engine to utilize schema dimensions for various node types, and implement manual layout results for non-layout nodes. --- crates/grida-canvas/src/cache/geometry.rs | 21 +---- crates/grida-canvas/src/layout/engine.rs | 107 +++++++++++++++++++++- crates/grida-canvas/src/node/schema.rs | 26 ++++++ 3 files changed, 131 insertions(+), 23 deletions(-) diff --git a/crates/grida-canvas/src/cache/geometry.rs b/crates/grida-canvas/src/cache/geometry.rs index 2c3b88381f..17a3ccba24 100644 --- a/crates/grida-canvas/src/cache/geometry.rs +++ b/crates/grida-canvas/src/cache/geometry.rs @@ -433,7 +433,7 @@ impl GeometryCache { (n.transform, rect.width, rect.height) } Node::SVGPath(n) => { - let rect = path_bounds(&n.data); + let rect = n.rect(); (n.transform, rect.width, rect.height) } Node::Vector(n) => { @@ -539,25 +539,6 @@ fn transform_rect(rect: &Rectangle, t: &AffineTransform) -> Rectangle { rect::transform(*rect, t) } -fn path_bounds(data: &str) -> Rectangle { - if let Some(path) = skia_safe::path::Path::from_svg(data) { - let b = path.compute_tight_bounds(); - Rectangle { - x: b.left(), - y: b.top(), - width: b.width(), - height: b.height(), - } - } else { - Rectangle { - x: 0.0, - y: 0.0, - width: 0.0, - height: 0.0, - } - } -} - fn inflate_rect(rect: Rectangle, delta: f32) -> Rectangle { if delta <= 0.0 { return rect; diff --git a/crates/grida-canvas/src/layout/engine.rs b/crates/grida-canvas/src/layout/engine.rs index 11ef063a75..b48c1df919 100644 --- a/crates/grida-canvas/src/layout/engine.rs +++ b/crates/grida-canvas/src/layout/engine.rs @@ -47,7 +47,7 @@ use crate::layout::cache::LayoutResult; use crate::layout::tree::LayoutTree; use crate::layout::ComputedLayout; use crate::node::scene_graph::SceneGraph; -use crate::node::schema::{Node, NodeId, Size}; +use crate::node::schema::{Node, NodeId, NodeRectMixin, Size}; use taffy::prelude::*; /// Universal Layout Engine @@ -110,6 +110,43 @@ impl LayoutEngine { &self.result } + /// Extract schema width, height from any node type + fn get_schema_size(node: &Node) -> (f32, f32) { + match node { + Node::Container(n) => ( + n.layout_dimensions.width.unwrap_or(0.0), + n.layout_dimensions.height.unwrap_or(0.0), + ), + Node::Rectangle(n) => (n.size.width, n.size.height), + Node::Ellipse(n) => (n.size.width, n.size.height), + Node::Image(n) => (n.size.width, n.size.height), + Node::Line(n) => (n.size.width, n.size.height), + Node::Polygon(n) => { + let rect = n.rect(); + (rect.width, rect.height) + } + Node::RegularPolygon(n) => (n.size.width, n.size.height), + Node::RegularStarPolygon(n) => (n.size.width, n.size.height), + Node::TextSpan(n) => (n.width.unwrap_or(0.0), n.height.unwrap_or(0.0)), + Node::Vector(n) => { + let rect = n.network.bounds(); + (rect.width, rect.height) + } + Node::SVGPath(n) => { + // Use NodeRectMixin::rect() to compute bounds from path data + // Note: This involves SVG parsing and is not cached - avoid in tight loops + let rect = n.rect(); + (rect.width, rect.height) + } + Node::Group(_) | Node::BooleanOperation(_) => { + // Size derived from children bounds (dynamic) + (0.0, 0.0) + } + Node::Error(n) => (n.size.width, n.size.height), + Node::InitialContainer(_) => (0.0, 0.0), // Size set by viewport + } + } + /// Extract schema x, y position from any node type /// /// Used for infinite canvas support: root nodes use their schema positions @@ -120,7 +157,11 @@ impl LayoutEngine { /// - ICB (InitialContainerBlock) always returns (0, 0) fn get_schema_position(node: &Node) -> (f32, f32) { match node { + // Container nodes use position field + Node::InitialContainer(_) => (0.0, 0.0), // ICB always at origin Node::Container(n) => (n.position.x().unwrap_or(0.0), n.position.y().unwrap_or(0.0)), + + // Leaf nodes with transform field Node::Rectangle(n) => (n.transform.x(), n.transform.y()), Node::Ellipse(n) => (n.transform.x(), n.transform.y()), Node::Image(n) => (n.transform.x(), n.transform.y()), @@ -129,19 +170,53 @@ impl LayoutEngine { Node::RegularPolygon(n) => (n.transform.x(), n.transform.y()), Node::RegularStarPolygon(n) => (n.transform.x(), n.transform.y()), Node::TextSpan(n) => (n.transform.x(), n.transform.y()), + Node::Vector(n) => (n.transform.x(), n.transform.y()), + Node::SVGPath(n) => (n.transform.x(), n.transform.y()), + Node::Error(n) => (n.transform.x(), n.transform.y()), + + // Complex nodes with optional transform Node::Group(n) => { let t = n.transform.unwrap_or_default(); (t.x(), t.y()) } - Node::InitialContainer(_) => (0.0, 0.0), // ICB always at origin - _ => (0.0, 0.0), + Node::BooleanOperation(n) => { + let t = n.transform.unwrap_or_default(); + (t.x(), t.y()) + } } } + /// Check if a node should participate in Taffy layout + /// + /// Nodes that should be in Taffy tree: + /// - Layout containers (Container, ICB) - need to lay out children + /// - Nodes with layout_child field - can participate as flex children + /// + /// Nodes skipped from Taffy (use manual schema layout): + /// - Vector, SVGPath, Group, BooleanOperation, Error - no layout_child support + fn should_participate_in_taffy(node: &Node) -> bool { + matches!( + node, + Node::Container(_) + | Node::InitialContainer(_) + | Node::Rectangle(_) + | Node::Ellipse(_) + | Node::Image(_) + | Node::Line(_) + | Node::Polygon(_) + | Node::RegularPolygon(_) + | Node::RegularStarPolygon(_) + | Node::TextSpan(_) + ) + } + /// Recursively build Taffy tree for a node and its descendants /// /// This universal method handles all node types without switch-case logic. /// Each node gets an appropriate Taffy style based on its type and properties. + /// + /// Nodes without layout_child support are skipped from Taffy tree but still + /// get layout results created manually from their schema. fn build_taffy_subtree( &mut self, node_id: &NodeId, @@ -150,6 +225,12 @@ impl LayoutEngine { ) -> Option { let node = graph.get_node(node_id).ok()?; + // Nodes that don't participate in Taffy layout (Vector, SVGPath, Group, etc.) + // are skipped and get manual layout results created in extract_all_layouts() + if !Self::should_participate_in_taffy(node) { + return None; // Skip Taffy, use manual layout result from schema + } + // Get style for this node (universal mapping) // Note: Absolutely positioned children are still included in the tree, // Taffy handles them specially (removes them from flex flow but computes their position) @@ -197,6 +278,9 @@ impl LayoutEngine { /// For infinite canvas support, we override root positions with their schema positions /// so multiple artboards/nodes can be positioned anywhere in the viewport. /// + /// **Non-Layout Nodes**: Nodes without layout_child field (Vector, SVGPath, Group, etc.) + /// are skipped from Taffy tree. We create manual layout results from their schema here. + /// /// Child nodes use Taffy's computed positions unchanged (correct flex/absolute layout). fn extract_all_layouts(&mut self, id: &NodeId, graph: &SceneGraph) { // Extract this node's layout if it exists in the Taffy tree @@ -213,6 +297,23 @@ impl LayoutEngine { } self.result.insert(*id, computed); + } else { + // Node not in Taffy tree (skipped due to no layout_child support) + // Create manual layout result from schema + if let Ok(node) = graph.get_node(id) { + let (x, y) = Self::get_schema_position(node); + let (width, height) = Self::get_schema_size(node); + + self.result.insert( + *id, + ComputedLayout { + x, + y, + width, + height, + }, + ); + } } // Recurse for children diff --git a/crates/grida-canvas/src/node/schema.rs b/crates/grida-canvas/src/node/schema.rs index cf1ac8229a..614029a204 100644 --- a/crates/grida-canvas/src/node/schema.rs +++ b/crates/grida-canvas/src/node/schema.rs @@ -1440,6 +1440,32 @@ impl NodeTransformMixin for SVGPathNodeRec { } } +impl NodeRectMixin for SVGPathNodeRec { + /// Compute bounding rectangle from SVG path data + /// + /// **Performance Note**: This is NOT cached and involves parsing the SVG path string + /// and computing tight bounds via Skia. Avoid calling this in tight loops. + /// The result should be cached by the caller if needed repeatedly. + fn rect(&self) -> Rectangle { + if let Some(path) = skia_safe::path::Path::from_svg(&self.data) { + let bounds = path.compute_tight_bounds(); + Rectangle { + x: bounds.left(), + y: bounds.top(), + width: bounds.width(), + height: bounds.height(), + } + } else { + Rectangle { + x: 0.0, + y: 0.0, + width: 0.0, + height: 0.0, + } + } + } +} + /// A polygon shape defined by a list of absolute 2D points, following the SVG `` model. /// /// ## Characteristics From 38c5d05bbf326ea078329052b1ad6a1bca07766a Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 27 Oct 2025 05:25:45 +0900 Subject: [PATCH 35/38] Add layout_child support for Vector and SVGPath nodes, enhance layout engine to correctly position nodes without layout_child, and update related tests for positioning verification. --- crates/grida-canvas/examples/grida_vector.rs | 9 ++ crates/grida-canvas/src/io/io_figma.rs | 2 + crates/grida-canvas/src/io/io_grida.rs | 16 +++ crates/grida-canvas/src/layout/engine.rs | 112 +++++++++++++++++- crates/grida-canvas/src/layout/into_taffy.rs | 73 +++++++++++- crates/grida-canvas/src/node/factory.rs | 1 + crates/grida-canvas/src/node/schema.rs | 6 + .../tests/vector_corner_radius.rs | 1 + 8 files changed, 217 insertions(+), 3 deletions(-) diff --git a/crates/grida-canvas/examples/grida_vector.rs b/crates/grida-canvas/examples/grida_vector.rs index d665cb9340..e84fd5013a 100644 --- a/crates/grida-canvas/examples/grida_vector.rs +++ b/crates/grida-canvas/examples/grida_vector.rs @@ -44,6 +44,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child( @@ -76,6 +77,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child( @@ -109,6 +111,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child(Node::Vector(vector_node_3), Parent::NodeId(root_id.clone())); @@ -138,6 +141,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child(Node::Vector(vector_node_4), Parent::NodeId(root_id.clone())); @@ -170,6 +174,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child( @@ -211,6 +216,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child(Node::Vector(vector_node_5), Parent::NodeId(root_id.clone())); @@ -241,6 +247,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child( @@ -281,6 +288,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child(Node::Vector(vector_node_6), Parent::NodeId(root_id.clone())); @@ -316,6 +324,7 @@ async fn demo_vectors() -> Scene { stroke_width_profile: None, stroke_align: StrokeAlign::Center, stroke_dash_array: None, + layout_child: None, }; graph.append_child(Node::Vector(vector_node_7), Parent::NodeId(root_id.clone())); diff --git a/crates/grida-canvas/src/io/io_figma.rs b/crates/grida-canvas/src/io/io_figma.rs index 7048907f30..df46f84cbb 100644 --- a/crates/grida-canvas/src/io/io_figma.rs +++ b/crates/grida-canvas/src/io/io_figma.rs @@ -1298,6 +1298,7 @@ impl FigmaConverter { stroke_width: 0.0, stroke_align: StrokeAlign::Inside, stroke_dash_array: None, + layout_child: None, }); children.push(self.repository.insert(path_node)); } @@ -1320,6 +1321,7 @@ impl FigmaConverter { stroke_width: 0.0, stroke_align: StrokeAlign::Inside, stroke_dash_array: None, + layout_child: None, }); children.push(self.repository.insert(path_node)); } diff --git a/crates/grida-canvas/src/io/io_grida.rs b/crates/grida-canvas/src/io/io_grida.rs index 80602a6398..e15d0db5ef 100644 --- a/crates/grida-canvas/src/io/io_grida.rs +++ b/crates/grida-canvas/src/io/io_grida.rs @@ -1643,6 +1643,14 @@ impl From for Node { stroke_width: 0.0, stroke_align: node.base.stroke_align.unwrap_or(StrokeAlign::Inside), stroke_dash_array: None, + layout_child: Some(LayoutChildStyle { + layout_positioning: node + .base + .position + .map(|position| position.into()) + .unwrap_or_default(), + layout_grow: 0.0, + }), }) } } @@ -1729,6 +1737,14 @@ impl From for Node { stroke_width_profile: node.base.stroke_width_profile.map(|p| p.into()), stroke_align: node.base.stroke_align.unwrap_or(StrokeAlign::Inside), stroke_dash_array: None, + layout_child: Some(LayoutChildStyle { + layout_positioning: node + .base + .position + .map(|position| position.into()) + .unwrap_or_default(), + layout_grow: 0.0, + }), }) } } diff --git a/crates/grida-canvas/src/layout/engine.rs b/crates/grida-canvas/src/layout/engine.rs index b48c1df919..48bac3956a 100644 --- a/crates/grida-canvas/src/layout/engine.rs +++ b/crates/grida-canvas/src/layout/engine.rs @@ -193,7 +193,7 @@ impl LayoutEngine { /// - Nodes with layout_child field - can participate as flex children /// /// Nodes skipped from Taffy (use manual schema layout): - /// - Vector, SVGPath, Group, BooleanOperation, Error - no layout_child support + /// - Group, BooleanOperation - no layout_child support (size derived from children) fn should_participate_in_taffy(node: &Node) -> bool { matches!( node, @@ -207,6 +207,9 @@ impl LayoutEngine { | Node::RegularPolygon(_) | Node::RegularStarPolygon(_) | Node::TextSpan(_) + | Node::Error(_) + | Node::Vector(_) + | Node::SVGPath(_) ) } @@ -1334,4 +1337,111 @@ mod tests { assert_eq!(rect_transform.x(), 300.0); assert_eq!(rect_transform.y(), 150.0); } + + #[test] + fn test_svgpath_positioning() { + // Verify that SVGPath nodes without layout_child are positioned using their transform + let nf = NodeFactory::new(); + let mut graph = SceneGraph::new(); + + // Create an SVGPath node with transform coordinates + let mut svgpath = nf.create_path_node(); + svgpath.data = "M 0 0 L 100 0 L 100 100 L 0 100 Z".to_string(); + svgpath.transform = AffineTransform::new(200.0, 150.0, 0.0); + // layout_child is None by default + + let svgpath_id = graph.append_child(Node::SVGPath(svgpath), Parent::Root); + + let scene = Scene { + name: "SVGPath positioning test".to_string(), + graph, + background_color: None, + }; + + // Compute layout + let mut engine = LayoutEngine::new(); + let result = engine.compute( + &scene, + Size { + width: 1000.0, + height: 1000.0, + }, + ); + + // Verify position is correct + let layout = result.get(&svgpath_id).expect("SVGPath should have layout"); + assert_eq!( + layout.x, 200.0, + "SVGPath should be positioned at transform.x" + ); + assert_eq!( + layout.y, 150.0, + "SVGPath should be positioned at transform.y" + ); + } + + #[test] + fn test_vector_positioning() { + // Verify that Vector nodes without layout_child are positioned using their transform + use crate::node::schema::{LayerEffects, VectorNodeRec}; + use crate::vectornetwork::{VectorNetwork, VectorNetworkSegment}; + let mut graph = SceneGraph::new(); + + // Create a Vector node with transform coordinates + let vector_node = VectorNodeRec { + active: true, + opacity: 1.0, + blend_mode: crate::cg::types::LayerBlendMode::default(), + mask: None, + effects: LayerEffects::default(), + transform: AffineTransform::new(300.0, 250.0, 0.0), + network: VectorNetwork { + vertices: vec![(0.0, 0.0), (100.0, 0.0), (100.0, 100.0), (0.0, 100.0)], + segments: vec![ + VectorNetworkSegment::ab(0, 1), + VectorNetworkSegment::ab(1, 2), + VectorNetworkSegment::ab(2, 3), + VectorNetworkSegment::ab(3, 0), + ], + regions: vec![], + }, + corner_radius: 0.0, + fills: crate::cg::types::Paints::default(), + strokes: crate::cg::types::Paints::default(), + stroke_width: 0.0, + stroke_width_profile: None, + stroke_align: crate::cg::types::StrokeAlign::Inside, + stroke_dash_array: None, + layout_child: None, + }; + + let vector_id = graph.append_child(Node::Vector(vector_node), Parent::Root); + + let scene = Scene { + name: "Vector positioning test".to_string(), + graph, + background_color: None, + }; + + // Compute layout + let mut engine = LayoutEngine::new(); + let result = engine.compute( + &scene, + Size { + width: 1000.0, + height: 1000.0, + }, + ); + + // Verify position is correct + let layout = result.get(&vector_id).expect("Vector should have layout"); + assert_eq!( + layout.x, 300.0, + "Vector should be positioned at transform.x" + ); + assert_eq!( + layout.y, 250.0, + "Vector should be positioned at transform.y" + ); + } } diff --git a/crates/grida-canvas/src/layout/into_taffy.rs b/crates/grida-canvas/src/layout/into_taffy.rs index 5f3ce537bb..a17c1806a3 100644 --- a/crates/grida-canvas/src/layout/into_taffy.rs +++ b/crates/grida-canvas/src/layout/into_taffy.rs @@ -281,9 +281,17 @@ pub fn node_to_taffy_style(node: &Node, _graph: &SceneGraph, _node_id: &NodeId) Node::Polygon(n) => n.into(), Node::RegularPolygon(n) => n.into(), Node::RegularStarPolygon(n) => n.into(), + Node::Vector(n) => n.into(), + Node::SVGPath(n) => n.into(), + Node::Error(n) => Style { + size: Size { + width: Dimension::length(n.size.width), + height: Dimension::length(n.size.height), + }, + ..grida_style_default() + }, Node::Group(_) => grida_style_default(), - Node::Error(_) => grida_style_default(), - _ => grida_style_default(), + Node::BooleanOperation(_) => grida_style_default(), } } @@ -462,3 +470,64 @@ impl From<&crate::node::schema::TextSpanNodeRec> for Style { apply_layout_child(style, &node.layout_child, node.transform) } } + +/// Convert VectorNodeRec to Taffy Style +impl From<&crate::node::schema::VectorNodeRec> for Style { + fn from(node: &crate::node::schema::VectorNodeRec) -> Self { + let bounds = node.network.bounds(); + let mut style = Style { + size: Size { + width: Dimension::length(bounds.width), + height: Dimension::length(bounds.height), + }, + ..grida_style_default() + }; + + // Apply layout_child if present + style = apply_layout_child(style, &node.layout_child, node.transform); + + // If no layout_child is set, apply transform position as absolute positioning + if node.layout_child.is_none() { + style.position = Position::Absolute; + style.inset = Rect { + left: LengthPercentageAuto::length(node.transform.x()), + top: LengthPercentageAuto::length(node.transform.y()), + right: LengthPercentageAuto::auto(), + bottom: LengthPercentageAuto::auto(), + }; + } + + style + } +} + +/// Convert SVGPathNodeRec to Taffy Style +impl From<&crate::node::schema::SVGPathNodeRec> for Style { + fn from(node: &crate::node::schema::SVGPathNodeRec) -> Self { + let rect = node.rect(); + let mut style = Style { + size: Size { + width: Dimension::length(rect.width), + height: Dimension::length(rect.height), + }, + ..grida_style_default() + }; + + // Apply layout_child if present + style = apply_layout_child(style, &node.layout_child, node.transform); + + // If no layout_child is set, apply transform position as absolute positioning + // This ensures SVGPath nodes with transform coordinates are positioned correctly + if node.layout_child.is_none() { + style.position = Position::Absolute; + style.inset = Rect { + left: LengthPercentageAuto::length(node.transform.x()), + top: LengthPercentageAuto::length(node.transform.y()), + right: LengthPercentageAuto::auto(), + bottom: LengthPercentageAuto::auto(), + }; + } + + style + } +} diff --git a/crates/grida-canvas/src/node/factory.rs b/crates/grida-canvas/src/node/factory.rs index 73b9f66ebf..5a30e0c5f9 100644 --- a/crates/grida-canvas/src/node/factory.rs +++ b/crates/grida-canvas/src/node/factory.rs @@ -220,6 +220,7 @@ impl NodeFactory { stroke_width: Self::DEFAULT_STROKE_WIDTH, stroke_align: Self::DEFAULT_STROKE_ALIGN, stroke_dash_array: None, + layout_child: None, } } diff --git a/crates/grida-canvas/src/node/schema.rs b/crates/grida-canvas/src/node/schema.rs index 614029a204..43aad1b09a 100644 --- a/crates/grida-canvas/src/node/schema.rs +++ b/crates/grida-canvas/src/node/schema.rs @@ -1342,6 +1342,9 @@ pub struct VectorNodeRec { /// alignments are treated as `Center`. pub stroke_align: StrokeAlign, pub stroke_dash_array: Option>, + + /// Layout style for this node when it is a child of a layout container. + pub layout_child: Option, } impl NodeFillsMixin for VectorNodeRec { @@ -1408,6 +1411,9 @@ pub struct SVGPathNodeRec { pub stroke_width: f32, pub stroke_align: StrokeAlign, pub stroke_dash_array: Option>, + + /// Layout style for this node when it is a child of a layout container. + pub layout_child: Option, } impl NodeFillsMixin for SVGPathNodeRec { diff --git a/crates/grida-canvas/tests/vector_corner_radius.rs b/crates/grida-canvas/tests/vector_corner_radius.rs index 39185089db..797530b08e 100644 --- a/crates/grida-canvas/tests/vector_corner_radius.rs +++ b/crates/grida-canvas/tests/vector_corner_radius.rs @@ -48,6 +48,7 @@ fn collect_verbs(path: &skia_safe::Path) -> Vec { fn make_node(corner_radius: f32) -> VectorNodeRec { VectorNodeRec { active: true, + layout_child: None, opacity: 1.0, blend_mode: LayerBlendMode::default(), mask: None, From 16620e40f6c208f8e8ed6dec34244b70e36a8bc4 Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 27 Oct 2025 15:07:09 +0900 Subject: [PATCH 36/38] fix io --- crates/grida-canvas/AGENTS.md | 28 ++++++ crates/grida-canvas/examples/tool_io_grida.rs | 96 +++++++++++++++++++ crates/grida-canvas/src/cg/types.rs | 6 ++ crates/grida-canvas/src/io/io_grida.rs | 43 ++++++++- editor/public/examples/canvas/blank.grida | 1 + .../public/examples/canvas/component-01.grida | 1 + .../examples/canvas/event-page-01.grida | 1 + .../public/examples/canvas/globals-01.grida | 1 + .../public/examples/canvas/helloworld.grida | 1 + .../examples/canvas/instagram-post-01.grida | 3 +- editor/public/examples/canvas/layout-01.grida | 1 + editor/public/examples/canvas/poster-01.grida | 45 ++++----- editor/public/examples/canvas/resume-01.grida | 1 + .../examples/canvas/sketch-teimplate-01.grida | 1 + editor/public/examples/canvas/slides-01.grida | 3 +- 15 files changed, 205 insertions(+), 27 deletions(-) create mode 100644 crates/grida-canvas/examples/tool_io_grida.rs diff --git a/crates/grida-canvas/AGENTS.md b/crates/grida-canvas/AGENTS.md index 047bf22e16..f0a719a10a 100644 --- a/crates/grida-canvas/AGENTS.md +++ b/crates/grida-canvas/AGENTS.md @@ -48,6 +48,34 @@ cargo build cargo run --example ``` +## Tools + +### `tool_io_grida` - Grida File Validator + +A CLI tool for validating `.grida` files and debugging parsing issues. + +**Usage:** + +```sh +cargo run --example tool_io_grida +``` + +**Features:** + +- Validates `.grida` file structure and parses all nodes +- Reports total node count, scene references, and entry scene +- Provides node type breakdown (container, text, image, etc.) +- Detects parsing errors with detailed error messages +- Handles legacy file formats gracefully (missing fields, typos, etc.) + +**Example:** + +```sh +cargo run --example tool_io_grida ../../editor/public/examples/canvas/instagram-post-01.grida +``` + +See [examples/tool_io_grida.rs](./examples/tool_io_grida.rs) for full documentation. + ## Package Docs ```sh diff --git a/crates/grida-canvas/examples/tool_io_grida.rs b/crates/grida-canvas/examples/tool_io_grida.rs new file mode 100644 index 0000000000..55d080c1d8 --- /dev/null +++ b/crates/grida-canvas/examples/tool_io_grida.rs @@ -0,0 +1,96 @@ +//! Grida File Validation Tool +//! +//! This tool validates .grida files by parsing them and reporting success or failure. +//! It's useful for debugging file format issues and verifying that legacy files can be parsed correctly. +//! +//! ## Usage +//! +//! ```bash +//! cargo run --example tool_io_grida +//! ``` +//! +//! ## Example +//! +//! ```bash +//! cargo run --example tool_io_grida ../../editor/public/examples/canvas/instagram-post-01.grida +//! ``` +//! +//! ## Output +//! +//! On success, the tool prints: +//! - Total number of nodes parsed +//! - Scene references +//! - Entry scene ID +//! - Breakdown of node types (group, container, text, etc.) +//! +//! On failure, the tool prints: +//! - Error message describing what failed to parse +//! +//! ## Exit Codes +//! +//! - `0` - Success +//! - `1` - Parse error or file read error + +use cg::io::io_grida::parse; +use std::env; +use std::fs; + +fn main() { + let args: Vec = env::args().collect(); + + if args.len() < 2 { + eprintln!("Usage: cargo run --example tool_io_grida "); + std::process::exit(1); + } + + let file_path = &args[1]; + + println!("Parsing file: {}", file_path); + + match fs::read_to_string(file_path) { + Ok(content) => match parse(&content) { + Ok(file) => { + println!("✓ Successfully parsed {} nodes", file.document.nodes.len()); + println!(" Scenes: {:?}", file.document.scenes_ref); + println!(" Entry scene: {:?}", file.document.entry_scene_id); + + // Count node types + let mut node_types: std::collections::HashMap = + std::collections::HashMap::new(); + for node in file.document.nodes.values() { + let type_name = match node { + cg::io::io_grida::JSONNode::Group(_) => "group", + cg::io::io_grida::JSONNode::Container(_) => "container", + cg::io::io_grida::JSONNode::SVGPath(_) => "svgpath", + cg::io::io_grida::JSONNode::Path(_) => "vector", + cg::io::io_grida::JSONNode::Ellipse(_) => "ellipse", + cg::io::io_grida::JSONNode::Rectangle(_) => "rectangle", + cg::io::io_grida::JSONNode::RegularPolygon(_) => "polygon", + cg::io::io_grida::JSONNode::RegularStarPolygon(_) => "star", + cg::io::io_grida::JSONNode::Line(_) => "line", + cg::io::io_grida::JSONNode::Text(_) => "text", + cg::io::io_grida::JSONNode::BooleanOperation(_) => "boolean", + cg::io::io_grida::JSONNode::Image(_) => "image", + cg::io::io_grida::JSONNode::Scene(_) => "scene", + cg::io::io_grida::JSONNode::Unknown(_) => "unknown", + }; + *node_types.entry(type_name.to_string()).or_insert(0) += 1; + } + if !node_types.is_empty() { + println!(" Node types:"); + for (name, count) in node_types.iter() { + println!(" {}: {}", name, count); + } + } + } + Err(e) => { + eprintln!("✗ Failed to parse: {}", e); + std::process::exit(1); + } + }, + Err(e) => { + eprintln!("✗ Failed to read file: {}", e); + std::process::exit(1); + } + } +} diff --git a/crates/grida-canvas/src/cg/types.rs b/crates/grida-canvas/src/cg/types.rs index 8bbcf15000..b3805bab9f 100644 --- a/crates/grida-canvas/src/cg/types.rs +++ b/crates/grida-canvas/src/cg/types.rs @@ -352,6 +352,12 @@ pub enum FillRule { EvenOdd, } +impl Default for FillRule { + fn default() -> Self { + FillRule::NonZero + } +} + /// Stroke alignment. /// /// - [Flutter](https://api.flutter.dev/flutter/painting/BorderSide/strokeAlign.html) diff --git a/crates/grida-canvas/src/io/io_grida.rs b/crates/grida-canvas/src/io/io_grida.rs index e15d0db5ef..19aa7b98f5 100644 --- a/crates/grida-canvas/src/io/io_grida.rs +++ b/crates/grida-canvas/src/io/io_grida.rs @@ -231,9 +231,9 @@ pub struct CSSBorder { #[derive(Debug, Deserialize)] pub struct JSONSVGPath { pub d: String, - #[serde(rename = "fillRule")] + #[serde(rename = "fillRule", default)] pub fill_rule: FillRule, - pub fill: String, + pub fill: Option, } #[derive(Debug, Deserialize, Clone)] @@ -570,6 +570,16 @@ pub struct JSONSceneNode { pub enum JSONCornerRadius { Uniform(f32), PerCorner(Vec), + PerCornerObject { + #[serde(rename = "topLeftRadius")] + top_left_radius: f32, + #[serde(rename = "topRightRadius")] + top_right_radius: f32, + #[serde(rename = "bottomRightRadius")] + bottom_right_radius: f32, + #[serde(rename = "bottomLeftRadius")] + bottom_left_radius: f32, + }, } impl JSONCornerRadius { @@ -603,6 +613,17 @@ impl JSONCornerRadius { } } } + JSONCornerRadius::PerCornerObject { + top_left_radius, + top_right_radius, + bottom_right_radius, + bottom_left_radius, + } => RectangularCornerRadius { + tl: Radius::circular(top_left_radius), + tr: Radius::circular(top_right_radius), + br: Radius::circular(bottom_right_radius), + bl: Radius::circular(bottom_left_radius), + }, } } @@ -621,6 +642,22 @@ impl JSONCornerRadius { None } } + JSONCornerRadius::PerCornerObject { + top_left_radius, + top_right_radius, + bottom_right_radius, + bottom_left_radius, + } => { + // Check if all corners have the same radius + if (top_left_radius - top_right_radius).abs() < f32::EPSILON + && (top_right_radius - bottom_right_radius).abs() < f32::EPSILON + && (bottom_right_radius - bottom_left_radius).abs() < f32::EPSILON + { + Some(top_left_radius) + } else { + None + } + } } } } @@ -738,7 +775,7 @@ pub struct JSONUnknownNodeProperties { pub enum JSONNode { #[serde(rename = "group")] Group(JSONGroupNode), - #[serde(rename = "container")] + #[serde(rename = "container", alias = "component")] Container(JSONContainerNode), #[serde(rename = "svgpath")] SVGPath(JSONSVGPathNode), diff --git a/editor/public/examples/canvas/blank.grida b/editor/public/examples/canvas/blank.grida index 95f9433311..d19fc03112 100644 --- a/editor/public/examples/canvas/blank.grida +++ b/editor/public/examples/canvas/blank.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "blank": { diff --git a/editor/public/examples/canvas/component-01.grida b/editor/public/examples/canvas/component-01.grida index acebd02ba5..7e3749f9d8 100644 --- a/editor/public/examples/canvas/component-01.grida +++ b/editor/public/examples/canvas/component-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "component": { diff --git a/editor/public/examples/canvas/event-page-01.grida b/editor/public/examples/canvas/event-page-01.grida index 663b6dabc1..5363d69958 100644 --- a/editor/public/examples/canvas/event-page-01.grida +++ b/editor/public/examples/canvas/event-page-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "291:302": { diff --git a/editor/public/examples/canvas/globals-01.grida b/editor/public/examples/canvas/globals-01.grida index 296c45f132..fedfac208a 100644 --- a/editor/public/examples/canvas/globals-01.grida +++ b/editor/public/examples/canvas/globals-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "root": { diff --git a/editor/public/examples/canvas/helloworld.grida b/editor/public/examples/canvas/helloworld.grida index 2e6d5bc6ea..f80d861edf 100644 --- a/editor/public/examples/canvas/helloworld.grida +++ b/editor/public/examples/canvas/helloworld.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "454:341": { diff --git a/editor/public/examples/canvas/instagram-post-01.grida b/editor/public/examples/canvas/instagram-post-01.grida index 98310f1562..26f9ea2dd5 100644 --- a/editor/public/examples/canvas/instagram-post-01.grida +++ b/editor/public/examples/canvas/instagram-post-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "202:2": { @@ -307,7 +308,7 @@ "paths": [ { "d": "M8.33333 0C3.725 0 0 3.75 0 8.33333C0 10.5435 0.877974 12.6631 2.44078 14.2259C3.2146 14.9997 4.13326 15.6135 5.1443 16.0323C6.15535 16.4511 7.23898 16.6667 8.33333 16.6667C10.5435 16.6667 12.6631 15.7887 14.2259 14.2259C15.7887 12.6631 16.6667 10.5435 16.6667 8.33333C16.6667 7.23898 16.4511 6.15535 16.0323 5.1443C15.6135 4.13326 14.9997 3.2146 14.2259 2.44078C13.4521 1.66696 12.5334 1.05313 11.5224 0.634337C10.5113 0.215548 9.42768 1.11022e-15 8.33333 0L8.33333 0ZM11.25 5C11.5815 5 11.8995 5.1317 12.1339 5.36612C12.3683 5.60054 12.5 5.91848 12.5 6.25C12.5 6.58152 12.3683 6.89946 12.1339 7.13388C11.8995 7.3683 11.5815 7.5 11.25 7.5C10.9185 7.5 10.6005 7.3683 10.3661 7.13388C10.1317 6.89946 10 6.58152 10 6.25C10 5.91848 10.1317 5.60054 10.3661 5.36612C10.6005 5.1317 10.9185 5 11.25 5L11.25 5ZM5.41667 5C5.74819 5 6.06613 5.1317 6.30055 5.36612C6.53497 5.60054 6.66667 5.91848 6.66667 6.25C6.66667 6.58152 6.53497 6.89946 6.30055 7.13388C6.06613 7.3683 5.74819 7.5 5.41667 7.5C5.08515 7.5 4.7672 7.3683 4.53278 7.13388C4.29836 6.89946 4.16667 6.58152 4.16667 6.25C4.16667 5.91848 4.29836 5.60054 4.53278 5.36612C4.7672 5.1317 5.08515 5 5.41667 5ZM8.33333 12.9167C6.39167 12.9167 4.74167 11.7 4.075 10L12.5917 10C11.9167 11.7 10.275 12.9167 8.33333 12.9167Z", - "fillRile": "nonzero" + "fillRule": "nonzero" } ] }, diff --git a/editor/public/examples/canvas/layout-01.grida b/editor/public/examples/canvas/layout-01.grida index 6b9c44861f..2a1fe94d16 100644 --- a/editor/public/examples/canvas/layout-01.grida +++ b/editor/public/examples/canvas/layout-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "173:49": { diff --git a/editor/public/examples/canvas/poster-01.grida b/editor/public/examples/canvas/poster-01.grida index c2d9c61143..febbe10ec1 100644 --- a/editor/public/examples/canvas/poster-01.grida +++ b/editor/public/examples/canvas/poster-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "102:2": { @@ -753,91 +754,91 @@ "paths": [ { "d": "M0 21.8644L16.2685 21.8644L16.2685 17.6063L5.13106 17.6063L5.13106 0.301995L0 0.301995L0 21.8644Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M25.8065 5.49631C20.5547 5.49631 17.4157 8.69745 17.4157 13.8918C17.4157 19.0559 20.5547 22.257 25.8065 22.257C31.0281 22.257 34.1671 19.0559 34.1671 13.8918C34.1671 8.69745 31.0281 5.49631 25.8065 5.49631ZM25.8065 18.7539C23.6635 18.7539 22.3053 17.2439 22.3053 13.8918C22.3053 10.5396 23.6635 8.99945 25.8065 8.99945C27.9494 8.99945 29.3076 10.5396 29.3076 13.8918C29.3076 17.2439 27.9494 18.7539 25.8065 18.7539Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M45.4993 21.8644L51.2642 5.8587L46.1935 5.8587L42.7526 16.6701L42.6319 16.6701L39.2213 5.8587L34.0298 5.8587L39.7947 21.8644L45.4993 21.8644Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M62.4997 16.7607C62.228 17.7573 61.4433 19.0257 59.3607 19.0257C57.3384 19.0257 56.0406 17.3949 56.0104 14.8581L67.5402 14.8581C67.9326 8.72765 64.5521 5.49631 59.3305 5.49631C54.1391 5.49631 51.0906 8.72765 51.0906 13.8918C51.0906 19.0559 54.2296 22.257 59.3607 22.257C64.5823 22.257 66.8158 19.3277 67.3893 17.0929L62.4997 16.7607ZM59.3305 8.63705C61.3829 8.63705 62.5299 10.0866 62.6506 11.959L56.0406 11.959C56.1613 10.0866 57.3082 8.63705 59.3305 8.63705Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M75.5497 0L75.5497 3.77494L80.3487 3.77494L80.3487 0L75.5497 0ZM75.5497 5.8587L75.5497 21.8644L80.3487 21.8644L80.3487 5.8587L75.5497 5.8587Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M96.637 10.2376C96.0937 7.24788 93.166 5.49631 89.3328 5.49631C85.56 5.49631 82.2097 7.24788 82.2097 10.449C82.2097 13.9522 84.9563 14.8883 87.552 15.2809L89.3932 15.5829C91.1136 15.8547 92.2303 16.3077 92.2303 17.3043C92.2303 18.4821 91.174 19.2069 89.5139 19.2069C87.6728 19.2069 86.4654 18.3915 86.1334 16.6701L81.6362 17.2137C82.1795 20.4451 85.228 22.257 89.4837 22.257C93.7999 22.257 97.1199 20.6866 97.1199 17.0929C97.1199 13.4388 94.2526 12.563 91.3249 12.0798L89.6346 11.808C88.035 11.5664 86.9786 11.2342 86.9786 10.2074C86.9786 9.12025 87.9746 8.51626 89.363 8.51626C90.8118 8.51626 91.9285 9.33164 92.2002 10.751L96.637 10.2376Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M113.349 18.2707C111.99 18.2707 111.447 18.1197 111.447 16.7003L111.447 8.96925L114.707 8.96925L114.707 5.8587L111.447 5.8587L111.447 1.41938L106.648 1.41938L106.648 5.8587L104.143 5.8587L104.143 8.96925L106.648 8.96925L106.648 17.8781C106.648 21.2 108.097 21.9248 111.598 21.9248C112.775 21.9248 114.164 21.9248 114.616 21.8644L114.616 18.2405C114.254 18.2707 113.832 18.2707 113.349 18.2707Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M121.141 8.00286L121.141 0L116.342 0L116.342 21.8644L121.141 21.8644L121.141 13.3482C121.141 10.6906 122.65 9.33164 124.249 9.33164C126 9.33164 126.966 10.1772 126.966 12.5328L126.966 21.8644L131.765 21.8644L131.765 11.3852C131.765 7.30828 129.32 5.49631 126.242 5.49631C123.887 5.49631 122.288 6.58349 121.261 8.03306L121.141 8.00286Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M144.933 16.7607C144.661 17.7573 143.876 19.0257 141.794 19.0257C139.771 19.0257 138.474 17.3949 138.443 14.8581L149.973 14.8581C150.366 8.72765 146.985 5.49631 141.763 5.49631C136.572 5.49631 133.524 8.72765 133.524 13.8918C133.524 19.0559 136.663 22.257 141.794 22.257C147.015 22.257 149.249 19.3277 149.822 17.0929L144.933 16.7607ZM141.763 8.63705C143.816 8.63705 144.963 10.0866 145.084 11.959L138.474 11.959C138.594 10.0866 139.741 8.63705 141.763 8.63705Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M167.671 5.49631C165.408 5.49631 163.778 6.34189 162.872 7.76127L162.752 7.76127L162.752 0.0301991L157.952 0.0301991L157.952 21.8946L162.54 21.8946L162.54 19.7505L162.661 19.7505C163.687 21.5624 165.559 22.257 167.551 22.257C171.535 22.257 174.462 19.0559 174.462 13.8918C174.462 8.69745 171.535 5.49631 167.671 5.49631ZM166.041 18.6633C163.898 18.6633 162.51 17.1231 162.51 13.8918C162.51 10.6302 163.898 9.09005 166.041 9.09005C168.184 9.09005 169.573 10.6302 169.573 13.8918C169.573 17.1231 168.184 18.6633 166.041 18.6633Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M187.339 16.7607C187.068 17.7573 186.283 19.0257 184.2 19.0257C182.178 19.0257 180.88 17.3949 180.85 14.8581L192.38 14.8581C192.772 8.72765 189.392 5.49631 184.17 5.49631C178.979 5.49631 175.93 8.72765 175.93 13.8918C175.93 19.0559 179.069 22.257 184.2 22.257C189.422 22.257 191.656 19.3277 192.229 17.0929L187.339 16.7607ZM184.17 8.63705C186.223 8.63705 187.37 10.0866 187.49 11.959L180.88 11.959C181.001 10.0866 182.148 8.63705 184.17 8.63705Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M208.405 10.2376C207.862 7.24788 204.934 5.49631 201.101 5.49631C197.328 5.49631 193.978 7.24788 193.978 10.449C193.978 13.9522 196.724 14.8883 199.32 15.2809L201.161 15.5829C202.882 15.8547 203.998 16.3077 203.998 17.3043C203.998 18.4821 202.942 19.2069 201.282 19.2069C199.441 19.2069 198.233 18.3915 197.901 16.6701L193.404 17.2137C193.947 20.4451 196.996 22.257 201.252 22.257C205.568 22.257 208.888 20.6866 208.888 17.0929C208.888 13.4388 206.021 12.563 203.093 12.0798L201.403 11.808C199.803 11.5664 198.747 11.2342 198.747 10.2074C198.747 9.12025 199.743 8.51626 201.131 8.51626C202.58 8.51626 203.697 9.33164 203.968 10.751L208.405 10.2376Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M218.654 18.2707C217.296 18.2707 216.753 18.1197 216.753 16.7003L216.753 8.96925L220.013 8.96925L220.013 5.8587L216.753 5.8587L216.753 1.41938L211.954 1.41938L211.954 5.8587L209.449 5.8587L209.449 8.96925L211.954 8.96925L211.954 17.8781C211.954 21.2 213.403 21.9248 216.904 21.9248C218.081 21.9248 219.469 21.9248 219.922 21.8644L219.922 18.2405C219.56 18.2707 219.137 18.2707 218.654 18.2707Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M236.118 18.2707C234.76 18.2707 234.216 18.1197 234.216 16.7003L234.216 8.96925L237.476 8.96925L237.476 5.8587L234.216 5.8587L234.216 1.41938L229.417 1.41938L229.417 5.8587L226.912 5.8587L226.912 8.96925L229.417 8.96925L229.417 17.8781C229.417 21.2 230.866 21.9248 234.367 21.9248C235.544 21.9248 236.933 21.9248 237.386 21.8644L237.386 18.2405C237.023 18.2707 236.601 18.2707 236.118 18.2707Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M243.91 8.00286L243.91 0L239.111 0L239.111 21.8644L243.91 21.8644L243.91 13.3482C243.91 10.6906 245.419 9.33164 247.019 9.33164C248.769 9.33164 249.735 10.1772 249.735 12.5328L249.735 21.8644L254.534 21.8644L254.534 11.3852C254.534 7.30828 252.09 5.49631 249.011 5.49631C246.657 5.49631 245.057 6.58349 244.031 8.03306L243.91 8.00286Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M256.716 0L256.716 3.77494L261.515 3.77494L261.515 0L256.716 0ZM256.716 5.8587L256.716 21.8644L261.515 21.8644L261.515 5.8587L256.716 5.8587Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M268.295 8.00286L268.295 5.8587L263.708 5.8587L263.708 21.8644L268.507 21.8644L268.507 13.1972C268.507 10.5698 269.986 9.33164 271.615 9.33164C273.366 9.33164 274.332 10.1772 274.332 12.5328L274.332 21.8644L279.131 21.8644L279.131 11.3852C279.131 7.30828 276.686 5.49631 273.517 5.49631C271.042 5.49631 269.412 6.58349 268.416 8.03306L268.295 8.00286Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M297.309 5.8587L292.721 5.8587L292.721 7.82167L292.6 7.82167C291.574 6.1003 289.763 5.49631 287.771 5.49631C283.847 5.49631 280.92 8.45586 280.92 13.2576C280.92 18.0895 283.847 21.049 287.65 21.049C289.914 21.049 291.453 20.3243 292.389 18.9955L292.51 18.9955L292.51 20.5357C292.51 23.314 291.121 24.3408 289.099 24.3408C287.349 24.3408 286.262 23.6764 285.779 22.0456L281.01 22.4986C282.006 26.3038 285.175 27.8137 289.099 27.8137C293.687 27.8137 297.309 26.0018 297.309 20.6263L297.309 5.8587ZM289.28 17.5157C287.168 17.5157 285.809 15.8849 285.809 13.2576C285.809 10.6906 287.168 9.09005 289.28 9.09005C291.363 9.09005 292.751 10.6906 292.751 13.2576C292.751 15.8849 291.363 17.5157 289.28 17.5157Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M331.12 5.8587L326.05 5.8587L323.243 16.5493L323.122 16.5493L320.466 5.8587L315.214 5.8587L312.558 16.5493L312.437 16.5493L309.63 5.8587L304.379 5.8587L309.57 21.8644L314.822 21.8644L317.629 11.355L317.749 11.355L320.587 21.8644L325.929 21.8644L331.12 5.8587Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M342.369 16.7607C342.097 17.7573 341.312 19.0257 339.23 19.0257C337.208 19.0257 335.91 17.3949 335.88 14.8581L347.409 14.8581C347.802 8.72765 344.421 5.49631 339.2 5.49631C334.008 5.49631 330.96 8.72765 330.96 13.8918C330.96 19.0559 334.099 22.257 339.23 22.257C344.451 22.257 346.685 19.3277 347.258 17.0929L342.369 16.7607ZM339.2 8.63705C341.252 8.63705 342.399 10.0866 342.52 11.959L335.91 11.959C336.03 10.0866 337.177 8.63705 339.2 8.63705Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M361.818 5.49631C357.924 5.49631 354.996 8.69745 354.996 13.8918C354.996 19.0559 357.924 22.257 361.908 22.257C363.93 22.257 365.772 21.5624 366.798 19.7505L366.919 19.7505L366.919 21.8644L371.506 21.8644L371.506 0L366.737 0L366.737 7.76127L366.617 7.76127C365.681 6.34189 364.081 5.49631 361.818 5.49631ZM363.447 18.6633C361.274 18.6633 359.886 17.1231 359.886 13.8918C359.886 10.6302 361.274 9.09005 363.447 9.09005C365.56 9.09005 366.979 10.6302 366.979 13.8918C366.979 17.1231 365.56 18.6633 363.447 18.6633Z", - "fillRile": "nonzero" + "fillRule": "nonzero" }, { "d": "M381.639 5.49631C376.388 5.49631 373.249 8.69745 373.249 13.8918C373.249 19.0559 376.388 22.257 381.639 22.257C386.861 22.257 390 19.0559 390 13.8918C390 8.69745 386.861 5.49631 381.639 5.49631ZM381.639 18.7539C379.496 18.7539 378.138 17.2439 378.138 13.8918C378.138 10.5396 379.496 8.99945 381.639 8.99945C383.782 8.99945 385.141 10.5396 385.141 13.8918C385.141 17.2439 383.782 18.7539 381.639 18.7539Z", - "fillRile": "nonzero" + "fillRule": "nonzero" } ] }, diff --git a/editor/public/examples/canvas/resume-01.grida b/editor/public/examples/canvas/resume-01.grida index 00f0a7cef0..3ba6d1be60 100644 --- a/editor/public/examples/canvas/resume-01.grida +++ b/editor/public/examples/canvas/resume-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "1:475": { diff --git a/editor/public/examples/canvas/sketch-teimplate-01.grida b/editor/public/examples/canvas/sketch-teimplate-01.grida index e4d349907e..beb2177715 100644 --- a/editor/public/examples/canvas/sketch-teimplate-01.grida +++ b/editor/public/examples/canvas/sketch-teimplate-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "2": { diff --git a/editor/public/examples/canvas/slides-01.grida b/editor/public/examples/canvas/slides-01.grida index 97f09655ef..491abf2279 100644 --- a/editor/public/examples/canvas/slides-01.grida +++ b/editor/public/examples/canvas/slides-01.grida @@ -1,4 +1,5 @@ { + "version": "0.0.1-beta.1+20251010", "document": { "nodes": { "1": { @@ -608,7 +609,7 @@ "paths": [ { "d": "M16.6667 8.33333C16.6667 3.73333 12.9333 0 8.33333 0C3.73333 0 0 3.73333 0 8.33333C0 12.9333 3.73333 16.6667 8.33333 16.6667C12.9333 16.6667 16.6667 12.9333 16.6667 8.33333ZM8.33333 9.16667L5 9.16667L5 7.5L8.33333 7.5L8.33333 5L11.6667 8.33333L8.33333 11.6667L8.33333 9.16667Z", - "fillRile": "nonzero" + "fillRule": "nonzero" } ] }, From 4c00e645639b78e33adc5fe93f1e02f13b96f691 Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 27 Oct 2025 15:13:59 +0900 Subject: [PATCH 37/38] chore --- crates/grida-canvas/src/io/io_grida.rs | 33 ++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/crates/grida-canvas/src/io/io_grida.rs b/crates/grida-canvas/src/io/io_grida.rs index 19aa7b98f5..231013e861 100644 --- a/crates/grida-canvas/src/io/io_grida.rs +++ b/crates/grida-canvas/src/io/io_grida.rs @@ -518,6 +518,29 @@ impl From for WidthStop { } } +/// Converts JSON positioning fields to LayoutPositioningBasis +/// - If right/bottom are present, uses Inset basis (preserves all four edges) +/// - Otherwise, uses Cartesian basis (x,y) +fn json_position_to_layout_basis( + left: Option, + top: Option, + right: Option, + bottom: Option, +) -> LayoutPositioningBasis { + if right.is_some() || bottom.is_some() { + // Inset basis: preserve all four edges (missing edges default to 0.0) + LayoutPositioningBasis::Inset(EdgeInsets { + top: top.unwrap_or(0.0), + right: right.unwrap_or(0.0), + bottom: bottom.unwrap_or(0.0), + left: left.unwrap_or(0.0), + }) + } else { + // Cartesian basis (x,y) + LayoutPositioningBasis::Cartesian(CGPoint::new(left.unwrap_or(0.0), top.unwrap_or(0.0))) + } +} + /// Utility function to merge single and multiple paint properties according to the specified logic: /// - if paint and no paints, use [paint] /// - if no paint and no paints, use [] @@ -1197,10 +1220,12 @@ impl From for ContainerNodeRec { ContainerNodeRec { active: node.base.active, rotation: node.base.rotation, - position: LayoutPositioningBasis::Cartesian(CGPoint::new( - node.base.left.unwrap_or(0.0), - node.base.top.unwrap_or(0.0), - )), + position: json_position_to_layout_basis( + node.base.left, + node.base.top, + node.base.right, + node.base.bottom, + ), corner_radius: merge_corner_radius( node.base.corner_radius, node.base.corner_radius_top_left, From 86ce8f4019a9c33e204ad9797cc5e219a9d3a33f Mon Sep 17 00:00:00 2001 From: Universe Date: Mon, 27 Oct 2025 15:15:19 +0900 Subject: [PATCH 38/38] wasm 0.0.80-canary.3 --- crates/grida-canvas-wasm/lib/bin/grida-canvas-wasm.js | 2 +- crates/grida-canvas-wasm/lib/bin/grida_canvas_wasm.wasm | 4 ++-- crates/grida-canvas-wasm/package.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/crates/grida-canvas-wasm/lib/bin/grida-canvas-wasm.js b/crates/grida-canvas-wasm/lib/bin/grida-canvas-wasm.js index 3bdc3e6e40..4c6f84c709 100644 --- a/crates/grida-canvas-wasm/lib/bin/grida-canvas-wasm.js +++ b/crates/grida-canvas-wasm/lib/bin/grida-canvas-wasm.js @@ -5,7 +5,7 @@ var createGridaCanvas = (() => { async function(moduleArg = {}) { var moduleRtn; -var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;var readyPromise=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var ENVIRONMENT_IS_WEB=true;var ENVIRONMENT_IS_WORKER=false;var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptName){scriptDirectory=_scriptName}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.slice(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.initialized)FS.init();TTY.init();wasmExports["Gg"]();FS.ignorePermissions=false}function preMain(){}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}var runDependencies=0;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("grida_canvas_wasm.wasm")}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){return{a:wasmImports}}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["Fg"];updateMemoryViews();wasmTable=wasmExports["Hg"];removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(mod,inst)=>{resolve(receiveInstance(mod,inst))})})}wasmBinaryFile??=findWasmBinary();try{var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}catch(e){readyPromiseReject(e);return Promise.reject(e)}}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var noExitRuntime=true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();var exceptionCaught=[];var uncaughtExceptionCount=0;var ___cxa_begin_catch=ptr=>{var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);___cxa_increment_exception_refcount(ptr);return ___cxa_get_exception_ptr(ptr)};var exceptionLast=0;var ___cxa_end_catch=()=>{_setThrew(0,0);var info=exceptionCaught.pop();___cxa_decrement_exception_refcount(info.excPtr);exceptionLast=0};class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var setTempRet0=val=>__emscripten_tempret_set(val);var findMatchingCatch=args=>{var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}for(var caughtType of args){if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown};var ___cxa_find_matching_catch_2=()=>findMatchingCatch([]);var ___cxa_find_matching_catch_3=arg0=>findMatchingCatch([arg0]);var ___cxa_find_matching_catch_4=(arg0,arg1)=>findMatchingCatch([arg0,arg1]);var ___cxa_rethrow=()=>{var info=exceptionCaught.pop();if(!info){abort("no exception to throw")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}exceptionLast=ptr;throw exceptionLast};var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;var ___resumeException=ptr=>{if(!exceptionLast){exceptionLast=ptr}throw exceptionLast};var syscallGetVarargI=()=>{var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret};var syscallGetVarargP=syscallGetVarargI;var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.slice(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.slice(0,-1)}return root+dir},basename:path=>path&&path.match(/([^\/]+|\/)\/*$/)[1],join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>view=>crypto.getRandomValues(view);var randomFill=view=>{(randomFill=initRandomFill())(view)};var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).slice(1);to=PATH_FS.resolve(to).slice(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var intArrayFromString=(stringy,dontAddNull,length)=>{var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array};var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output));tty.output=[]}},ioctl_tcgets(tty){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(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output?.length>0){err(UTF8ArrayToString(tty.output));tty.output=[]}}}};var zeroMemory=(ptr,size)=>HEAPU8.fill(0,ptr,ptr+size);var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(ptr)zeroMemory(ptr,size);return ptr};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16895,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.atime=node.mtime=node.ctime=Date.now();if(parent){parent.contents[name]=node;parent.atime=parent.mtime=parent.ctime=node.atime}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.atime);attr.mtime=new Date(node.mtime);attr.ctime=new Date(node.ctime);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){for(const key of["mode","atime","mtime","ctime"]){if(attr[key]!=null){node[key]=attr[key]}}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw MEMFS.doesNotExistError},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){if(FS.isDir(old_node.mode)){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}FS.hashRemoveNode(new_node)}delete old_node.parent.contents[old_node.name];new_dir.contents[new_name]=old_node;old_node.name=new_name;new_dir.ctime=new_dir.mtime=old_node.parent.ctime=old_node.parent.mtime=Date.now()},unlink(parent,name){delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},readdir(node){return[".","..",...Object.keys(node.contents)]},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var arrayBuffer=await readAsync(url);return new Uint8Array(arrayBuffer)};var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};var preloadPlugins=[];var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url).then(processData,onerror)}else{processData(url)}};var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,filesystems:null,syncFSRequests:0,readFiles:{},ErrnoError:class{name="ErrnoError";constructor(errno){this.errno=errno}},FSStream:class{shared={};get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{node_ops={};stream_ops={};readMode=292|73;writeMode=146;mounted=null;constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.rdev=rdev;this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){if(!path){throw new FS.ErrnoError(44)}opts.follow_mount??=true;if(!PATH.isAbs(path)){path=FS.cwd()+"/"+path}linkloop:for(var nlinks=0;nlinks<40;nlinks++){var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){if(!FS.isDir(dir.mode)){return 54}try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&(512|64)){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},checkOpExists(op,err){if(!op){throw new FS.ErrnoError(err)}return op},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},doSetAttr(stream,node,attr){var setattr=stream?.stream_ops.setattr;var arg=setattr?stream:node;setattr??=node.node_ops.setattr;FS.checkOpExists(setattr,63);setattr(arg,attr)},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type,opts,mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name){throw new FS.ErrnoError(28)}if(name==="."||name===".."){throw new FS.ErrnoError(20)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},statfs(path){return FS.statfsNode(FS.lookupPath(path,{follow:true}).node)},statfsStream(stream){return FS.statfsNode(stream.node)},statfsNode(node){var rtn={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255};if(node.node_ops.statfs){Object.assign(rtn,node.node_ops.statfs(node.mount.opts.root))}return rtn},create(path,mode=438){mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode=511){mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var dir of dirs){if(!dir)continue;if(d||PATH.isAbs(path))d+="/";d+=dir;try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev(path,mode,dev){if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink(oldpath,newpath){if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name);old_node.parent=new_dir}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var readdir=FS.checkOpExists(node.node_ops.readdir,54);return readdir(node)},unlink(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return link.node_ops.readlink(link)},stat(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;var getattr=FS.checkOpExists(node.node_ops.getattr,63);return getattr(node)},fstat(fd){var stream=FS.getStreamChecked(fd);var node=stream.node;var getattr=stream.stream_ops.getattr;var arg=getattr?stream:node;getattr??=node.node_ops.getattr;FS.checkOpExists(getattr,63);return getattr(arg)},lstat(path){return FS.stat(path,true)},doChmod(stream,node,mode,dontFollow){FS.doSetAttr(stream,node,{mode:mode&4095|node.mode&~4095,ctime:Date.now(),dontFollow})},chmod(path,mode,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChmod(null,node,mode,dontFollow)},lchmod(path,mode){FS.chmod(path,mode,true)},fchmod(fd,mode){var stream=FS.getStreamChecked(fd);FS.doChmod(stream,stream.node,mode,false)},doChown(stream,node,dontFollow){FS.doSetAttr(stream,node,{timestamp:Date.now(),dontFollow})},chown(path,uid,gid,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChown(null,node,dontFollow)},lchown(path,uid,gid){FS.chown(path,uid,gid,true)},fchown(fd,uid,gid){var stream=FS.getStreamChecked(fd);FS.doChown(stream,stream.node,false)},doTruncate(stream,node,len){if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}FS.doSetAttr(stream,node,{size:len,timestamp:Date.now()})},truncate(path,len){if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}FS.doTruncate(null,node,len)},ftruncate(fd,len){var stream=FS.getStreamChecked(fd);if(len<0||(stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.doTruncate(stream,stream.node,len)},utime(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var setattr=FS.checkOpExists(node.node_ops.setattr,63);setattr(node,{atime,mtime})},open(path,flags,mode=438){if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;var isDirPath;if(typeof path=="object"){node=path}else{isDirPath=path.endsWith("/");var lookup=FS.lookupPath(path,{follow:!(flags&131072),noent_okay:true});node=lookup.node;path=lookup.path}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else if(isDirPath){throw new FS.ErrnoError(31)}else{node=FS.mknod(path,mode|511,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node,path:FS.getPath(node),flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(created){FS.chmod(node,mode&511)}if(Module["logReadFiles"]&&!(flags&1)){if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close(stream){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed(stream){return stream.fd===null},llseek(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},mmap(stream,length,position,prot,flags){if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}if(!length){throw new FS.ErrnoError(28)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync(stream,buffer,offset,length,mmapFlags){if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},ioctl(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile(path,opts={}){opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile(path,data,opts={}){opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length,llseek:()=>0});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomFill(randomBuffer);randomLeft=randomBuffer.byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16895,73);node.stream_ops={llseek:MEMFS.stream_ops.llseek};node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path},id:fd+1};ret.parent=ret;return ret},readdir(){return Array.from(FS.streams.entries()).filter(([k,v])=>v).map(([k,v])=>k.toString())}};return node}},{},"/proc/self/fd")},createStandardStreams(input,output,error){if(input){FS.createDevice("/dev","stdin",input)}else{FS.symlink("/dev/tty","/dev/stdin")}if(output){FS.createDevice("/dev","stdout",null,output)}else{FS.symlink("/dev/tty","/dev/stdout")}if(error){FS.createDevice("/dev","stderr",null,error)}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS}},init(input,output,error){FS.initialized=true;input??=Module["stdin"];output??=Module["stdout"];error??=Module["stderr"];FS.createStandardStreams(input,output,error)},quit(){FS.initialized=false;for(var stream of FS.streams){if(stream){FS.close(stream)}}},findObject(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath(parent,path,canRead,canWrite){parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){if(e.errno!=20)throw e}parent=current}return current},createFile(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile(parent,name,data,canRead,canWrite,canOwn){var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return dir+"/"+path},writeStat(buf,stat){HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=stat.mode;HEAPU32[buf+8>>2]=stat.nlink;HEAP32[buf+12>>2]=stat.uid;HEAP32[buf+16>>2]=stat.gid;HEAP32[buf+20>>2]=stat.rdev;HEAP64[buf+24>>3]=BigInt(stat.size);HEAP32[buf+32>>2]=4096;HEAP32[buf+36>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();HEAP64[buf+40>>3]=BigInt(Math.floor(atime/1e3));HEAPU32[buf+48>>2]=atime%1e3*1e3*1e3;HEAP64[buf+56>>3]=BigInt(Math.floor(mtime/1e3));HEAPU32[buf+64>>2]=mtime%1e3*1e3*1e3;HEAP64[buf+72>>3]=BigInt(Math.floor(ctime/1e3));HEAPU32[buf+80>>2]=ctime%1e3*1e3*1e3;HEAP64[buf+88>>3]=BigInt(stat.ino);return 0},writeStatFs(buf,stats){HEAP32[buf+4>>2]=stats.bsize;HEAP32[buf+40>>2]=stats.bsize;HEAP32[buf+8>>2]=stats.blocks;HEAP32[buf+12>>2]=stats.bfree;HEAP32[buf+16>>2]=stats.bavail;HEAP32[buf+20>>2]=stats.files;HEAP32[buf+24>>2]=stats.ffree;HEAP32[buf+28>>2]=stats.fsid;HEAP32[buf+44>>2]=stats.flags;HEAP32[buf+36>>2]=stats.namelen},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){try{return SYSCALLS.writeStat(buf,FS.fstat(fd))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);function ___syscall_getcwd(buf,size){try{if(size===0)return-28;var cwd=FS.cwd();var cwdLengthInBytes=lengthBytesUTF8(cwd)+1;if(size>2]=termios.c_iflag||0;HEAP32[argp+4>>2]=termios.c_oflag||0;HEAP32[argp+8>>2]=termios.c_cflag||0;HEAP32[argp+12>>2]=termios.c_lflag||0;for(var i=0;i<32;i++){HEAP8[argp+i+17]=termios.c_cc[i]||0}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=HEAP32[argp>>2];var c_oflag=HEAP32[argp+4>>2];var c_cflag=HEAP32[argp+8>>2];var c_lflag=HEAP32[argp+12>>2];var c_cc=[];for(var i=0;i<32;i++){c_cc.push(HEAP8[argp+i+17])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag,c_oflag,c_cflag,c_lflag,c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>1]=winsize[0];HEAP16[argp+2>>1]=winsize[1]}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.writeStat(buf,FS.lstat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.writeStat(buf,nofollow?FS.lstat(path):FS.stat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.writeStat(buf,FS.stat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>abort("");var __emscripten_throw_longjmp=()=>{throw Infinity};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>numINT53_MAX?NaN:Number(num);function __gmtime_js(time,tmPtr){time=bigintToI53Checked(time);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday}function __mmap_js(len,prot,flags,fd,offset,allocated,addr){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>2]=res.allocated;HEAPU32[addr>>2]=ptr;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function __munmap_js(addr,len,prot,flags,fd,offset){offset=bigintToI53Checked(offset);try{var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffsetperformance.now();var _emscripten_date_now=()=>Date.now();var nowIsMonotonic=1;var checkWasiClock=clock_id=>clock_id>=0&&clock_id<=3;function _clock_time_get(clk_id,ignored_precision,ptime){ignored_precision=bigintToI53Checked(ignored_precision);if(!checkWasiClock(clk_id)){return 28}var now;if(clk_id===0){now=_emscripten_date_now()}else if(nowIsMonotonic){now=_emscripten_get_now()}else{return 52}var nsec=Math.round(now*1e3*1e3);HEAP64[ptime>>3]=BigInt(nsec);return 0}var GLctx;var webgl_enable_ANGLE_instanced_arrays=ctx=>{var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=(index,divisor)=>ext["vertexAttribDivisorANGLE"](index,divisor);ctx["drawArraysInstanced"]=(mode,first,count,primcount)=>ext["drawArraysInstancedANGLE"](mode,first,count,primcount);ctx["drawElementsInstanced"]=(mode,count,type,indices,primcount)=>ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount);return 1}};var webgl_enable_OES_vertex_array_object=ctx=>{var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=()=>ext["createVertexArrayOES"]();ctx["deleteVertexArray"]=vao=>ext["deleteVertexArrayOES"](vao);ctx["bindVertexArray"]=vao=>ext["bindVertexArrayOES"](vao);ctx["isVertexArray"]=vao=>ext["isVertexArrayOES"](vao);return 1}};var webgl_enable_WEBGL_draw_buffers=ctx=>{var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=(n,bufs)=>ext["drawBuffersWEBGL"](n,bufs);return 1}};var webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"));var webgl_enable_EXT_polygon_offset_clamp=ctx=>!!(ctx.extPolygonOffsetClamp=ctx.getExtension("EXT_polygon_offset_clamp"));var webgl_enable_EXT_clip_control=ctx=>!!(ctx.extClipControl=ctx.getExtension("EXT_clip_control"));var webgl_enable_WEBGL_polygon_mode=ctx=>!!(ctx.webglPolygonMode=ctx.getExtension("WEBGL_polygon_mode"));var webgl_enable_WEBGL_multi_draw=ctx=>!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"));var getEmscriptenSupportedExtensions=ctx=>{var supportedExtensions=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"];return(ctx.getSupportedExtensions()||[]).filter(ext=>supportedExtensions.includes(ext))};var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:errorCode=>{if(!GL.lastError){GL.lastError=errorCode}},getNewId:table=>{var ret=GL.counter++;for(var i=table.length;i{for(var i=0;i>2]=id}},getSource:(shader,count,string,length)=>{var source="";for(var i=0;i>2]:undefined;source+=UTF8ToString(HEAPU32[string+i*4>>2],len)}return source},createContext:(canvas,webGLContextAttributes)=>{if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=webGLContextAttributes.majorVersion>1?canvas.getContext("webgl2",webGLContextAttributes):canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:(ctx,webGLContextAttributes)=>{var handle=GL.getNewId(GL.contexts);var context={handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:contextHandle=>{GL.currentContext=GL.contexts[contextHandle];Module["ctx"]=GLctx=GL.currentContext?.GLctx;return!(contextHandle&&!GLctx)},getContext:contextHandle=>GL.contexts[contextHandle],deleteContext:contextHandle=>{if(GL.currentContext===GL.contexts[contextHandle]){GL.currentContext=null}if(typeof JSEvents=="object"){JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas)}if(GL.contexts[contextHandle]?.GLctx.canvas){GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined}GL.contexts[contextHandle]=null},initExtensions:context=>{context||=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_multi_draw(GLctx);webgl_enable_EXT_polygon_offset_clamp(GLctx);webgl_enable_EXT_clip_control(GLctx);webgl_enable_WEBGL_polygon_mode(GLctx);webgl_enable_ANGLE_instanced_arrays(GLctx);webgl_enable_OES_vertex_array_object(GLctx);webgl_enable_WEBGL_draw_buffers(GLctx);webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}getEmscriptenSupportedExtensions(GLctx).forEach(ext=>{if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var _glActiveTexture=x0=>GLctx.activeTexture(x0);var _emscripten_glActiveTexture=_glActiveTexture;var _glAttachShader=(program,shader)=>{GLctx.attachShader(GL.programs[program],GL.shaders[shader])};var _emscripten_glAttachShader=_glAttachShader;var _glBeginQuery=(target,id)=>{GLctx.beginQuery(target,GL.queries[id])};var _emscripten_glBeginQuery=_glBeginQuery;var _glBeginQueryEXT=(target,id)=>{GLctx.disjointTimerQueryExt["beginQueryEXT"](target,GL.queries[id])};var _emscripten_glBeginQueryEXT=_glBeginQueryEXT;var _glBeginTransformFeedback=x0=>GLctx.beginTransformFeedback(x0);var _emscripten_glBeginTransformFeedback=_glBeginTransformFeedback;var _glBindAttribLocation=(program,index,name)=>{GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))};var _emscripten_glBindAttribLocation=_glBindAttribLocation;var _glBindBuffer=(target,buffer)=>{if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])};var _emscripten_glBindBuffer=_glBindBuffer;var _glBindBufferBase=(target,index,buffer)=>{GLctx.bindBufferBase(target,index,GL.buffers[buffer])};var _emscripten_glBindBufferBase=_glBindBufferBase;var _glBindBufferRange=(target,index,buffer,offset,ptrsize)=>{GLctx.bindBufferRange(target,index,GL.buffers[buffer],offset,ptrsize)};var _emscripten_glBindBufferRange=_glBindBufferRange;var _glBindFramebuffer=(target,framebuffer)=>{GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])};var _emscripten_glBindFramebuffer=_glBindFramebuffer;var _glBindRenderbuffer=(target,renderbuffer)=>{GLctx.bindRenderbuffer(target,GL.renderbuffers[renderbuffer])};var _emscripten_glBindRenderbuffer=_glBindRenderbuffer;var _glBindSampler=(unit,sampler)=>{GLctx.bindSampler(unit,GL.samplers[sampler])};var _emscripten_glBindSampler=_glBindSampler;var _glBindTexture=(target,texture)=>{GLctx.bindTexture(target,GL.textures[texture])};var _emscripten_glBindTexture=_glBindTexture;var _glBindTransformFeedback=(target,id)=>{GLctx.bindTransformFeedback(target,GL.transformFeedbacks[id])};var _emscripten_glBindTransformFeedback=_glBindTransformFeedback;var _glBindVertexArray=vao=>{GLctx.bindVertexArray(GL.vaos[vao])};var _emscripten_glBindVertexArray=_glBindVertexArray;var _glBindVertexArrayOES=_glBindVertexArray;var _emscripten_glBindVertexArrayOES=_glBindVertexArrayOES;var _glBlendColor=(x0,x1,x2,x3)=>GLctx.blendColor(x0,x1,x2,x3);var _emscripten_glBlendColor=_glBlendColor;var _glBlendEquation=x0=>GLctx.blendEquation(x0);var _emscripten_glBlendEquation=_glBlendEquation;var _glBlendEquationSeparate=(x0,x1)=>GLctx.blendEquationSeparate(x0,x1);var _emscripten_glBlendEquationSeparate=_glBlendEquationSeparate;var _glBlendFunc=(x0,x1)=>GLctx.blendFunc(x0,x1);var _emscripten_glBlendFunc=_glBlendFunc;var _glBlendFuncSeparate=(x0,x1,x2,x3)=>GLctx.blendFuncSeparate(x0,x1,x2,x3);var _emscripten_glBlendFuncSeparate=_glBlendFuncSeparate;var _glBlitFramebuffer=(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9)=>GLctx.blitFramebuffer(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9);var _emscripten_glBlitFramebuffer=_glBlitFramebuffer;var _glBufferData=(target,size,data,usage)=>{if(GL.currentContext.version>=2){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}return}GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)};var _emscripten_glBufferData=_glBufferData;var _glBufferSubData=(target,offset,size,data)=>{if(GL.currentContext.version>=2){size&&GLctx.bufferSubData(target,offset,HEAPU8,data,size);return}GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))};var _emscripten_glBufferSubData=_glBufferSubData;var _glCheckFramebufferStatus=x0=>GLctx.checkFramebufferStatus(x0);var _emscripten_glCheckFramebufferStatus=_glCheckFramebufferStatus;var _glClear=x0=>GLctx.clear(x0);var _emscripten_glClear=_glClear;var _glClearBufferfi=(x0,x1,x2,x3)=>GLctx.clearBufferfi(x0,x1,x2,x3);var _emscripten_glClearBufferfi=_glClearBufferfi;var _glClearBufferfv=(buffer,drawbuffer,value)=>{GLctx.clearBufferfv(buffer,drawbuffer,HEAPF32,value>>2)};var _emscripten_glClearBufferfv=_glClearBufferfv;var _glClearBufferiv=(buffer,drawbuffer,value)=>{GLctx.clearBufferiv(buffer,drawbuffer,HEAP32,value>>2)};var _emscripten_glClearBufferiv=_glClearBufferiv;var _glClearBufferuiv=(buffer,drawbuffer,value)=>{GLctx.clearBufferuiv(buffer,drawbuffer,HEAPU32,value>>2)};var _emscripten_glClearBufferuiv=_glClearBufferuiv;var _glClearColor=(x0,x1,x2,x3)=>GLctx.clearColor(x0,x1,x2,x3);var _emscripten_glClearColor=_glClearColor;var _glClearDepthf=x0=>GLctx.clearDepth(x0);var _emscripten_glClearDepthf=_glClearDepthf;var _glClearStencil=x0=>GLctx.clearStencil(x0);var _emscripten_glClearStencil=_glClearStencil;var _glClientWaitSync=(sync,flags,timeout)=>{timeout=Number(timeout);return GLctx.clientWaitSync(GL.syncs[sync],flags,timeout)};var _emscripten_glClientWaitSync=_glClientWaitSync;var _glClipControlEXT=(origin,depth)=>{GLctx.extClipControl["clipControlEXT"](origin,depth)};var _emscripten_glClipControlEXT=_glClipControlEXT;var _glColorMask=(red,green,blue,alpha)=>{GLctx.colorMask(!!red,!!green,!!blue,!!alpha)};var _emscripten_glColorMask=_glColorMask;var _glCompileShader=shader=>{GLctx.compileShader(GL.shaders[shader])};var _emscripten_glCompileShader=_glCompileShader;var _glCompressedTexImage2D=(target,level,internalFormat,width,height,border,imageSize,data)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data);return}GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,HEAPU8,data,imageSize);return}GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,HEAPU8.subarray(data,data+imageSize))};var _emscripten_glCompressedTexImage2D=_glCompressedTexImage2D;var _glCompressedTexImage3D=(target,level,internalFormat,width,height,depth,border,imageSize,data)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.compressedTexImage3D(target,level,internalFormat,width,height,depth,border,imageSize,data)}else{GLctx.compressedTexImage3D(target,level,internalFormat,width,height,depth,border,HEAPU8,data,imageSize)}};var _emscripten_glCompressedTexImage3D=_glCompressedTexImage3D;var _glCompressedTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,imageSize,data)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data);return}GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,HEAPU8,data,imageSize);return}GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,HEAPU8.subarray(data,data+imageSize))};var _emscripten_glCompressedTexSubImage2D=_glCompressedTexSubImage2D;var _glCompressedTexSubImage3D=(target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.compressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data)}else{GLctx.compressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,HEAPU8,data,imageSize)}};var _emscripten_glCompressedTexSubImage3D=_glCompressedTexSubImage3D;var _glCopyBufferSubData=(x0,x1,x2,x3,x4)=>GLctx.copyBufferSubData(x0,x1,x2,x3,x4);var _emscripten_glCopyBufferSubData=_glCopyBufferSubData;var _glCopyTexImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexImage2D(x0,x1,x2,x3,x4,x5,x6,x7);var _emscripten_glCopyTexImage2D=_glCopyTexImage2D;var _glCopyTexSubImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7);var _emscripten_glCopyTexSubImage2D=_glCopyTexSubImage2D;var _glCopyTexSubImage3D=(x0,x1,x2,x3,x4,x5,x6,x7,x8)=>GLctx.copyTexSubImage3D(x0,x1,x2,x3,x4,x5,x6,x7,x8);var _emscripten_glCopyTexSubImage3D=_glCopyTexSubImage3D;var _glCreateProgram=()=>{var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id};var _emscripten_glCreateProgram=_glCreateProgram;var _glCreateShader=shaderType=>{var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id};var _emscripten_glCreateShader=_glCreateShader;var _glCullFace=x0=>GLctx.cullFace(x0);var _emscripten_glCullFace=_glCullFace;var _glDeleteBuffers=(n,buffers)=>{for(var i=0;i>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null;if(id==GLctx.currentPixelPackBufferBinding)GLctx.currentPixelPackBufferBinding=0;if(id==GLctx.currentPixelUnpackBufferBinding)GLctx.currentPixelUnpackBufferBinding=0}};var _emscripten_glDeleteBuffers=_glDeleteBuffers;var _glDeleteFramebuffers=(n,framebuffers)=>{for(var i=0;i>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}};var _emscripten_glDeleteFramebuffers=_glDeleteFramebuffers;var _glDeleteProgram=id=>{if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null};var _emscripten_glDeleteProgram=_glDeleteProgram;var _glDeleteQueries=(n,ids)=>{for(var i=0;i>2];var query=GL.queries[id];if(!query)continue;GLctx.deleteQuery(query);GL.queries[id]=null}};var _emscripten_glDeleteQueries=_glDeleteQueries;var _glDeleteQueriesEXT=(n,ids)=>{for(var i=0;i>2];var query=GL.queries[id];if(!query)continue;GLctx.disjointTimerQueryExt["deleteQueryEXT"](query);GL.queries[id]=null}};var _emscripten_glDeleteQueriesEXT=_glDeleteQueriesEXT;var _glDeleteRenderbuffers=(n,renderbuffers)=>{for(var i=0;i>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}};var _emscripten_glDeleteRenderbuffers=_glDeleteRenderbuffers;var _glDeleteSamplers=(n,samplers)=>{for(var i=0;i>2];var sampler=GL.samplers[id];if(!sampler)continue;GLctx.deleteSampler(sampler);sampler.name=0;GL.samplers[id]=null}};var _emscripten_glDeleteSamplers=_glDeleteSamplers;var _glDeleteShader=id=>{if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null};var _emscripten_glDeleteShader=_glDeleteShader;var _glDeleteSync=id=>{if(!id)return;var sync=GL.syncs[id];if(!sync){GL.recordError(1281);return}GLctx.deleteSync(sync);sync.name=0;GL.syncs[id]=null};var _emscripten_glDeleteSync=_glDeleteSync;var _glDeleteTextures=(n,textures)=>{for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}};var _emscripten_glDeleteTextures=_glDeleteTextures;var _glDeleteTransformFeedbacks=(n,ids)=>{for(var i=0;i>2];var transformFeedback=GL.transformFeedbacks[id];if(!transformFeedback)continue;GLctx.deleteTransformFeedback(transformFeedback);transformFeedback.name=0;GL.transformFeedbacks[id]=null}};var _emscripten_glDeleteTransformFeedbacks=_glDeleteTransformFeedbacks;var _glDeleteVertexArrays=(n,vaos)=>{for(var i=0;i>2];GLctx.deleteVertexArray(GL.vaos[id]);GL.vaos[id]=null}};var _emscripten_glDeleteVertexArrays=_glDeleteVertexArrays;var _glDeleteVertexArraysOES=_glDeleteVertexArrays;var _emscripten_glDeleteVertexArraysOES=_glDeleteVertexArraysOES;var _glDepthFunc=x0=>GLctx.depthFunc(x0);var _emscripten_glDepthFunc=_glDepthFunc;var _glDepthMask=flag=>{GLctx.depthMask(!!flag)};var _emscripten_glDepthMask=_glDepthMask;var _glDepthRangef=(x0,x1)=>GLctx.depthRange(x0,x1);var _emscripten_glDepthRangef=_glDepthRangef;var _glDetachShader=(program,shader)=>{GLctx.detachShader(GL.programs[program],GL.shaders[shader])};var _emscripten_glDetachShader=_glDetachShader;var _glDisable=x0=>GLctx.disable(x0);var _emscripten_glDisable=_glDisable;var _glDisableVertexAttribArray=index=>{GLctx.disableVertexAttribArray(index)};var _emscripten_glDisableVertexAttribArray=_glDisableVertexAttribArray;var _glDrawArrays=(mode,first,count)=>{GLctx.drawArrays(mode,first,count)};var _emscripten_glDrawArrays=_glDrawArrays;var _glDrawArraysInstanced=(mode,first,count,primcount)=>{GLctx.drawArraysInstanced(mode,first,count,primcount)};var _emscripten_glDrawArraysInstanced=_glDrawArraysInstanced;var _glDrawArraysInstancedANGLE=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedANGLE=_glDrawArraysInstancedANGLE;var _glDrawArraysInstancedARB=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedARB=_glDrawArraysInstancedARB;var _glDrawArraysInstancedBaseInstanceWEBGL=(mode,first,count,instanceCount,baseInstance)=>{GLctx.dibvbi["drawArraysInstancedBaseInstanceWEBGL"](mode,first,count,instanceCount,baseInstance)};var _emscripten_glDrawArraysInstancedBaseInstanceWEBGL=_glDrawArraysInstancedBaseInstanceWEBGL;var _glDrawArraysInstancedEXT=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedEXT=_glDrawArraysInstancedEXT;var _glDrawArraysInstancedNV=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedNV=_glDrawArraysInstancedNV;var tempFixedLengthArray=[];var _glDrawBuffers=(n,bufs)=>{var bufArray=tempFixedLengthArray[n];for(var i=0;i>2]}GLctx.drawBuffers(bufArray)};var _emscripten_glDrawBuffers=_glDrawBuffers;var _glDrawBuffersEXT=_glDrawBuffers;var _emscripten_glDrawBuffersEXT=_glDrawBuffersEXT;var _glDrawBuffersWEBGL=_glDrawBuffers;var _emscripten_glDrawBuffersWEBGL=_glDrawBuffersWEBGL;var _glDrawElements=(mode,count,type,indices)=>{GLctx.drawElements(mode,count,type,indices)};var _emscripten_glDrawElements=_glDrawElements;var _glDrawElementsInstanced=(mode,count,type,indices,primcount)=>{GLctx.drawElementsInstanced(mode,count,type,indices,primcount)};var _emscripten_glDrawElementsInstanced=_glDrawElementsInstanced;var _glDrawElementsInstancedANGLE=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedANGLE=_glDrawElementsInstancedANGLE;var _glDrawElementsInstancedARB=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedARB=_glDrawElementsInstancedARB;var _glDrawElementsInstancedBaseVertexBaseInstanceWEBGL=(mode,count,type,offset,instanceCount,baseVertex,baseinstance)=>{GLctx.dibvbi["drawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,count,type,offset,instanceCount,baseVertex,baseinstance)};var _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL=_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL;var _glDrawElementsInstancedEXT=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedEXT=_glDrawElementsInstancedEXT;var _glDrawElementsInstancedNV=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedNV=_glDrawElementsInstancedNV;var _glDrawRangeElements=(mode,start,end,count,type,indices)=>{_glDrawElements(mode,count,type,indices)};var _emscripten_glDrawRangeElements=_glDrawRangeElements;var _glEnable=x0=>GLctx.enable(x0);var _emscripten_glEnable=_glEnable;var _glEnableVertexAttribArray=index=>{GLctx.enableVertexAttribArray(index)};var _emscripten_glEnableVertexAttribArray=_glEnableVertexAttribArray;var _glEndQuery=x0=>GLctx.endQuery(x0);var _emscripten_glEndQuery=_glEndQuery;var _glEndQueryEXT=target=>{GLctx.disjointTimerQueryExt["endQueryEXT"](target)};var _emscripten_glEndQueryEXT=_glEndQueryEXT;var _glEndTransformFeedback=()=>GLctx.endTransformFeedback();var _emscripten_glEndTransformFeedback=_glEndTransformFeedback;var _glFenceSync=(condition,flags)=>{var sync=GLctx.fenceSync(condition,flags);if(sync){var id=GL.getNewId(GL.syncs);sync.name=id;GL.syncs[id]=sync;return id}return 0};var _emscripten_glFenceSync=_glFenceSync;var _glFinish=()=>GLctx.finish();var _emscripten_glFinish=_glFinish;var _glFlush=()=>GLctx.flush();var _emscripten_glFlush=_glFlush;var _glFramebufferRenderbuffer=(target,attachment,renderbuffertarget,renderbuffer)=>{GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])};var _emscripten_glFramebufferRenderbuffer=_glFramebufferRenderbuffer;var _glFramebufferTexture2D=(target,attachment,textarget,texture,level)=>{GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)};var _emscripten_glFramebufferTexture2D=_glFramebufferTexture2D;var _glFramebufferTextureLayer=(target,attachment,texture,level,layer)=>{GLctx.framebufferTextureLayer(target,attachment,GL.textures[texture],level,layer)};var _emscripten_glFramebufferTextureLayer=_glFramebufferTextureLayer;var _glFrontFace=x0=>GLctx.frontFace(x0);var _emscripten_glFrontFace=_glFrontFace;var _glGenBuffers=(n,buffers)=>{GL.genObject(n,buffers,"createBuffer",GL.buffers)};var _emscripten_glGenBuffers=_glGenBuffers;var _glGenFramebuffers=(n,ids)=>{GL.genObject(n,ids,"createFramebuffer",GL.framebuffers)};var _emscripten_glGenFramebuffers=_glGenFramebuffers;var _glGenQueries=(n,ids)=>{GL.genObject(n,ids,"createQuery",GL.queries)};var _emscripten_glGenQueries=_glGenQueries;var _glGenQueriesEXT=(n,ids)=>{for(var i=0;i>2]=0;return}var id=GL.getNewId(GL.queries);query.name=id;GL.queries[id]=query;HEAP32[ids+i*4>>2]=id}};var _emscripten_glGenQueriesEXT=_glGenQueriesEXT;var _glGenRenderbuffers=(n,renderbuffers)=>{GL.genObject(n,renderbuffers,"createRenderbuffer",GL.renderbuffers)};var _emscripten_glGenRenderbuffers=_glGenRenderbuffers;var _glGenSamplers=(n,samplers)=>{GL.genObject(n,samplers,"createSampler",GL.samplers)};var _emscripten_glGenSamplers=_glGenSamplers;var _glGenTextures=(n,textures)=>{GL.genObject(n,textures,"createTexture",GL.textures)};var _emscripten_glGenTextures=_glGenTextures;var _glGenTransformFeedbacks=(n,ids)=>{GL.genObject(n,ids,"createTransformFeedback",GL.transformFeedbacks)};var _emscripten_glGenTransformFeedbacks=_glGenTransformFeedbacks;var _glGenVertexArrays=(n,arrays)=>{GL.genObject(n,arrays,"createVertexArray",GL.vaos)};var _emscripten_glGenVertexArrays=_glGenVertexArrays;var _glGenVertexArraysOES=_glGenVertexArrays;var _emscripten_glGenVertexArraysOES=_glGenVertexArraysOES;var _glGenerateMipmap=x0=>GLctx.generateMipmap(x0);var _emscripten_glGenerateMipmap=_glGenerateMipmap;var __glGetActiveAttribOrUniform=(funcName,program,index,bufSize,length,size,type,name)=>{program=GL.programs[program];var info=GLctx[funcName](program,index);if(info){var numBytesWrittenExclNull=name&&stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull;if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}};var _glGetActiveAttrib=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform("getActiveAttrib",program,index,bufSize,length,size,type,name);var _emscripten_glGetActiveAttrib=_glGetActiveAttrib;var _glGetActiveUniform=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform("getActiveUniform",program,index,bufSize,length,size,type,name);var _emscripten_glGetActiveUniform=_glGetActiveUniform;var _glGetActiveUniformBlockName=(program,uniformBlockIndex,bufSize,length,uniformBlockName)=>{program=GL.programs[program];var result=GLctx.getActiveUniformBlockName(program,uniformBlockIndex);if(!result)return;if(uniformBlockName&&bufSize>0){var numBytesWrittenExclNull=stringToUTF8(result,uniformBlockName,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}};var _emscripten_glGetActiveUniformBlockName=_glGetActiveUniformBlockName;var _glGetActiveUniformBlockiv=(program,uniformBlockIndex,pname,params)=>{if(!params){GL.recordError(1281);return}program=GL.programs[program];if(pname==35393){var name=GLctx.getActiveUniformBlockName(program,uniformBlockIndex);HEAP32[params>>2]=name.length+1;return}var result=GLctx.getActiveUniformBlockParameter(program,uniformBlockIndex,pname);if(result===null)return;if(pname==35395){for(var i=0;i>2]=result[i]}}else{HEAP32[params>>2]=result}};var _emscripten_glGetActiveUniformBlockiv=_glGetActiveUniformBlockiv;var _glGetActiveUniformsiv=(program,uniformCount,uniformIndices,pname,params)=>{if(!params){GL.recordError(1281);return}if(uniformCount>0&&uniformIndices==0){GL.recordError(1281);return}program=GL.programs[program];var ids=[];for(var i=0;i>2])}var result=GLctx.getActiveUniforms(program,ids,pname);if(!result)return;var len=result.length;for(var i=0;i>2]=result[i]}};var _emscripten_glGetActiveUniformsiv=_glGetActiveUniformsiv;var _glGetAttachedShaders=(program,maxCount,count,shaders)=>{var result=GLctx.getAttachedShaders(GL.programs[program]);var len=result.length;if(len>maxCount){len=maxCount}HEAP32[count>>2]=len;for(var i=0;i>2]=id}};var _emscripten_glGetAttachedShaders=_glGetAttachedShaders;var _glGetAttribLocation=(program,name)=>GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name));var _emscripten_glGetAttribLocation=_glGetAttribLocation;var writeI53ToI64=(ptr,num)=>{HEAPU32[ptr>>2]=num;var lower=HEAPU32[ptr>>2];HEAPU32[ptr+4>>2]=(num-lower)/4294967296};var webglGetExtensions=()=>{var exts=getEmscriptenSupportedExtensions(GLctx);exts=exts.concat(exts.map(e=>"GL_"+e));return exts};var emscriptenWebGLGet=(name_,p,type)=>{if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 34814:case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break;case 33309:if(GL.currentContext.version<2){GL.recordError(1282);return}ret=webglGetExtensions().length;break;case 33307:case 33308:if(GL.currentContext.version<2){GL.recordError(1280);return}ret=name_==33307?3:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Unknown object returned from WebGL getParameter(${name_})! (error: ${e})`);return}}break;default:GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Native code calling glGet${type}v(${name_}) and it returns ${result} of type ${typeof result}!`);return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p]=ret?1:0;break}};var _glGetBooleanv=(name_,p)=>emscriptenWebGLGet(name_,p,4);var _emscripten_glGetBooleanv=_glGetBooleanv;var _glGetBufferParameteri64v=(target,value,data)=>{if(!data){GL.recordError(1281);return}writeI53ToI64(data,GLctx.getBufferParameter(target,value))};var _emscripten_glGetBufferParameteri64v=_glGetBufferParameteri64v;var _glGetBufferParameteriv=(target,value,data)=>{if(!data){GL.recordError(1281);return}HEAP32[data>>2]=GLctx.getBufferParameter(target,value)};var _emscripten_glGetBufferParameteriv=_glGetBufferParameteriv;var _glGetError=()=>{var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error};var _emscripten_glGetError=_glGetError;var _glGetFloatv=(name_,p)=>emscriptenWebGLGet(name_,p,2);var _emscripten_glGetFloatv=_glGetFloatv;var _glGetFragDataLocation=(program,name)=>GLctx.getFragDataLocation(GL.programs[program],UTF8ToString(name));var _emscripten_glGetFragDataLocation=_glGetFragDataLocation;var _glGetFramebufferAttachmentParameteriv=(target,attachment,pname,params)=>{var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);if(result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){result=result.name|0}HEAP32[params>>2]=result};var _emscripten_glGetFramebufferAttachmentParameteriv=_glGetFramebufferAttachmentParameteriv;var emscriptenWebGLGetIndexed=(target,index,data,type)=>{if(!data){GL.recordError(1281);return}var result=GLctx.getIndexedParameter(target,index);var ret;switch(typeof result){case"boolean":ret=result?1:0;break;case"number":ret=result;break;case"object":if(result===null){switch(target){case 35983:case 35368:ret=0;break;default:{GL.recordError(1280);return}}}else if(result instanceof WebGLBuffer){ret=result.name|0}else{GL.recordError(1280);return}break;default:GL.recordError(1280);return}switch(type){case 1:writeI53ToI64(data,ret);break;case 0:HEAP32[data>>2]=ret;break;case 2:HEAPF32[data>>2]=ret;break;case 4:HEAP8[data]=ret?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+type}};var _glGetInteger64i_v=(target,index,data)=>emscriptenWebGLGetIndexed(target,index,data,1);var _emscripten_glGetInteger64i_v=_glGetInteger64i_v;var _glGetInteger64v=(name_,p)=>{emscriptenWebGLGet(name_,p,1)};var _emscripten_glGetInteger64v=_glGetInteger64v;var _glGetIntegeri_v=(target,index,data)=>emscriptenWebGLGetIndexed(target,index,data,0);var _emscripten_glGetIntegeri_v=_glGetIntegeri_v;var _glGetIntegerv=(name_,p)=>emscriptenWebGLGet(name_,p,0);var _emscripten_glGetIntegerv=_glGetIntegerv;var _glGetInternalformativ=(target,internalformat,pname,bufSize,params)=>{if(bufSize<0){GL.recordError(1281);return}if(!params){GL.recordError(1281);return}var ret=GLctx.getInternalformatParameter(target,internalformat,pname);if(ret===null)return;for(var i=0;i>2]=ret[i]}};var _emscripten_glGetInternalformativ=_glGetInternalformativ;var _glGetProgramBinary=(program,bufSize,length,binaryFormat,binary)=>{GL.recordError(1282)};var _emscripten_glGetProgramBinary=_glGetProgramBinary;var _glGetProgramInfoLog=(program,maxLength,length,infoLog)=>{var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetProgramInfoLog=_glGetProgramInfoLog;var _glGetProgramiv=(program,pname,p)=>{if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){var numActiveAttributes=GLctx.getProgramParameter(program,35721);for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){var numActiveUniformBlocks=GLctx.getProgramParameter(program,35382);for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}};var _emscripten_glGetProgramiv=_glGetProgramiv;var _glGetQueryObjecti64vEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param;if(GL.currentContext.version<2){param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname)}else{param=GLctx.getQueryParameter(query,pname)}var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}writeI53ToI64(params,ret)};var _emscripten_glGetQueryObjecti64vEXT=_glGetQueryObjecti64vEXT;var _glGetQueryObjectivEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret};var _emscripten_glGetQueryObjectivEXT=_glGetQueryObjectivEXT;var _glGetQueryObjectui64vEXT=_glGetQueryObjecti64vEXT;var _emscripten_glGetQueryObjectui64vEXT=_glGetQueryObjectui64vEXT;var _glGetQueryObjectuiv=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.getQueryParameter(query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret};var _emscripten_glGetQueryObjectuiv=_glGetQueryObjectuiv;var _glGetQueryObjectuivEXT=_glGetQueryObjectivEXT;var _emscripten_glGetQueryObjectuivEXT=_glGetQueryObjectuivEXT;var _glGetQueryiv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getQuery(target,pname)};var _emscripten_glGetQueryiv=_glGetQueryiv;var _glGetQueryivEXT=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.disjointTimerQueryExt["getQueryEXT"](target,pname)};var _emscripten_glGetQueryivEXT=_glGetQueryivEXT;var _glGetRenderbufferParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getRenderbufferParameter(target,pname)};var _emscripten_glGetRenderbufferParameteriv=_glGetRenderbufferParameteriv;var _glGetSamplerParameterfv=(sampler,pname,params)=>{if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getSamplerParameter(GL.samplers[sampler],pname)};var _emscripten_glGetSamplerParameterfv=_glGetSamplerParameterfv;var _glGetSamplerParameteriv=(sampler,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getSamplerParameter(GL.samplers[sampler],pname)};var _emscripten_glGetSamplerParameteriv=_glGetSamplerParameteriv;var _glGetShaderInfoLog=(shader,maxLength,length,infoLog)=>{var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetShaderInfoLog=_glGetShaderInfoLog;var _glGetShaderPrecisionFormat=(shaderType,precisionType,range,precision)=>{var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);HEAP32[range>>2]=result.rangeMin;HEAP32[range+4>>2]=result.rangeMax;HEAP32[precision>>2]=result.precision};var _emscripten_glGetShaderPrecisionFormat=_glGetShaderPrecisionFormat;var _glGetShaderSource=(shader,bufSize,length,source)=>{var result=GLctx.getShaderSource(GL.shaders[shader]);if(!result)return;var numBytesWrittenExclNull=bufSize>0&&source?stringToUTF8(result,source,bufSize):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetShaderSource=_glGetShaderSource;var _glGetShaderiv=(shader,pname,p)=>{if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}};var _emscripten_glGetShaderiv=_glGetShaderiv;var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _glGetString=name_=>{var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:ret=stringToNewUTF8(webglGetExtensions().join(" "));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s?stringToNewUTF8(s):0;break;case 7938:var webGLVersion=GLctx.getParameter(7938);var glVersion=`OpenGL ES 2.0 (${webGLVersion})`;if(GL.currentContext.version>=2)glVersion=`OpenGL ES 3.0 (${webGLVersion})`;ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion=`OpenGL ES GLSL ES ${ver_num[1]} (${glslVersion})`}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret};var _emscripten_glGetString=_glGetString;var _glGetStringi=(name,index)=>{if(GL.currentContext.version<2){GL.recordError(1282);return 0}var stringiCache=GL.stringiCache[name];if(stringiCache){if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index]}switch(name){case 7939:var exts=webglGetExtensions().map(stringToNewUTF8);stringiCache=GL.stringiCache[name]=exts;if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index];default:GL.recordError(1280);return 0}};var _emscripten_glGetStringi=_glGetStringi;var _glGetSynciv=(sync,pname,bufSize,length,values)=>{if(bufSize<0){GL.recordError(1281);return}if(!values){GL.recordError(1281);return}var ret=GLctx.getSyncParameter(GL.syncs[sync],pname);if(ret!==null){HEAP32[values>>2]=ret;if(length)HEAP32[length>>2]=1}};var _emscripten_glGetSynciv=_glGetSynciv;var _glGetTexParameterfv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getTexParameter(target,pname)};var _emscripten_glGetTexParameterfv=_glGetTexParameterfv;var _glGetTexParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getTexParameter(target,pname)};var _emscripten_glGetTexParameteriv=_glGetTexParameteriv;var _glGetTransformFeedbackVarying=(program,index,bufSize,length,size,type,name)=>{program=GL.programs[program];var info=GLctx.getTransformFeedbackVarying(program,index);if(!info)return;if(name&&bufSize>0){var numBytesWrittenExclNull=stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type};var _emscripten_glGetTransformFeedbackVarying=_glGetTransformFeedbackVarying;var _glGetUniformBlockIndex=(program,uniformBlockName)=>GLctx.getUniformBlockIndex(GL.programs[program],UTF8ToString(uniformBlockName));var _emscripten_glGetUniformBlockIndex=_glGetUniformBlockIndex;var _glGetUniformIndices=(program,uniformCount,uniformNames,uniformIndices)=>{if(!uniformIndices){GL.recordError(1281);return}if(uniformCount>0&&(uniformNames==0||uniformIndices==0)){GL.recordError(1281);return}program=GL.programs[program];var names=[];for(var i=0;i>2]));var result=GLctx.getUniformIndices(program,names);if(!result)return;var len=result.length;for(var i=0;i>2]=result[i]}};var _emscripten_glGetUniformIndices=_glGetUniformIndices;var jstoi_q=str=>parseInt(str);var webglGetLeftBracePos=name=>name.slice(-1)=="]"&&name.lastIndexOf("[");var webglPrepareUniformLocationsBeforeFirstUse=program=>{var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j{name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex{var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?`[${webglLoc}]`:""))}return webglLoc}else{GL.recordError(1282)}};var emscriptenWebGLGetUniform=(program,location,params,type)=>{if(!params){GL.recordError(1281);return}program=GL.programs[program];webglPrepareUniformLocationsBeforeFirstUse(program);var data=GLctx.getUniform(program,webglGetUniformLocation(location));if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break}}}};var _glGetUniformfv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,2)};var _emscripten_glGetUniformfv=_glGetUniformfv;var _glGetUniformiv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,0)};var _emscripten_glGetUniformiv=_glGetUniformiv;var _glGetUniformuiv=(program,location,params)=>emscriptenWebGLGetUniform(program,location,params,0);var _emscripten_glGetUniformuiv=_glGetUniformuiv;var emscriptenWebGLGetVertexAttrib=(index,pname,params,type)=>{if(!params){GL.recordError(1281);return}var data=GLctx.getVertexAttrib(index,pname);if(pname==34975){HEAP32[params>>2]=data&&data["name"]}else if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break;case 5:HEAP32[params>>2]=Math.fround(data);break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break;case 5:HEAP32[params+i*4>>2]=Math.fround(data[i]);break}}}};var _glGetVertexAttribIiv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,0)};var _emscripten_glGetVertexAttribIiv=_glGetVertexAttribIiv;var _glGetVertexAttribIuiv=_glGetVertexAttribIiv;var _emscripten_glGetVertexAttribIuiv=_glGetVertexAttribIuiv;var _glGetVertexAttribPointerv=(index,pname,pointer)=>{if(!pointer){GL.recordError(1281);return}HEAP32[pointer>>2]=GLctx.getVertexAttribOffset(index,pname)};var _emscripten_glGetVertexAttribPointerv=_glGetVertexAttribPointerv;var _glGetVertexAttribfv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,2)};var _emscripten_glGetVertexAttribfv=_glGetVertexAttribfv;var _glGetVertexAttribiv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,5)};var _emscripten_glGetVertexAttribiv=_glGetVertexAttribiv;var _glHint=(x0,x1)=>GLctx.hint(x0,x1);var _emscripten_glHint=_glHint;var _glInvalidateFramebuffer=(target,numAttachments,attachments)=>{var list=tempFixedLengthArray[numAttachments];for(var i=0;i>2]}GLctx.invalidateFramebuffer(target,list)};var _emscripten_glInvalidateFramebuffer=_glInvalidateFramebuffer;var _glInvalidateSubFramebuffer=(target,numAttachments,attachments,x,y,width,height)=>{var list=tempFixedLengthArray[numAttachments];for(var i=0;i>2]}GLctx.invalidateSubFramebuffer(target,list,x,y,width,height)};var _emscripten_glInvalidateSubFramebuffer=_glInvalidateSubFramebuffer;var _glIsBuffer=buffer=>{var b=GL.buffers[buffer];if(!b)return 0;return GLctx.isBuffer(b)};var _emscripten_glIsBuffer=_glIsBuffer;var _glIsEnabled=x0=>GLctx.isEnabled(x0);var _emscripten_glIsEnabled=_glIsEnabled;var _glIsFramebuffer=framebuffer=>{var fb=GL.framebuffers[framebuffer];if(!fb)return 0;return GLctx.isFramebuffer(fb)};var _emscripten_glIsFramebuffer=_glIsFramebuffer;var _glIsProgram=program=>{program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)};var _emscripten_glIsProgram=_glIsProgram;var _glIsQuery=id=>{var query=GL.queries[id];if(!query)return 0;return GLctx.isQuery(query)};var _emscripten_glIsQuery=_glIsQuery;var _glIsQueryEXT=id=>{var query=GL.queries[id];if(!query)return 0;return GLctx.disjointTimerQueryExt["isQueryEXT"](query)};var _emscripten_glIsQueryEXT=_glIsQueryEXT;var _glIsRenderbuffer=renderbuffer=>{var rb=GL.renderbuffers[renderbuffer];if(!rb)return 0;return GLctx.isRenderbuffer(rb)};var _emscripten_glIsRenderbuffer=_glIsRenderbuffer;var _glIsSampler=id=>{var sampler=GL.samplers[id];if(!sampler)return 0;return GLctx.isSampler(sampler)};var _emscripten_glIsSampler=_glIsSampler;var _glIsShader=shader=>{var s=GL.shaders[shader];if(!s)return 0;return GLctx.isShader(s)};var _emscripten_glIsShader=_glIsShader;var _glIsSync=sync=>GLctx.isSync(GL.syncs[sync]);var _emscripten_glIsSync=_glIsSync;var _glIsTexture=id=>{var texture=GL.textures[id];if(!texture)return 0;return GLctx.isTexture(texture)};var _emscripten_glIsTexture=_glIsTexture;var _glIsTransformFeedback=id=>GLctx.isTransformFeedback(GL.transformFeedbacks[id]);var _emscripten_glIsTransformFeedback=_glIsTransformFeedback;var _glIsVertexArray=array=>{var vao=GL.vaos[array];if(!vao)return 0;return GLctx.isVertexArray(vao)};var _emscripten_glIsVertexArray=_glIsVertexArray;var _glIsVertexArrayOES=_glIsVertexArray;var _emscripten_glIsVertexArrayOES=_glIsVertexArrayOES;var _glLineWidth=x0=>GLctx.lineWidth(x0);var _emscripten_glLineWidth=_glLineWidth;var _glLinkProgram=program=>{program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}};var _emscripten_glLinkProgram=_glLinkProgram;var _glMultiDrawArraysInstancedBaseInstanceWEBGL=(mode,firsts,counts,instanceCounts,baseInstances,drawCount)=>{GLctx.mdibvbi["multiDrawArraysInstancedBaseInstanceWEBGL"](mode,HEAP32,firsts>>2,HEAP32,counts>>2,HEAP32,instanceCounts>>2,HEAPU32,baseInstances>>2,drawCount)};var _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL=_glMultiDrawArraysInstancedBaseInstanceWEBGL;var _glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL=(mode,counts,type,offsets,instanceCounts,baseVertices,baseInstances,drawCount)=>{GLctx.mdibvbi["multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,HEAP32,counts>>2,type,HEAP32,offsets>>2,HEAP32,instanceCounts>>2,HEAP32,baseVertices>>2,HEAPU32,baseInstances>>2,drawCount)};var _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL=_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL;var _glPauseTransformFeedback=()=>GLctx.pauseTransformFeedback();var _emscripten_glPauseTransformFeedback=_glPauseTransformFeedback;var _glPixelStorei=(pname,param)=>{if(pname==3317){GL.unpackAlignment=param}else if(pname==3314){GL.unpackRowLength=param}GLctx.pixelStorei(pname,param)};var _emscripten_glPixelStorei=_glPixelStorei;var _glPolygonModeWEBGL=(face,mode)=>{GLctx.webglPolygonMode["polygonModeWEBGL"](face,mode)};var _emscripten_glPolygonModeWEBGL=_glPolygonModeWEBGL;var _glPolygonOffset=(x0,x1)=>GLctx.polygonOffset(x0,x1);var _emscripten_glPolygonOffset=_glPolygonOffset;var _glPolygonOffsetClampEXT=(factor,units,clamp)=>{GLctx.extPolygonOffsetClamp["polygonOffsetClampEXT"](factor,units,clamp)};var _emscripten_glPolygonOffsetClampEXT=_glPolygonOffsetClampEXT;var _glProgramBinary=(program,binaryFormat,binary,length)=>{GL.recordError(1280)};var _emscripten_glProgramBinary=_glProgramBinary;var _glProgramParameteri=(program,pname,value)=>{GL.recordError(1280)};var _emscripten_glProgramParameteri=_glProgramParameteri;var _glQueryCounterEXT=(id,target)=>{GLctx.disjointTimerQueryExt["queryCounterEXT"](GL.queries[id],target)};var _emscripten_glQueryCounterEXT=_glQueryCounterEXT;var _glReadBuffer=x0=>GLctx.readBuffer(x0);var _emscripten_glReadBuffer=_glReadBuffer;var computeUnpackAlignedImageSize=(width,height,sizePerPixel)=>{function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=(GL.unpackRowLength||width)*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,GL.unpackAlignment);return height*alignedRowSize};var colorChannelsInGlTextureFormat=format=>{var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1};var heapObjectForWebGLType=type=>{type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16};var toTypedArrayIndex=(pointer,heap)=>pointer>>>31-Math.clz32(heap.BYTES_PER_ELEMENT);var emscriptenWebGLGetTexPixelData=(type,format,width,height,pixels,internalFormat)=>{var heap=heapObjectForWebGLType(type);var sizePerPixel=colorChannelsInGlTextureFormat(format)*heap.BYTES_PER_ELEMENT;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel);return heap.subarray(toTypedArrayIndex(pixels,heap),toTypedArrayIndex(pixels+bytes,heap))};var _glReadPixels=(x,y,width,height,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelPackBufferBinding){GLctx.readPixels(x,y,width,height,format,type,pixels);return}var heap=heapObjectForWebGLType(type);var target=toTypedArrayIndex(pixels,heap);GLctx.readPixels(x,y,width,height,format,type,heap,target);return}var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)};var _emscripten_glReadPixels=_glReadPixels;var _glReleaseShaderCompiler=()=>{};var _emscripten_glReleaseShaderCompiler=_glReleaseShaderCompiler;var _glRenderbufferStorage=(x0,x1,x2,x3)=>GLctx.renderbufferStorage(x0,x1,x2,x3);var _emscripten_glRenderbufferStorage=_glRenderbufferStorage;var _glRenderbufferStorageMultisample=(x0,x1,x2,x3,x4)=>GLctx.renderbufferStorageMultisample(x0,x1,x2,x3,x4);var _emscripten_glRenderbufferStorageMultisample=_glRenderbufferStorageMultisample;var _glResumeTransformFeedback=()=>GLctx.resumeTransformFeedback();var _emscripten_glResumeTransformFeedback=_glResumeTransformFeedback;var _glSampleCoverage=(value,invert)=>{GLctx.sampleCoverage(value,!!invert)};var _emscripten_glSampleCoverage=_glSampleCoverage;var _glSamplerParameterf=(sampler,pname,param)=>{GLctx.samplerParameterf(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameterf=_glSamplerParameterf;var _glSamplerParameterfv=(sampler,pname,params)=>{var param=HEAPF32[params>>2];GLctx.samplerParameterf(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameterfv=_glSamplerParameterfv;var _glSamplerParameteri=(sampler,pname,param)=>{GLctx.samplerParameteri(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameteri=_glSamplerParameteri;var _glSamplerParameteriv=(sampler,pname,params)=>{var param=HEAP32[params>>2];GLctx.samplerParameteri(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameteriv=_glSamplerParameteriv;var _glScissor=(x0,x1,x2,x3)=>GLctx.scissor(x0,x1,x2,x3);var _emscripten_glScissor=_glScissor;var _glShaderBinary=(count,shaders,binaryformat,binary,length)=>{GL.recordError(1280)};var _emscripten_glShaderBinary=_glShaderBinary;var _glShaderSource=(shader,count,string,length)=>{var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)};var _emscripten_glShaderSource=_glShaderSource;var _glStencilFunc=(x0,x1,x2)=>GLctx.stencilFunc(x0,x1,x2);var _emscripten_glStencilFunc=_glStencilFunc;var _glStencilFuncSeparate=(x0,x1,x2,x3)=>GLctx.stencilFuncSeparate(x0,x1,x2,x3);var _emscripten_glStencilFuncSeparate=_glStencilFuncSeparate;var _glStencilMask=x0=>GLctx.stencilMask(x0);var _emscripten_glStencilMask=_glStencilMask;var _glStencilMaskSeparate=(x0,x1)=>GLctx.stencilMaskSeparate(x0,x1);var _emscripten_glStencilMaskSeparate=_glStencilMaskSeparate;var _glStencilOp=(x0,x1,x2)=>GLctx.stencilOp(x0,x1,x2);var _emscripten_glStencilOp=_glStencilOp;var _glStencilOpSeparate=(x0,x1,x2,x3)=>GLctx.stencilOpSeparate(x0,x1,x2,x3);var _emscripten_glStencilOpSeparate=_glStencilOpSeparate;var _glTexImage2D=(target,level,internalFormat,width,height,border,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);var index=toTypedArrayIndex(pixels,heap);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,index);return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null;GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)};var _emscripten_glTexImage2D=_glTexImage2D;var _glTexImage3D=(target,level,internalFormat,width,height,depth,border,format,type,pixels)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,heap,toTypedArrayIndex(pixels,heap))}else{GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,null)}};var _emscripten_glTexImage3D=_glTexImage3D;var _glTexParameterf=(x0,x1,x2)=>GLctx.texParameterf(x0,x1,x2);var _emscripten_glTexParameterf=_glTexParameterf;var _glTexParameterfv=(target,pname,params)=>{var param=HEAPF32[params>>2];GLctx.texParameterf(target,pname,param)};var _emscripten_glTexParameterfv=_glTexParameterfv;var _glTexParameteri=(x0,x1,x2)=>GLctx.texParameteri(x0,x1,x2);var _emscripten_glTexParameteri=_glTexParameteri;var _glTexParameteriv=(target,pname,params)=>{var param=HEAP32[params>>2];GLctx.texParameteri(target,pname,param)};var _emscripten_glTexParameteriv=_glTexParameteriv;var _glTexStorage2D=(x0,x1,x2,x3,x4)=>GLctx.texStorage2D(x0,x1,x2,x3,x4);var _emscripten_glTexStorage2D=_glTexStorage2D;var _glTexStorage3D=(x0,x1,x2,x3,x4,x5)=>GLctx.texStorage3D(x0,x1,x2,x3,x4,x5);var _emscripten_glTexStorage3D=_glTexStorage3D;var _glTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,heap,toTypedArrayIndex(pixels,heap));return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0):null;GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)};var _emscripten_glTexSubImage2D=_glTexSubImage2D;var _glTexSubImage3D=(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,heap,toTypedArrayIndex(pixels,heap))}else{GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,null)}};var _emscripten_glTexSubImage3D=_glTexSubImage3D;var _glTransformFeedbackVaryings=(program,count,varyings,bufferMode)=>{program=GL.programs[program];var vars=[];for(var i=0;i>2]));GLctx.transformFeedbackVaryings(program,vars,bufferMode)};var _emscripten_glTransformFeedbackVaryings=_glTransformFeedbackVaryings;var _glUniform1f=(location,v0)=>{GLctx.uniform1f(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1f=_glUniform1f;var miniTempWebGLFloatBuffers=[];var _glUniform1fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform1fv(webglGetUniformLocation(location),HEAPF32,value>>2,count);return}if(count<=288){var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform1fv=_glUniform1fv;var _glUniform1i=(location,v0)=>{GLctx.uniform1i(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1i=_glUniform1i;var miniTempWebGLIntBuffers=[];var _glUniform1iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform1iv(webglGetUniformLocation(location),HEAP32,value>>2,count);return}if(count<=288){var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2]}}else{var view=HEAP32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform1iv=_glUniform1iv;var _glUniform1ui=(location,v0)=>{GLctx.uniform1ui(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1ui=_glUniform1ui;var _glUniform1uiv=(location,count,value)=>{count&&GLctx.uniform1uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count)};var _emscripten_glUniform1uiv=_glUniform1uiv;var _glUniform2f=(location,v0,v1)=>{GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2f=_glUniform2f;var _glUniform2fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform2fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*2);return}if(count<=144){count*=2;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform2fv=_glUniform2fv;var _glUniform2i=(location,v0,v1)=>{GLctx.uniform2i(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2i=_glUniform2i;var _glUniform2iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform2iv(webglGetUniformLocation(location),HEAP32,value>>2,count*2);return}if(count<=144){count*=2;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform2iv=_glUniform2iv;var _glUniform2ui=(location,v0,v1)=>{GLctx.uniform2ui(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2ui=_glUniform2ui;var _glUniform2uiv=(location,count,value)=>{count&&GLctx.uniform2uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*2)};var _emscripten_glUniform2uiv=_glUniform2uiv;var _glUniform3f=(location,v0,v1,v2)=>{GLctx.uniform3f(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3f=_glUniform3f;var _glUniform3fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform3fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*3);return}if(count<=96){count*=3;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform3fv=_glUniform3fv;var _glUniform3i=(location,v0,v1,v2)=>{GLctx.uniform3i(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3i=_glUniform3i;var _glUniform3iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform3iv(webglGetUniformLocation(location),HEAP32,value>>2,count*3);return}if(count<=96){count*=3;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform3iv=_glUniform3iv;var _glUniform3ui=(location,v0,v1,v2)=>{GLctx.uniform3ui(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3ui=_glUniform3ui;var _glUniform3uiv=(location,count,value)=>{count&&GLctx.uniform3uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*3)};var _emscripten_glUniform3uiv=_glUniform3uiv;var _glUniform4f=(location,v0,v1,v2,v3)=>{GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4f=_glUniform4f;var _glUniform4fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform4fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*4);return}if(count<=72){var view=miniTempWebGLFloatBuffers[4*count];var heap=HEAPF32;value=value>>2;count*=4;for(var i=0;i>2,value+count*16>>2)}GLctx.uniform4fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform4fv=_glUniform4fv;var _glUniform4i=(location,v0,v1,v2,v3)=>{GLctx.uniform4i(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4i=_glUniform4i;var _glUniform4iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform4iv(webglGetUniformLocation(location),HEAP32,value>>2,count*4);return}if(count<=72){count*=4;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2];view[i+3]=HEAP32[value+(4*i+12)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform4iv=_glUniform4iv;var _glUniform4ui=(location,v0,v1,v2,v3)=>{GLctx.uniform4ui(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4ui=_glUniform4ui;var _glUniform4uiv=(location,count,value)=>{count&&GLctx.uniform4uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*4)};var _emscripten_glUniform4uiv=_glUniform4uiv;var _glUniformBlockBinding=(program,uniformBlockIndex,uniformBlockBinding)=>{program=GL.programs[program];GLctx.uniformBlockBinding(program,uniformBlockIndex,uniformBlockBinding)};var _emscripten_glUniformBlockBinding=_glUniformBlockBinding;var _glUniformMatrix2fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*4);return}if(count<=72){count*=4;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix2fv=_glUniformMatrix2fv;var _glUniformMatrix2x3fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix2x3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*6)};var _emscripten_glUniformMatrix2x3fv=_glUniformMatrix2x3fv;var _glUniformMatrix2x4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix2x4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*8)};var _emscripten_glUniformMatrix2x4fv=_glUniformMatrix2x4fv;var _glUniformMatrix3fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*9);return}if(count<=32){count*=9;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix3fv=_glUniformMatrix3fv;var _glUniformMatrix3x2fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix3x2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*6)};var _emscripten_glUniformMatrix3x2fv=_glUniformMatrix3x2fv;var _glUniformMatrix3x4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix3x4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*12)};var _emscripten_glUniformMatrix3x4fv=_glUniformMatrix3x4fv;var _glUniformMatrix4fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*16);return}if(count<=18){var view=miniTempWebGLFloatBuffers[16*count];var heap=HEAPF32;value=value>>2;count*=16;for(var i=0;i>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix4fv=_glUniformMatrix4fv;var _glUniformMatrix4x2fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4x2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*8)};var _emscripten_glUniformMatrix4x2fv=_glUniformMatrix4x2fv;var _glUniformMatrix4x3fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4x3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*12)};var _emscripten_glUniformMatrix4x3fv=_glUniformMatrix4x3fv;var _glUseProgram=program=>{program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program};var _emscripten_glUseProgram=_glUseProgram;var _glValidateProgram=program=>{GLctx.validateProgram(GL.programs[program])};var _emscripten_glValidateProgram=_glValidateProgram;var _glVertexAttrib1f=(x0,x1)=>GLctx.vertexAttrib1f(x0,x1);var _emscripten_glVertexAttrib1f=_glVertexAttrib1f;var _glVertexAttrib1fv=(index,v)=>{GLctx.vertexAttrib1f(index,HEAPF32[v>>2])};var _emscripten_glVertexAttrib1fv=_glVertexAttrib1fv;var _glVertexAttrib2f=(x0,x1,x2)=>GLctx.vertexAttrib2f(x0,x1,x2);var _emscripten_glVertexAttrib2f=_glVertexAttrib2f;var _glVertexAttrib2fv=(index,v)=>{GLctx.vertexAttrib2f(index,HEAPF32[v>>2],HEAPF32[v+4>>2])};var _emscripten_glVertexAttrib2fv=_glVertexAttrib2fv;var _glVertexAttrib3f=(x0,x1,x2,x3)=>GLctx.vertexAttrib3f(x0,x1,x2,x3);var _emscripten_glVertexAttrib3f=_glVertexAttrib3f;var _glVertexAttrib3fv=(index,v)=>{GLctx.vertexAttrib3f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2])};var _emscripten_glVertexAttrib3fv=_glVertexAttrib3fv;var _glVertexAttrib4f=(x0,x1,x2,x3,x4)=>GLctx.vertexAttrib4f(x0,x1,x2,x3,x4);var _emscripten_glVertexAttrib4f=_glVertexAttrib4f;var _glVertexAttrib4fv=(index,v)=>{GLctx.vertexAttrib4f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2],HEAPF32[v+12>>2])};var _emscripten_glVertexAttrib4fv=_glVertexAttrib4fv;var _glVertexAttribDivisor=(index,divisor)=>{GLctx.vertexAttribDivisor(index,divisor)};var _emscripten_glVertexAttribDivisor=_glVertexAttribDivisor;var _glVertexAttribDivisorANGLE=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorANGLE=_glVertexAttribDivisorANGLE;var _glVertexAttribDivisorARB=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorARB=_glVertexAttribDivisorARB;var _glVertexAttribDivisorEXT=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorEXT=_glVertexAttribDivisorEXT;var _glVertexAttribDivisorNV=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorNV=_glVertexAttribDivisorNV;var _glVertexAttribI4i=(x0,x1,x2,x3,x4)=>GLctx.vertexAttribI4i(x0,x1,x2,x3,x4);var _emscripten_glVertexAttribI4i=_glVertexAttribI4i;var _glVertexAttribI4iv=(index,v)=>{GLctx.vertexAttribI4i(index,HEAP32[v>>2],HEAP32[v+4>>2],HEAP32[v+8>>2],HEAP32[v+12>>2])};var _emscripten_glVertexAttribI4iv=_glVertexAttribI4iv;var _glVertexAttribI4ui=(x0,x1,x2,x3,x4)=>GLctx.vertexAttribI4ui(x0,x1,x2,x3,x4);var _emscripten_glVertexAttribI4ui=_glVertexAttribI4ui;var _glVertexAttribI4uiv=(index,v)=>{GLctx.vertexAttribI4ui(index,HEAPU32[v>>2],HEAPU32[v+4>>2],HEAPU32[v+8>>2],HEAPU32[v+12>>2])};var _emscripten_glVertexAttribI4uiv=_glVertexAttribI4uiv;var _glVertexAttribIPointer=(index,size,type,stride,ptr)=>{GLctx.vertexAttribIPointer(index,size,type,stride,ptr)};var _emscripten_glVertexAttribIPointer=_glVertexAttribIPointer;var _glVertexAttribPointer=(index,size,type,normalized,stride,ptr)=>{GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)};var _emscripten_glVertexAttribPointer=_glVertexAttribPointer;var _glViewport=(x0,x1,x2,x3)=>GLctx.viewport(x0,x1,x2,x3);var _emscripten_glViewport=_glViewport;var _glWaitSync=(sync,flags,timeout)=>{timeout=Number(timeout);GLctx.waitSync(GL.syncs[sync],flags,timeout)};var _emscripten_glWaitSync=_glWaitSync;var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var _emscripten_request_animation_frame_loop=(cb,userData)=>{function tick(timeStamp){if(getWasmTableEntry(cb)(timeStamp,userData)){requestAnimationFrame(tick)}}return requestAnimationFrame(tick)};var getHeapMax=()=>2147483648;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var _environ_get=(__environ,environ_buf)=>{var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU32[__environ+envp>>2]=ptr;bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=4}return 0};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU32[penviron_buf_size>>2]=bufSize;return 0};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);HEAP64[newOffset>>3]=BigInt(stream.position);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var _llvm_eh_typeid_for=type=>type;function _random_get(buffer,size){try{randomFill(HEAPU8.subarray(buffer,buffer+size));return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();MEMFS.doesNotExistError=new FS.ErrnoError(44);MEMFS.doesNotExistError.stack="";for(let i=0;i<32;++i)tempFixedLengthArray.push(new Array(i));var miniTempWebGLFloatBuffersStorage=new Float32Array(288);for(var i=0;i<=288;++i){miniTempWebGLFloatBuffers[i]=miniTempWebGLFloatBuffersStorage.subarray(0,i)}var miniTempWebGLIntBuffersStorage=new Int32Array(288);for(var i=0;i<=288;++i){miniTempWebGLIntBuffers[i]=miniTempWebGLIntBuffersStorage.subarray(0,i)}{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["preloadPlugins"])preloadPlugins=Module["preloadPlugins"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"]}Module["UTF8ToString"]=UTF8ToString;Module["stringToUTF8"]=stringToUTF8;Module["lengthBytesUTF8"]=lengthBytesUTF8;Module["GL"]=GL;var wasmImports={C:___cxa_begin_catch,H:___cxa_end_catch,a:___cxa_find_matching_catch_2,o:___cxa_find_matching_catch_3,P:___cxa_find_matching_catch_4,pa:___cxa_rethrow,F:___cxa_throw,eb:___cxa_uncaught_exceptions,d:___resumeException,ra:___syscall_fcntl64,tb:___syscall_fstat64,pb:___syscall_getcwd,vb:___syscall_ioctl,qb:___syscall_lstat64,rb:___syscall_newfstatat,qa:___syscall_openat,sb:___syscall_stat64,zb:__abort_js,gb:__emscripten_throw_longjmp,lb:__gmtime_js,jb:__mmap_js,kb:__munmap_js,Ab:__tzset_js,yb:_clock_time_get,xb:_emscripten_date_now,nb:_emscripten_get_now,Gf:_emscripten_glActiveTexture,Hf:_emscripten_glAttachShader,je:_emscripten_glBeginQuery,ce:_emscripten_glBeginQueryEXT,Hc:_emscripten_glBeginTransformFeedback,If:_emscripten_glBindAttribLocation,Jf:_emscripten_glBindBuffer,Ec:_emscripten_glBindBufferBase,Fc:_emscripten_glBindBufferRange,He:_emscripten_glBindFramebuffer,Ie:_emscripten_glBindRenderbuffer,pe:_emscripten_glBindSampler,Kf:_emscripten_glBindTexture,Tb:_emscripten_glBindTransformFeedback,bf:_emscripten_glBindVertexArray,ef:_emscripten_glBindVertexArrayOES,Lf:_emscripten_glBlendColor,Mf:_emscripten_glBlendEquation,Md:_emscripten_glBlendEquationSeparate,Nf:_emscripten_glBlendFunc,Ld:_emscripten_glBlendFuncSeparate,Be:_emscripten_glBlitFramebuffer,Of:_emscripten_glBufferData,Pf:_emscripten_glBufferSubData,Je:_emscripten_glCheckFramebufferStatus,Qf:_emscripten_glClear,gc:_emscripten_glClearBufferfi,hc:_emscripten_glClearBufferfv,jc:_emscripten_glClearBufferiv,ic:_emscripten_glClearBufferuiv,Rf:_emscripten_glClearColor,Kd:_emscripten_glClearDepthf,Sf:_emscripten_glClearStencil,ye:_emscripten_glClientWaitSync,bd:_emscripten_glClipControlEXT,Tf:_emscripten_glColorMask,Uf:_emscripten_glCompileShader,Vf:_emscripten_glCompressedTexImage2D,Tc:_emscripten_glCompressedTexImage3D,Wf:_emscripten_glCompressedTexSubImage2D,Sc:_emscripten_glCompressedTexSubImage3D,Ae:_emscripten_glCopyBufferSubData,Jd:_emscripten_glCopyTexImage2D,Xf:_emscripten_glCopyTexSubImage2D,Uc:_emscripten_glCopyTexSubImage3D,Yf:_emscripten_glCreateProgram,Zf:_emscripten_glCreateShader,_f:_emscripten_glCullFace,$f:_emscripten_glDeleteBuffers,Ke:_emscripten_glDeleteFramebuffers,ag:_emscripten_glDeleteProgram,ke:_emscripten_glDeleteQueries,de:_emscripten_glDeleteQueriesEXT,Le:_emscripten_glDeleteRenderbuffers,qe:_emscripten_glDeleteSamplers,bg:_emscripten_glDeleteShader,ze:_emscripten_glDeleteSync,cg:_emscripten_glDeleteTextures,Sb:_emscripten_glDeleteTransformFeedbacks,cf:_emscripten_glDeleteVertexArrays,ff:_emscripten_glDeleteVertexArraysOES,Id:_emscripten_glDepthFunc,dg:_emscripten_glDepthMask,Hd:_emscripten_glDepthRangef,Gd:_emscripten_glDetachShader,eg:_emscripten_glDisable,fg:_emscripten_glDisableVertexAttribArray,gg:_emscripten_glDrawArrays,$e:_emscripten_glDrawArraysInstanced,Pd:_emscripten_glDrawArraysInstancedANGLE,Fb:_emscripten_glDrawArraysInstancedARB,Ye:_emscripten_glDrawArraysInstancedBaseInstanceWEBGL,_c:_emscripten_glDrawArraysInstancedEXT,Gb:_emscripten_glDrawArraysInstancedNV,We:_emscripten_glDrawBuffers,Yc:_emscripten_glDrawBuffersEXT,Qd:_emscripten_glDrawBuffersWEBGL,hg:_emscripten_glDrawElements,af:_emscripten_glDrawElementsInstanced,Od:_emscripten_glDrawElementsInstancedANGLE,Db:_emscripten_glDrawElementsInstancedARB,Ze:_emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL,Eb:_emscripten_glDrawElementsInstancedEXT,Zc:_emscripten_glDrawElementsInstancedNV,Qe:_emscripten_glDrawRangeElements,ig:_emscripten_glEnable,jg:_emscripten_glEnableVertexAttribArray,le:_emscripten_glEndQuery,ee:_emscripten_glEndQueryEXT,Gc:_emscripten_glEndTransformFeedback,ve:_emscripten_glFenceSync,kg:_emscripten_glFinish,lg:_emscripten_glFlush,Me:_emscripten_glFramebufferRenderbuffer,Ne:_emscripten_glFramebufferTexture2D,Kc:_emscripten_glFramebufferTextureLayer,mg:_emscripten_glFrontFace,ng:_emscripten_glGenBuffers,Oe:_emscripten_glGenFramebuffers,me:_emscripten_glGenQueries,fe:_emscripten_glGenQueriesEXT,Pe:_emscripten_glGenRenderbuffers,re:_emscripten_glGenSamplers,og:_emscripten_glGenTextures,Rb:_emscripten_glGenTransformFeedbacks,_e:_emscripten_glGenVertexArrays,gf:_emscripten_glGenVertexArraysOES,De:_emscripten_glGenerateMipmap,Fd:_emscripten_glGetActiveAttrib,Ed:_emscripten_glGetActiveUniform,bc:_emscripten_glGetActiveUniformBlockName,cc:_emscripten_glGetActiveUniformBlockiv,ec:_emscripten_glGetActiveUniformsiv,Dd:_emscripten_glGetAttachedShaders,Cd:_emscripten_glGetAttribLocation,Bd:_emscripten_glGetBooleanv,Yb:_emscripten_glGetBufferParameteri64v,pg:_emscripten_glGetBufferParameteriv,qg:_emscripten_glGetError,rg:_emscripten_glGetFloatv,tc:_emscripten_glGetFragDataLocation,Ee:_emscripten_glGetFramebufferAttachmentParameteriv,Zb:_emscripten_glGetInteger64i_v,$b:_emscripten_glGetInteger64v,Ic:_emscripten_glGetIntegeri_v,sg:_emscripten_glGetIntegerv,Jb:_emscripten_glGetInternalformativ,Nb:_emscripten_glGetProgramBinary,tg:_emscripten_glGetProgramInfoLog,ug:_emscripten_glGetProgramiv,$d:_emscripten_glGetQueryObjecti64vEXT,Sd:_emscripten_glGetQueryObjectivEXT,ae:_emscripten_glGetQueryObjectui64vEXT,ne:_emscripten_glGetQueryObjectuiv,ge:_emscripten_glGetQueryObjectuivEXT,oe:_emscripten_glGetQueryiv,ie:_emscripten_glGetQueryivEXT,Fe:_emscripten_glGetRenderbufferParameteriv,Ub:_emscripten_glGetSamplerParameterfv,Vb:_emscripten_glGetSamplerParameteriv,vg:_emscripten_glGetShaderInfoLog,Yd:_emscripten_glGetShaderPrecisionFormat,Ad:_emscripten_glGetShaderSource,wg:_emscripten_glGetShaderiv,xg:_emscripten_glGetString,df:_emscripten_glGetStringi,_b:_emscripten_glGetSynciv,zd:_emscripten_glGetTexParameterfv,yd:_emscripten_glGetTexParameteriv,Cc:_emscripten_glGetTransformFeedbackVarying,dc:_emscripten_glGetUniformBlockIndex,fc:_emscripten_glGetUniformIndices,yg:_emscripten_glGetUniformLocation,xd:_emscripten_glGetUniformfv,wd:_emscripten_glGetUniformiv,uc:_emscripten_glGetUniformuiv,Ac:_emscripten_glGetVertexAttribIiv,zc:_emscripten_glGetVertexAttribIuiv,td:_emscripten_glGetVertexAttribPointerv,vd:_emscripten_glGetVertexAttribfv,ud:_emscripten_glGetVertexAttribiv,sd:_emscripten_glHint,Zd:_emscripten_glInvalidateFramebuffer,_d:_emscripten_glInvalidateSubFramebuffer,rd:_emscripten_glIsBuffer,qd:_emscripten_glIsEnabled,pd:_emscripten_glIsFramebuffer,od:_emscripten_glIsProgram,Rc:_emscripten_glIsQuery,Td:_emscripten_glIsQueryEXT,nd:_emscripten_glIsRenderbuffer,Xb:_emscripten_glIsSampler,md:_emscripten_glIsShader,we:_emscripten_glIsSync,zg:_emscripten_glIsTexture,Qb:_emscripten_glIsTransformFeedback,Jc:_emscripten_glIsVertexArray,Rd:_emscripten_glIsVertexArrayOES,Ag:_emscripten_glLineWidth,Bg:_emscripten_glLinkProgram,Ue:_emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL,Ve:_emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL,Pb:_emscripten_glPauseTransformFeedback,Cg:_emscripten_glPixelStorei,ad:_emscripten_glPolygonModeWEBGL,ld:_emscripten_glPolygonOffset,cd:_emscripten_glPolygonOffsetClampEXT,Mb:_emscripten_glProgramBinary,Lb:_emscripten_glProgramParameteri,be:_emscripten_glQueryCounterEXT,Xe:_emscripten_glReadBuffer,Dg:_emscripten_glReadPixels,kd:_emscripten_glReleaseShaderCompiler,Ge:_emscripten_glRenderbufferStorage,Ce:_emscripten_glRenderbufferStorageMultisample,Ob:_emscripten_glResumeTransformFeedback,jd:_emscripten_glSampleCoverage,se:_emscripten_glSamplerParameterf,Wb:_emscripten_glSamplerParameterfv,te:_emscripten_glSamplerParameteri,ue:_emscripten_glSamplerParameteriv,Eg:_emscripten_glScissor,id:_emscripten_glShaderBinary,ya:_emscripten_glShaderSource,za:_emscripten_glStencilFunc,Aa:_emscripten_glStencilFuncSeparate,Ba:_emscripten_glStencilMask,Ca:_emscripten_glStencilMaskSeparate,Da:_emscripten_glStencilOp,Ea:_emscripten_glStencilOpSeparate,Fa:_emscripten_glTexImage2D,Xc:_emscripten_glTexImage3D,Ga:_emscripten_glTexParameterf,Ha:_emscripten_glTexParameterfv,Ia:_emscripten_glTexParameteri,Ja:_emscripten_glTexParameteriv,Re:_emscripten_glTexStorage2D,Kb:_emscripten_glTexStorage3D,Ka:_emscripten_glTexSubImage2D,Vc:_emscripten_glTexSubImage3D,Dc:_emscripten_glTransformFeedbackVaryings,La:_emscripten_glUniform1f,Ma:_emscripten_glUniform1fv,Cf:_emscripten_glUniform1i,Df:_emscripten_glUniform1iv,sc:_emscripten_glUniform1ui,nc:_emscripten_glUniform1uiv,Ef:_emscripten_glUniform2f,Ff:_emscripten_glUniform2fv,Bf:_emscripten_glUniform2i,Af:_emscripten_glUniform2iv,rc:_emscripten_glUniform2ui,mc:_emscripten_glUniform2uiv,zf:_emscripten_glUniform3f,yf:_emscripten_glUniform3fv,xf:_emscripten_glUniform3i,wf:_emscripten_glUniform3iv,pc:_emscripten_glUniform3ui,lc:_emscripten_glUniform3uiv,vf:_emscripten_glUniform4f,uf:_emscripten_glUniform4fv,hf:_emscripten_glUniform4i,jf:_emscripten_glUniform4iv,oc:_emscripten_glUniform4ui,kc:_emscripten_glUniform4uiv,ac:_emscripten_glUniformBlockBinding,kf:_emscripten_glUniformMatrix2fv,Qc:_emscripten_glUniformMatrix2x3fv,Oc:_emscripten_glUniformMatrix2x4fv,lf:_emscripten_glUniformMatrix3fv,Pc:_emscripten_glUniformMatrix3x2fv,Mc:_emscripten_glUniformMatrix3x4fv,mf:_emscripten_glUniformMatrix4fv,Nc:_emscripten_glUniformMatrix4x2fv,Lc:_emscripten_glUniformMatrix4x3fv,nf:_emscripten_glUseProgram,hd:_emscripten_glValidateProgram,of:_emscripten_glVertexAttrib1f,gd:_emscripten_glVertexAttrib1fv,fd:_emscripten_glVertexAttrib2f,pf:_emscripten_glVertexAttrib2fv,ed:_emscripten_glVertexAttrib3f,qf:_emscripten_glVertexAttrib3fv,dd:_emscripten_glVertexAttrib4f,rf:_emscripten_glVertexAttrib4fv,Se:_emscripten_glVertexAttribDivisor,Nd:_emscripten_glVertexAttribDivisorANGLE,Hb:_emscripten_glVertexAttribDivisorARB,$c:_emscripten_glVertexAttribDivisorEXT,Ib:_emscripten_glVertexAttribDivisorNV,yc:_emscripten_glVertexAttribI4i,wc:_emscripten_glVertexAttribI4iv,xc:_emscripten_glVertexAttribI4ui,vc:_emscripten_glVertexAttribI4uiv,Te:_emscripten_glVertexAttribIPointer,sf:_emscripten_glVertexAttribPointer,tf:_emscripten_glViewport,xe:_emscripten_glWaitSync,Va:_emscripten_request_animation_frame_loop,hb:_emscripten_resize_heap,Bb:_environ_get,Cb:_environ_sizes_get,Pa:_exit,fa:_fd_close,ib:_fd_pread,ub:_fd_read,mb:_fd_seek,X:_fd_write,Na:_glGetIntegerv,ga:_glGetString,Oa:_glGetStringi,Wd:invoke_dd,Vd:invoke_ddd,Xd:invoke_dddd,na:invoke_diii,Ud:invoke_fff,x:invoke_ffif,q:invoke_ffifif,S:invoke_ffifiii,L:invoke_fi,da:invoke_fif,oa:invoke_fiii,Za:invoke_fiiiif,la:invoke_fiiiii,p:invoke_i,Ra:invoke_if,Ta:invoke_iffiiiiiiii,g:invoke_ii,D:invoke_iif,ia:invoke_iiffi,h:invoke_iii,_a:invoke_iiif,f:invoke_iiii,k:invoke_iiiii,db:invoke_iiiiid,$:invoke_iiiiii,y:invoke_iiiiiii,s:invoke_iiiiiiii,ha:invoke_iiiiiiiiii,sa:invoke_iiiiiiiiiiifiii,V:invoke_iiiiiiiiiiii,Bc:invoke_iiji,fb:invoke_j,Sa:invoke_ji,m:invoke_jii,W:invoke_jiiii,bb:invoke_jiijj,n:invoke_v,ka:invoke_vfffffiii,b:invoke_vi,xa:invoke_vid,K:invoke_vif,J:invoke_viff,E:invoke_vifff,M:invoke_viffff,z:invoke_vifffff,N:invoke_viffffffffffffffffffff,Xa:invoke_viffi,c:invoke_vii,B:invoke_viif,A:invoke_viiff,qc:invoke_viiffiii,ea:invoke_viifif,u:invoke_viififif,w:invoke_viifii,e:invoke_viii,G:invoke_viiif,ma:invoke_viiiffi,R:invoke_viiiffiffii,T:invoke_viiifi,Q:invoke_viiififiiiiiiiiiiii,j:invoke_viiii,ba:invoke_viiiif,_:invoke_viiiiff,O:invoke_viiiifi,i:invoke_viiiii,wb:invoke_viiiiif,ta:invoke_viiiiiff,ab:invoke_viiiiiffiiifffi,$a:invoke_viiiiiffiiifii,va:invoke_viiiiifi,l:invoke_viiiiii,t:invoke_viiiiiii,ca:invoke_viiiiiiii,Qa:invoke_viiiiiiiii,I:invoke_viiiiiiiiii,Wa:invoke_viiiiiiiiiii,U:invoke_viiiiiiiiiiiiiii,Ya:invoke_viiiijjiiiiff,ua:invoke_viiij,Ua:invoke_viiijj,Y:invoke_viij,r:invoke_viiji,v:invoke_viijiii,ja:invoke_viijiiiif,he:invoke_vijff,wa:invoke_viji,Wc:invoke_vijii,cb:invoke_vijiiii,Z:invoke_vijjjj,aa:_llvm_eh_typeid_for,ob:_random_get};var wasmExports=await createWasm();var ___wasm_call_ctors=wasmExports["Gg"];var _init=Module["_init"]=wasmExports["Ig"];var _tick=Module["_tick"]=wasmExports["Jg"];var _resize_surface=Module["_resize_surface"]=wasmExports["Kg"];var _redraw=Module["_redraw"]=wasmExports["Lg"];var _load_scene_json=Module["_load_scene_json"]=wasmExports["Mg"];var _apply_scene_transactions=Module["_apply_scene_transactions"]=wasmExports["Ng"];var _pointer_move=Module["_pointer_move"]=wasmExports["Og"];var _command=Module["_command"]=wasmExports["Pg"];var _set_main_camera_transform=Module["_set_main_camera_transform"]=wasmExports["Qg"];var _add_image=Module["_add_image"]=wasmExports["Rg"];var _get_image_bytes=Module["_get_image_bytes"]=wasmExports["Sg"];var _get_image_size=Module["_get_image_size"]=wasmExports["Tg"];var _add_font=Module["_add_font"]=wasmExports["Ug"];var _has_missing_fonts=Module["_has_missing_fonts"]=wasmExports["Vg"];var _list_missing_fonts=Module["_list_missing_fonts"]=wasmExports["Wg"];var _list_available_fonts=Module["_list_available_fonts"]=wasmExports["Xg"];var _set_default_fallback_fonts=Module["_set_default_fallback_fonts"]=wasmExports["Yg"];var _get_default_fallback_fonts=Module["_get_default_fallback_fonts"]=wasmExports["Zg"];var _get_node_id_from_point=Module["_get_node_id_from_point"]=wasmExports["_g"];var _get_node_ids_from_point=Module["_get_node_ids_from_point"]=wasmExports["$g"];var _get_node_ids_from_envelope=Module["_get_node_ids_from_envelope"]=wasmExports["ah"];var _get_node_absolute_bounding_box=Module["_get_node_absolute_bounding_box"]=wasmExports["bh"];var _export_node_as=Module["_export_node_as"]=wasmExports["ch"];var _to_vector_network=Module["_to_vector_network"]=wasmExports["dh"];var _set_debug=Module["_set_debug"]=wasmExports["eh"];var _toggle_debug=Module["_toggle_debug"]=wasmExports["fh"];var _set_verbose=Module["_set_verbose"]=wasmExports["gh"];var _devtools_rendering_set_show_ruler=Module["_devtools_rendering_set_show_ruler"]=wasmExports["hh"];var _devtools_rendering_set_show_tiles=Module["_devtools_rendering_set_show_tiles"]=wasmExports["ih"];var _runtime_renderer_set_cache_tile=Module["_runtime_renderer_set_cache_tile"]=wasmExports["jh"];var _devtools_rendering_set_show_fps_meter=Module["_devtools_rendering_set_show_fps_meter"]=wasmExports["kh"];var _devtools_rendering_set_show_stats=Module["_devtools_rendering_set_show_stats"]=wasmExports["lh"];var _devtools_rendering_set_show_hit_testing=Module["_devtools_rendering_set_show_hit_testing"]=wasmExports["mh"];var _highlight_strokes=Module["_highlight_strokes"]=wasmExports["nh"];var _load_dummy_scene=Module["_load_dummy_scene"]=wasmExports["oh"];var _load_benchmark_scene=Module["_load_benchmark_scene"]=wasmExports["ph"];var _main=Module["_main"]=wasmExports["qh"];var _grida_fonts_analyze_family=Module["_grida_fonts_analyze_family"]=wasmExports["rh"];var _grida_fonts_parse_font=Module["_grida_fonts_parse_font"]=wasmExports["sh"];var _grida_fonts_free=Module["_grida_fonts_free"]=wasmExports["th"];var _allocate=Module["_allocate"]=wasmExports["uh"];var _deallocate=Module["_deallocate"]=wasmExports["vh"];var _malloc=wasmExports["wh"];var _emscripten_builtin_memalign=wasmExports["xh"];var _setThrew=wasmExports["yh"];var __emscripten_tempret_set=wasmExports["zh"];var __emscripten_stack_restore=wasmExports["Ah"];var __emscripten_stack_alloc=wasmExports["Bh"];var _emscripten_stack_get_current=wasmExports["Ch"];var ___cxa_decrement_exception_refcount=wasmExports["Dh"];var ___cxa_increment_exception_refcount=wasmExports["Eh"];var ___cxa_can_catch=wasmExports["Fh"];var ___cxa_get_exception_ptr=wasmExports["Gh"];function invoke_vii(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vid(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viff(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiif(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiff(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viji(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viij(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiji(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiifi(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viifii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiifi(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiij(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiffiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiff(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vifffff(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viif(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiifiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiif(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffffffffffffffffffff(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viififif(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffifif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffif(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vifff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffff(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiijj(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiifi(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viifif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fif(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffifiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiffiffii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiffiiifffi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiffiiifii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fi(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiffi(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iif(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiif(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiiiif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiififiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vfffffiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijiiiif(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vif(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiffi(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiijjiiiiff(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffi(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiijj(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iffiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ji(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_if(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijjjj(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dddd(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dd(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ddd(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fff(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_j(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_fiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function callMain(args=[]){var entryFunction=_main;args.unshift(thisProgram);var argc=args.length;var argv=stackAlloc((argc+1)*4);var argv_ptr=argv;args.forEach(arg=>{HEAPU32[argv_ptr>>2]=stringToUTF8OnStack(arg);argv_ptr+=4});HEAPU32[argv_ptr>>2]=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(args=arguments_){if(runDependencies>0){dependenciesFulfilled=run;return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);Module["onRuntimeInitialized"]?.();var noInitialRun=Module["noInitialRun"]||false;if(!noInitialRun)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}function preInit(){if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}preInit();run();moduleRtn=readyPromise; +var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;var readyPromise=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var ENVIRONMENT_IS_WEB=true;var ENVIRONMENT_IS_WORKER=false;var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptName){scriptDirectory=_scriptName}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.slice(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.initialized)FS.init();TTY.init();wasmExports["Hg"]();FS.ignorePermissions=false}function preMain(){}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}var runDependencies=0;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("grida_canvas_wasm.wasm")}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){return{a:wasmImports}}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["Gg"];updateMemoryViews();wasmTable=wasmExports["Ig"];removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(mod,inst)=>{resolve(receiveInstance(mod,inst))})})}wasmBinaryFile??=findWasmBinary();try{var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}catch(e){readyPromiseReject(e);return Promise.reject(e)}}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var noExitRuntime=true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();var exceptionCaught=[];var uncaughtExceptionCount=0;var ___cxa_begin_catch=ptr=>{var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);___cxa_increment_exception_refcount(ptr);return ___cxa_get_exception_ptr(ptr)};var exceptionLast=0;var ___cxa_end_catch=()=>{_setThrew(0,0);var info=exceptionCaught.pop();___cxa_decrement_exception_refcount(info.excPtr);exceptionLast=0};class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var setTempRet0=val=>__emscripten_tempret_set(val);var findMatchingCatch=args=>{var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}for(var caughtType of args){if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown};var ___cxa_find_matching_catch_2=()=>findMatchingCatch([]);var ___cxa_find_matching_catch_3=arg0=>findMatchingCatch([arg0]);var ___cxa_find_matching_catch_4=(arg0,arg1)=>findMatchingCatch([arg0,arg1]);var ___cxa_rethrow=()=>{var info=exceptionCaught.pop();if(!info){abort("no exception to throw")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}exceptionLast=ptr;throw exceptionLast};var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;var ___resumeException=ptr=>{if(!exceptionLast){exceptionLast=ptr}throw exceptionLast};var syscallGetVarargI=()=>{var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret};var syscallGetVarargP=syscallGetVarargI;var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.slice(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.slice(0,-1)}return root+dir},basename:path=>path&&path.match(/([^\/]+|\/)\/*$/)[1],join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>view=>crypto.getRandomValues(view);var randomFill=view=>{(randomFill=initRandomFill())(view)};var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).slice(1);to=PATH_FS.resolve(to).slice(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var intArrayFromString=(stringy,dontAddNull,length)=>{var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array};var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output));tty.output=[]}},ioctl_tcgets(tty){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(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output?.length>0){err(UTF8ArrayToString(tty.output));tty.output=[]}}}};var zeroMemory=(ptr,size)=>HEAPU8.fill(0,ptr,ptr+size);var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(ptr)zeroMemory(ptr,size);return ptr};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16895,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.atime=node.mtime=node.ctime=Date.now();if(parent){parent.contents[name]=node;parent.atime=parent.mtime=parent.ctime=node.atime}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.atime);attr.mtime=new Date(node.mtime);attr.ctime=new Date(node.ctime);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){for(const key of["mode","atime","mtime","ctime"]){if(attr[key]!=null){node[key]=attr[key]}}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw MEMFS.doesNotExistError},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){if(FS.isDir(old_node.mode)){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}FS.hashRemoveNode(new_node)}delete old_node.parent.contents[old_node.name];new_dir.contents[new_name]=old_node;old_node.name=new_name;new_dir.ctime=new_dir.mtime=old_node.parent.ctime=old_node.parent.mtime=Date.now()},unlink(parent,name){delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.ctime=parent.mtime=Date.now()},readdir(node){return[".","..",...Object.keys(node.contents)]},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var arrayBuffer=await readAsync(url);return new Uint8Array(arrayBuffer)};var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};var preloadPlugins=[];var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url).then(processData,onerror)}else{processData(url)}};var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,filesystems:null,syncFSRequests:0,readFiles:{},ErrnoError:class{name="ErrnoError";constructor(errno){this.errno=errno}},FSStream:class{shared={};get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{node_ops={};stream_ops={};readMode=292|73;writeMode=146;mounted=null;constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.rdev=rdev;this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){if(!path){throw new FS.ErrnoError(44)}opts.follow_mount??=true;if(!PATH.isAbs(path)){path=FS.cwd()+"/"+path}linkloop:for(var nlinks=0;nlinks<40;nlinks++){var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){if(!FS.isDir(dir.mode)){return 54}try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&(512|64)){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},checkOpExists(op,err){if(!op){throw new FS.ErrnoError(err)}return op},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},doSetAttr(stream,node,attr){var setattr=stream?.stream_ops.setattr;var arg=setattr?stream:node;setattr??=node.node_ops.setattr;FS.checkOpExists(setattr,63);setattr(arg,attr)},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type,opts,mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name){throw new FS.ErrnoError(28)}if(name==="."||name===".."){throw new FS.ErrnoError(20)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},statfs(path){return FS.statfsNode(FS.lookupPath(path,{follow:true}).node)},statfsStream(stream){return FS.statfsNode(stream.node)},statfsNode(node){var rtn={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255};if(node.node_ops.statfs){Object.assign(rtn,node.node_ops.statfs(node.mount.opts.root))}return rtn},create(path,mode=438){mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode=511){mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var dir of dirs){if(!dir)continue;if(d||PATH.isAbs(path))d+="/";d+=dir;try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev(path,mode,dev){if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink(oldpath,newpath){if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name);old_node.parent=new_dir}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var readdir=FS.checkOpExists(node.node_ops.readdir,54);return readdir(node)},unlink(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return link.node_ops.readlink(link)},stat(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;var getattr=FS.checkOpExists(node.node_ops.getattr,63);return getattr(node)},fstat(fd){var stream=FS.getStreamChecked(fd);var node=stream.node;var getattr=stream.stream_ops.getattr;var arg=getattr?stream:node;getattr??=node.node_ops.getattr;FS.checkOpExists(getattr,63);return getattr(arg)},lstat(path){return FS.stat(path,true)},doChmod(stream,node,mode,dontFollow){FS.doSetAttr(stream,node,{mode:mode&4095|node.mode&~4095,ctime:Date.now(),dontFollow})},chmod(path,mode,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChmod(null,node,mode,dontFollow)},lchmod(path,mode){FS.chmod(path,mode,true)},fchmod(fd,mode){var stream=FS.getStreamChecked(fd);FS.doChmod(stream,stream.node,mode,false)},doChown(stream,node,dontFollow){FS.doSetAttr(stream,node,{timestamp:Date.now(),dontFollow})},chown(path,uid,gid,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChown(null,node,dontFollow)},lchown(path,uid,gid){FS.chown(path,uid,gid,true)},fchown(fd,uid,gid){var stream=FS.getStreamChecked(fd);FS.doChown(stream,stream.node,false)},doTruncate(stream,node,len){if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}FS.doSetAttr(stream,node,{size:len,timestamp:Date.now()})},truncate(path,len){if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}FS.doTruncate(null,node,len)},ftruncate(fd,len){var stream=FS.getStreamChecked(fd);if(len<0||(stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.doTruncate(stream,stream.node,len)},utime(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var setattr=FS.checkOpExists(node.node_ops.setattr,63);setattr(node,{atime,mtime})},open(path,flags,mode=438){if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;var isDirPath;if(typeof path=="object"){node=path}else{isDirPath=path.endsWith("/");var lookup=FS.lookupPath(path,{follow:!(flags&131072),noent_okay:true});node=lookup.node;path=lookup.path}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else if(isDirPath){throw new FS.ErrnoError(31)}else{node=FS.mknod(path,mode|511,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node,path:FS.getPath(node),flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(created){FS.chmod(node,mode&511)}if(Module["logReadFiles"]&&!(flags&1)){if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close(stream){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed(stream){return stream.fd===null},llseek(stream,offset,whence){if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},mmap(stream,length,position,prot,flags){if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}if(!length){throw new FS.ErrnoError(28)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync(stream,buffer,offset,length,mmapFlags){if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},ioctl(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile(path,opts={}){opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile(path,data,opts={}){opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length,llseek:()=>0});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomFill(randomBuffer);randomLeft=randomBuffer.byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16895,73);node.stream_ops={llseek:MEMFS.stream_ops.llseek};node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path},id:fd+1};ret.parent=ret;return ret},readdir(){return Array.from(FS.streams.entries()).filter(([k,v])=>v).map(([k,v])=>k.toString())}};return node}},{},"/proc/self/fd")},createStandardStreams(input,output,error){if(input){FS.createDevice("/dev","stdin",input)}else{FS.symlink("/dev/tty","/dev/stdin")}if(output){FS.createDevice("/dev","stdout",null,output)}else{FS.symlink("/dev/tty","/dev/stdout")}if(error){FS.createDevice("/dev","stderr",null,error)}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS}},init(input,output,error){FS.initialized=true;input??=Module["stdin"];output??=Module["stdout"];error??=Module["stderr"];FS.createStandardStreams(input,output,error)},quit(){FS.initialized=false;for(var stream of FS.streams){if(stream){FS.close(stream)}}},findObject(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath(parent,path,canRead,canWrite){parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){if(e.errno!=20)throw e}parent=current}return current},createFile(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile(parent,name,data,canRead,canWrite,canOwn){var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return dir+"/"+path},writeStat(buf,stat){HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=stat.mode;HEAPU32[buf+8>>2]=stat.nlink;HEAP32[buf+12>>2]=stat.uid;HEAP32[buf+16>>2]=stat.gid;HEAP32[buf+20>>2]=stat.rdev;HEAP64[buf+24>>3]=BigInt(stat.size);HEAP32[buf+32>>2]=4096;HEAP32[buf+36>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();HEAP64[buf+40>>3]=BigInt(Math.floor(atime/1e3));HEAPU32[buf+48>>2]=atime%1e3*1e3*1e3;HEAP64[buf+56>>3]=BigInt(Math.floor(mtime/1e3));HEAPU32[buf+64>>2]=mtime%1e3*1e3*1e3;HEAP64[buf+72>>3]=BigInt(Math.floor(ctime/1e3));HEAPU32[buf+80>>2]=ctime%1e3*1e3*1e3;HEAP64[buf+88>>3]=BigInt(stat.ino);return 0},writeStatFs(buf,stats){HEAP32[buf+4>>2]=stats.bsize;HEAP32[buf+40>>2]=stats.bsize;HEAP32[buf+8>>2]=stats.blocks;HEAP32[buf+12>>2]=stats.bfree;HEAP32[buf+16>>2]=stats.bavail;HEAP32[buf+20>>2]=stats.files;HEAP32[buf+24>>2]=stats.ffree;HEAP32[buf+28>>2]=stats.fsid;HEAP32[buf+44>>2]=stats.flags;HEAP32[buf+36>>2]=stats.namelen},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){try{return SYSCALLS.writeStat(buf,FS.fstat(fd))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);function ___syscall_getcwd(buf,size){try{if(size===0)return-28;var cwd=FS.cwd();var cwdLengthInBytes=lengthBytesUTF8(cwd)+1;if(size>2]=termios.c_iflag||0;HEAP32[argp+4>>2]=termios.c_oflag||0;HEAP32[argp+8>>2]=termios.c_cflag||0;HEAP32[argp+12>>2]=termios.c_lflag||0;for(var i=0;i<32;i++){HEAP8[argp+i+17]=termios.c_cc[i]||0}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=HEAP32[argp>>2];var c_oflag=HEAP32[argp+4>>2];var c_cflag=HEAP32[argp+8>>2];var c_lflag=HEAP32[argp+12>>2];var c_cc=[];for(var i=0;i<32;i++){c_cc.push(HEAP8[argp+i+17])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag,c_oflag,c_cflag,c_lflag,c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>1]=winsize[0];HEAP16[argp+2>>1]=winsize[1]}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.writeStat(buf,FS.lstat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.writeStat(buf,nofollow?FS.lstat(path):FS.stat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.writeStat(buf,FS.stat(path))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>abort("");var __emscripten_throw_longjmp=()=>{throw Infinity};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>numINT53_MAX?NaN:Number(num);function __gmtime_js(time,tmPtr){time=bigintToI53Checked(time);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday}function __mmap_js(len,prot,flags,fd,offset,allocated,addr){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>2]=res.allocated;HEAPU32[addr>>2]=ptr;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function __munmap_js(addr,len,prot,flags,fd,offset){offset=bigintToI53Checked(offset);try{var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffsetperformance.now();var _emscripten_date_now=()=>Date.now();var nowIsMonotonic=1;var checkWasiClock=clock_id=>clock_id>=0&&clock_id<=3;function _clock_time_get(clk_id,ignored_precision,ptime){ignored_precision=bigintToI53Checked(ignored_precision);if(!checkWasiClock(clk_id)){return 28}var now;if(clk_id===0){now=_emscripten_date_now()}else if(nowIsMonotonic){now=_emscripten_get_now()}else{return 52}var nsec=Math.round(now*1e3*1e3);HEAP64[ptime>>3]=BigInt(nsec);return 0}var GLctx;var webgl_enable_ANGLE_instanced_arrays=ctx=>{var ext=ctx.getExtension("ANGLE_instanced_arrays");if(ext){ctx["vertexAttribDivisor"]=(index,divisor)=>ext["vertexAttribDivisorANGLE"](index,divisor);ctx["drawArraysInstanced"]=(mode,first,count,primcount)=>ext["drawArraysInstancedANGLE"](mode,first,count,primcount);ctx["drawElementsInstanced"]=(mode,count,type,indices,primcount)=>ext["drawElementsInstancedANGLE"](mode,count,type,indices,primcount);return 1}};var webgl_enable_OES_vertex_array_object=ctx=>{var ext=ctx.getExtension("OES_vertex_array_object");if(ext){ctx["createVertexArray"]=()=>ext["createVertexArrayOES"]();ctx["deleteVertexArray"]=vao=>ext["deleteVertexArrayOES"](vao);ctx["bindVertexArray"]=vao=>ext["bindVertexArrayOES"](vao);ctx["isVertexArray"]=vao=>ext["isVertexArrayOES"](vao);return 1}};var webgl_enable_WEBGL_draw_buffers=ctx=>{var ext=ctx.getExtension("WEBGL_draw_buffers");if(ext){ctx["drawBuffers"]=(n,bufs)=>ext["drawBuffersWEBGL"](n,bufs);return 1}};var webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"));var webgl_enable_EXT_polygon_offset_clamp=ctx=>!!(ctx.extPolygonOffsetClamp=ctx.getExtension("EXT_polygon_offset_clamp"));var webgl_enable_EXT_clip_control=ctx=>!!(ctx.extClipControl=ctx.getExtension("EXT_clip_control"));var webgl_enable_WEBGL_polygon_mode=ctx=>!!(ctx.webglPolygonMode=ctx.getExtension("WEBGL_polygon_mode"));var webgl_enable_WEBGL_multi_draw=ctx=>!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"));var getEmscriptenSupportedExtensions=ctx=>{var supportedExtensions=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"];return(ctx.getSupportedExtensions()||[]).filter(ext=>supportedExtensions.includes(ext))};var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:errorCode=>{if(!GL.lastError){GL.lastError=errorCode}},getNewId:table=>{var ret=GL.counter++;for(var i=table.length;i{for(var i=0;i>2]=id}},getSource:(shader,count,string,length)=>{var source="";for(var i=0;i>2]:undefined;source+=UTF8ToString(HEAPU32[string+i*4>>2],len)}return source},createContext:(canvas,webGLContextAttributes)=>{if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=webGLContextAttributes.majorVersion>1?canvas.getContext("webgl2",webGLContextAttributes):canvas.getContext("webgl",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:(ctx,webGLContextAttributes)=>{var handle=GL.getNewId(GL.contexts);var context={handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:contextHandle=>{GL.currentContext=GL.contexts[contextHandle];Module["ctx"]=GLctx=GL.currentContext?.GLctx;return!(contextHandle&&!GLctx)},getContext:contextHandle=>GL.contexts[contextHandle],deleteContext:contextHandle=>{if(GL.currentContext===GL.contexts[contextHandle]){GL.currentContext=null}if(typeof JSEvents=="object"){JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas)}if(GL.contexts[contextHandle]?.GLctx.canvas){GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined}GL.contexts[contextHandle]=null},initExtensions:context=>{context||=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_multi_draw(GLctx);webgl_enable_EXT_polygon_offset_clamp(GLctx);webgl_enable_EXT_clip_control(GLctx);webgl_enable_WEBGL_polygon_mode(GLctx);webgl_enable_ANGLE_instanced_arrays(GLctx);webgl_enable_OES_vertex_array_object(GLctx);webgl_enable_WEBGL_draw_buffers(GLctx);webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}getEmscriptenSupportedExtensions(GLctx).forEach(ext=>{if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var _glActiveTexture=x0=>GLctx.activeTexture(x0);var _emscripten_glActiveTexture=_glActiveTexture;var _glAttachShader=(program,shader)=>{GLctx.attachShader(GL.programs[program],GL.shaders[shader])};var _emscripten_glAttachShader=_glAttachShader;var _glBeginQuery=(target,id)=>{GLctx.beginQuery(target,GL.queries[id])};var _emscripten_glBeginQuery=_glBeginQuery;var _glBeginQueryEXT=(target,id)=>{GLctx.disjointTimerQueryExt["beginQueryEXT"](target,GL.queries[id])};var _emscripten_glBeginQueryEXT=_glBeginQueryEXT;var _glBeginTransformFeedback=x0=>GLctx.beginTransformFeedback(x0);var _emscripten_glBeginTransformFeedback=_glBeginTransformFeedback;var _glBindAttribLocation=(program,index,name)=>{GLctx.bindAttribLocation(GL.programs[program],index,UTF8ToString(name))};var _emscripten_glBindAttribLocation=_glBindAttribLocation;var _glBindBuffer=(target,buffer)=>{if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])};var _emscripten_glBindBuffer=_glBindBuffer;var _glBindBufferBase=(target,index,buffer)=>{GLctx.bindBufferBase(target,index,GL.buffers[buffer])};var _emscripten_glBindBufferBase=_glBindBufferBase;var _glBindBufferRange=(target,index,buffer,offset,ptrsize)=>{GLctx.bindBufferRange(target,index,GL.buffers[buffer],offset,ptrsize)};var _emscripten_glBindBufferRange=_glBindBufferRange;var _glBindFramebuffer=(target,framebuffer)=>{GLctx.bindFramebuffer(target,GL.framebuffers[framebuffer])};var _emscripten_glBindFramebuffer=_glBindFramebuffer;var _glBindRenderbuffer=(target,renderbuffer)=>{GLctx.bindRenderbuffer(target,GL.renderbuffers[renderbuffer])};var _emscripten_glBindRenderbuffer=_glBindRenderbuffer;var _glBindSampler=(unit,sampler)=>{GLctx.bindSampler(unit,GL.samplers[sampler])};var _emscripten_glBindSampler=_glBindSampler;var _glBindTexture=(target,texture)=>{GLctx.bindTexture(target,GL.textures[texture])};var _emscripten_glBindTexture=_glBindTexture;var _glBindTransformFeedback=(target,id)=>{GLctx.bindTransformFeedback(target,GL.transformFeedbacks[id])};var _emscripten_glBindTransformFeedback=_glBindTransformFeedback;var _glBindVertexArray=vao=>{GLctx.bindVertexArray(GL.vaos[vao])};var _emscripten_glBindVertexArray=_glBindVertexArray;var _glBindVertexArrayOES=_glBindVertexArray;var _emscripten_glBindVertexArrayOES=_glBindVertexArrayOES;var _glBlendColor=(x0,x1,x2,x3)=>GLctx.blendColor(x0,x1,x2,x3);var _emscripten_glBlendColor=_glBlendColor;var _glBlendEquation=x0=>GLctx.blendEquation(x0);var _emscripten_glBlendEquation=_glBlendEquation;var _glBlendEquationSeparate=(x0,x1)=>GLctx.blendEquationSeparate(x0,x1);var _emscripten_glBlendEquationSeparate=_glBlendEquationSeparate;var _glBlendFunc=(x0,x1)=>GLctx.blendFunc(x0,x1);var _emscripten_glBlendFunc=_glBlendFunc;var _glBlendFuncSeparate=(x0,x1,x2,x3)=>GLctx.blendFuncSeparate(x0,x1,x2,x3);var _emscripten_glBlendFuncSeparate=_glBlendFuncSeparate;var _glBlitFramebuffer=(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9)=>GLctx.blitFramebuffer(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9);var _emscripten_glBlitFramebuffer=_glBlitFramebuffer;var _glBufferData=(target,size,data,usage)=>{if(GL.currentContext.version>=2){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}return}GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)};var _emscripten_glBufferData=_glBufferData;var _glBufferSubData=(target,offset,size,data)=>{if(GL.currentContext.version>=2){size&&GLctx.bufferSubData(target,offset,HEAPU8,data,size);return}GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))};var _emscripten_glBufferSubData=_glBufferSubData;var _glCheckFramebufferStatus=x0=>GLctx.checkFramebufferStatus(x0);var _emscripten_glCheckFramebufferStatus=_glCheckFramebufferStatus;var _glClear=x0=>GLctx.clear(x0);var _emscripten_glClear=_glClear;var _glClearBufferfi=(x0,x1,x2,x3)=>GLctx.clearBufferfi(x0,x1,x2,x3);var _emscripten_glClearBufferfi=_glClearBufferfi;var _glClearBufferfv=(buffer,drawbuffer,value)=>{GLctx.clearBufferfv(buffer,drawbuffer,HEAPF32,value>>2)};var _emscripten_glClearBufferfv=_glClearBufferfv;var _glClearBufferiv=(buffer,drawbuffer,value)=>{GLctx.clearBufferiv(buffer,drawbuffer,HEAP32,value>>2)};var _emscripten_glClearBufferiv=_glClearBufferiv;var _glClearBufferuiv=(buffer,drawbuffer,value)=>{GLctx.clearBufferuiv(buffer,drawbuffer,HEAPU32,value>>2)};var _emscripten_glClearBufferuiv=_glClearBufferuiv;var _glClearColor=(x0,x1,x2,x3)=>GLctx.clearColor(x0,x1,x2,x3);var _emscripten_glClearColor=_glClearColor;var _glClearDepthf=x0=>GLctx.clearDepth(x0);var _emscripten_glClearDepthf=_glClearDepthf;var _glClearStencil=x0=>GLctx.clearStencil(x0);var _emscripten_glClearStencil=_glClearStencil;var _glClientWaitSync=(sync,flags,timeout)=>{timeout=Number(timeout);return GLctx.clientWaitSync(GL.syncs[sync],flags,timeout)};var _emscripten_glClientWaitSync=_glClientWaitSync;var _glClipControlEXT=(origin,depth)=>{GLctx.extClipControl["clipControlEXT"](origin,depth)};var _emscripten_glClipControlEXT=_glClipControlEXT;var _glColorMask=(red,green,blue,alpha)=>{GLctx.colorMask(!!red,!!green,!!blue,!!alpha)};var _emscripten_glColorMask=_glColorMask;var _glCompileShader=shader=>{GLctx.compileShader(GL.shaders[shader])};var _emscripten_glCompileShader=_glCompileShader;var _glCompressedTexImage2D=(target,level,internalFormat,width,height,border,imageSize,data)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data);return}GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,HEAPU8,data,imageSize);return}GLctx.compressedTexImage2D(target,level,internalFormat,width,height,border,HEAPU8.subarray(data,data+imageSize))};var _emscripten_glCompressedTexImage2D=_glCompressedTexImage2D;var _glCompressedTexImage3D=(target,level,internalFormat,width,height,depth,border,imageSize,data)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.compressedTexImage3D(target,level,internalFormat,width,height,depth,border,imageSize,data)}else{GLctx.compressedTexImage3D(target,level,internalFormat,width,height,depth,border,HEAPU8,data,imageSize)}};var _emscripten_glCompressedTexImage3D=_glCompressedTexImage3D;var _glCompressedTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,imageSize,data)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding||!imageSize){GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data);return}GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,HEAPU8,data,imageSize);return}GLctx.compressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,HEAPU8.subarray(data,data+imageSize))};var _emscripten_glCompressedTexSubImage2D=_glCompressedTexSubImage2D;var _glCompressedTexSubImage3D=(target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.compressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,imageSize,data)}else{GLctx.compressedTexSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,HEAPU8,data,imageSize)}};var _emscripten_glCompressedTexSubImage3D=_glCompressedTexSubImage3D;var _glCopyBufferSubData=(x0,x1,x2,x3,x4)=>GLctx.copyBufferSubData(x0,x1,x2,x3,x4);var _emscripten_glCopyBufferSubData=_glCopyBufferSubData;var _glCopyTexImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexImage2D(x0,x1,x2,x3,x4,x5,x6,x7);var _emscripten_glCopyTexImage2D=_glCopyTexImage2D;var _glCopyTexSubImage2D=(x0,x1,x2,x3,x4,x5,x6,x7)=>GLctx.copyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7);var _emscripten_glCopyTexSubImage2D=_glCopyTexSubImage2D;var _glCopyTexSubImage3D=(x0,x1,x2,x3,x4,x5,x6,x7,x8)=>GLctx.copyTexSubImage3D(x0,x1,x2,x3,x4,x5,x6,x7,x8);var _emscripten_glCopyTexSubImage3D=_glCopyTexSubImage3D;var _glCreateProgram=()=>{var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id};var _emscripten_glCreateProgram=_glCreateProgram;var _glCreateShader=shaderType=>{var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id};var _emscripten_glCreateShader=_glCreateShader;var _glCullFace=x0=>GLctx.cullFace(x0);var _emscripten_glCullFace=_glCullFace;var _glDeleteBuffers=(n,buffers)=>{for(var i=0;i>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null;if(id==GLctx.currentPixelPackBufferBinding)GLctx.currentPixelPackBufferBinding=0;if(id==GLctx.currentPixelUnpackBufferBinding)GLctx.currentPixelUnpackBufferBinding=0}};var _emscripten_glDeleteBuffers=_glDeleteBuffers;var _glDeleteFramebuffers=(n,framebuffers)=>{for(var i=0;i>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}};var _emscripten_glDeleteFramebuffers=_glDeleteFramebuffers;var _glDeleteProgram=id=>{if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null};var _emscripten_glDeleteProgram=_glDeleteProgram;var _glDeleteQueries=(n,ids)=>{for(var i=0;i>2];var query=GL.queries[id];if(!query)continue;GLctx.deleteQuery(query);GL.queries[id]=null}};var _emscripten_glDeleteQueries=_glDeleteQueries;var _glDeleteQueriesEXT=(n,ids)=>{for(var i=0;i>2];var query=GL.queries[id];if(!query)continue;GLctx.disjointTimerQueryExt["deleteQueryEXT"](query);GL.queries[id]=null}};var _emscripten_glDeleteQueriesEXT=_glDeleteQueriesEXT;var _glDeleteRenderbuffers=(n,renderbuffers)=>{for(var i=0;i>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}};var _emscripten_glDeleteRenderbuffers=_glDeleteRenderbuffers;var _glDeleteSamplers=(n,samplers)=>{for(var i=0;i>2];var sampler=GL.samplers[id];if(!sampler)continue;GLctx.deleteSampler(sampler);sampler.name=0;GL.samplers[id]=null}};var _emscripten_glDeleteSamplers=_glDeleteSamplers;var _glDeleteShader=id=>{if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null};var _emscripten_glDeleteShader=_glDeleteShader;var _glDeleteSync=id=>{if(!id)return;var sync=GL.syncs[id];if(!sync){GL.recordError(1281);return}GLctx.deleteSync(sync);sync.name=0;GL.syncs[id]=null};var _emscripten_glDeleteSync=_glDeleteSync;var _glDeleteTextures=(n,textures)=>{for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}};var _emscripten_glDeleteTextures=_glDeleteTextures;var _glDeleteTransformFeedbacks=(n,ids)=>{for(var i=0;i>2];var transformFeedback=GL.transformFeedbacks[id];if(!transformFeedback)continue;GLctx.deleteTransformFeedback(transformFeedback);transformFeedback.name=0;GL.transformFeedbacks[id]=null}};var _emscripten_glDeleteTransformFeedbacks=_glDeleteTransformFeedbacks;var _glDeleteVertexArrays=(n,vaos)=>{for(var i=0;i>2];GLctx.deleteVertexArray(GL.vaos[id]);GL.vaos[id]=null}};var _emscripten_glDeleteVertexArrays=_glDeleteVertexArrays;var _glDeleteVertexArraysOES=_glDeleteVertexArrays;var _emscripten_glDeleteVertexArraysOES=_glDeleteVertexArraysOES;var _glDepthFunc=x0=>GLctx.depthFunc(x0);var _emscripten_glDepthFunc=_glDepthFunc;var _glDepthMask=flag=>{GLctx.depthMask(!!flag)};var _emscripten_glDepthMask=_glDepthMask;var _glDepthRangef=(x0,x1)=>GLctx.depthRange(x0,x1);var _emscripten_glDepthRangef=_glDepthRangef;var _glDetachShader=(program,shader)=>{GLctx.detachShader(GL.programs[program],GL.shaders[shader])};var _emscripten_glDetachShader=_glDetachShader;var _glDisable=x0=>GLctx.disable(x0);var _emscripten_glDisable=_glDisable;var _glDisableVertexAttribArray=index=>{GLctx.disableVertexAttribArray(index)};var _emscripten_glDisableVertexAttribArray=_glDisableVertexAttribArray;var _glDrawArrays=(mode,first,count)=>{GLctx.drawArrays(mode,first,count)};var _emscripten_glDrawArrays=_glDrawArrays;var _glDrawArraysInstanced=(mode,first,count,primcount)=>{GLctx.drawArraysInstanced(mode,first,count,primcount)};var _emscripten_glDrawArraysInstanced=_glDrawArraysInstanced;var _glDrawArraysInstancedANGLE=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedANGLE=_glDrawArraysInstancedANGLE;var _glDrawArraysInstancedARB=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedARB=_glDrawArraysInstancedARB;var _glDrawArraysInstancedBaseInstanceWEBGL=(mode,first,count,instanceCount,baseInstance)=>{GLctx.dibvbi["drawArraysInstancedBaseInstanceWEBGL"](mode,first,count,instanceCount,baseInstance)};var _emscripten_glDrawArraysInstancedBaseInstanceWEBGL=_glDrawArraysInstancedBaseInstanceWEBGL;var _glDrawArraysInstancedEXT=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedEXT=_glDrawArraysInstancedEXT;var _glDrawArraysInstancedNV=_glDrawArraysInstanced;var _emscripten_glDrawArraysInstancedNV=_glDrawArraysInstancedNV;var tempFixedLengthArray=[];var _glDrawBuffers=(n,bufs)=>{var bufArray=tempFixedLengthArray[n];for(var i=0;i>2]}GLctx.drawBuffers(bufArray)};var _emscripten_glDrawBuffers=_glDrawBuffers;var _glDrawBuffersEXT=_glDrawBuffers;var _emscripten_glDrawBuffersEXT=_glDrawBuffersEXT;var _glDrawBuffersWEBGL=_glDrawBuffers;var _emscripten_glDrawBuffersWEBGL=_glDrawBuffersWEBGL;var _glDrawElements=(mode,count,type,indices)=>{GLctx.drawElements(mode,count,type,indices)};var _emscripten_glDrawElements=_glDrawElements;var _glDrawElementsInstanced=(mode,count,type,indices,primcount)=>{GLctx.drawElementsInstanced(mode,count,type,indices,primcount)};var _emscripten_glDrawElementsInstanced=_glDrawElementsInstanced;var _glDrawElementsInstancedANGLE=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedANGLE=_glDrawElementsInstancedANGLE;var _glDrawElementsInstancedARB=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedARB=_glDrawElementsInstancedARB;var _glDrawElementsInstancedBaseVertexBaseInstanceWEBGL=(mode,count,type,offset,instanceCount,baseVertex,baseinstance)=>{GLctx.dibvbi["drawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,count,type,offset,instanceCount,baseVertex,baseinstance)};var _emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL=_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL;var _glDrawElementsInstancedEXT=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedEXT=_glDrawElementsInstancedEXT;var _glDrawElementsInstancedNV=_glDrawElementsInstanced;var _emscripten_glDrawElementsInstancedNV=_glDrawElementsInstancedNV;var _glDrawRangeElements=(mode,start,end,count,type,indices)=>{_glDrawElements(mode,count,type,indices)};var _emscripten_glDrawRangeElements=_glDrawRangeElements;var _glEnable=x0=>GLctx.enable(x0);var _emscripten_glEnable=_glEnable;var _glEnableVertexAttribArray=index=>{GLctx.enableVertexAttribArray(index)};var _emscripten_glEnableVertexAttribArray=_glEnableVertexAttribArray;var _glEndQuery=x0=>GLctx.endQuery(x0);var _emscripten_glEndQuery=_glEndQuery;var _glEndQueryEXT=target=>{GLctx.disjointTimerQueryExt["endQueryEXT"](target)};var _emscripten_glEndQueryEXT=_glEndQueryEXT;var _glEndTransformFeedback=()=>GLctx.endTransformFeedback();var _emscripten_glEndTransformFeedback=_glEndTransformFeedback;var _glFenceSync=(condition,flags)=>{var sync=GLctx.fenceSync(condition,flags);if(sync){var id=GL.getNewId(GL.syncs);sync.name=id;GL.syncs[id]=sync;return id}return 0};var _emscripten_glFenceSync=_glFenceSync;var _glFinish=()=>GLctx.finish();var _emscripten_glFinish=_glFinish;var _glFlush=()=>GLctx.flush();var _emscripten_glFlush=_glFlush;var _glFramebufferRenderbuffer=(target,attachment,renderbuffertarget,renderbuffer)=>{GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])};var _emscripten_glFramebufferRenderbuffer=_glFramebufferRenderbuffer;var _glFramebufferTexture2D=(target,attachment,textarget,texture,level)=>{GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)};var _emscripten_glFramebufferTexture2D=_glFramebufferTexture2D;var _glFramebufferTextureLayer=(target,attachment,texture,level,layer)=>{GLctx.framebufferTextureLayer(target,attachment,GL.textures[texture],level,layer)};var _emscripten_glFramebufferTextureLayer=_glFramebufferTextureLayer;var _glFrontFace=x0=>GLctx.frontFace(x0);var _emscripten_glFrontFace=_glFrontFace;var _glGenBuffers=(n,buffers)=>{GL.genObject(n,buffers,"createBuffer",GL.buffers)};var _emscripten_glGenBuffers=_glGenBuffers;var _glGenFramebuffers=(n,ids)=>{GL.genObject(n,ids,"createFramebuffer",GL.framebuffers)};var _emscripten_glGenFramebuffers=_glGenFramebuffers;var _glGenQueries=(n,ids)=>{GL.genObject(n,ids,"createQuery",GL.queries)};var _emscripten_glGenQueries=_glGenQueries;var _glGenQueriesEXT=(n,ids)=>{for(var i=0;i>2]=0;return}var id=GL.getNewId(GL.queries);query.name=id;GL.queries[id]=query;HEAP32[ids+i*4>>2]=id}};var _emscripten_glGenQueriesEXT=_glGenQueriesEXT;var _glGenRenderbuffers=(n,renderbuffers)=>{GL.genObject(n,renderbuffers,"createRenderbuffer",GL.renderbuffers)};var _emscripten_glGenRenderbuffers=_glGenRenderbuffers;var _glGenSamplers=(n,samplers)=>{GL.genObject(n,samplers,"createSampler",GL.samplers)};var _emscripten_glGenSamplers=_glGenSamplers;var _glGenTextures=(n,textures)=>{GL.genObject(n,textures,"createTexture",GL.textures)};var _emscripten_glGenTextures=_glGenTextures;var _glGenTransformFeedbacks=(n,ids)=>{GL.genObject(n,ids,"createTransformFeedback",GL.transformFeedbacks)};var _emscripten_glGenTransformFeedbacks=_glGenTransformFeedbacks;var _glGenVertexArrays=(n,arrays)=>{GL.genObject(n,arrays,"createVertexArray",GL.vaos)};var _emscripten_glGenVertexArrays=_glGenVertexArrays;var _glGenVertexArraysOES=_glGenVertexArrays;var _emscripten_glGenVertexArraysOES=_glGenVertexArraysOES;var _glGenerateMipmap=x0=>GLctx.generateMipmap(x0);var _emscripten_glGenerateMipmap=_glGenerateMipmap;var __glGetActiveAttribOrUniform=(funcName,program,index,bufSize,length,size,type,name)=>{program=GL.programs[program];var info=GLctx[funcName](program,index);if(info){var numBytesWrittenExclNull=name&&stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull;if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}};var _glGetActiveAttrib=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform("getActiveAttrib",program,index,bufSize,length,size,type,name);var _emscripten_glGetActiveAttrib=_glGetActiveAttrib;var _glGetActiveUniform=(program,index,bufSize,length,size,type,name)=>__glGetActiveAttribOrUniform("getActiveUniform",program,index,bufSize,length,size,type,name);var _emscripten_glGetActiveUniform=_glGetActiveUniform;var _glGetActiveUniformBlockName=(program,uniformBlockIndex,bufSize,length,uniformBlockName)=>{program=GL.programs[program];var result=GLctx.getActiveUniformBlockName(program,uniformBlockIndex);if(!result)return;if(uniformBlockName&&bufSize>0){var numBytesWrittenExclNull=stringToUTF8(result,uniformBlockName,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}};var _emscripten_glGetActiveUniformBlockName=_glGetActiveUniformBlockName;var _glGetActiveUniformBlockiv=(program,uniformBlockIndex,pname,params)=>{if(!params){GL.recordError(1281);return}program=GL.programs[program];if(pname==35393){var name=GLctx.getActiveUniformBlockName(program,uniformBlockIndex);HEAP32[params>>2]=name.length+1;return}var result=GLctx.getActiveUniformBlockParameter(program,uniformBlockIndex,pname);if(result===null)return;if(pname==35395){for(var i=0;i>2]=result[i]}}else{HEAP32[params>>2]=result}};var _emscripten_glGetActiveUniformBlockiv=_glGetActiveUniformBlockiv;var _glGetActiveUniformsiv=(program,uniformCount,uniformIndices,pname,params)=>{if(!params){GL.recordError(1281);return}if(uniformCount>0&&uniformIndices==0){GL.recordError(1281);return}program=GL.programs[program];var ids=[];for(var i=0;i>2])}var result=GLctx.getActiveUniforms(program,ids,pname);if(!result)return;var len=result.length;for(var i=0;i>2]=result[i]}};var _emscripten_glGetActiveUniformsiv=_glGetActiveUniformsiv;var _glGetAttachedShaders=(program,maxCount,count,shaders)=>{var result=GLctx.getAttachedShaders(GL.programs[program]);var len=result.length;if(len>maxCount){len=maxCount}HEAP32[count>>2]=len;for(var i=0;i>2]=id}};var _emscripten_glGetAttachedShaders=_glGetAttachedShaders;var _glGetAttribLocation=(program,name)=>GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name));var _emscripten_glGetAttribLocation=_glGetAttribLocation;var writeI53ToI64=(ptr,num)=>{HEAPU32[ptr>>2]=num;var lower=HEAPU32[ptr>>2];HEAPU32[ptr+4>>2]=(num-lower)/4294967296};var webglGetExtensions=()=>{var exts=getEmscriptenSupportedExtensions(GLctx);exts=exts.concat(exts.map(e=>"GL_"+e));return exts};var emscriptenWebGLGet=(name_,p,type)=>{if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 34814:case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break;case 33309:if(GL.currentContext.version<2){GL.recordError(1282);return}ret=webglGetExtensions().length;break;case 33307:case 33308:if(GL.currentContext.version<2){GL.recordError(1280);return}ret=name_==33307?3:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Unknown object returned from WebGL getParameter(${name_})! (error: ${e})`);return}}break;default:GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Native code calling glGet${type}v(${name_}) and it returns ${result} of type ${typeof result}!`);return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p]=ret?1:0;break}};var _glGetBooleanv=(name_,p)=>emscriptenWebGLGet(name_,p,4);var _emscripten_glGetBooleanv=_glGetBooleanv;var _glGetBufferParameteri64v=(target,value,data)=>{if(!data){GL.recordError(1281);return}writeI53ToI64(data,GLctx.getBufferParameter(target,value))};var _emscripten_glGetBufferParameteri64v=_glGetBufferParameteri64v;var _glGetBufferParameteriv=(target,value,data)=>{if(!data){GL.recordError(1281);return}HEAP32[data>>2]=GLctx.getBufferParameter(target,value)};var _emscripten_glGetBufferParameteriv=_glGetBufferParameteriv;var _glGetError=()=>{var error=GLctx.getError()||GL.lastError;GL.lastError=0;return error};var _emscripten_glGetError=_glGetError;var _glGetFloatv=(name_,p)=>emscriptenWebGLGet(name_,p,2);var _emscripten_glGetFloatv=_glGetFloatv;var _glGetFragDataLocation=(program,name)=>GLctx.getFragDataLocation(GL.programs[program],UTF8ToString(name));var _emscripten_glGetFragDataLocation=_glGetFragDataLocation;var _glGetFramebufferAttachmentParameteriv=(target,attachment,pname,params)=>{var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);if(result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){result=result.name|0}HEAP32[params>>2]=result};var _emscripten_glGetFramebufferAttachmentParameteriv=_glGetFramebufferAttachmentParameteriv;var emscriptenWebGLGetIndexed=(target,index,data,type)=>{if(!data){GL.recordError(1281);return}var result=GLctx.getIndexedParameter(target,index);var ret;switch(typeof result){case"boolean":ret=result?1:0;break;case"number":ret=result;break;case"object":if(result===null){switch(target){case 35983:case 35368:ret=0;break;default:{GL.recordError(1280);return}}}else if(result instanceof WebGLBuffer){ret=result.name|0}else{GL.recordError(1280);return}break;default:GL.recordError(1280);return}switch(type){case 1:writeI53ToI64(data,ret);break;case 0:HEAP32[data>>2]=ret;break;case 2:HEAPF32[data>>2]=ret;break;case 4:HEAP8[data]=ret?1:0;break;default:throw"internal emscriptenWebGLGetIndexed() error, bad type: "+type}};var _glGetInteger64i_v=(target,index,data)=>emscriptenWebGLGetIndexed(target,index,data,1);var _emscripten_glGetInteger64i_v=_glGetInteger64i_v;var _glGetInteger64v=(name_,p)=>{emscriptenWebGLGet(name_,p,1)};var _emscripten_glGetInteger64v=_glGetInteger64v;var _glGetIntegeri_v=(target,index,data)=>emscriptenWebGLGetIndexed(target,index,data,0);var _emscripten_glGetIntegeri_v=_glGetIntegeri_v;var _glGetIntegerv=(name_,p)=>emscriptenWebGLGet(name_,p,0);var _emscripten_glGetIntegerv=_glGetIntegerv;var _glGetInternalformativ=(target,internalformat,pname,bufSize,params)=>{if(bufSize<0){GL.recordError(1281);return}if(!params){GL.recordError(1281);return}var ret=GLctx.getInternalformatParameter(target,internalformat,pname);if(ret===null)return;for(var i=0;i>2]=ret[i]}};var _emscripten_glGetInternalformativ=_glGetInternalformativ;var _glGetProgramBinary=(program,bufSize,length,binaryFormat,binary)=>{GL.recordError(1282)};var _emscripten_glGetProgramBinary=_glGetProgramBinary;var _glGetProgramInfoLog=(program,maxLength,length,infoLog)=>{var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetProgramInfoLog=_glGetProgramInfoLog;var _glGetProgramiv=(program,pname,p)=>{if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){var numActiveAttributes=GLctx.getProgramParameter(program,35721);for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){var numActiveUniformBlocks=GLctx.getProgramParameter(program,35382);for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}};var _emscripten_glGetProgramiv=_glGetProgramiv;var _glGetQueryObjecti64vEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param;if(GL.currentContext.version<2){param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname)}else{param=GLctx.getQueryParameter(query,pname)}var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}writeI53ToI64(params,ret)};var _emscripten_glGetQueryObjecti64vEXT=_glGetQueryObjecti64vEXT;var _glGetQueryObjectivEXT=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.disjointTimerQueryExt["getQueryObjectEXT"](query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret};var _emscripten_glGetQueryObjectivEXT=_glGetQueryObjectivEXT;var _glGetQueryObjectui64vEXT=_glGetQueryObjecti64vEXT;var _emscripten_glGetQueryObjectui64vEXT=_glGetQueryObjectui64vEXT;var _glGetQueryObjectuiv=(id,pname,params)=>{if(!params){GL.recordError(1281);return}var query=GL.queries[id];var param=GLctx.getQueryParameter(query,pname);var ret;if(typeof param=="boolean"){ret=param?1:0}else{ret=param}HEAP32[params>>2]=ret};var _emscripten_glGetQueryObjectuiv=_glGetQueryObjectuiv;var _glGetQueryObjectuivEXT=_glGetQueryObjectivEXT;var _emscripten_glGetQueryObjectuivEXT=_glGetQueryObjectuivEXT;var _glGetQueryiv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getQuery(target,pname)};var _emscripten_glGetQueryiv=_glGetQueryiv;var _glGetQueryivEXT=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.disjointTimerQueryExt["getQueryEXT"](target,pname)};var _emscripten_glGetQueryivEXT=_glGetQueryivEXT;var _glGetRenderbufferParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getRenderbufferParameter(target,pname)};var _emscripten_glGetRenderbufferParameteriv=_glGetRenderbufferParameteriv;var _glGetSamplerParameterfv=(sampler,pname,params)=>{if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getSamplerParameter(GL.samplers[sampler],pname)};var _emscripten_glGetSamplerParameterfv=_glGetSamplerParameterfv;var _glGetSamplerParameteriv=(sampler,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getSamplerParameter(GL.samplers[sampler],pname)};var _emscripten_glGetSamplerParameteriv=_glGetSamplerParameteriv;var _glGetShaderInfoLog=(shader,maxLength,length,infoLog)=>{var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetShaderInfoLog=_glGetShaderInfoLog;var _glGetShaderPrecisionFormat=(shaderType,precisionType,range,precision)=>{var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);HEAP32[range>>2]=result.rangeMin;HEAP32[range+4>>2]=result.rangeMax;HEAP32[precision>>2]=result.precision};var _emscripten_glGetShaderPrecisionFormat=_glGetShaderPrecisionFormat;var _glGetShaderSource=(shader,bufSize,length,source)=>{var result=GLctx.getShaderSource(GL.shaders[shader]);if(!result)return;var numBytesWrittenExclNull=bufSize>0&&source?stringToUTF8(result,source,bufSize):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _emscripten_glGetShaderSource=_glGetShaderSource;var _glGetShaderiv=(shader,pname,p)=>{if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}};var _emscripten_glGetShaderiv=_glGetShaderiv;var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _glGetString=name_=>{var ret=GL.stringCache[name_];if(!ret){switch(name_){case 7939:ret=stringToNewUTF8(webglGetExtensions().join(" "));break;case 7936:case 7937:case 37445:case 37446:var s=GLctx.getParameter(name_);if(!s){GL.recordError(1280)}ret=s?stringToNewUTF8(s):0;break;case 7938:var webGLVersion=GLctx.getParameter(7938);var glVersion=`OpenGL ES 2.0 (${webGLVersion})`;if(GL.currentContext.version>=2)glVersion=`OpenGL ES 3.0 (${webGLVersion})`;ret=stringToNewUTF8(glVersion);break;case 35724:var glslVersion=GLctx.getParameter(35724);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion=`OpenGL ES GLSL ES ${ver_num[1]} (${glslVersion})`}ret=stringToNewUTF8(glslVersion);break;default:GL.recordError(1280)}GL.stringCache[name_]=ret}return ret};var _emscripten_glGetString=_glGetString;var _glGetStringi=(name,index)=>{if(GL.currentContext.version<2){GL.recordError(1282);return 0}var stringiCache=GL.stringiCache[name];if(stringiCache){if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index]}switch(name){case 7939:var exts=webglGetExtensions().map(stringToNewUTF8);stringiCache=GL.stringiCache[name]=exts;if(index<0||index>=stringiCache.length){GL.recordError(1281);return 0}return stringiCache[index];default:GL.recordError(1280);return 0}};var _emscripten_glGetStringi=_glGetStringi;var _glGetSynciv=(sync,pname,bufSize,length,values)=>{if(bufSize<0){GL.recordError(1281);return}if(!values){GL.recordError(1281);return}var ret=GLctx.getSyncParameter(GL.syncs[sync],pname);if(ret!==null){HEAP32[values>>2]=ret;if(length)HEAP32[length>>2]=1}};var _emscripten_glGetSynciv=_glGetSynciv;var _glGetTexParameterfv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getTexParameter(target,pname)};var _emscripten_glGetTexParameterfv=_glGetTexParameterfv;var _glGetTexParameteriv=(target,pname,params)=>{if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getTexParameter(target,pname)};var _emscripten_glGetTexParameteriv=_glGetTexParameteriv;var _glGetTransformFeedbackVarying=(program,index,bufSize,length,size,type,name)=>{program=GL.programs[program];var info=GLctx.getTransformFeedbackVarying(program,index);if(!info)return;if(name&&bufSize>0){var numBytesWrittenExclNull=stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type};var _emscripten_glGetTransformFeedbackVarying=_glGetTransformFeedbackVarying;var _glGetUniformBlockIndex=(program,uniformBlockName)=>GLctx.getUniformBlockIndex(GL.programs[program],UTF8ToString(uniformBlockName));var _emscripten_glGetUniformBlockIndex=_glGetUniformBlockIndex;var _glGetUniformIndices=(program,uniformCount,uniformNames,uniformIndices)=>{if(!uniformIndices){GL.recordError(1281);return}if(uniformCount>0&&(uniformNames==0||uniformIndices==0)){GL.recordError(1281);return}program=GL.programs[program];var names=[];for(var i=0;i>2]));var result=GLctx.getUniformIndices(program,names);if(!result)return;var len=result.length;for(var i=0;i>2]=result[i]}};var _emscripten_glGetUniformIndices=_glGetUniformIndices;var jstoi_q=str=>parseInt(str);var webglGetLeftBracePos=name=>name.slice(-1)=="]"&&name.lastIndexOf("[");var webglPrepareUniformLocationsBeforeFirstUse=program=>{var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};var numActiveUniforms=GLctx.getProgramParameter(program,35718);for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j{name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndex{var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?`[${webglLoc}]`:""))}return webglLoc}else{GL.recordError(1282)}};var emscriptenWebGLGetUniform=(program,location,params,type)=>{if(!params){GL.recordError(1281);return}program=GL.programs[program];webglPrepareUniformLocationsBeforeFirstUse(program);var data=GLctx.getUniform(program,webglGetUniformLocation(location));if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break}}}};var _glGetUniformfv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,2)};var _emscripten_glGetUniformfv=_glGetUniformfv;var _glGetUniformiv=(program,location,params)=>{emscriptenWebGLGetUniform(program,location,params,0)};var _emscripten_glGetUniformiv=_glGetUniformiv;var _glGetUniformuiv=(program,location,params)=>emscriptenWebGLGetUniform(program,location,params,0);var _emscripten_glGetUniformuiv=_glGetUniformuiv;var emscriptenWebGLGetVertexAttrib=(index,pname,params,type)=>{if(!params){GL.recordError(1281);return}var data=GLctx.getVertexAttrib(index,pname);if(pname==34975){HEAP32[params>>2]=data&&data["name"]}else if(typeof data=="number"||typeof data=="boolean"){switch(type){case 0:HEAP32[params>>2]=data;break;case 2:HEAPF32[params>>2]=data;break;case 5:HEAP32[params>>2]=Math.fround(data);break}}else{for(var i=0;i>2]=data[i];break;case 2:HEAPF32[params+i*4>>2]=data[i];break;case 5:HEAP32[params+i*4>>2]=Math.fround(data[i]);break}}}};var _glGetVertexAttribIiv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,0)};var _emscripten_glGetVertexAttribIiv=_glGetVertexAttribIiv;var _glGetVertexAttribIuiv=_glGetVertexAttribIiv;var _emscripten_glGetVertexAttribIuiv=_glGetVertexAttribIuiv;var _glGetVertexAttribPointerv=(index,pname,pointer)=>{if(!pointer){GL.recordError(1281);return}HEAP32[pointer>>2]=GLctx.getVertexAttribOffset(index,pname)};var _emscripten_glGetVertexAttribPointerv=_glGetVertexAttribPointerv;var _glGetVertexAttribfv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,2)};var _emscripten_glGetVertexAttribfv=_glGetVertexAttribfv;var _glGetVertexAttribiv=(index,pname,params)=>{emscriptenWebGLGetVertexAttrib(index,pname,params,5)};var _emscripten_glGetVertexAttribiv=_glGetVertexAttribiv;var _glHint=(x0,x1)=>GLctx.hint(x0,x1);var _emscripten_glHint=_glHint;var _glInvalidateFramebuffer=(target,numAttachments,attachments)=>{var list=tempFixedLengthArray[numAttachments];for(var i=0;i>2]}GLctx.invalidateFramebuffer(target,list)};var _emscripten_glInvalidateFramebuffer=_glInvalidateFramebuffer;var _glInvalidateSubFramebuffer=(target,numAttachments,attachments,x,y,width,height)=>{var list=tempFixedLengthArray[numAttachments];for(var i=0;i>2]}GLctx.invalidateSubFramebuffer(target,list,x,y,width,height)};var _emscripten_glInvalidateSubFramebuffer=_glInvalidateSubFramebuffer;var _glIsBuffer=buffer=>{var b=GL.buffers[buffer];if(!b)return 0;return GLctx.isBuffer(b)};var _emscripten_glIsBuffer=_glIsBuffer;var _glIsEnabled=x0=>GLctx.isEnabled(x0);var _emscripten_glIsEnabled=_glIsEnabled;var _glIsFramebuffer=framebuffer=>{var fb=GL.framebuffers[framebuffer];if(!fb)return 0;return GLctx.isFramebuffer(fb)};var _emscripten_glIsFramebuffer=_glIsFramebuffer;var _glIsProgram=program=>{program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)};var _emscripten_glIsProgram=_glIsProgram;var _glIsQuery=id=>{var query=GL.queries[id];if(!query)return 0;return GLctx.isQuery(query)};var _emscripten_glIsQuery=_glIsQuery;var _glIsQueryEXT=id=>{var query=GL.queries[id];if(!query)return 0;return GLctx.disjointTimerQueryExt["isQueryEXT"](query)};var _emscripten_glIsQueryEXT=_glIsQueryEXT;var _glIsRenderbuffer=renderbuffer=>{var rb=GL.renderbuffers[renderbuffer];if(!rb)return 0;return GLctx.isRenderbuffer(rb)};var _emscripten_glIsRenderbuffer=_glIsRenderbuffer;var _glIsSampler=id=>{var sampler=GL.samplers[id];if(!sampler)return 0;return GLctx.isSampler(sampler)};var _emscripten_glIsSampler=_glIsSampler;var _glIsShader=shader=>{var s=GL.shaders[shader];if(!s)return 0;return GLctx.isShader(s)};var _emscripten_glIsShader=_glIsShader;var _glIsSync=sync=>GLctx.isSync(GL.syncs[sync]);var _emscripten_glIsSync=_glIsSync;var _glIsTexture=id=>{var texture=GL.textures[id];if(!texture)return 0;return GLctx.isTexture(texture)};var _emscripten_glIsTexture=_glIsTexture;var _glIsTransformFeedback=id=>GLctx.isTransformFeedback(GL.transformFeedbacks[id]);var _emscripten_glIsTransformFeedback=_glIsTransformFeedback;var _glIsVertexArray=array=>{var vao=GL.vaos[array];if(!vao)return 0;return GLctx.isVertexArray(vao)};var _emscripten_glIsVertexArray=_glIsVertexArray;var _glIsVertexArrayOES=_glIsVertexArray;var _emscripten_glIsVertexArrayOES=_glIsVertexArrayOES;var _glLineWidth=x0=>GLctx.lineWidth(x0);var _emscripten_glLineWidth=_glLineWidth;var _glLinkProgram=program=>{program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}};var _emscripten_glLinkProgram=_glLinkProgram;var _glMultiDrawArraysInstancedBaseInstanceWEBGL=(mode,firsts,counts,instanceCounts,baseInstances,drawCount)=>{GLctx.mdibvbi["multiDrawArraysInstancedBaseInstanceWEBGL"](mode,HEAP32,firsts>>2,HEAP32,counts>>2,HEAP32,instanceCounts>>2,HEAPU32,baseInstances>>2,drawCount)};var _emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL=_glMultiDrawArraysInstancedBaseInstanceWEBGL;var _glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL=(mode,counts,type,offsets,instanceCounts,baseVertices,baseInstances,drawCount)=>{GLctx.mdibvbi["multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL"](mode,HEAP32,counts>>2,type,HEAP32,offsets>>2,HEAP32,instanceCounts>>2,HEAP32,baseVertices>>2,HEAPU32,baseInstances>>2,drawCount)};var _emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL=_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL;var _glPauseTransformFeedback=()=>GLctx.pauseTransformFeedback();var _emscripten_glPauseTransformFeedback=_glPauseTransformFeedback;var _glPixelStorei=(pname,param)=>{if(pname==3317){GL.unpackAlignment=param}else if(pname==3314){GL.unpackRowLength=param}GLctx.pixelStorei(pname,param)};var _emscripten_glPixelStorei=_glPixelStorei;var _glPolygonModeWEBGL=(face,mode)=>{GLctx.webglPolygonMode["polygonModeWEBGL"](face,mode)};var _emscripten_glPolygonModeWEBGL=_glPolygonModeWEBGL;var _glPolygonOffset=(x0,x1)=>GLctx.polygonOffset(x0,x1);var _emscripten_glPolygonOffset=_glPolygonOffset;var _glPolygonOffsetClampEXT=(factor,units,clamp)=>{GLctx.extPolygonOffsetClamp["polygonOffsetClampEXT"](factor,units,clamp)};var _emscripten_glPolygonOffsetClampEXT=_glPolygonOffsetClampEXT;var _glProgramBinary=(program,binaryFormat,binary,length)=>{GL.recordError(1280)};var _emscripten_glProgramBinary=_glProgramBinary;var _glProgramParameteri=(program,pname,value)=>{GL.recordError(1280)};var _emscripten_glProgramParameteri=_glProgramParameteri;var _glQueryCounterEXT=(id,target)=>{GLctx.disjointTimerQueryExt["queryCounterEXT"](GL.queries[id],target)};var _emscripten_glQueryCounterEXT=_glQueryCounterEXT;var _glReadBuffer=x0=>GLctx.readBuffer(x0);var _emscripten_glReadBuffer=_glReadBuffer;var computeUnpackAlignedImageSize=(width,height,sizePerPixel)=>{function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=(GL.unpackRowLength||width)*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,GL.unpackAlignment);return height*alignedRowSize};var colorChannelsInGlTextureFormat=format=>{var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1};var heapObjectForWebGLType=type=>{type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16};var toTypedArrayIndex=(pointer,heap)=>pointer>>>31-Math.clz32(heap.BYTES_PER_ELEMENT);var emscriptenWebGLGetTexPixelData=(type,format,width,height,pixels,internalFormat)=>{var heap=heapObjectForWebGLType(type);var sizePerPixel=colorChannelsInGlTextureFormat(format)*heap.BYTES_PER_ELEMENT;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel);return heap.subarray(toTypedArrayIndex(pixels,heap),toTypedArrayIndex(pixels+bytes,heap))};var _glReadPixels=(x,y,width,height,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelPackBufferBinding){GLctx.readPixels(x,y,width,height,format,type,pixels);return}var heap=heapObjectForWebGLType(type);var target=toTypedArrayIndex(pixels,heap);GLctx.readPixels(x,y,width,height,format,type,heap,target);return}var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)};var _emscripten_glReadPixels=_glReadPixels;var _glReleaseShaderCompiler=()=>{};var _emscripten_glReleaseShaderCompiler=_glReleaseShaderCompiler;var _glRenderbufferStorage=(x0,x1,x2,x3)=>GLctx.renderbufferStorage(x0,x1,x2,x3);var _emscripten_glRenderbufferStorage=_glRenderbufferStorage;var _glRenderbufferStorageMultisample=(x0,x1,x2,x3,x4)=>GLctx.renderbufferStorageMultisample(x0,x1,x2,x3,x4);var _emscripten_glRenderbufferStorageMultisample=_glRenderbufferStorageMultisample;var _glResumeTransformFeedback=()=>GLctx.resumeTransformFeedback();var _emscripten_glResumeTransformFeedback=_glResumeTransformFeedback;var _glSampleCoverage=(value,invert)=>{GLctx.sampleCoverage(value,!!invert)};var _emscripten_glSampleCoverage=_glSampleCoverage;var _glSamplerParameterf=(sampler,pname,param)=>{GLctx.samplerParameterf(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameterf=_glSamplerParameterf;var _glSamplerParameterfv=(sampler,pname,params)=>{var param=HEAPF32[params>>2];GLctx.samplerParameterf(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameterfv=_glSamplerParameterfv;var _glSamplerParameteri=(sampler,pname,param)=>{GLctx.samplerParameteri(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameteri=_glSamplerParameteri;var _glSamplerParameteriv=(sampler,pname,params)=>{var param=HEAP32[params>>2];GLctx.samplerParameteri(GL.samplers[sampler],pname,param)};var _emscripten_glSamplerParameteriv=_glSamplerParameteriv;var _glScissor=(x0,x1,x2,x3)=>GLctx.scissor(x0,x1,x2,x3);var _emscripten_glScissor=_glScissor;var _glShaderBinary=(count,shaders,binaryformat,binary,length)=>{GL.recordError(1280)};var _emscripten_glShaderBinary=_glShaderBinary;var _glShaderSource=(shader,count,string,length)=>{var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)};var _emscripten_glShaderSource=_glShaderSource;var _glStencilFunc=(x0,x1,x2)=>GLctx.stencilFunc(x0,x1,x2);var _emscripten_glStencilFunc=_glStencilFunc;var _glStencilFuncSeparate=(x0,x1,x2,x3)=>GLctx.stencilFuncSeparate(x0,x1,x2,x3);var _emscripten_glStencilFuncSeparate=_glStencilFuncSeparate;var _glStencilMask=x0=>GLctx.stencilMask(x0);var _emscripten_glStencilMask=_glStencilMask;var _glStencilMaskSeparate=(x0,x1)=>GLctx.stencilMaskSeparate(x0,x1);var _emscripten_glStencilMaskSeparate=_glStencilMaskSeparate;var _glStencilOp=(x0,x1,x2)=>GLctx.stencilOp(x0,x1,x2);var _emscripten_glStencilOp=_glStencilOp;var _glStencilOpSeparate=(x0,x1,x2,x3)=>GLctx.stencilOpSeparate(x0,x1,x2,x3);var _emscripten_glStencilOpSeparate=_glStencilOpSeparate;var _glTexImage2D=(target,level,internalFormat,width,height,border,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);var index=toTypedArrayIndex(pixels,heap);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,index);return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null;GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)};var _emscripten_glTexImage2D=_glTexImage2D;var _glTexImage3D=(target,level,internalFormat,width,height,depth,border,format,type,pixels)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,heap,toTypedArrayIndex(pixels,heap))}else{GLctx.texImage3D(target,level,internalFormat,width,height,depth,border,format,type,null)}};var _emscripten_glTexImage3D=_glTexImage3D;var _glTexParameterf=(x0,x1,x2)=>GLctx.texParameterf(x0,x1,x2);var _emscripten_glTexParameterf=_glTexParameterf;var _glTexParameterfv=(target,pname,params)=>{var param=HEAPF32[params>>2];GLctx.texParameterf(target,pname,param)};var _emscripten_glTexParameterfv=_glTexParameterfv;var _glTexParameteri=(x0,x1,x2)=>GLctx.texParameteri(x0,x1,x2);var _emscripten_glTexParameteri=_glTexParameteri;var _glTexParameteriv=(target,pname,params)=>{var param=HEAP32[params>>2];GLctx.texParameteri(target,pname,param)};var _emscripten_glTexParameteriv=_glTexParameteriv;var _glTexStorage2D=(x0,x1,x2,x3,x4)=>GLctx.texStorage2D(x0,x1,x2,x3,x4);var _emscripten_glTexStorage2D=_glTexStorage2D;var _glTexStorage3D=(x0,x1,x2,x3,x4,x5)=>GLctx.texStorage3D(x0,x1,x2,x3,x4,x5);var _emscripten_glTexStorage3D=_glTexStorage3D;var _glTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,type,pixels)=>{if(GL.currentContext.version>=2){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,heap,toTypedArrayIndex(pixels,heap));return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0):null;GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)};var _emscripten_glTexSubImage2D=_glTexSubImage2D;var _glTexSubImage3D=(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels)=>{if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,heap,toTypedArrayIndex(pixels,heap))}else{GLctx.texSubImage3D(target,level,xoffset,yoffset,zoffset,width,height,depth,format,type,null)}};var _emscripten_glTexSubImage3D=_glTexSubImage3D;var _glTransformFeedbackVaryings=(program,count,varyings,bufferMode)=>{program=GL.programs[program];var vars=[];for(var i=0;i>2]));GLctx.transformFeedbackVaryings(program,vars,bufferMode)};var _emscripten_glTransformFeedbackVaryings=_glTransformFeedbackVaryings;var _glUniform1f=(location,v0)=>{GLctx.uniform1f(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1f=_glUniform1f;var miniTempWebGLFloatBuffers=[];var _glUniform1fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform1fv(webglGetUniformLocation(location),HEAPF32,value>>2,count);return}if(count<=288){var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform1fv=_glUniform1fv;var _glUniform1i=(location,v0)=>{GLctx.uniform1i(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1i=_glUniform1i;var miniTempWebGLIntBuffers=[];var _glUniform1iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform1iv(webglGetUniformLocation(location),HEAP32,value>>2,count);return}if(count<=288){var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2]}}else{var view=HEAP32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform1iv=_glUniform1iv;var _glUniform1ui=(location,v0)=>{GLctx.uniform1ui(webglGetUniformLocation(location),v0)};var _emscripten_glUniform1ui=_glUniform1ui;var _glUniform1uiv=(location,count,value)=>{count&&GLctx.uniform1uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count)};var _emscripten_glUniform1uiv=_glUniform1uiv;var _glUniform2f=(location,v0,v1)=>{GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2f=_glUniform2f;var _glUniform2fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform2fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*2);return}if(count<=144){count*=2;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform2fv=_glUniform2fv;var _glUniform2i=(location,v0,v1)=>{GLctx.uniform2i(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2i=_glUniform2i;var _glUniform2iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform2iv(webglGetUniformLocation(location),HEAP32,value>>2,count*2);return}if(count<=144){count*=2;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform2iv=_glUniform2iv;var _glUniform2ui=(location,v0,v1)=>{GLctx.uniform2ui(webglGetUniformLocation(location),v0,v1)};var _emscripten_glUniform2ui=_glUniform2ui;var _glUniform2uiv=(location,count,value)=>{count&&GLctx.uniform2uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*2)};var _emscripten_glUniform2uiv=_glUniform2uiv;var _glUniform3f=(location,v0,v1,v2)=>{GLctx.uniform3f(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3f=_glUniform3f;var _glUniform3fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform3fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*3);return}if(count<=96){count*=3;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform3fv=_glUniform3fv;var _glUniform3i=(location,v0,v1,v2)=>{GLctx.uniform3i(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3i=_glUniform3i;var _glUniform3iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform3iv(webglGetUniformLocation(location),HEAP32,value>>2,count*3);return}if(count<=96){count*=3;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform3iv=_glUniform3iv;var _glUniform3ui=(location,v0,v1,v2)=>{GLctx.uniform3ui(webglGetUniformLocation(location),v0,v1,v2)};var _emscripten_glUniform3ui=_glUniform3ui;var _glUniform3uiv=(location,count,value)=>{count&&GLctx.uniform3uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*3)};var _emscripten_glUniform3uiv=_glUniform3uiv;var _glUniform4f=(location,v0,v1,v2,v3)=>{GLctx.uniform4f(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4f=_glUniform4f;var _glUniform4fv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform4fv(webglGetUniformLocation(location),HEAPF32,value>>2,count*4);return}if(count<=72){var view=miniTempWebGLFloatBuffers[4*count];var heap=HEAPF32;value=value>>2;count*=4;for(var i=0;i>2,value+count*16>>2)}GLctx.uniform4fv(webglGetUniformLocation(location),view)};var _emscripten_glUniform4fv=_glUniform4fv;var _glUniform4i=(location,v0,v1,v2,v3)=>{GLctx.uniform4i(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4i=_glUniform4i;var _glUniform4iv=(location,count,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniform4iv(webglGetUniformLocation(location),HEAP32,value>>2,count*4);return}if(count<=72){count*=4;var view=miniTempWebGLIntBuffers[count];for(var i=0;i>2];view[i+1]=HEAP32[value+(4*i+4)>>2];view[i+2]=HEAP32[value+(4*i+8)>>2];view[i+3]=HEAP32[value+(4*i+12)>>2]}}else{var view=HEAP32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4iv(webglGetUniformLocation(location),view)};var _emscripten_glUniform4iv=_glUniform4iv;var _glUniform4ui=(location,v0,v1,v2,v3)=>{GLctx.uniform4ui(webglGetUniformLocation(location),v0,v1,v2,v3)};var _emscripten_glUniform4ui=_glUniform4ui;var _glUniform4uiv=(location,count,value)=>{count&&GLctx.uniform4uiv(webglGetUniformLocation(location),HEAPU32,value>>2,count*4)};var _emscripten_glUniform4uiv=_glUniform4uiv;var _glUniformBlockBinding=(program,uniformBlockIndex,uniformBlockBinding)=>{program=GL.programs[program];GLctx.uniformBlockBinding(program,uniformBlockIndex,uniformBlockBinding)};var _emscripten_glUniformBlockBinding=_glUniformBlockBinding;var _glUniformMatrix2fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*4);return}if(count<=72){count*=4;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix2fv=_glUniformMatrix2fv;var _glUniformMatrix2x3fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix2x3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*6)};var _emscripten_glUniformMatrix2x3fv=_glUniformMatrix2x3fv;var _glUniformMatrix2x4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix2x4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*8)};var _emscripten_glUniformMatrix2x4fv=_glUniformMatrix2x4fv;var _glUniformMatrix3fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*9);return}if(count<=32){count*=9;var view=miniTempWebGLFloatBuffers[count];for(var i=0;i>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2]}}else{var view=HEAPF32.subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix3fv=_glUniformMatrix3fv;var _glUniformMatrix3x2fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix3x2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*6)};var _emscripten_glUniformMatrix3x2fv=_glUniformMatrix3x2fv;var _glUniformMatrix3x4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix3x4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*12)};var _emscripten_glUniformMatrix3x4fv=_glUniformMatrix3x4fv;var _glUniformMatrix4fv=(location,count,transpose,value)=>{if(GL.currentContext.version>=2){count&&GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*16);return}if(count<=18){var view=miniTempWebGLFloatBuffers[16*count];var heap=HEAPF32;value=value>>2;count*=16;for(var i=0;i>2,value+count*64>>2)}GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,view)};var _emscripten_glUniformMatrix4fv=_glUniformMatrix4fv;var _glUniformMatrix4x2fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4x2fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*8)};var _emscripten_glUniformMatrix4x2fv=_glUniformMatrix4x2fv;var _glUniformMatrix4x3fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4x3fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*12)};var _emscripten_glUniformMatrix4x3fv=_glUniformMatrix4x3fv;var _glUseProgram=program=>{program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program};var _emscripten_glUseProgram=_glUseProgram;var _glValidateProgram=program=>{GLctx.validateProgram(GL.programs[program])};var _emscripten_glValidateProgram=_glValidateProgram;var _glVertexAttrib1f=(x0,x1)=>GLctx.vertexAttrib1f(x0,x1);var _emscripten_glVertexAttrib1f=_glVertexAttrib1f;var _glVertexAttrib1fv=(index,v)=>{GLctx.vertexAttrib1f(index,HEAPF32[v>>2])};var _emscripten_glVertexAttrib1fv=_glVertexAttrib1fv;var _glVertexAttrib2f=(x0,x1,x2)=>GLctx.vertexAttrib2f(x0,x1,x2);var _emscripten_glVertexAttrib2f=_glVertexAttrib2f;var _glVertexAttrib2fv=(index,v)=>{GLctx.vertexAttrib2f(index,HEAPF32[v>>2],HEAPF32[v+4>>2])};var _emscripten_glVertexAttrib2fv=_glVertexAttrib2fv;var _glVertexAttrib3f=(x0,x1,x2,x3)=>GLctx.vertexAttrib3f(x0,x1,x2,x3);var _emscripten_glVertexAttrib3f=_glVertexAttrib3f;var _glVertexAttrib3fv=(index,v)=>{GLctx.vertexAttrib3f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2])};var _emscripten_glVertexAttrib3fv=_glVertexAttrib3fv;var _glVertexAttrib4f=(x0,x1,x2,x3,x4)=>GLctx.vertexAttrib4f(x0,x1,x2,x3,x4);var _emscripten_glVertexAttrib4f=_glVertexAttrib4f;var _glVertexAttrib4fv=(index,v)=>{GLctx.vertexAttrib4f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2],HEAPF32[v+12>>2])};var _emscripten_glVertexAttrib4fv=_glVertexAttrib4fv;var _glVertexAttribDivisor=(index,divisor)=>{GLctx.vertexAttribDivisor(index,divisor)};var _emscripten_glVertexAttribDivisor=_glVertexAttribDivisor;var _glVertexAttribDivisorANGLE=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorANGLE=_glVertexAttribDivisorANGLE;var _glVertexAttribDivisorARB=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorARB=_glVertexAttribDivisorARB;var _glVertexAttribDivisorEXT=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorEXT=_glVertexAttribDivisorEXT;var _glVertexAttribDivisorNV=_glVertexAttribDivisor;var _emscripten_glVertexAttribDivisorNV=_glVertexAttribDivisorNV;var _glVertexAttribI4i=(x0,x1,x2,x3,x4)=>GLctx.vertexAttribI4i(x0,x1,x2,x3,x4);var _emscripten_glVertexAttribI4i=_glVertexAttribI4i;var _glVertexAttribI4iv=(index,v)=>{GLctx.vertexAttribI4i(index,HEAP32[v>>2],HEAP32[v+4>>2],HEAP32[v+8>>2],HEAP32[v+12>>2])};var _emscripten_glVertexAttribI4iv=_glVertexAttribI4iv;var _glVertexAttribI4ui=(x0,x1,x2,x3,x4)=>GLctx.vertexAttribI4ui(x0,x1,x2,x3,x4);var _emscripten_glVertexAttribI4ui=_glVertexAttribI4ui;var _glVertexAttribI4uiv=(index,v)=>{GLctx.vertexAttribI4ui(index,HEAPU32[v>>2],HEAPU32[v+4>>2],HEAPU32[v+8>>2],HEAPU32[v+12>>2])};var _emscripten_glVertexAttribI4uiv=_glVertexAttribI4uiv;var _glVertexAttribIPointer=(index,size,type,stride,ptr)=>{GLctx.vertexAttribIPointer(index,size,type,stride,ptr)};var _emscripten_glVertexAttribIPointer=_glVertexAttribIPointer;var _glVertexAttribPointer=(index,size,type,normalized,stride,ptr)=>{GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)};var _emscripten_glVertexAttribPointer=_glVertexAttribPointer;var _glViewport=(x0,x1,x2,x3)=>GLctx.viewport(x0,x1,x2,x3);var _emscripten_glViewport=_glViewport;var _glWaitSync=(sync,flags,timeout)=>{timeout=Number(timeout);GLctx.waitSync(GL.syncs[sync],flags,timeout)};var _emscripten_glWaitSync=_glWaitSync;var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var _emscripten_request_animation_frame_loop=(cb,userData)=>{function tick(timeStamp){if(getWasmTableEntry(cb)(timeStamp,userData)){requestAnimationFrame(tick)}}return requestAnimationFrame(tick)};var getHeapMax=()=>2147483648;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var _environ_get=(__environ,environ_buf)=>{var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU32[__environ+envp>>2]=ptr;bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=4}return 0};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU32[penviron_buf_size>>2]=bufSize;return 0};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_read(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);HEAP64[newOffset>>3]=BigInt(stream.position);if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var _llvm_eh_typeid_for=type=>type;function _random_get(buffer,size){try{randomFill(HEAPU8.subarray(buffer,buffer+size));return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();MEMFS.doesNotExistError=new FS.ErrnoError(44);MEMFS.doesNotExistError.stack="";for(let i=0;i<32;++i)tempFixedLengthArray.push(new Array(i));var miniTempWebGLFloatBuffersStorage=new Float32Array(288);for(var i=0;i<=288;++i){miniTempWebGLFloatBuffers[i]=miniTempWebGLFloatBuffersStorage.subarray(0,i)}var miniTempWebGLIntBuffersStorage=new Int32Array(288);for(var i=0;i<=288;++i){miniTempWebGLIntBuffers[i]=miniTempWebGLIntBuffersStorage.subarray(0,i)}{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["preloadPlugins"])preloadPlugins=Module["preloadPlugins"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"]}Module["UTF8ToString"]=UTF8ToString;Module["stringToUTF8"]=stringToUTF8;Module["lengthBytesUTF8"]=lengthBytesUTF8;Module["GL"]=GL;var wasmImports={B:___cxa_begin_catch,H:___cxa_end_catch,a:___cxa_find_matching_catch_2,o:___cxa_find_matching_catch_3,U:___cxa_find_matching_catch_4,sa:___cxa_rethrow,F:___cxa_throw,gb:___cxa_uncaught_exceptions,d:___resumeException,ua:___syscall_fcntl64,ub:___syscall_fstat64,qb:___syscall_getcwd,wb:___syscall_ioctl,rb:___syscall_lstat64,sb:___syscall_newfstatat,ta:___syscall_openat,tb:___syscall_stat64,zb:__abort_js,ib:__emscripten_throw_longjmp,nb:__gmtime_js,lb:__mmap_js,mb:__munmap_js,Ab:__tzset_js,yb:_clock_time_get,xb:_emscripten_date_now,da:_emscripten_get_now,Gf:_emscripten_glActiveTexture,Hf:_emscripten_glAttachShader,je:_emscripten_glBeginQuery,de:_emscripten_glBeginQueryEXT,Hc:_emscripten_glBeginTransformFeedback,If:_emscripten_glBindAttribLocation,Jf:_emscripten_glBindBuffer,Ec:_emscripten_glBindBufferBase,Fc:_emscripten_glBindBufferRange,He:_emscripten_glBindFramebuffer,Ie:_emscripten_glBindRenderbuffer,pe:_emscripten_glBindSampler,Kf:_emscripten_glBindTexture,Tb:_emscripten_glBindTransformFeedback,bf:_emscripten_glBindVertexArray,ef:_emscripten_glBindVertexArrayOES,Lf:_emscripten_glBlendColor,Mf:_emscripten_glBlendEquation,Nd:_emscripten_glBlendEquationSeparate,Nf:_emscripten_glBlendFunc,Md:_emscripten_glBlendFuncSeparate,Be:_emscripten_glBlitFramebuffer,Of:_emscripten_glBufferData,Pf:_emscripten_glBufferSubData,Je:_emscripten_glCheckFramebufferStatus,Qf:_emscripten_glClear,gc:_emscripten_glClearBufferfi,hc:_emscripten_glClearBufferfv,jc:_emscripten_glClearBufferiv,ic:_emscripten_glClearBufferuiv,Rf:_emscripten_glClearColor,Ld:_emscripten_glClearDepthf,Sf:_emscripten_glClearStencil,ye:_emscripten_glClientWaitSync,bd:_emscripten_glClipControlEXT,Tf:_emscripten_glColorMask,Uf:_emscripten_glCompileShader,Vf:_emscripten_glCompressedTexImage2D,Tc:_emscripten_glCompressedTexImage3D,Wf:_emscripten_glCompressedTexSubImage2D,Sc:_emscripten_glCompressedTexSubImage3D,Ae:_emscripten_glCopyBufferSubData,Jd:_emscripten_glCopyTexImage2D,Xf:_emscripten_glCopyTexSubImage2D,Uc:_emscripten_glCopyTexSubImage3D,Yf:_emscripten_glCreateProgram,Zf:_emscripten_glCreateShader,_f:_emscripten_glCullFace,$f:_emscripten_glDeleteBuffers,Ke:_emscripten_glDeleteFramebuffers,ag:_emscripten_glDeleteProgram,ke:_emscripten_glDeleteQueries,ee:_emscripten_glDeleteQueriesEXT,Le:_emscripten_glDeleteRenderbuffers,qe:_emscripten_glDeleteSamplers,bg:_emscripten_glDeleteShader,ze:_emscripten_glDeleteSync,cg:_emscripten_glDeleteTextures,Sb:_emscripten_glDeleteTransformFeedbacks,cf:_emscripten_glDeleteVertexArrays,ff:_emscripten_glDeleteVertexArraysOES,Id:_emscripten_glDepthFunc,dg:_emscripten_glDepthMask,Hd:_emscripten_glDepthRangef,Gd:_emscripten_glDetachShader,eg:_emscripten_glDisable,fg:_emscripten_glDisableVertexAttribArray,gg:_emscripten_glDrawArrays,$e:_emscripten_glDrawArraysInstanced,Qd:_emscripten_glDrawArraysInstancedANGLE,Fb:_emscripten_glDrawArraysInstancedARB,Ye:_emscripten_glDrawArraysInstancedBaseInstanceWEBGL,_c:_emscripten_glDrawArraysInstancedEXT,Gb:_emscripten_glDrawArraysInstancedNV,We:_emscripten_glDrawBuffers,Yc:_emscripten_glDrawBuffersEXT,Rd:_emscripten_glDrawBuffersWEBGL,hg:_emscripten_glDrawElements,af:_emscripten_glDrawElementsInstanced,Pd:_emscripten_glDrawElementsInstancedANGLE,Db:_emscripten_glDrawElementsInstancedARB,Ze:_emscripten_glDrawElementsInstancedBaseVertexBaseInstanceWEBGL,Eb:_emscripten_glDrawElementsInstancedEXT,Zc:_emscripten_glDrawElementsInstancedNV,Qe:_emscripten_glDrawRangeElements,ig:_emscripten_glEnable,jg:_emscripten_glEnableVertexAttribArray,le:_emscripten_glEndQuery,fe:_emscripten_glEndQueryEXT,Gc:_emscripten_glEndTransformFeedback,ve:_emscripten_glFenceSync,kg:_emscripten_glFinish,lg:_emscripten_glFlush,Me:_emscripten_glFramebufferRenderbuffer,Ne:_emscripten_glFramebufferTexture2D,Kc:_emscripten_glFramebufferTextureLayer,mg:_emscripten_glFrontFace,ng:_emscripten_glGenBuffers,Oe:_emscripten_glGenFramebuffers,me:_emscripten_glGenQueries,ge:_emscripten_glGenQueriesEXT,Pe:_emscripten_glGenRenderbuffers,re:_emscripten_glGenSamplers,og:_emscripten_glGenTextures,Rb:_emscripten_glGenTransformFeedbacks,_e:_emscripten_glGenVertexArrays,gf:_emscripten_glGenVertexArraysOES,De:_emscripten_glGenerateMipmap,Fd:_emscripten_glGetActiveAttrib,Ed:_emscripten_glGetActiveUniform,bc:_emscripten_glGetActiveUniformBlockName,cc:_emscripten_glGetActiveUniformBlockiv,ec:_emscripten_glGetActiveUniformsiv,Dd:_emscripten_glGetAttachedShaders,Cd:_emscripten_glGetAttribLocation,Bd:_emscripten_glGetBooleanv,Yb:_emscripten_glGetBufferParameteri64v,pg:_emscripten_glGetBufferParameteriv,qg:_emscripten_glGetError,rg:_emscripten_glGetFloatv,tc:_emscripten_glGetFragDataLocation,Ee:_emscripten_glGetFramebufferAttachmentParameteriv,Zb:_emscripten_glGetInteger64i_v,$b:_emscripten_glGetInteger64v,Ic:_emscripten_glGetIntegeri_v,sg:_emscripten_glGetIntegerv,Jb:_emscripten_glGetInternalformativ,Nb:_emscripten_glGetProgramBinary,tg:_emscripten_glGetProgramInfoLog,ug:_emscripten_glGetProgramiv,ae:_emscripten_glGetQueryObjecti64vEXT,Td:_emscripten_glGetQueryObjectivEXT,be:_emscripten_glGetQueryObjectui64vEXT,ne:_emscripten_glGetQueryObjectuiv,he:_emscripten_glGetQueryObjectuivEXT,oe:_emscripten_glGetQueryiv,ie:_emscripten_glGetQueryivEXT,Fe:_emscripten_glGetRenderbufferParameteriv,Ub:_emscripten_glGetSamplerParameterfv,Vb:_emscripten_glGetSamplerParameteriv,vg:_emscripten_glGetShaderInfoLog,Zd:_emscripten_glGetShaderPrecisionFormat,Ad:_emscripten_glGetShaderSource,wg:_emscripten_glGetShaderiv,xg:_emscripten_glGetString,df:_emscripten_glGetStringi,_b:_emscripten_glGetSynciv,zd:_emscripten_glGetTexParameterfv,yd:_emscripten_glGetTexParameteriv,Bc:_emscripten_glGetTransformFeedbackVarying,dc:_emscripten_glGetUniformBlockIndex,fc:_emscripten_glGetUniformIndices,yg:_emscripten_glGetUniformLocation,xd:_emscripten_glGetUniformfv,wd:_emscripten_glGetUniformiv,uc:_emscripten_glGetUniformuiv,Ac:_emscripten_glGetVertexAttribIiv,zc:_emscripten_glGetVertexAttribIuiv,td:_emscripten_glGetVertexAttribPointerv,vd:_emscripten_glGetVertexAttribfv,ud:_emscripten_glGetVertexAttribiv,sd:_emscripten_glHint,_d:_emscripten_glInvalidateFramebuffer,$d:_emscripten_glInvalidateSubFramebuffer,rd:_emscripten_glIsBuffer,qd:_emscripten_glIsEnabled,pd:_emscripten_glIsFramebuffer,od:_emscripten_glIsProgram,Rc:_emscripten_glIsQuery,Ud:_emscripten_glIsQueryEXT,nd:_emscripten_glIsRenderbuffer,Xb:_emscripten_glIsSampler,md:_emscripten_glIsShader,we:_emscripten_glIsSync,zg:_emscripten_glIsTexture,Qb:_emscripten_glIsTransformFeedback,Jc:_emscripten_glIsVertexArray,Sd:_emscripten_glIsVertexArrayOES,Ag:_emscripten_glLineWidth,Bg:_emscripten_glLinkProgram,Ue:_emscripten_glMultiDrawArraysInstancedBaseInstanceWEBGL,Ve:_emscripten_glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL,Pb:_emscripten_glPauseTransformFeedback,Cg:_emscripten_glPixelStorei,ad:_emscripten_glPolygonModeWEBGL,ld:_emscripten_glPolygonOffset,cd:_emscripten_glPolygonOffsetClampEXT,Mb:_emscripten_glProgramBinary,Lb:_emscripten_glProgramParameteri,ce:_emscripten_glQueryCounterEXT,Xe:_emscripten_glReadBuffer,Dg:_emscripten_glReadPixels,kd:_emscripten_glReleaseShaderCompiler,Ge:_emscripten_glRenderbufferStorage,Ce:_emscripten_glRenderbufferStorageMultisample,Ob:_emscripten_glResumeTransformFeedback,jd:_emscripten_glSampleCoverage,se:_emscripten_glSamplerParameterf,Wb:_emscripten_glSamplerParameterfv,te:_emscripten_glSamplerParameteri,ue:_emscripten_glSamplerParameteriv,Eg:_emscripten_glScissor,id:_emscripten_glShaderBinary,Fg:_emscripten_glShaderSource,Aa:_emscripten_glStencilFunc,Ba:_emscripten_glStencilFuncSeparate,Ca:_emscripten_glStencilMask,Da:_emscripten_glStencilMaskSeparate,Ea:_emscripten_glStencilOp,Fa:_emscripten_glStencilOpSeparate,Ga:_emscripten_glTexImage2D,Wc:_emscripten_glTexImage3D,Ha:_emscripten_glTexParameterf,Ia:_emscripten_glTexParameterfv,Ja:_emscripten_glTexParameteri,Ka:_emscripten_glTexParameteriv,Re:_emscripten_glTexStorage2D,Kb:_emscripten_glTexStorage3D,La:_emscripten_glTexSubImage2D,Vc:_emscripten_glTexSubImage3D,Dc:_emscripten_glTransformFeedbackVaryings,Ma:_emscripten_glUniform1f,Na:_emscripten_glUniform1fv,Cf:_emscripten_glUniform1i,Df:_emscripten_glUniform1iv,sc:_emscripten_glUniform1ui,nc:_emscripten_glUniform1uiv,Ef:_emscripten_glUniform2f,Ff:_emscripten_glUniform2fv,Bf:_emscripten_glUniform2i,Af:_emscripten_glUniform2iv,qc:_emscripten_glUniform2ui,mc:_emscripten_glUniform2uiv,zf:_emscripten_glUniform3f,yf:_emscripten_glUniform3fv,xf:_emscripten_glUniform3i,wf:_emscripten_glUniform3iv,pc:_emscripten_glUniform3ui,lc:_emscripten_glUniform3uiv,vf:_emscripten_glUniform4f,uf:_emscripten_glUniform4fv,hf:_emscripten_glUniform4i,jf:_emscripten_glUniform4iv,oc:_emscripten_glUniform4ui,kc:_emscripten_glUniform4uiv,ac:_emscripten_glUniformBlockBinding,kf:_emscripten_glUniformMatrix2fv,Qc:_emscripten_glUniformMatrix2x3fv,Oc:_emscripten_glUniformMatrix2x4fv,lf:_emscripten_glUniformMatrix3fv,Pc:_emscripten_glUniformMatrix3x2fv,Mc:_emscripten_glUniformMatrix3x4fv,mf:_emscripten_glUniformMatrix4fv,Nc:_emscripten_glUniformMatrix4x2fv,Lc:_emscripten_glUniformMatrix4x3fv,nf:_emscripten_glUseProgram,hd:_emscripten_glValidateProgram,of:_emscripten_glVertexAttrib1f,gd:_emscripten_glVertexAttrib1fv,fd:_emscripten_glVertexAttrib2f,pf:_emscripten_glVertexAttrib2fv,ed:_emscripten_glVertexAttrib3f,qf:_emscripten_glVertexAttrib3fv,dd:_emscripten_glVertexAttrib4f,rf:_emscripten_glVertexAttrib4fv,Se:_emscripten_glVertexAttribDivisor,Od:_emscripten_glVertexAttribDivisorANGLE,Hb:_emscripten_glVertexAttribDivisorARB,$c:_emscripten_glVertexAttribDivisorEXT,Ib:_emscripten_glVertexAttribDivisorNV,yc:_emscripten_glVertexAttribI4i,wc:_emscripten_glVertexAttribI4iv,xc:_emscripten_glVertexAttribI4ui,vc:_emscripten_glVertexAttribI4uiv,Te:_emscripten_glVertexAttribIPointer,sf:_emscripten_glVertexAttribPointer,tf:_emscripten_glViewport,xe:_emscripten_glWaitSync,cb:_emscripten_request_animation_frame_loop,jb:_emscripten_resize_heap,Bb:_environ_get,Cb:_environ_sizes_get,Qa:_exit,fa:_fd_close,kb:_fd_pread,vb:_fd_read,ob:_fd_seek,Y:_fd_write,Oa:_glGetIntegerv,ha:_glGetString,Pa:_glGetStringi,Xd:invoke_dd,Wd:invoke_ddd,Yd:invoke_dddd,qa:invoke_diii,Vd:invoke_fff,x:invoke_ffif,q:invoke_ffifif,Q:invoke_ffifiii,J:invoke_fi,aa:invoke_fif,ra:invoke_fiii,Sa:invoke_fiiiif,ma:invoke_fiiiii,p:invoke_i,Va:invoke_if,Ta:invoke_iffiiiiiiii,g:invoke_ii,E:invoke_iif,na:invoke_iiffi,h:invoke_iii,ab:invoke_iiif,f:invoke_iiii,k:invoke_iiiii,fb:invoke_iiiiid,$:invoke_iiiiii,y:invoke_iiiiiii,s:invoke_iiiiiiii,ia:invoke_iiiiiiiiii,ya:invoke_iiiiiiiiiiifiii,W:invoke_iiiiiiiiiiii,Cc:invoke_iiji,hb:invoke_j,_a:invoke_ji,m:invoke_jii,X:invoke_jiiii,Ua:invoke_jiijj,n:invoke_v,la:invoke_vfffffiii,b:invoke_vi,za:invoke_vid,L:invoke_vif,K:invoke_viff,D:invoke_vifff,M:invoke_viffff,z:invoke_vifffff,N:invoke_viffffffffffffffffffff,eb:invoke_viffi,c:invoke_vii,C:invoke_viif,A:invoke_viiff,rc:invoke_viiffiii,ba:invoke_viifif,u:invoke_viififif,w:invoke_viifii,e:invoke_viii,G:invoke_viiif,ja:invoke_viiiffi,P:invoke_viiiffiffii,R:invoke_viiifi,S:invoke_viiififiiiiiiiiiiii,j:invoke_viiii,ga:invoke_viiiif,Z:invoke_viiiiff,O:invoke_viiiifi,i:invoke_viiiii,Kd:invoke_viiiiif,va:invoke_viiiiiff,Xa:invoke_viiiiiffiiifffi,Wa:invoke_viiiiiffiiifii,xa:invoke_viiiiifi,l:invoke_viiiiii,t:invoke_viiiiiii,ea:invoke_viiiiiiii,Ra:invoke_viiiiiiiii,I:invoke_viiiiiiiiii,db:invoke_viiiiiiiiiii,V:invoke_viiiiiiiiiiiiiii,Za:invoke_viiiijjiiiiff,wa:invoke_viiij,$a:invoke_viiijj,T:invoke_viij,r:invoke_viiji,v:invoke_viijiii,ka:invoke_viijiiiif,oa:invoke_viijj,bb:invoke_vijff,pa:invoke_viji,Xc:invoke_vijii,Ya:invoke_vijiiii,_:invoke_vijjjj,ca:_llvm_eh_typeid_for,pb:_random_get};var wasmExports=await createWasm();var ___wasm_call_ctors=wasmExports["Hg"];var _init=Module["_init"]=wasmExports["Jg"];var _tick=Module["_tick"]=wasmExports["Kg"];var _resize_surface=Module["_resize_surface"]=wasmExports["Lg"];var _redraw=Module["_redraw"]=wasmExports["Mg"];var _load_scene_json=Module["_load_scene_json"]=wasmExports["Ng"];var _apply_scene_transactions=Module["_apply_scene_transactions"]=wasmExports["Og"];var _pointer_move=Module["_pointer_move"]=wasmExports["Pg"];var _command=Module["_command"]=wasmExports["Qg"];var _set_main_camera_transform=Module["_set_main_camera_transform"]=wasmExports["Rg"];var _add_image=Module["_add_image"]=wasmExports["Sg"];var _get_image_bytes=Module["_get_image_bytes"]=wasmExports["Tg"];var _get_image_size=Module["_get_image_size"]=wasmExports["Ug"];var _add_font=Module["_add_font"]=wasmExports["Vg"];var _has_missing_fonts=Module["_has_missing_fonts"]=wasmExports["Wg"];var _list_missing_fonts=Module["_list_missing_fonts"]=wasmExports["Xg"];var _list_available_fonts=Module["_list_available_fonts"]=wasmExports["Yg"];var _set_default_fallback_fonts=Module["_set_default_fallback_fonts"]=wasmExports["Zg"];var _get_default_fallback_fonts=Module["_get_default_fallback_fonts"]=wasmExports["_g"];var _get_node_id_from_point=Module["_get_node_id_from_point"]=wasmExports["$g"];var _get_node_ids_from_point=Module["_get_node_ids_from_point"]=wasmExports["ah"];var _get_node_ids_from_envelope=Module["_get_node_ids_from_envelope"]=wasmExports["bh"];var _get_node_absolute_bounding_box=Module["_get_node_absolute_bounding_box"]=wasmExports["ch"];var _export_node_as=Module["_export_node_as"]=wasmExports["dh"];var _to_vector_network=Module["_to_vector_network"]=wasmExports["eh"];var _set_debug=Module["_set_debug"]=wasmExports["fh"];var _toggle_debug=Module["_toggle_debug"]=wasmExports["gh"];var _set_verbose=Module["_set_verbose"]=wasmExports["hh"];var _devtools_rendering_set_show_ruler=Module["_devtools_rendering_set_show_ruler"]=wasmExports["ih"];var _devtools_rendering_set_show_tiles=Module["_devtools_rendering_set_show_tiles"]=wasmExports["jh"];var _runtime_renderer_set_cache_tile=Module["_runtime_renderer_set_cache_tile"]=wasmExports["kh"];var _devtools_rendering_set_show_fps_meter=Module["_devtools_rendering_set_show_fps_meter"]=wasmExports["lh"];var _devtools_rendering_set_show_stats=Module["_devtools_rendering_set_show_stats"]=wasmExports["mh"];var _devtools_rendering_set_show_hit_testing=Module["_devtools_rendering_set_show_hit_testing"]=wasmExports["nh"];var _highlight_strokes=Module["_highlight_strokes"]=wasmExports["oh"];var _load_dummy_scene=Module["_load_dummy_scene"]=wasmExports["ph"];var _load_benchmark_scene=Module["_load_benchmark_scene"]=wasmExports["qh"];var _main=Module["_main"]=wasmExports["rh"];var _grida_fonts_analyze_family=Module["_grida_fonts_analyze_family"]=wasmExports["sh"];var _grida_fonts_parse_font=Module["_grida_fonts_parse_font"]=wasmExports["th"];var _grida_fonts_free=Module["_grida_fonts_free"]=wasmExports["uh"];var _allocate=Module["_allocate"]=wasmExports["vh"];var _deallocate=Module["_deallocate"]=wasmExports["wh"];var _malloc=wasmExports["xh"];var _emscripten_builtin_memalign=wasmExports["yh"];var _setThrew=wasmExports["zh"];var __emscripten_tempret_set=wasmExports["Ah"];var __emscripten_stack_restore=wasmExports["Bh"];var __emscripten_stack_alloc=wasmExports["Ch"];var _emscripten_stack_get_current=wasmExports["Dh"];var ___cxa_decrement_exception_refcount=wasmExports["Eh"];var ___cxa_increment_exception_refcount=wasmExports["Fh"];var ___cxa_can_catch=wasmExports["Gh"];var ___cxa_get_exception_ptr=wasmExports["Hh"];function invoke_vii(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vid(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viff(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jii(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiif(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiifi(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vifffff(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viif(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fi(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viifii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiifiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiif(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffffffffffffffffffff(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiifi(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijii(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiij(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiffiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiff(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiff(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iif(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vifff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffi(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viji(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijff(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijj(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiji(index,a1,a2,a3,a4){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiif(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiijj(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiffi(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ji(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiijjiiiiff(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viij(index,a1,a2,a3){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viififif(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffifif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffif(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viffff(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiffiiifffi(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiffiiifii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_if(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiijj(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiififiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vfffffiii(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijiiiif(index,a1,a2,a3,a4,a5,a6,a7,a8){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vif(index,a1,a2){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiffi(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiifi(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viifif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fif(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ffifiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiffiffii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iffiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiiiif(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijjjj(index,a1,a2,a3,a4,a5){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dddd(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dd(index,a1){var sp=stackSave();try{return getWasmTableEntry(index)(a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ddd(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fff(index,a1,a2){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_j(index){var sp=stackSave();try{return getWasmTableEntry(index)()}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_iiiiid(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_fiii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{getWasmTableEntry(index)(a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function callMain(args=[]){var entryFunction=_main;args.unshift(thisProgram);var argc=args.length;var argv=stackAlloc((argc+1)*4);var argv_ptr=argv;args.forEach(arg=>{HEAPU32[argv_ptr>>2]=stringToUTF8OnStack(arg);argv_ptr+=4});HEAPU32[argv_ptr>>2]=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(args=arguments_){if(runDependencies>0){dependenciesFulfilled=run;return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);Module["onRuntimeInitialized"]?.();var noInitialRun=Module["noInitialRun"]||false;if(!noInitialRun)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}function preInit(){if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}preInit();run();moduleRtn=readyPromise; return moduleRtn; diff --git a/crates/grida-canvas-wasm/lib/bin/grida_canvas_wasm.wasm b/crates/grida-canvas-wasm/lib/bin/grida_canvas_wasm.wasm index 6f3d773f9b..d272dd3bc7 100755 --- a/crates/grida-canvas-wasm/lib/bin/grida_canvas_wasm.wasm +++ b/crates/grida-canvas-wasm/lib/bin/grida_canvas_wasm.wasm @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:573cff2cae0dd77de82f81d15d6af0f838674e85762cd9f6e564b55ff7db74ac -size 10772311 +oid sha256:ad1a8881c70983028d0825e9491a57f4f97d9017741608ff214c147b9f4abae7 +size 10779473 diff --git a/crates/grida-canvas-wasm/package.json b/crates/grida-canvas-wasm/package.json index 779bac31c5..a877ae6ab7 100644 --- a/crates/grida-canvas-wasm/package.json +++ b/crates/grida-canvas-wasm/package.json @@ -1,7 +1,7 @@ { "name": "@grida/canvas-wasm", "description": "WASM bindings for Grida Canvas", - "version": "0.0.80-canary.2", + "version": "0.0.80-canary.3", "keywords": [ "grida", "canvas",